/*
 Copyright 2009-2015 Luc Saffre
 License: BSD (see file COPYING for details)
*/

// lino.js --- generated Sat Aug 26 07:41:25 2017 by Lino Amici 2017.4.0 for Administrator.
Ext.BLANK_IMAGE_URL = '/static/ext-3.3.1/resources/images/default/s.gif';
LANGUAGE_CHOICES = [ [ "en-us", "American English" ] ];
MEDIA_URL = "/media/";

// hack to add a toCamel function, inspired by
// http://jamesroberts.name/blog/2010/02/22/string-functions-for-javascript-trim-to-camel-case-to-dashed-and-to-underscore/
String.prototype.toCamel = function(){
  //~ return this.replace(/(\-[a-z])/g, function($1){return $1.toUpperCase().replace('-','');});
  //~ return this;
  return this.replace(/([A-Z])([A-Z]+)/g, function(match,p1,p2,offset,string){
      //~ console.log("20131005 got ",arguments);
      return p1 + p2.toLowerCase();});
};


// 20151126 hack to modify Ext.EventObjectImpl.isSpecialKey() which
// returned false for Ctrl-S when called from a keyup handler (namely
// ComboBox.onLoad)

Ext.EventObjectImpl.prototype.isSpecialKey = function(){
    // same as original except for one line
    var k = this.normalizeKey(this.keyCode);
    // return (this.type == 'keypress' && this.ctrlKey) ||
    return (this.ctrlKey) ||
        this.isNavKeyPress() ||
        (k == this.BACKSPACE) || 
        (k >= 16 && k <= 20) || 
        (k >= 44 && k <= 46);   
};





/* MonthPickerPlugin: thanks to keypoint @ sencha forum
   http://www.sencha.com/forum/showthread.php?74002-3.x-Ext.ux.MonthMenu&p=356860#post356860
*/
Ext.namespace('Ext.ux'); 

Ext.ux.MonthPickerPlugin = function() { 
    var picker; 
    var oldDateDefaults; 

    this.init = function(pk) { 
        picker = pk; 
        picker.onTriggerClick = picker.onTriggerClick.createSequence(onClick); 
        picker.getValue = picker.getValue.createInterceptor(setDefaultMonthDay).createSequence(restoreDefaultMonthDay); 
        picker.beforeBlur = picker.beforeBlur.createInterceptor(setDefaultMonthDay).createSequence(restoreDefaultMonthDay); 
    }; 

    function setDefaultMonthDay() { 
        oldDateDefaults = Date.defaults.d; 
        Date.defaults.d = 1; 
        return true; 
    } 

    function restoreDefaultMonthDay(ret) { 
        Date.defaults.d = oldDateDefaults; 
        return ret; 
    } 

    function onClick(e, el, opt) { 
        var p = picker.menu.picker; 
        p.activeDate = p.activeDate.getFirstDateOfMonth(); 
        if (p.value) { 
            p.value = p.value.getFirstDateOfMonth(); 
        } 

        p.showMonthPicker(); 
         
        if (!p.disabled) { 
            p.monthPicker.stopFx(); 
            p.monthPicker.show(); 

            p.mun(p.monthPicker, 'click', p.onMonthClick, p); 
            p.mun(p.monthPicker, 'dblclick', p.onMonthDblClick, p); 
            p.onMonthClick = p.onMonthClick.createSequence(pickerClick); 
            p.onMonthDblClick = p.onMonthDblClick.createSequence(pickerDblclick); 
            p.mon(p.monthPicker, 'click', p.onMonthClick, p); 
            p.mon(p.monthPicker, 'dblclick', p.onMonthDblClick, p); 
        } 
    } 

    function pickerClick(e, t) { 
        var el = new Ext.Element(t); 
        if (el.is('button.x-date-mp-cancel')) { 
            picker.menu.hide(); 
        } else if(el.is('button.x-date-mp-ok')) { 
            var p = picker.menu.picker; 
            p.setValue(p.activeDate); 
            p.fireEvent('select', p, p.value); 
        } 
    } 

    function pickerDblclick(e, t) { 
        var el = new Ext.Element(t); 
        if (el.parent() 
            && (el.parent().is('td.x-date-mp-month') 
            || el.parent().is('td.x-date-mp-year'))) { 

            var p = picker.menu.picker; 
            p.setValue(p.activeDate); 
            p.fireEvent('select', p, p.value); 
        } 
    } 
}; 

Ext.preg('monthPickerPlugin', Ext.ux.MonthPickerPlugin);  


/**
JC Watsons solution (adapted to ExtJS 3.3.1 by LS) is elegant and simple:
`A "fix" for unchecked checkbox submission  behaviour
<http://www.sencha.com/forum/showthread.php?28449>`_

Added special handling for checkbox inputs. 
ExtJS defines disabled checkboxes `readonly`, not `disabled` as for other inputs.

*/
Ext.lib.Ajax.serializeForm = function(form) {
    // console.log('20170731 linolib.js serializeForm', form);
    var fElements = form.elements || (document.forms[form] || Ext.getDom(form)).elements, 
        hasSubmit = false, 
        encoder = encodeURIComponent, 
        name, 
        data = '', 
        type, 
        hasValue;

    Ext.each(fElements, function(element){
        name = element.name;
        type = element.type;

        if (!element.disabled && name && !(type == 'checkbox' && element.readonly)) {
            if (/select-(one|multiple)/i.test(type)) {
                Ext.each(element.options, function(opt){
                    if (opt.selected) {
                        hasValue = opt.hasAttribute ? opt.hasAttribute('value') : opt.getAttributeNode('value').specified;
                        data += String.format("{0}={1}&", encoder(name), encoder(hasValue ? opt.value : opt.text));
                    }
                });
            } else if (!(/file|undefined|reset|button/i.test(type))) {
                //~ if (!(/radio|checkbox/i.test(type) && !element.checked) && !(type == 'submit' && hasSubmit)) {
                if (!(type == 'submit' && hasSubmit)) {
                    if (type == 'checkbox') {
                        //~ console.log('20111001',element,'data += ',encoder(name) + '=' + (element.checked ? 'on' : 'off') + '&');
                        data += encoder(name) + '=' + (element.checked ? 'on' : 'off') + '&';
                    } else {
                        //~ console.log('20111001',element,'data += ',encoder(name) + '=' + encoder(element.value) + '&');
                        data += encoder(name) + '=' + encoder(element.value) + '&';
                    }
                    hasSubmit = /submit/i.test(type);
                }
            }
        //~ } else {
            //~ console.log(name,type,element.readonly);
        }
    });
    return data.substr(0, data.length - 1);
};



/*
Set a long timeout of fifteen minutes. 
See /blog/2012/0307
*/
Ext.Ajax.timeout = 15 * 60 * 1000; 

/*
 * Thanks to 
 * `huuze <http://stackoverflow.com/users/10040/huuuze>`_ for the question
 * and to 
 * `chrisv <http://stackoverflow.com/users/683808/chrisv>`_
 * for the answer on
 * http://stackoverflow.com/questions/3764589/how-do-i-include-django-1-2s-csrf-token-in-a-javascript-generated-html-form/5485616#5485616
 * 
 * */
 
Ext.Ajax.on('beforerequest', function (conn, options) {
   if (!(/^http:.*/.test(options.url) || /^https:.*/.test(options.url))) {
     if (typeof(options.headers) == "undefined") {
       options.headers = {'X-CSRFToken': Ext.util.Cookies.get('csrftoken')};
     } else {
       options.headers.extend({'X-CSRFToken': Ext.util.Cookies.get('csrftoken')});
     }                        
   }
}, this);


/*
My fix for the "Cannot set QuickTips dismissDelay to 0" bug,
see http://www.sencha.com/forum/showthread.php?183515 
*/
Ext.override(Ext.QuickTip,{
  showAt : function(xy){
        var t = this.activeTarget;
        //~ console.log("20120224 QuickTip.showAt",this.title,this.dismissDelay,t.dismissDelay);
        if(t){
            if(!this.rendered){
                this.render(Ext.getBody());
                this.activeTarget = t;
            }
            if(t.width){
                this.setWidth(t.width);
                this.body.setWidth(this.adjustBodyWidth(t.width - this.getFrameWidth()));
                this.measureWidth = false;
            } else{
                this.measureWidth = true;
            }
            this.setTitle(t.title || '');
            this.body.update(t.text);
            this.autoHide = t.autoHide;
            // bugfix by Luc 20120226
            if (t.dismissDelay != undefined) this.dismissDelay = t.dismissDelay;
            //~ this.dismissDelay = t.dismissDelay || this.dismissDelay;
            if(this.lastCls){
                this.el.removeClass(this.lastCls);
                delete this.lastCls;
            }
            if(t.cls){
                this.el.addClass(t.cls);
                this.lastCls = t.cls;
            }
            if(this.anchor){
                this.constrainPosition = false;
            }else if(t.align){ 
                xy = this.el.getAlignToXY(t.el, t.align);
                this.constrainPosition = false;
            }else{
                this.constrainPosition = true;
            }
        }
        Ext.QuickTip.superclass.showAt.call(this, xy);
    }
});

/*
Another hack. See /docs/blog/2012/0228
*/
Ext.Element.addMethods(
    function() {
        var VISIBILITY      = "visibility",
            DISPLAY         = "display",
            HIDDEN          = "hidden",
            NONE            = "none",
            XMASKED         = "x-masked",
            XMASKEDRELATIVE = "x-masked-relative",
            data            = Ext.Element.data;

        return {
            
            mask : function(msg, msgCls) {
                var me  = this,
                    dom = me.dom,
                    dh  = Ext.DomHelper,
                    EXTELMASKMSG = "ext-el-mask-msg",
                    el,
                    mask;
                // removed the following lines. See /docs/blog/2012/0228
                //~ if (!(/^body/i.test(dom.tagName) && me.getStyle('position') == 'static')) {
                    //~ console.log(20120228,dom.tagName,me);
                    //~ me.addClass(XMASKEDRELATIVE); 
                //~ }
                if (el = data(dom, 'maskMsg')) {
                    el.remove();
                }
                if (el = data(dom, 'mask')) {
                    el.remove();
                }

                mask = dh.append(dom, {cls : "ext-el-mask"}, true);
                data(dom, 'mask', mask);

                me.addClass(XMASKED);
                mask.setDisplayed(true);
                
                if (typeof msg == 'string') {
                    var mm = dh.append(dom, {cls : EXTELMASKMSG, cn:{tag:'div'}}, true);
                    data(dom, 'maskMsg', mm);
                    mm.dom.className = msgCls ? EXTELMASKMSG + " " + msgCls : EXTELMASKMSG;
                    mm.dom.firstChild.innerHTML = msg;
                    mm.setDisplayed(true);
                    mm.center(me);
                }
                
                
                if (Ext.isIE && !(Ext.isIE7 && Ext.isStrict) && me.getStyle('height') == 'auto') {
                    mask.setSize(undefined, me.getHeight());
                }
                
                return mask;
            }

            
        };
    }()
);



Ext.namespace('Lino');
    
    

//~ Lino.subst_user_field = new Ext.form.ComboBox({});
//~ Lino.subst_user = null;
Lino.insert_subst_user = function(p){
    //~ console.log('20120714 insert_subst_user',Lino.subst_user,p);
    //~ if (Lino.subst_user_field.getValue()) {
    if (p.su) return;
    if (Lino.subst_user) {
        //~ p.su = Lino.subst_user_field.getValue();
        p.su = Lino.subst_user;
    //~ } else {
        //~ delete p.su;
    }
    //~ console.log('20120714 insert_subst_user -->',Lino.subst_user,p);
}

Lino.login_window = null;

Lino.autorefresh = function() {
  if (Lino.current_window == null) {
      Lino.viewport.refresh();
      Lino.autorefresh.defer(60000);
  }
}

Lino.show_login_window = function(on_login, username, password) {
  // console.log('20121103 show_login_window',arguments);
  //~ var current_window = Lino.current_window;
  if (typeof username != 'string') username = '';
  if (typeof password != 'string') password = '';
  if (Lino.login_window == null) {
    
      function do_login() { 
            Lino.viewport.loadMask.show()
            login_panel.getForm().submit({ 
                method:'POST', 
                waitTitle:'Connecting', 
                waitMsg:'Sending data...',
                success:function(){ 
                  Lino.login_window.hide();
                  Lino.handle_home_button();
                  Lino.viewport.loadMask.hide();
                  if (typeof on_login == 'string') {
                      Lino.load_url(on_login);
                  } 
                },
                failure: function(form,action) { 
                  Lino.on_submit_failure(form, action);
                  Lino.viewport.loadMask.hide()
                }
            }); 
      };
    
      var login_button = new Ext.Button({ 
        text:"Log in",
        formBind: true,	 
        // Function that fires when user clicks the button 
        handler: do_login});
    
      var login_panel = new Ext.FormPanel({ 
        //~ inspired by http://www.sencha.com/learn/a-basic-login/
        autoHeight:true,
        labelWidth:90,
        url:'/auth', 
        frame:true, 
        defaultType:'textfield',
        monitorValid:true,
        items:[{ 
            fieldLabel:"Username", 
            id: 'username',
            name:'username', 
            value: username, 
            autoHeight:true,
            allowBlank:false 
        },{ 
            fieldLabel:"Password", 
            id:'password', 
            name:'password', 
            value: password, 
            inputType:'password', 
            autoHeight:true,
            allowBlank:false 
        }],        
        buttons:[ login_button ]});
        
      Lino.login_window = new Ext.Window({
          layout:'fit',
          defaultButton: 'username',
          width:300,
          title:"Log in", 
          autoHeight:true,
          modal: true,
          closeAction: "hide",
          keys: {
            key: Ext.EventObject.ENTER,
            fn: function() { do_login()}
          },
          items: [login_panel] });
  } else {
      var fld = Lino.login_window.items.first().form.findField('username');
      fld.setValue(username);
      var fld = Lino.login_window.items.first().form.findField('password');
      fld.setValue(password);
  };
  Lino.login_window.show();
};

Lino.logout = function(id,name) {
    Lino.call_ajax_action(
        Lino.viewport, 'GET', 
        '/auth',
        {}, 'logout', undefined, undefined,
        function(){Lino.reload();})
}

Lino.set_subst_user = function(id, name) {
    //~ console.log(20130723,'Lino.set_subst_user',id,name,Lino.current_window,Lino.viewport);
    Lino.subst_user = id;
    if (Lino.current_window) 
        Lino.current_window.main_item.set_base_param("su",id);
    if (Lino.viewport) 
        Lino.permalink_handler(Lino.current_window)();
}



//~ Lino.select_subst_user = function(cmp,rec,value){
    //~ Lino.subst_user=value;
    //~ console.log(20120713,rec);
//~ }
    
Lino.current_window = null;
Lino.window_history = Array();
    
Lino.chars2width = function(cols) {  return cols * 9; }
Lino.rows2height = function(cols) {  return cols * 20; }
Lino.perc2width = function(perc) {  
    // var w = Math.max(document.documentElement.clientWidth, window.innerWidth);
    // console.log("20151226", document, window, w);
    var w = Lino.viewport.getWidth();
    return w * perc / 100; 
}



Lino.MainPanel = {
  is_home_page: false,
  setting_param_values : false,
  config_containing_window : function(wincfg) { }
  ,init_containing_window : function(win) { }
  ,is_loading : function() { 
      if (!this.rendered) return true;
      //~ return (Ext.select('.x-loading-msg').elements.length > 0);
      return true; 
    } 
  ,do_when_clean : function(auto_save,todo) { todo() }
  ,get_master_params : function() {
    var p = {}
    p['mt'] = this.content_type; 
    rec = this.get_current_record()
    if (rec) {
      if (rec.phantom) {
          p['mk'] = undefined; 
      }else{
          p['mk'] = rec.id; 
      }
    } else {
      p['mk'] = undefined;
    }
    //~ console.log('get_master_params returns',p,'using record',rec);
    return p;
  }
  ,get_permalink : function() {
    var p = Ext.apply({}, this.get_base_params());
    delete p.fmt;
    Ext.apply(p, this.get_permalink_params());
    
    if (this.toggle_params_panel_btn) {
        p.sp = this.toggle_params_panel_btn.pressed;
        //~ if (this.toggle_params_panel_btn.pressed == this.params_panel_hidden) {
          //~ p.sp = true;
        //~ }
    }
    
    //~ Lino.insert_subst_user(p);
     //~ p.fmt = 'html';
    //~ console.log('get_permalink',p,this.get_permalink_params());
    if (this.is_home_page)
        //~ var url = '';
        var url = '/';
    else 
        var url = this.get_permalink_url();
    if (p.su == null) 
        delete p.su;
    if (Ext.urlEncode(p)) url = url + "?" + Ext.urlEncode(p);
    return url;
  }
  ,get_record_url : function(record_id) {
      var url = '/api' + this.ls_url
      //~ var url = this.containing_window.config.url_data; // ls_url;
      url += '/' + (record_id === undefined ? this.default_record_id : String(record_id));
      //~ if (record_id !== undefined) url += '/' + String(record_id);
      //~ url += '/' + String(record_id);
      return url;
  }
  ,get_permalink_url : function() {
      return '/api' + this.ls_url;
  }
  ,get_permalink_params : function() {
      //~ return {an:'grid'};
      var p = {};
      if (this.action_name)
          p.an = this.action_name;
      this.add_param_values(p,false)
      return p;
  }
  /*

  Lino.MainPanel.set_status() : the status can have the following keys:

  - param_values : values of parameter fields
  - field_values : values of action parameter fields
  - base_params
  - record_id
  - active_tab
  - data_record
  - show_params_panel
  - current_page

   */
  ,set_status : function(status, requesting_panel) {}
  ,get_status : function() { return {}}
  ,refresh : function() {}
  ,get_base_params : function() {  // Lino.MainPanel
    var p = {};
    Lino.insert_subst_user(p);
    return p;
  }
  ,add_params_panel : function (tbar) {
      if (this.params_panel) {
        //~  20130923b
        //~ this.params_panel.autoHeight = true; // 20130924
        var t = this;
        var update = function() {
            var p = t.params_panel;
            //~ console.log("update", p.getSize().height,p.forceLayout,p.autoHeight);
            var w = t.get_containing_window();
            Lino.do_when_visible(w, function() {
                //~ p.doLayout(true); // doLayout(shallow, force)
                w.doLayout(true); // doLayout(shallow, force)
                //~ t.params_panel.on('afterlayout',update,t,{single:true});
            });
        };
        Lino.do_when_visible(this.params_panel, update);
        this.params_panel.on('show',update);
        this.params_panel.on('hide',update);
        //~ this.params_panel.on('bodyresize',update);
        this.params_panel.on('afterlayout',update);
        //~ this.params_panel.on('afterlayout',update,this,{single:true});
        //~ this.params_panel.on('bodyresize',update,this,{single:true});
        //~ this.params_panel.on('resize',update,this,{single:true});
        //~ this.params_panel.on('render',update,this,{single:true});
        
        // this.params_panel.on('render',
        //~ this.params_panel.on('afterlayout',update,this,{single:true,delay:200});
        //~ this.params_panel.on('bodyresize',update,this,{single:true,delay:200});
        this.toggle_params_panel_btn = new Ext.Button({ scope:this, 
          //~ text: "$_("[parameters]")", // gear
          iconCls: 'x-tbar-database_gear',
          tooltip:"Show or hide the table parameters panel",
          enableToggle: true,
          //~ pressed: ! this.params_panel.hidden,
          pressed: ! this.params_panel_hidden,
          toggleHandler: function(btn,state) { 
            //~ console.log("20120210 add_params_panel",state,this.params_panel);
            if (state) {
                this.params_panel.show();
            } else {
                this.params_panel.hide();
            }
            //~ this.params_panel.on('afterlayout',update,this,{single:true});
            //~ t.get_containing_window().doLayout();
            //~ this.params_panel.on('afterlayout',function() {
                //~ console.log("20130918 afterlayout");
                //~ t.get_containing_window().doLayout(); // doLayout(shallow, force)
            //~ },this,{single:true});
          }
        }); 
        tbar = tbar.concat([this.toggle_params_panel_btn]);
        var refresh = function() {
            if (!t.setting_param_values) {
                t._force_dirty = true; 
                t.refresh();
            }
        }
        Ext.each(this.params_panel.fields,function(f) {
          //~ f.on('valid',function() {t.refresh()});
          if (f instanceof Ext.form.Checkbox) {
              f.on('check',refresh);
          } else if (f instanceof Ext.DatePicker) {
              f.on('select',refresh);
          } else if (f instanceof Ext.form.TriggerField) {
              f.on('select',refresh);
              //~ f.on('change',refresh);
              //~ f.on('valid',refresh);
          } else {
              if (! f.on) 
                  console.log("20121010 no method 'on'",f);
              else
                  f.on('change',refresh);
            }
          });
      }
      return tbar;
  }
  ,add_param_values : function (p,force_dirty) {
    if (this.params_panel) {
      /* 
      * 20120918 add param_values to the request string 
      * *only if the params_form is dirty*.
      * Otherwise Actor.default_params() would never be used.
      *
      * 20121023 But IntegClients.params_default has non-empty default values. 
      * Users must have the possibility to make them empty.
      * 
      * 20130605 : added `force_dirty` parameter because Checkbox fields don't 
      * mark their form as dirty when check is fired.
      * 
      * 20130721 : `force_dirty` not as a parameter but as 
      * `this._force_dirty` because
      * 
      * 20130915 : both _force_dirty and force_dirty parameter are needed.
      * 
      */
      if (force_dirty || this._force_dirty || this.params_panel.form.isDirty()) {
      //~ if (this._force_dirty || this.params_panel.form.isDirty()) {
        p.pv = this.get_param_values();
        //~ console.log("20130923 form is dirty (",force_dirty,this._force_dirty,this.params_panel.form.isDirty(),")");
        //~ console.log("20130923 form is dirty",p);
      }else{
        //~ console.log("20130923 form not dirty:",this.params_panel.form);
        if (this.status_param_values) 
          p.pv = Lino.fields2array(
            this.params_panel.fields,this.status_param_values);
      }
      //~ if (!this.params_panel.form.isDirty()) return;
      //~ p.pv = this.get_param_values();
      //~ console.log("20120203 add_param_values added pv",p.pv,"to",p);
    }
  },
  get_param_values : function() { // similar to get_field_values()
      return Lino.fields2array(this.params_panel.fields);
  },
  set_param_values : function(pv) {
    if (this.params_panel) {
      //~ console.log('20120203 MainPanel.set_param_values', pv);
      this.status_param_values = pv;
      //~ this.params_panel.form.suspendEvents(false);
      this.setting_param_values = true;
      if (pv) { 
          this.params_panel.form.my_loadRecord(pv);
      } else { 
        this.params_panel.form.reset(); 
      }
      this.setting_param_values = false;
      this._force_dirty = false; 
      //~ this.params_panel.form.resumeEvents();
    }
  }
};




Lino.Viewport = Ext.extend(Ext.Viewport, Lino.MainPanel);
Lino.Viewport = Ext.extend(Lino.Viewport, {
  layout : "fit"
  ,is_home_page : true
  ,initComponent : function(){
    Lino.Viewport.superclass.initComponent.call(this);
    this.on('render',function(){
      this.loadMask = new Ext.LoadMask(this.el,{msg:"Please wait..."});
      //~ console.log("20121118 Lino.viewport.loadMask",this.loadMask);
    },this);
  }
  ,refresh : function() {
      var caller = this;
      // console.log("20140829 Lino.Viewport.refresh()");
      if (caller.loadMask) caller.loadMask.show();
      var success = function(response) {
        if (caller.loadMask) caller.loadMask.hide();
        if (response.responseText) {
          var result = Ext.decode(response.responseText);
          //~ console.log('Lino.do_action()',action.name,'result is',result);
          if (result.html) {
              var cmp = Ext.getCmp('dashboard');
              // cmp.removeAll(true);  // 20140829
              cmp.update(result.html, true);
          }
          if (result.message) {
              if (result.alert) {
                  //~ Ext.MessageBox.alert('Alert',result.alert_msg);
                  Ext.MessageBox.alert('Alert',result.message);
              } else {
                  Lino.notify(result.message);
              }
          }
          
          if (result.notify_msg) Lino.notify(result.notify_msg);
          if (result.js_code) { 
            var jsr = result.js_code(caller);
            //~ console.log('Lino.do_action()',action,'returned from js_code in',result);
          };
        }
      };
      var action = {
        url : '/api/main_html',
        waitMsg: "Please wait...",
        failure: Lino.ajax_error_handler(caller),
        success: success,
        method: 'GET',
        params: {}
      };
      Lino.insert_subst_user(action.params);
      Ext.Ajax.request(action);
    
  }
});




Lino.open_window = function(win, st, requesting_panel) {
  // console.log("20140831 Lino.open_window()", win, win.el.getBox());
  var cw = Lino.current_window;
  if (cw) {
    // console.log("20140829 Lino.open_window() save current status",
    //             cw.main_item.get_status());
    Lino.window_history.push({
      window:cw,
      status:cw.main_item.get_status()
    });
  }
  Lino.current_window = win;
  //~ if (st.su) 
      //~ Lino.subst_user_field.setValue(st.su);
  win.main_item.set_status(st, requesting_panel);
  // win.toFront();
  win.show();
};

Lino.load_url = function(url) {
    //~ foo.bar.baz = 2; 
    //~ console.log("20121120 Lino.load_url()");
    //~ Lino.body_loadMask.show();
    Lino.viewport.loadMask.show();
    //~ location.replace(url);
    document.location = url;
}

Lino.close_window = function(status_update, norestore) {
  // norestore is used when called by handle_action_result() who 
  // will call set_status itself later
  var cw = Lino.current_window;
  var ww = Lino.window_history.pop();
  var retval = cw.main_item.requesting_panel;
  // console.log(
  //     "20150514 Lino.close_window() going to close", cw.title,
  //     "previous is", ww, 
  //     "norestore is", norestore,
  //     "retval is", retval);
  if (ww) {
    //~ if (status_update) Ext.apply(ww.status,status_update);
    if(!norestore) {
        if (status_update) status_update(ww);
        ww.window.main_item.set_status(ww.status , cw.id);
    }
    Lino.current_window = ww.window;
  } else {
      Lino.current_window = null;
      // new since 20140829:
      if(!norestore) { Lino.viewport.refresh(); }
  }
  if (cw) cw.hide_really();
  return retval;
};

Lino.kill_current_window = function() {
  // console.log("20140418 Lino.kill_current_window()");
  var cw = Lino.current_window;
  Lino.current_window = null;
  if (cw) cw.hide_really();
};

Lino.reload = function() {
    // First close all windows to ensure all changes are saved
    Lino.close_all_windows();

    // Then reload current view
    var url =  "/"

    var p = {};
    Lino.insert_subst_user(p)
    if (Ext.urlEncode(p))
        url = url + "?" + Ext.urlEncode(p);

    Lino.load_url(url);
}

Lino.handle_home_button = function() {
  if (Lino.window_history.length == 0)
      Lino.reload();
  else
      Lino.close_all_windows();
}

Lino.close_all_windows = function() {
    while (Lino.window_history.length > 0) {
        Lino.close_window();
    }
}

Lino.calling_window = function() {
    if (Lino.window_history.length) 
        return Lino.window_history[Lino.window_history.length-1];
}

//~ Lino.WindowAction = function(mainItemClass,windowConfig,mainConfig,ppf) {
Lino.WindowAction = function(windowConfig,main_item_fn) {
    //~ if(!mainConfig) mainConfig = {};
    //~ mainConfig.is_main_window = true;
    this.windowConfig = windowConfig;
    this.main_item_fn = main_item_fn;
    //~ if (ppf) mainConfig.params_panel.fields = ppf;
    //~ this.mainConfig = mainConfig;
    //~ this.mainItemClass = mainItemClass;
};

Lino.WindowAction = Ext.extend(Lino.WindowAction,{
    window : null,
    //~ mainItemClass: null,
    get_window : function() {
      //~ if(mainConfig) Ext.apply(this.mainConfig,mainConfig);
      // if (this.window == null || this.window.isDestroyed)  { // 20140829
      // if (this.window == null || this.window.getBox().width == 0)  { // 20140829
      if (this.window == null)  {
      // if (true)  {
          //~ this.windowConfig.main_item = new this.mainItemClass(this.mainConfig);
          this.windowConfig.main_item = this.main_item_fn();
          this.window = new Lino.Window(this.windowConfig);
      }
      return this.window;
    },
    run : function(requesting_panel, status) {
      // console.log('20140829 window_action.run()', this)
      Lino.open_window(this.get_window(), status, requesting_panel);
    }
  
});


Lino.PanelMixin = {
  get_containing_window : function (){
      if (this.containing_window) return this.containing_window;
      return this.containing_panel.get_containing_window();
  }
  ,set_window_title : function(title) {
    //~ this.setTitle(title);
    var cw = this.get_containing_window();

    //~ if (cw) {
    //~ if (cw && cw.closable) {
    if (cw && !cw.main_item.hide_window_title) {
      //~ console.log('20111202 set_window_title(',title,') for',this.containing_window);
      //~ if (! this.containing_window.rendered) console.log("WARNING: not rendered!");
      cw.setTitle(title);
    //~ } else {
      //~ document.title = title;
    }
    //~ else console.log('20111202 not set_window_title(',title,') for',this);
  }
  
};


// Lino.status_bar = new Ext.ux.StatusBar({defaultText:'Lino version 2016.12.0.'});






/* 
  Originally copied from Ext JS Library 3.3.1
  Modifications by Luc Saffre : 
  - rendering of phantom records
  - fire afteredit event
  - react on dblclcik, not on single click

 */
Lino.CheckColumn = Ext.extend(Ext.grid.Column, {

    processEvent : function(name, e, grid, rowIndex, colIndex){
        //~ console.log('20110713 Lino.CheckColumn.processEvent',name)
        if (name == 'click') {
        //~ if (name == 'mousedown') {
        //~ if (name == 'dblclick') {
            return this.toggleValue(grid, rowIndex, colIndex);
        } else {
            return Ext.grid.ActionColumn.superclass.processEvent.apply(this, arguments);
        }
    },
    
    toggleValue : function (grid,rowIndex,colIndex) {
        var record = grid.store.getAt(rowIndex);
        var dataIndex = grid.colModel.getDataIndex(colIndex);
        // 20120514
        //~ if(record.data.disabled_fields && record.data.disabled_fields[dataIndex]) {
          //~ Lino.notify("This field is disabled");
          //~ return false;
        //~ }
      
        //~ if (dataIndex in record.data['disabled_fields']) {
            //~ Lino.notify("This field is disabled.");
            //~ return false;
        //~ }
        var startValue = record.data[dataIndex];
        var value = !startValue;
        //~ record.set(this.dataIndex, value);
        var e = {
            grid: grid,
            record: record,
            field: dataIndex,
            originalValue: startValue,
            value: value,
            row: rowIndex,
            column: colIndex,
            cancel: false
        };
        if(grid.fireEvent("beforeedit", e) !== false && !e.cancel){
        //~ if(grid.fireEvent("validateedit", e) !== false && !e.cancel){
            record.set(dataIndex, value);
            delete e.cancel;
            grid.fireEvent("afteredit", e);
        }
        return false; // Cancel event propagation
    },

    renderer : function(v, p, record){
        if (record.phantom) return '';
        p.css += ' x-grid3-check-col-td'; 
        return String.format('<div class="x-grid3-check-col{0}">&#160;</div>', v ? '-on' : '');
    }

    // Deprecate use as a plugin. Remove in 4.0
    // init: Ext.emptyFn
});

// register ptype. Deprecate. Remove in 4.0
// Ext.preg('checkcolumn', Lino.CheckColumn);

// backwards compat. Remove in 4.0
// Ext.grid.CheckColumn = Lino.CheckColumn;

// register Column xtype
Ext.grid.Column.types.checkcolumn = Lino.CheckColumn;


/* 20110725 : 
Lino.on_tab_activate is necessary 
in contacts.Person.2.dtl 
(but don't ask me why...)
*/
Lino.on_tab_activate = function(item) {
  //~ console.log('activate',item); 
  if (item.rendered && item.doLayout) item.doLayout();
  //~ if (item.rendered) item.doLayout();
}

Lino.TimeField = Ext.extend(Ext.form.TimeField,{
  format: 'H:i',
  increment: 15
  });
Lino.DateField = Ext.extend(Ext.form.DateField,{
  //~ boxMinWidth: Lino.chars2width(15), // 20131005 changed from 11 to 15
  format: 'd.m.Y',
  altFormats: 'd/m/Y|Y-m-d'
  });
Lino.DatePickerField = Ext.extend(Ext.DatePicker,{
  //~ boxMinWidth: Lino.chars2width(11),
  format: 'd.m.Y',
  //~ altFormats: 'd/m/Y|Y-m-d'
  formatDate : function(date){
      //~ console.log("20121203 formatDate",this.name,date);
      return Ext.isDate(date) ? date.dateFormat(this.format) : date;
  }
  });
Lino.DateTimeField = Ext.extend(Ext.ux.form.DateTime,{
  dateFormat: 'd.m.Y',
  timeFormat: 'H:i'
  //~ ,hiddenFormat: 'd.m.Y H:i'
  });
Lino.URLField = Ext.extend(Ext.form.TriggerField,{
  triggerClass : 'x-form-search-trigger',
  //~ triggerClass : 'x-form-world-trigger',
  vtype: 'url',
  onTriggerClick : function() {
    //~ console.log('Lino.URLField.onTriggerClick',this.value)
    //~ document.location = this.value;
    window.open(this.getValue(),'_blank');
  }
});
Lino.IncompleteDateField = Ext.extend(Ext.form.TextField,{
  //~ regex: /^-?\d+-[01]\d-[0123]\d$/,
  //~ regex: /^[0123]\d\.[01]\d\.-?\d+$/,
  maxLength: 10,
  boxMinWidth: Lino.chars2width(10),
  regex: /^[0123]?\d\.[01]?\d\.-?\d+$/,
  regexText: 'Enter a date in format YYYY-MM-DD (use zeroes for unknown parts).'
  });


//~ Lino.make_dropzone = function(cmp) {
    //~ cmp.on('render', function(ct, position){
      //~ ct.el.on({
        //~ dragenter:function(event){
          //~ event.browserEvent.dataTransfer.dropEffect = 'move';
          //~ return true;
        //~ }
        //~ ,dragover:function(event){
          //~ event.browserEvent.dataTransfer.dropEffect = 'move';
          //~ event.stopEvent();
          //~ return true;
        //~ }
        //~ ,drop:{
          //~ scope:this
          //~ ,fn:function(event){
            //~ event.stopEvent();
            //~ console.log(20110516);
            //~ var files = event.browserEvent.dataTransfer.files;
            //~ if(files === undefined){
              //~ return true;
            //~ }
            //~ var len = files.length;
            //~ while(--len >= 0){
              //~ console.log(files[len]);
              //~ // this.processDragAndDropFileUpload(files[len]);
            //~ }
          //~ }
        //~ }
      //~ });
    //~ });
//~ };

//~ Lino.FileUploadField = Ext.ux.form.FileUploadField;

Lino.FileUploadField = Ext.extend(Ext.ux.form.FileUploadField,{
    unused_onRender : function(ct, position){
      Lino.FileUploadField.superclass.onRender.call(this, ct, position);
      this.el.on({
        dragenter:function(event){
          event.browserEvent.dataTransfer.dropEffect = 'move';
          return true;
        }
        ,dragover:function(event){
          event.browserEvent.dataTransfer.dropEffect = 'move';
          event.stopEvent();
          return true;
        }
        ,drop:{
          scope:this
          ,fn:function(event){
            event.stopEvent();
            //~ console.log(20110516);
            var files = event.browserEvent.dataTransfer.files;
            if(files === undefined){
              return true;
            }
            var len = files.length;
            while(--len >= 0){
              console.log(files[len]);
              //~ this.processDragAndDropFileUpload(files[len]);
            }
          }
        }
      });
    }
});

Lino.FileField = Ext.extend(Ext.form.TriggerField,{
  triggerClass : 'x-form-search-trigger',
  editable: false,
  onTriggerClick : function() {
    //~ console.log('Lino.URLField.onTriggerClick',this.value)
    //~ document.location = this.value;
    if (this.getValue()) window.open(MEDIA_URL + '/'+this.getValue(),'_blank');
  }
});

Lino.file_field_handler = function(panel,config) {
  if (panel.action_name == 'insert') {
      panel.has_file_upload = true;


      // config.value = '<br/><br/>';

      var f = new Lino.FileUploadField(config);
      //~ Lino.make_dropzone(f);
      return f;
      //~ return new Ext.ux.form.FileUploadField(config);
      //~ return new Lino.FileField(config);
      
  } else {
      //~ return new Lino.URLField(config);
      return new Lino.FileField(config);
  }
}

Lino.VBorderPanel = Ext.extend(Ext.Panel,{
    constructor : function(config) {
      config.layout = 'border';
      delete config.layoutConfig;
      Lino.VBorderPanel.superclass.constructor.call(this,config);
      for(var i=0; i < this.items.length;i++) {
        var item = this.items.get(i);
        if (this.isVertical(item) && item.collapsible) {
          item.on('collapse',this.onBodyResize,this);
          item.on('expand',this.onBodyResize,this);
        }
      }
    },
    isVertical : function(item) {
       return (item.region == 'north' || item.region == 'south' || item.region == 'center');
    },
    onBodyResize: function(w, h){
        //~ console.log('VBorderPanel.onBodyResize',this.title)
      if (this.isVisible()) { // to avoid "Uncaught TypeError: Cannot call method 'getHeight' of undefined."
        var sumflex = 0;
        var availableHeight = this.getInnerHeight();
        var me = this;
        this.items.each(function(item){
          if (me.isVertical(item)) {
              if (item.collapsed || item.flex == 0 || item.flex === undefined) {
                  if (item.rendered) availableHeight -= item.getHeight();
              } else {
                  sumflex += item.flex;
              }
          } 
          
        });
        //~ for(var i=0; i < this.items.length;i++) {
          //~ var item = this.items.get(i);
          //~ // if (this.isVertical(item) && item.getResizeEl()) {
          //~ if (this.isVertical(item)) {
              //~ if (item.collapsed || item.flex == 0 || item.flex === undefined) {
                  //~ // item.syncSize()
                  //~ // item.doLayout()
                  //~ // if (item.region == "north") console.log('region north',item.getHeight(),item.id, item);
                  //~ // if (item.getHeight() == 0) console.log(20100921,'both flex and getHeight() are 0!');
                  //~ availableHeight -= item.getHeight();
              //~ } else {
                  //~ sumflex += item.flex;
                  //~ // console.log(item.flex);
              //~ }
          //~ } 
          //~ // else console.log('non-vertical item in VBoderPanel:',item)
        //~ }
        var hunit = availableHeight / sumflex;
        //~ console.log('sumflex=',sumflex,'hunit=',hunit, 'availableHeight=',availableHeight);
        for(var i=0; i < this.items.length;i++) {
          var item = this.items.get(i);
          if (this.isVertical(item)) {
              if (item.flex != 0 && ! item.collapsed) {
                  item.setHeight(hunit * item.flex);
                  //~ console.log(item.region,' : height set to',item.getHeight());
              }
          }
          //~ else console.log('non-vertical item in VBoderPanel:',item)
        }
      }
      Lino.VBorderPanel.superclass.onBodyResize.call(this, w, h);
    }
});


/*
  modifications to the standard behaviour of a CellSelectionModel:
  
*/
Ext.override(Ext.grid.CellSelectionModel, {
//~ var dummy = {

    handleKeyDown : function(e){
        /* removed because F2 wouldn't pass
        if(!e.isNavKeyPress()){
            return;
        }
        */
        //~ console.log('handleKeyDown',e)
        var k = e.getKey(),
            g = this.grid,
            s = this.selection,
            sm = this,
            walk = function(row, col, step){
                return g.walkCells(
                    row,
                    col,
                    step,
                    g.isEditor && g.editing ? sm.acceptsNav : sm.isSelectable, 
                    sm
                );
            },
            cell, newCell, r, c, ae;

        switch(k){
            case e.ESC:
            case e.PAGE_UP:
            case e.PAGE_DOWN:
                break;
            default:
                // e.stopEvent(); // removed because Browser keys like Alt-Home, Ctrl-R wouldn't work
                break;
        }

        if(!s){
            cell = walk(0, 0, 1); 
            if(cell){
                this.select(cell[0], cell[1]);
            }
            return;
        }

        cell = s.cell;
        r = cell[0];    
        c = cell[1];    
        
        switch(k){
            case e.TAB:
                if(e.shiftKey){
                    newCell = walk(r, c - 1, -1);
                }else{
                    newCell = walk(r, c + 1, 1);
                }
                break;
            case e.HOME:
                if (! (g.isEditor && g.editing)) {
                  if (!e.hasModifier()){
                      newCell = [r, 0];
                      //~ console.log('home',newCell);
                      break;
                  }else if(e.ctrlKey){
                      var t = g.getTopToolbar();
                      var activePage = Math.ceil((t.cursor + t.pageSize) / t.pageSize);
                      if (activePage > 1) {
                          e.stopEvent();
                          t.moveFirst();
                          return;
                      }
                      newCell = [0, c];
                      break;
                  }
                }
            case e.END:
                if (! (g.isEditor && g.editing)) {
                  c = g.colModel.getColumnCount()-1;
                  if (!e.hasModifier()) {
                      newCell = [r, c];
                      //~ console.log('end',newCell);
                      break;
                  }else if(e.ctrlKey){
                      var t = g.getTopToolbar();
                      var d = t.getPageData();
                      if (d.activePage < d.pages) {
                          e.stopEvent();
                          var self = this;
                          t.on('change',function(tb,pageData) {
                              var r = g.store.getCount()-2;
                              self.select(r, c);
                              //~ console.log('change',r,c);
                          },this,{single:true});
                          t.moveLast();
                          return;
                      } else {
                          newCell = [g.store.getCount()-1, c];
                          //~ console.log('ctrl-end',newCell);
                          break;
                      }
                  }
                }
            case e.DOWN:
                newCell = walk(r + 1, c, 1);
                break;
            case e.UP:
                newCell = walk(r - 1, c, -1);
                break;
            case e.RIGHT:
                newCell = walk(r, c + 1, 1);
                break;
            case e.LEFT:
                newCell = walk(r, c - 1, -1);
                break;
            case e.F2:
                if (!e.hasModifier()) {
                    if (g.isEditor && !g.editing) {
                        g.startEditing(r, c);
                        e.stopEvent();
                        return;
                    }
                    break;
                }
            case e.INSERT:
                if (!e.hasModifier()) {
                    if (g.ls_insert_handler && !g.editing) {
                        e.stopEvent();
                        Lino.show_insert(g);
                        return;
                    }
                    break;
                }
            // case e.DELETE:
            //     if (!e.hasModifier()) {
            //         if (!g.editing) {
            //             e.stopEvent();
            //             Lino.delete_selected(g);
            //             return;
            //         }
            //         break;
            //     }

            case e.ENTER:
                e.stopEvent();
                g.onCellDblClick(r,c);
                break;

            default:
                g.handle_key_event(e);
                
        }
        

        if(newCell){
          e.stopEvent();
          r = newCell[0];
          c = newCell[1];
          this.select(r, c); 
          if(g.isEditor && g.editing){ 
            ae = g.activeEditor;
            if(ae && ae.field.triggerBlur){
                ae.field.triggerBlur();
            }
            g.startEditing(r, c);
          }
        //~ } else if (g.isEditor && !g.editing && e.charCode) {
        //~ // } else if (!e.isSpecialKey() && g.isEditor && !g.editing) {
            //~ g.set_start_value(String.fromCharCode(e.charCode));
            //~ // g.set_start_value(String.fromCharCode(k));
            //~ // g.set_start_value(e.charCode);
            //~ g.startEditing(r, c);
            //~ // e.stopEvent();
            //~ return;
        // } else {
          // console.log('20120513',e,g);
        }
        
    }


//~ };
});

 

function PseudoConsole() {
    this.log = function() {};
};
if (typeof(console) == 'undefined') console = new PseudoConsole();

Lino.notify = function(msg) {
  if (msg == undefined) msg = ''; else console.log(msg);
  
    if (msg == undefined) return;
    // Lino.alert(msg);
  
};

Lino.alert = function(msg) {
  Ext.MessageBox.alert('Notify',msg);
};


//~ Lino.show_about = function() {
  //~ new Ext.Window({
    //~ width: 400, height: 400,
    //~ title: "About",
    //~ html: '<a href="http://www.extjs.com" target="_blank">ExtJS</a> version ' + Ext.version
  //~ }).show();
//~ };

function obj2str(o) {
  if (typeof o != 'object') return String(o);
  var s = '';
  for (var p in o) {
    s += p + ': ' + obj2str(o[p]) + '\n';
  }
  return s;
}

Lino.on_store_exception = function (store,type,action,options,response,arg) {
  //~ throw response;
  console.log("on_store_exception: store=",store,
    "type=",type,
    "action=",action,
    "options=",options,
    "response=",response,
    "arg=",arg);
    if (arg != undefined && arg) { console.log(arg.stack)};
    var msg = "There was a problem with the database connection.";
    if (response.responseText)
        msg += '<br/>' + response.responseText
    msg += '<br/>' + "If the error persists, try reloading the browser page."
    Ext.Msg.alert("Database problem", msg );
    
};

//~ Lino.on_submit_success = function(form, action) {
   //~ Lino.notify(action.result.message);
   //~ this.close();
//~ };

Lino.on_submit_failure = function(form, action) {
    //~ Lino.notify();
  // action may be undefined
    switch (action.failureType) {
        case Ext.form.Action.CLIENT_INVALID:
            Ext.Msg.alert('Client-side failure', 'Form fields may not be submitted with invalid values');
            break;
        case Ext.form.Action.CONNECT_FAILURE:
            Ext.Msg.alert('Connection failure', 'Ajax communication failed');
            break;
        case Ext.form.Action.SERVER_INVALID:
            Ext.Msg.alert('Server-side failure', action.result.message);
   }
};



/*
Lino.save_wc_handler = function(ww) {
  return function(event,toolEl,panel,tc) {
    var pos = panel.getPosition();
    var size = panel.getSize();
    wc = ww.get_window_config();
    Ext.applyIf(wc,{ 
      x:pos[0],y:pos[1],height:size.height,width:size.width,
      maximized:panel.maximized});
    Lino.do_action(ww,{url:'/window_configs/'+ww.config.permalink_name,params:wc,method:'POST'});
  }
};

*/

Lino.show_in_own_window_button = function(handler) {
  return {
    qtip: "Show this panel in own window", 
    id: "up",
    handler: function(event,toolEl,panel, tc) {
      //~ console.log('20111206 report_window_button',panel,handler);
      handler.run(null,{base_params:panel.containing_panel.get_master_params()});
    }
  }
}

Lino.action_handler = function (panel, on_success, on_confirm) {
  return function (response) {
      if (!panel) { 
          if (Lino.current_window) 
              panel = Lino.current_window.main_item;
          else panel = Lino.viewport;
      }
      
    if (panel.loadMask) panel.loadMask.hide(); // 20120211
    if (!response.responseText) return ;
    var result = Ext.decode(response.responseText);
    Lino.handle_action_result(panel, result, on_success, on_confirm);
  }
};

Lino.handle_action_result = function (panel, result, on_success, on_confirm) {

    // console.log('20150514 Lino.handle_action_result()', result);
    
    // if (panel instanceof Lino.GridPanel) {
    //     gridmode = true;
    // } else {
    //     gridmode = false;
    // }

    //~ if (result.goto_record) {
        //~ var js = "Lino." + result.goto_record[0] + '.detail.run';
        //~ var h = eval(js);
        //~ h(panel,{record_id:result.goto_record[1]});
    //~ }
    
    if (result.xcallback) {
        //~ var config = {title:"Confirmation"};
        var config = {title:result.xcallback.title};
        //~ config.buttons = Ext.MessageBox.YESNOCANCEL;
        //~ config.buttons = Ext.MessageBox.YESNO;
        var p = {};
        Lino.insert_subst_user(p);
        config.buttons = result.xcallback.buttons;
        config.msg = result.message;
        config.fn = function(buttonId, text, opt) {
          panel.loadMask.show(); 
          //~ Lino.insert_subst_user(p);
          Ext.Ajax.request({
            method: 'GET',
            url: '/callbacks/'
                  + result.xcallback.id + '/' + buttonId,
            params: p,
            failure: Lino.ajax_error_handler(panel),
            success: Lino.action_handler(panel, on_success, on_confirm)
          });
        }
        Ext.MessageBox.show(config);
        return;
    }

    // `record_id` and/or `data_record` both mean "display the detail
    // of this record". 
    
    if(result.detail_handler_name) {
        // TODO: make sure that result.detail_handler_name is secure
        var detail_handler = eval("Lino." + result.detail_handler_name);
    }
    var ns = {};  // new status
    if (result.close_window) {
        
        // Subsequent processing expects that `panel` is "the current
        // panel". But if we close the window, `panel` must point
        // to the previous window. Note the case of an insert window
        // that has been invoked by double-clicking on the phantom row
        // of a slave table in a detail window. In that case we want
        // `panel` to become the grid panel of the slave table who
        // called the insert window, not the master's detail form
        // panel.  When the insert window has been called by an action
        // link (e.g. generated using ar.insert_button), then
        // Lino.close_window can return `undefined`.

        if(result.record_id || result.data_record) {
            var ww = Lino.calling_window();
            if (ww && ww.window.main_item instanceof Lino.FormPanel) {
                if (ww.window.main_item.ls_detail_handler == detail_handler) {
                    ns.record_id = result.record_id;
                    ns.data_record = result.data_record;
                    // console.log("20150514 use new status.");
                }
            }
        }

        panel = Lino.close_window(
            function(ww) { Ext.apply(ww.status, ns) }); 
        if (!panel) 
            // console.log("20150514 close_window returned no panel.");
            if (Lino.current_window)
                panel = Lino.current_window.main_item;

    }

    if(result.record_id || result.data_record) {
        if (! (ns.record_id || ns.data_record)) {
          // no close_window, so we must update record data in current
          // panel (if it is the detail_handler for this record) or
          // open the detail handler.
          var st = {
              record_id: result.record_id,
              data_record: result.data_record
          };
          if (result.active_tab) st.active_tab = result.active_tab;
          if (panel instanceof Lino.FormPanel 
              && panel.ls_detail_handler == detail_handler) 
            {
              // console.log("20150514 use panel.set_status().");
              panel.set_status(st);
          } else {
              // console.log("20150514 run detail_handler.");
              st.base_params = panel.get_base_params();
              detail_handler.run(null, st);
          }

          // if (panel instanceof Lino.FormPanel 
          //     && panel.ls_url == result.actor_url) {
          //     // console.log("20140506 case 2 it's a FormPanel:", panel);
          //     panel.set_status({
          //         record_id: result.record_id,
          //         data_record: result.data_record});
          // } else if (panel.ls_detail_handler 
          //            && panel.ls_url == result.actor_url) {
          //     // console.log("20140506 case 4");
          //     panel.ls_detail_handler.run(null, {
          //         record_id: result.record_id,
          //         data_record: result.data_record,
          //         base_params: panel.get_base_params()});
          // } else {
          //     result.refresh_all = true;
          //     console.log("20140604 case 6", result.actor_url);
          // }
        }
    }

    // `eval_js` must get handled after `close_window` because it
    // might ask to open a new window (and we don't want to close that
    // new window).  It must execute *before* any MessageBox,
    // otherwise the box would get hidden by a window that opens
    // afterwards.

    if (result.eval_js) {
        //~ console.log(20120618,result.eval_js);
        eval(result.eval_js);
    }
    
    if (on_success && result.success) {
        // console.log("20140430 handle_action_result calls on_success", 
        //             on_success);
        on_success(result);
    }
    
    if (result.info_message) {
        console.log(result.info_message);
    }
    
    if (result.warning_message) {
        if (!result.alert) result.alert = "Warning";
        Ext.MessageBox.alert(result.alert, result.warning_message);
    }
    
    if (result.message) {
        //~ if (result.alert && ! gridmode) {
        if (result.alert) { // 20120628b 
            //~ Ext.MessageBox.alert('Alert',result.alert_msg);
            if (result.alert === true) result.alert = "Alert";
            Ext.MessageBox.alert(result.alert, result.message);
        } else {
            Lino.notify(result.message);
        }
    }

    if(result.record_deleted && panel.ls_detail_handler == detail_handler) {
        panel.after_delete();
    }
    
    if (result.refresh_all) {
        var cw = Lino.current_window;
        // var cw = panel.get_containing_window();
        if (cw) {
            // console.log("20140917 refresh_all calls refresh on", cw.main_item);
            cw.main_item.refresh();
        } else { Lino.viewport.refresh(); }
        // else console.log("20140917 cannot refresh_all because ",
        //                  "there is no current_window");
    } else {
        if (result.refresh) {
            // console.log("20140917 Gonna call panel.refresh()", panel);
            panel.refresh();
        }
    }if (result.open_url) {
        //~ console.log(20111126,result.open_url);
        //~ if (!result.message)
            //~ Lino.notify('Open new window <a href="'+result.open_url+'" target="_blank">'+result.open_url+'</a>');
        window.open(result.open_url,'foo',"");
        //~ document.location = result.open_url;
    }
};

// obsolete but still used for deleting records.
Lino.do_action = function(caller,action) { 
  action.success = function(response) {
    if (caller.loadMask) caller.loadMask.hide();
    //~ console.log('Lino.do_action()',action,'action success',response);
    if (action.after_success) {
        //~ console.log('Lino.do_action() calling after_success');
        action.after_success();
    }
    if (response.responseText) {
      var result = Ext.decode(response.responseText);
      //~ console.log('Lino.do_action()',action.name,'result is',result);
      if (result.message) {
          if (result.alert) {
              //~ Ext.MessageBox.alert('Alert',result.alert_msg);
              Ext.MessageBox.alert('Alert',result.message);
          } else {
              Lino.notify(result.message);
          }
      }
      
      //~ if (result.alert_msg) Ext.MessageBox.alert('Alert',result.alert_msg);
      //~ if (result.message) Lino.notify(result.message);
      if (result.notify_msg) Lino.notify(result.notify_msg);
      if (result.js_code) { 
        //~ console.log('Lino.do_action()',action,'gonna call js_code in',result);
        var jsr = result.js_code(caller);
        //~ console.log('Lino.do_action()',action,'returned from js_code in',result);
        if (action.after_js_code) {
          //~ console.log('Lino.do_action()',action,'gonna call after_js_code');
          action.after_js_code(jsr);
          //~ console.log('Lino.do_action()',action,'returned from after_js_code');
        //~ } else {
          //~ console.log('Lino.do_action()',action,' : after_js_code is false');
        }
      };
    }
  };
  Ext.applyIf(action,{
    waitMsg: "Please wait...",
    failure: Lino.ajax_error_handler(caller),
    params: {}
  });
  //~ action.params.su = Lino.subst_user;
  Lino.insert_subst_user(action.params);
  
  Ext.Ajax.request(action);
};

//~ Lino.gup = function( name )
//~ {
  //~ // Thanks to http://www.netlobo.com/url_query_string_javascript.html
  //~ name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
  //~ var regexS = "[\\?&]"+name+"=([^&#]*)";
  //~ var regex = new RegExp( regexS );
  //~ var results = regex.exec( window.location.href );
  //~ if( results == null )
    //~ return "";
  //~ else
    //~ return results[1];
//~ };

//~ Lino.refresh_handler = function (ww) {
  //~ return function() { 
      //~ console.log('refresh',ww);
      //~ ww.main_item.doLayout(false,true);
      //~ ww.main_item.syncSize();
  //~ }
//~ };

//~ Lino.tools_close_handler = function (ww) {
  //~ return function() { 
      //~ ww.close();
  //~ }
//~ };
Lino.permalink_handler = function (ww) {
  return function() { 
    //~ document.location = ww.main_item.get_permalink();
    //~ console.log('20130723 Lino.permalink_handler',ww);
    
    /* Uncaught TypeError: Cannot read property 'main_item' of null  */
    if (ww) {
        var url = ww.main_item.get_permalink();
    } else {
        var url = Lino.viewport.get_permalink();
    }
    Lino.load_url(url);
  }
};
//~ Lino.run_permalink = function() {
  //~ var plink = Lino.gup('permalink');
  //~ if(plink) { eval('Lino.'+plink); }
//~ }


Lino.ajax_error_handler = function(panel) {
  return function(response,options) {
    console.log('Ajax failure:', response, options);
    if (panel.loadMask) panel.loadMask.hide();
    if (response.responseText) {
      var lines = response.responseText.split('\n');
      if (lines.length > 10) {
          line = lines.splice(5, lines.length-10, "(...)");
      }
      //~ console.log(20131005, response.statusText.toCamel());
      Ext.MessageBox.alert(
        response.statusText.toCamel(),
        lines.join('<br/>')
        //~ response.responseText.replace(/\n/g,'<br/>'))
      )
    } else {
      Ext.MessageBox.alert('Action failed',
        'Lino server did not respond to Ajax request');
    }
  }
}
// Ext.Ajax.on('requestexception',Lino.ajax_error_handler)
 


Ext.QuickTips.init();

/* setting QuickTips dismissDelay to 0 */
// Apply a set of config properties to the singleton
//~ Ext.apply(Ext.QuickTips.getQuickTip(), {
//~ Ext.apply(Ext.ToolTip, {
    //~ dismissDelay: 0
    //~ autoHide: false,
    //~ closable: true,
    //~ maxWidth: 200,
    //~ minWidth: 100,
    //~ showDelay: 50      // Show 50ms after entering target
    //~ ,trackMouse: true
//~ });


//~ Ext.apply(Ext.QuickTip, {
    //~ dismissDelay: 0,
//~ });
  
Lino.quicktip_renderer = function(title, body) {
  return function(c) {
    //~ if (c instanceof Ext.Panel) var t = c.bwrap; else // 20130129
      if (c instanceof Ext.Panel)
          var t = c.header;
      else // 20130129
          var t = c.getEl();
    // if (title == 'a2btn') console.log(20160829, c, t, body);
    //~ t.dismissDelay = 0;
    Ext.QuickTips.register({
      target: t,
      //~ cls: 'lino-quicktip-classical',
      dismissDelay: 0,
      //~ autoHide: false,
      showDelay: 50,      // Show 50ms after entering target
      //~ title: title,
      text: body
    });
  }
};


  
Lino.help_text_editor = function() {
  //~ var bp = {
      //~ mk:this.content_type,
      //~ mt:1
    //~ };
    //~ console.log(20120202,bp);
  //~ Lino.lino.ContentTypes.detail({},{base_params:bp});
  //~ Lino.lino.ContentTypes.detail.run(null,{record_id:this.content_type});
  Lino.lino.ContentTypes.detail.run(null,{record_id:this.content_type});
}

// Path to the blank image should point to a valid location on your server
//~ Ext.BLANK_IMAGE_URL = MEDIA_URL + '/extjs/resources/images/default/s.gif'; 


// used as Ext.grid.Column.renderer for id columns in order to hide the special id value -99999
Lino.id_renderer = function(value, metaData, record, rowIndex, colIndex, store) {
  //~ if (record.phantom) return '';
  return value;
}

Lino.raw_renderer = function(value, metaData, record, rowIndex, colIndex, store) {
  return value;
}

Lino.text_renderer = function(value, metaData, record, rowIndex, colIndex, store) {
  //~ return "not implemented"; 
  return value;
}

Lino.NullNumberColumn = Ext.extend(Ext.grid.Column, {
    align : 'right', 
    format : '0,000.00/i', 
    renderer : function(value, metaData, record, rowIndex, colIndex, store) {
        // if( colIndex == 3)
        //     console.log(20130128,"NullNumberColumn.renderer",value);
        if (value === null) return '';
        return Ext.util.Format.number(value, this.format);
    }
});


Lino.link_button = function(url) {
    // return '<a href="' + url + '"><img src="/media/lino/extjs/images/xsite/link.png" alt="link_button"></a>'
    return '<a href="' + url + '" style="text-decoration:none;">&#10138;</a>'
}

Lino.fk_renderer = function(fkname,handlername) {
  //~ console.log('Lino.fk_renderer handler=',handler);
  return function(value, metaData, record, rowIndex, colIndex, store) {
    //~ console.log('Lino.fk_renderer',fkname,rowIndex,colIndex,record,metaData,store);
    //~ if (record.phantom) return '';
    if (value) {
        return Lino.link_button('javascript:'+handlername + '.run(null,{record_id:\'' + String(record.data[fkname]) + '\'})")') + value;
        // until 20140822 (clickable foreign keys):
        // var s = '<a href="javascript:' ;
        // s += handlername + '.run(null,{record_id:\'' + String(record.data[fkname]) + '\'})">';
        // s += value + '</a>';
        // return s
    }
    return '';
  }
};

Lino.lfk_renderer = function(panel,fkname) {
  //~ console.log('Lino.fk_renderer handler=',handler);
  var handlername = 'console.log';
  return function(value, metaData, record, rowIndex, colIndex, store) {
    //~ console.log('Lino.fk_renderer',fkname,rowIndex,colIndex,record,metaData,store);
    if (record.phantom) return '';
    if (value) {
        var s = '<a href="javascript:' ;
        s += handlername + '({},{record_id:\'' + String(record.data[fkname]) + '\'})">';
        s += value + '</a>';
        //~ console.log('Lino.fk_renderer',value,'-->',s);
        return s
    }
    return '';
  }
};

//~ Lino.gfk_renderer = function() {
  //~ return function(value, metaData, record, rowIndex, colIndex, store) {
    //~ if (record.phantom) return '';
    //~ console.log('Lino.gfk_renderer',value,colIndex,record,metaData,store);
    //~ return value;
  //~ }
//~ };


Lino.build_buttons = function(panel,actions) {
  //~ console.log("20121006 Lino.build_buttons",actions);
  if (actions) {
    var buttons = Array(actions.length);
    var cmenu = Array(actions.length);
    var keyhandlers = {};
    for (var i=0; i < actions.length; i++) { 
      var a = actions[i];
      if (a.menu) a.menu = Lino.build_buttons(panel,a.menu).bbar;
      buttons[i] = a;
      cmenu[i] = {
            text : a.menu_item_text,
            iconCls : a.iconCls,
            menu : a.menu
          };
      if (a.panel_btn_handler) {
          var h = a.panel_btn_handler.createCallback(panel);
          if (a.auto_save == true) {
              h = panel.do_when_clean.createDelegate(panel,[true,h]);
          } else if (a.auto_save == null) {
              h = panel.do_when_clean.createDelegate(panel,[false,h]);
          } else if (a.auto_save == false) {
              // h = h;
          } else {
              console.log("20120703 unhandled auto_save value",a)
          }
          buttons[i].handler = h;
          cmenu[i].handler = h;
          if (a.keycode) {
              keyhandlers[a.keycode] = h;
          }
          //~ if (buttons[i].xtype == 'splitbutton') {
              //~ cmenu[i].menu = a.menu;
          //~ } else {
              //~ cmenu[i].handler = h;
          //~ }
      } else {
          console.log("action without panel_btn_handler",a)
          // cmenu[i].handler = a.handler;
      }
    }
    return {
        bbar:buttons, 
        cmenu:new Ext.menu.Menu(cmenu),
        keyhandlers: keyhandlers
    };
  }
}

Lino.do_when_visible = function(cmp,todo) {
  //~ if (cmp.el && cmp.el.dom) 
  if (cmp.isVisible()) { 
    // 'visible' means 'rendered and not hidden'
    //~ console.log(cmp.title,'-> cmp is visible now');
    todo(); 
  //~ } else {
      //~ cmp.on('resize',todo,cmp,{single:true});
  //~ }
  //~ if (false) { // 20120213
  } else { 
    //~ console.log('Lino.do_when_visible() must defer because not isVisible()',todo,cmp);
    if (cmp.rendered) {
      //~ console.log(cmp,'-> cmp is rendered but not visible: and now?');
      //~ console.log(cmp.title,'-> cmp is rendered but not visible: try again in a moment...');
      //~ var fn = function() {Lino.do_when_visible(cmp,todo)};
      //~ fn.defer(100);
      
      Lino.do_when_visible.defer(50,this,[cmp,todo]);
      //~ Lino.do_when_visible.defer(100,this,[cmp,todo]);
      
    } else {
      //~ console.log(cmp.title,'-> after render');
      cmp.on('afterrender',todo,cmp,{single:true});
    }
  }
  
};    

/*
*/
Lino.do_on_current_record = function(panel, fn, phantom_fn) {
  // console.log('20140930 do_on_current_record', arguments);
  var rec = panel.get_current_record();
  if (rec == undefined) {
    Lino.notify("There's no selected record.");
    return;
  }
  // 20120307 A VirtualTable with a Detail (lino.Models) has only "phantom" records.
  if (rec.phantom) {
    //~ if (!panel.editable) { console.log("20120312 not editable:",panel)}
    if (phantom_fn) {
      phantom_fn(panel);
    } else {
      Lino.notify("Action not available on phantom record.");
    }
    return;
  }
  return fn(rec);
};


Lino.call_ajax_action = function(
    panel, method, url, p, actionName, step, on_confirm, on_success) {
  p.an = actionName;
  if (!panel || !panel.isVisible()) {
  //~ if (true) { // 20131026 : workflow_actions of a newly created record detail executed but did't refresh the screen because their requesting panel was the insert (not the detail) formpanel.
      if (Lino.current_window) 
          panel = Lino.current_window.main_item;
      else panel = Lino.viewport;
  }
  // console.log("20150130 a", p.pv);
  // Ext.apply(p, panel.get_base_params());
  // console.log("20150130 b", p.pv);

  if (panel.get_selected) {
      var selected_recs = panel.get_selected();
      //~ console.log("20130831",selected_recs);
      var rs = Array(selected_recs.length);
      for(var i=0; i < selected_recs.length;i++) {
          rs[i] = selected_recs[i].data.id;
      };
      p.sr = rs;
  }
  
  // console.log("20170731 Lino.call_ajax_action", Ext.Ajax, p, actionName, step);
  
  if (panel.loadMask) panel.loadMask.show(); 
    
  // Ext.Ajax.params = {}; 
  Ext.Ajax.request({
    method: method
    ,url: url
    ,params: p
    ,success: Lino.action_handler(panel, on_success, on_confirm)
    ,failure: Lino.ajax_error_handler(panel)
  });
};




Lino.row_action_handler = function(actionName, hm, pp) {
  var p = {};
  var fn = function(panel, btn, step) {
      // console.log('20150514 row_action_handler');
      if (pp) { p = pp(panel); if (! p) return; }
      
      if (!panel || panel.get_current_record == undefined) { // AFTER_20130725
        // console.log('20140930 row_action_handler 2', panel);
        panel = Ext.getCmp(panel);
        if (panel == undefined) {
          console.log("20160410 Invalid panel spec.", actionName, hm, pp);
          Lino.notify("Invalid panel spec.");
          return;
        }
      }
      
      Lino.do_on_current_record(panel, function(rec) {
          //~ console.log(panel);
          panel.add_param_values(p, true);
          Ext.apply(p, panel.get_base_params());
          Lino.call_ajax_action(
              panel, hm, panel.get_record_url(rec.id), 
              p, actionName, step, fn);
      });
  };
  return fn;
};

Lino.list_action_handler = function(ls_url,actionName,hm,pp) {
  var p = {};
  var url = '/api' + ls_url
  var fn = function(panel,btn,step) {
      //~ console.log("20121210 Lino.list_action_handler",arguments);
      if (pp) { p = pp(panel);  if (! p) return; }
      if (panel) { // may be undefined when called e.g. from quicklink
          panel.add_param_values(p, true);
          Ext.apply(p, panel.get_base_params());
      }
      Lino.call_ajax_action(panel, hm,url, p, actionName, step, fn);
  };
  return fn;
};

Lino.param_action_handler = function(window_action) { // 20121012
  var fn = function(panel,btn,step) {
    Lino.do_on_current_record(panel,function(rec) {
      window_action.run(panel.getId(),{}); 
    });
  };
  return fn;
};


Lino.run_row_action = function(
    requesting_panel, is_on_main_actor, url, meth, pk,
    actionName, params, preprocessor) {
  //~ var panel = action.get_window().main_item;
  // console.log("20140930 Lino.run_row_action", params);
  url = '/api' + url  + '/' + pk;
  var panel = Ext.getCmp(requesting_panel);
  // var params = {}
  // if (init_params) Ext.apply(params, init_params);
  if (!params) params = {};
  if (preprocessor) {
      var p = preprocessor(); 
      Ext.apply(params, p);
  }
  if (panel && is_on_main_actor) {
      Ext.apply(params, panel.get_base_params())
  } else {
      // 20170731
      // params.pv = Array();
      // delete params.pv;
      Lino.insert_subst_user(params);
  }
  var fn = function(panel, btn, step) {
    Lino.call_ajax_action(panel, meth, url, params, actionName, step, fn);
  }
  fn(panel, null, null);
}

Lino.put = function(requesting_panel, pk, data) {
    var panel = Ext.getCmp(requesting_panel);
    //~ var panel = null; // 20131026
    var p = {};
    p.an = 'put'; // SubmitDetail.action_name

    Ext.apply(p,data);
    var req = {
        params:p
        ,waitMsg: 'Saving your data...'
        ,scope: panel
        ,success: Lino.action_handler( panel, function(result) { 
            panel.refresh();
        })
        ,failure: Lino.ajax_error_handler(panel)
    };
    req.method = 'PUT';
    req.url = '/api' + panel.ls_url + '/' + pk;
    if (panel.loadMask) panel.loadMask.show(); 
    Ext.Ajax.request(req);
}



Lino.show_detail = function(panel, btn) {
  Lino.do_on_current_record(panel, 
    function(rec) {
      //~ panel.loadMask.show();
      Lino.run_detail_handler(panel, rec.id);
    },
    Lino.show_insert
  );
};

Lino.run_detail_handler = function(panel,pk) {
  var bp = panel.get_base_params();
  panel.add_param_values(bp); // 20120918
  var status = {
    record_id:pk,
    base_params:bp
  }
  //~ console.log("20120918 Lino.show_detail",status);
  panel.ls_detail_handler.run(null,status);
}

Lino.show_fk_detail = function(combo,detail_action,insert_action) {
    //~ console.log("Lino.show_fk_detail",combo,handler);
    pk = combo.getValue();
    if (pk) {
        detail_action.run(null,{record_id: pk})
      } else {
        insert_action.run(null);
        //~ Lino.notify("Cannot show detail for empty foreign key.");
      }
};

Lino.show_insert = function(panel,btn) {
  var bp = panel.get_base_params();
  //~ console.log('20120125 Lino.show_insert',bp)
  //~ panel.ls_insert_handler.run(null,{record_id:-99999,base_params:bp});
  panel.ls_insert_handler.run(panel.getId(),{base_params:bp});
};



if (Ext.ux.grid !== undefined) {
    Lino.GridFilters = Ext.extend(Ext.ux.grid.GridFilters,{
      encode:true,
      local:false
    });
} else {
    Lino.GridFilters = function() {}; // dummy
    Ext.override(Lino.GridFilters,{
      init : function() {}
    });
};



Lino.FieldBoxMixin = {
  before_init : function(config,params) {
    if (params) Ext.apply(config,params);
    var actions = Lino.build_buttons(this, config.ls_bbar_actions);
    if (actions) config.bbar = actions.bbar;
  },
  //~ constructor : function(ww,config,params){
    //~ this.containing_window = ww;
    //~ if (params) Ext.apply(config,params);
    //~ var actions = Lino.build_buttons(this,config.ls_bbar_actions);
    //~ if (actions) config.bbar = actions.bbar;
    //~ Lino.FieldBoxMixin.superclass.constructor.call(this, config);
  //~ },
  do_when_clean : function(auto_save,todo) { todo() },
  //~ format_data : function(html) { return '<div class="htmlText">' + html + '</div>' },
  format_data : function(html) { return html },
  get_base_params : function() {
    // needed for insert action
    var p = Ext.apply({}, this.base_params);
    Lino.insert_subst_user(p);
    return p;
  },
  set_base_params : function(p) {
    this.base_params = Ext.apply({},p);
    //~ if (p.param_values) this.set_param_values(p.param_values);  
  },
  clear_base_params : function() {
      this.base_params = {};
      Lino.insert_subst_user(this.base_params);
  },
  set_base_param : function(k,v) {
    this.base_params[k] = v;
  }
};

Ext.override(Ext.form.HtmlEditor, {
    fixKeys : function(){
        if(Ext.isIE){
            return function(e){
                var k = e.getKey(),
                    doc = this.getDoc(),
                        r;
                if(k == e.TAB){
                    e.stopEvent();
                    r = doc.selection.createRange();
                    if(r){
                        r.collapse(true);
                        r.pasteHTML('&nbsp;&nbsp;&nbsp;&nbsp;');
                        this.deferFocus();
                    }
                }else if(k == e.ENTER){
                    r = doc.selection.createRange();
                    if(r){
                        var target = r.parentElement();
                        if(!target || target.tagName.toLowerCase() != 'li'){
                            e.stopEvent();
                            r.pasteHTML('<br />');
                            r.collapse(false);
                            r.select();
                        }
                    }
                }
            };
        }else if(Ext.isOpera){
            return function(e){
                var k = e.getKey();
                if(k == e.TAB){
                    e.stopEvent();
                    this.win.focus();
                    this.execCmd('InsertHTML','&nbsp;&nbsp;&nbsp;&nbsp;');
                    this.deferFocus();
                }
            };
        }else if(Ext.isWebKit){
            // HKC : this is probably our most used case.
            return function(e){
                var k = e.getKey();
                if(k == e.TAB){
                    e.stopEvent();
                    this.execCmd('InsertText','\t');
                    this.deferFocus();
                }else if(k == e.ENTER){
                    e.stopEvent();
                    this.execCmd('InsertHtml','<br /><br />');
                    this.deferFocus();
                }
             //   HKC
               else if (k == e.S && e.ctrlKey){
                    e.stopEvent();
                    e.preventDefault();
                    //this.getWin.fireEvent('keyup');
                    // this.fireKey(e);
                    console.log('HTMLEditor is saving...');
                }
             };
        }
    }(),
    // bubbleEvents : ['keypress']
    // initComponent : function() {
    //     Ext.form.HtmlEditor.superclass.initComponent.call(this);
    //     this.addEvents('submit');
    // },
    // submit : function (event) {
    //     console.log("rrrrr");
    // },
    // initEditor : function() {
    //     Ext.form.HtmlEditor.superclass.initEditor.call(this);
    //     if (Ext.isGecko) {
    //         Ext.EventManager.on(this, 'keypress', this.fireSubmit, this);
    //     }
    //     if (Ext.isIE || Ext.isWebKit || Ext.isOpera) {
    //         Ext.EventManager.on(this, 'keydown', this.fireSubmit,
    //             this);
    //     }
    // },
    fireSubmit : function(e) {
        console.log("fireSubmit ...");
    }
});


Lino.HtmlBoxPanel = Ext.extend(Ext.Panel, Lino.PanelMixin);
Lino.HtmlBoxPanel = Ext.extend(Lino.HtmlBoxPanel, Lino.FieldBoxMixin);
Lino.HtmlBoxPanel = Ext.extend(Lino.HtmlBoxPanel, {
  disabled_in_insert_window : true,
  constructor : function(config,params) {
    this.before_init(config,params);
    Lino.HtmlBoxPanel.superclass.constructor.call(this, config);
  },
  //~ constructor : function(ww,config,params){
    //~ this.ww = ww;
    //~ if (params) Ext.apply(config,params);
    //~ var actions = Lino.build_buttons(this,config.ls_bbar_actions);
    //~ if (actions) config.bbar = actions.bbar;
    //~ Lino.FieldBoxMixin.constructor.call(this, ww,config,params);
  //~ },
  //~ constructor : function(ww,config,params){
    //~ this.ww = ww;
    //~ if (params) Ext.apply(config,params);
    //~ var actions = Lino.build_buttons(this,config.ls_bbar_actions);
    //~ if (actions) config.bbar = actions.bbar;
    //~ Lino.FieldBoxMixin.superclass.constructor.call(this, config);
  //~ },
  //~ disable : function() { var tb = this.getBottomToolbar(); if(tb) tb.disable()},
  //~ enable : function() { var tb = this.getBottomToolbar(); if(tb) tb.enable()},
  onRender : function(ct, position){
    Lino.HtmlBoxPanel.superclass.onRender.call(this, ct, position);
    //~ console.log(20111125,this.containing_window);
    if (this.containing_panel) {
      this.containing_panel.on('enable',this.enable,this);
      this.containing_panel.on('disable',this.disable,this);
    }
    this.el.on({
      dragenter:function(event){
        event.browserEvent.dataTransfer.dropEffect = 'move';
        return true;
      }
      ,dragover:function(event){
        event.browserEvent.dataTransfer.dropEffect = 'move';
        event.stopEvent();
        return true;
      }
      ,drop:{
        scope:this
        ,fn:function(event){
          event.stopEvent();
          //~ console.log(20110516);
          var files = event.browserEvent.dataTransfer.files;
          if(files === undefined){
            return true;
          }
          var len = files.length;
          while(--len >= 0){
            console.log(files[len]);
            //~ this.processDragAndDropFileUpload(files[len]);
          }
          Lino.show_insert(this);
        }
      }
    });
  },
  refresh : function(unused) { 
      // this.containing_panel.refresh();
      this.refresh_with_after();
  },
  /* HtmlBoxPanel */
  refresh_with_after : function(after) {
      // var todo = this.containing_panel.refresh();
      var box = this.items.get(0);
      var todo = function() {
        if (this.disabled) { return; }
        this.set_base_params(this.containing_panel.get_master_params());

        var el = box.getEl();
        if (el) {
            var record = this.containing_panel.get_current_record();
            var newcontent = record ? 
                this.format_data(record.data[this.name]) : '';
            // console.log('20140917 HtmlBox.refresh()',
            //             this.name, record.data.LinksByHuman);
            el.update(newcontent, true);
        // } else {
        //     console.log('20140502 cannot HtmlBox.refresh()',this.name);
        }
      };

      Lino.do_when_visible(box, todo.createDelegate(this));
  }
});
//~ Ext.override(Lino.HtmlBoxPanel,Lino.FieldBoxMixin);


Lino.ActionFormPanel = Ext.extend(Ext.form.FormPanel,Lino.MainPanel);
Lino.ActionFormPanel = Ext.extend(Lino.ActionFormPanel, Lino.PanelMixin);
Lino.ActionFormPanel = Ext.extend(Lino.ActionFormPanel, Lino.FieldBoxMixin);
Lino.ActionFormPanel = Ext.extend(Lino.ActionFormPanel, {
  //~ layout:'fit'
  //~ ,autoHeight: true
  //~ ,frame: true
  window_title : "Action Parameters",
  constructor : function(config){
    config.bbar = [
        {text: 'OK', handler: this.on_ok, scope: this},
        {text: 'Cancel', handler: this.on_cancel, scope: this}
    ];
    Lino.ActionFormPanel.superclass.constructor.call(this, config);
  }
  //~ ,initComponent : function(){
    //~ Lino.ActionFormPanel.superclass.initComponent.call(this);
  //~ }
  ,on_cancel : function() { 
    this.get_containing_window().close();
  }
  ,on_ok : function() { 
    var panel = this.requesting_panel;
    // var panel = this.get_containing_window().main_item;
    // console.log("20131004 on_ok",this,panel,arguments);
    var actionName = this.action_name;
    var pk = this.record_id || this.default_record_id;
    if (pk == undefined && this.base_params) { pk = this.base_params.mk; }
    if (pk == undefined && panel) {
        pk = panel.get_current_record().id;
    }
    if (pk == undefined) {
        // 20170101 VerifyUser action
        pk = '-99998';
        // Lino.alert("Sorry, dialog action without base_params.mk");
        // return;
    }
    var self = this;
    // function on_success() { self.get_containing_window().close(); };
    // see 20131004 and 20140430
    var url = '/api';

    // 20150119 : The OK button on AgentsByClient.create_visit went to
    // /api/pcsw/Clients/ instead of /api/pcsw/Coachings/
    // if (panel) 
    //     url += panel.ls_url;
    // else 
    //     url += this.ls_url;

    if (this.ls_url) 
        url += this.ls_url;
    else 
        url += panel.ls_url;
    url += '/' + pk;
    // wrap into function to prepare possible recursive call
    var fn = function(panel, btn, step) {
      var p = {};
      self.add_field_values(p)
      if (panel) Ext.apply(p, panel.get_base_params());
      delete p.pv;
      // console.log("20150130", p.pv);

      Lino.call_ajax_action(
          panel, 'GET', url, p, actionName, step, fn); //  , on_success);
    }
    fn(panel, null, null);
    
    
  }
  /* ActionFormPanel*/
  ,set_status : function(status, rp){
    this.requesting_panel = Ext.getCmp(rp);
    //~ console.log('20120918 ActionFormPanel.set_status()',status,rp,this.requesting_panel);
    this.clear_base_params();
    if (status == undefined) status = {};
    //~ if (status.param_values) 
    this.set_field_values(status.field_values);
    if (status.base_params) this.set_base_params(status.base_params);
    this.record_id = status.record_id;
  }
  
  ,before_row_edit : function(record) {}
  ,add_field_values : function (p) { // similar to add_param_values()
      /* LS 20160517 : Until now Lino tested whether the form is
       dirty, and if not, submitted only the values which had been set
       by set_status. But now status_field_values can be empty because
       Action.keep_user_values is True. In that case we must submit
       the current values even if the form is not dirty.  I don't
       remember why we had this feature of not submitting unmodified
       field values, so I remove this feature for now. */
      p.fv = this.get_field_values();
      // if (this.form.isDirty()) {
      //   p.fv = this.get_field_values();
      // }else{
      //   // console.log("20160517 add_param_values not dirty, status_field_values",
      //   //             this.status_field_values);
      //   if (this.status_field_values) 
      //     p.fv = Lino.fields2array(
      //         this.fields, this.status_field_values);
      // }
      //~ console.log("20120203 add_param_values added pv",pv,"to",p);
  }
  ,get_field_values : function() {
      return Lino.fields2array(this.fields);
  }
  ,set_field_values : function(pv) {
      // console.log('20160516 MainPanel.set_param_values', pv);
      // if Action.keep_user_values, we receive an empty dict ({})
      this.status_field_values = pv;
      if (pv) {
          this.form.my_loadRecord(pv);
          var record = { data: pv };
          this.before_row_edit(record);
      } else {
          this.form.reset(); 
          this.before_row_edit();
      }
  }
  ,config_containing_window : function(wincfg) { 
      wincfg.title = this.window_title;
      wincfg.keys = [
        { key: Ext.EventObject.ENTER, fn: this.on_ok }
      ]
      
      if (!wincfg.defaultButton) this.getForm().items.each(function(f){
          if(f.isFormField){ 
              wincfg.defaultButton = f;
              return false;
          }
      });

  }
});

    
Lino.fields2array = function(fields, values) {
    // console.log('20160517 fields2array gonna loop on', fields, values);
    var pv = Array(fields.length);
    for(var i=0; i < fields.length;i++) {
        var f = fields[i]
        if (values) 
          var v = values[f.name];
        else 
          var v = f.getValue();
        if (f.formatDate) {
            pv[i] = f.formatDate(v); 
        } else {
            pv[i] = v; // f.getValue(); 
        }
    }
    // console.log('20160517 fields2array returns', pv);
    return pv;
}


Lino.FormPanel = Ext.extend(Ext.form.FormPanel,Lino.MainPanel);
Lino.FormPanel = Ext.extend(Lino.FormPanel,Lino.PanelMixin);
Lino.FormPanel = Ext.extend(Lino.FormPanel,{
  params_panel_hidden : false,
  save_action_name : null, 
  //~ base_params : {},
  //~ trackResetOnLoad : true,
  //~ query_params : {},
  //~ 20110119b quick_search_text : '',
  constructor : function(config,params){
    if (params) Ext.apply(config,params);
    this.base_params = {};
    //~ ww.config.base_params.query = ''; // 20111018
    //~ console.log(config);
    //~ console.log('FormPanel.constructor() 1',config)
    //~ Ext.applyIf(config,{base_params:{}});
    //~ console.log('FormPanel.constructor() 2',config)
      
    config.trackResetOnLoad = true;
    
    Lino.FormPanel.superclass.constructor.call(this, config);
      
    //~ this.set_base_param('$URL_PARAM_FILTER',null); // 20111018
    //~ this.set_base_param('$URL_PARAM_FILTER',''); // 20111018
      
  },
  initComponent : function(){
    
    this.containing_panel = this;

    //~ console.log("20111201 containing_window",this.containing_window,this);


    var actions = Lino.build_buttons(this, this.ls_bbar_actions);
    if (actions) {
        this.bbar = actions.bbar;
        // console.log("20160829 tooltip", actions.bbar);
    //~ } else {
        //~ this.bbar = [];
    }
    //~ Ext.apply(config,Lino.build_buttons(this,config.ls_bbar_actions));
    //~ config.bbar = Lino.build_buttons(this,config.ls_bbar_actions);
    //~ var config = this;
    
    //~ if (this.containing_window instanceof Lino.DetailWrapper) {
    
    //~ console.log('20120121 initComponent', this.action_name);
    //~ if (this.action_name == 'detail' | this.action_name == 'show') {
    //~ if (this.action_name != 'insert') {
    if (! this.hide_top_toolbar) {
      this.tbar = [];
      // 20111015    
      if (! this.hide_navigator) {
        this.record_selector = new Lino.RemoteComboFieldElement({
          store: new Lino.ComplexRemoteComboStore({
            //~ baseParams: this.containing_window.config.base_params,
            baseParams: this.get_base_params(),
            //~ value: this.containing_window.config.base_params.query,
            proxy: new Ext.data.HttpProxy({
              url: '/choices' + this.ls_url,
              method:'GET'
            })
          }),
          pageSize:25,
          listeners: { 
            scope:this, 
            select:function(combo,record,index) {
              //~ console.log('jumpto_select',arguments);
              this.goto_record_id(record.id);
            }
          },
          emptyText: "Go to record"
        })
        this.tbar = this.tbar.concat([this.record_selector]);
        
        this.tbar = this.tbar.concat([
          this.first = new Ext.Toolbar.Button({
              tooltip:"First",disabled:true,
              handler:this.moveFirst,scope:this,iconCls:'x-tbar-page-first'}),
          this.prev = new Ext.Toolbar.Button({
              tooltip:"Previous",disabled:true,
              handler:this.movePrev,scope:this,iconCls:'x-tbar-page-prev'}),
          this.next = new Ext.Toolbar.Button({
              tooltip:"Next",disabled:true,
              handler:this.moveNext,scope:this,iconCls:'x-tbar-page-next'}),
          this.last = new Ext.Toolbar.Button({
              tooltip:"Last",disabled:true,
              handler:this.moveLast,scope:this,iconCls:'x-tbar-page-last'})
        ]);
      }
      this.tbar = this.add_params_panel(this.tbar);
      
      //~ console.log(20101117,this.containing_window.refresh);
      this.tbar = this.tbar.concat([
        {
          //~ text:'Refresh',
          handler:function(){ this.do_when_clean(false,this.refresh.createDelegate(this)) },
          iconCls: 'x-tbar-loading',
          tooltip:"Reload current record",
          scope:this}
      ]);
          
      if (this.bbar) { // since 20121016
        if (this.tbar) {
            this.tbar = this.tbar.concat(['-']) ;
        } else {
          this.tbar = [];
        }
        this.tbar = this.tbar.concat(this.bbar) ;
        this.bbar = undefined;
      }
    
      this.tbar = this.tbar.concat([
          '->',
          this.displayItem = new Ext.Toolbar.TextItem({})
      ]);
          
    }
    //~ if (this.content_type && this.action_name != 'insert') {
      //~ this.bbar = this.bbar.concat([
        //~ '->',
        //~ { text: "[$_('Help Text Editor')]",
          //~ handler: Lino.help_text_editor,
          //~ qtip: "$_('Edit help texts for fields on this model.')",
          //~ scope: this}
      //~ ])
    //~ }
    //~ this.before_row_edit = config.before_row_edit.createDelegate(this);
      
    //~ if (this.master_panel) {
        //~ this.set_base_params(this.master_panel.get_master_params());
    //~ }
      
    Lino.FormPanel.superclass.initComponent.call(this);

    // this.on('show',
    //         function(){ this.init_focus();}, 
    //         this);
    
    this.on('render',function(){
      this.loadMask = new Ext.LoadMask(this.bwrap,{msg:"Please wait..."});
    },this);
    
    
    if (this.action_name == 'insert') {
      this.cascade(function(cmp){
        if (cmp.disabled_in_insert_window) {
            // console.log('20110613 disabled_in_insert_window', cmp);
            //~ cmp.disable();
            cmp.hide();
        }
      });
      
    }
    
  },
  
  unused_init_focus : function(){ 
    // set focus to the first field
    console.log("20140205 Lino.FormPanel.init_focus");
    // Lino.FormPanel.superclass.focus.call(this);
    this.getForm().items.each(function(f){
        if(f.isFormField && f.rendered){ 
            f.focus();
            console.log("20140205 focus", f);
            return false;
        }
    });
  },

  /* FormPanel */
  get_status : function(){
      var st = {
        base_params: this.get_base_params(),
        // data_record : this.get_current_record()
      }
      var rec = this.get_current_record();
      if (rec) st.record_id = rec.id;
      // 20140917 : get_status must not store the whole data_record
      // because that would prevent the form to actually reload
      // when set_status is called after a child window closed.
      
      var tp = this.items.get(0);
      if (tp instanceof Ext.TabPanel) {
        st.active_tab = tp.getActiveTab();
      }
      st.param_values = this.status_param_values;
      return st;
  },

  /* FormPanel */
  set_status : function(status, rp){
    this.requesting_panel = Ext.getCmp(rp);
    // console.log('20140917 FormPanel.set_status()', status);
    this.clear_base_params();
    if (status == undefined) status = {};
    //~ if (status.param_values) 
    this.set_param_values(status.param_values);
    if (status.base_params) this.set_base_params(status.base_params);
    var tp = this.items.get(0);
    if (tp instanceof Ext.TabPanel) {
      if (status.active_tab) {
        //~ console.log('20111201 active_tab',this.active_tab,this.items.get(0));
        //~ tp.activeTab = status.active_tab;
        tp.setActiveTab(status.active_tab);
        //~ this.main_item.items.get(0).activate(status.active_tab);
      } else {
        if (! status.data_record) {  // 20141206
            tp.setActiveTab(0);
        }
      }
    }
    
    if (status.data_record) {
      /* defer because set_window_title() didn't work otherwise */
      // 20140421 removed defer for bughunting to simplify side effects
      // this.set_current_record.createDelegate(
      //     this, [status.data_record]).defer(100);
      this.set_current_record(status.data_record);
      //~ return;
    } else {
        var record_id = status.record_id || this.default_record_id;
        if (record_id != undefined) { 
          /* possible values include 0 and null, 0 being a valid record id, 
          null the equivalent of undefined
          */
          this.load_record_id(record_id);
        } else {
            this.set_current_record(undefined);
        }
    }
    // this.init_focus()
  }
  ,get_base_params : function() {  /* FormPanel */
    // needed for insert_action
    var p = Ext.apply({}, this.base_params);
    Lino.insert_subst_user(p);
    return p;
  }
  ,set_base_params : function(p) {
    //~ this.base_params = Ext.apply({},this.base_params); // make sure it is an instance variable
    delete p['query'] // 20120725
    Ext.apply(this.base_params,p);
    if (this.record_selector) {
        var store = this.record_selector.getStore();
        for (k in p) store.setBaseParam(k,p[k]);
        delete this.record_selector.lastQuery;
        //~ console.log("20120725 record_selector.setBaseParam",p)
    }
  }
  ,clear_base_params : function() {
      this.base_params = {};
      Lino.insert_subst_user(this.base_params);
  }
  ,set_base_param : function(k,v) {
    this.base_params[k] = v;
  }
  ,after_delete : function() {
    if (this.current_record.navinfo.next)
      this.moveNext();
    else if (this.current_record.navinfo.prev)
      this.movePrev();
    else 
      this.abandon();
  }
  ,moveFirst : function() {this.goto_record_id(
      this.current_record.navinfo.first)}
  ,movePrev : function() {this.goto_record_id(
      this.current_record.navinfo.prev)}
  ,moveNext : function() {this.goto_record_id(
      this.current_record.navinfo.next)}
  ,moveLast : function() {this.goto_record_id(
      this.current_record.navinfo.last)}
  
  ,refresh : function(unused) { 
      this.refresh_with_after();
  }
  /* FormPanel */
  ,refresh_with_after : function(after) { 
    // console.log('20140917 Lino.FormPanel.refresh_with_after()',this);
    if (this.current_record) {
        this.load_record_id(this.current_record.id, after);
    } else {
        this.set_current_record(undefined, after);
    }
  }
  
  ,do_when_clean : function(auto_save, todo) {
    var this_ = this;
    if (this.form.isDirty()) {
        // console.log('20140421 do_when_clean : form is dirty')
        if (auto_save) {
            this_.save(todo);
        } else {
          //~ console.log('20111217 do_when_clean() form is dirty',this.form);
          var config = {title:"Confirmation"};
          config.buttons = Ext.MessageBox.YESNOCANCEL;
          config.msg = "Save changes to current record ?";
          config.fn = function(buttonId,text,opt) {
            //~ console.log('do_when_clean',buttonId)
            if (buttonId == "yes") {
                //~ Lino.submit_detail(this_,undefined,todo);
                //~ this_.containing_window.save(todo);
                this_.save(todo);
            } else if (buttonId == "no") { 
              todo();
            }
          }
          Ext.MessageBox.show(config);
        }
    }else{
      // console.log('20140421 do_when_clean : now!')
      todo();
    }
  }
  
  ,goto_record_id : function(record_id) {
    // console.log('20140917 Lino.FormPanel.goto_record_id()',record_id);
    //~ var this_ = this;
    //~ this.do_when_clean(function() { this_.load_record_id(record_id) }
    this.do_when_clean(
        true, this.load_record_id.createDelegate(this, [record_id]));
  }
  
  ,load_record_id : function(record_id, after) {
    var this_ = this;
    var p = Ext.apply({}, this.get_base_params());
    if (this.action_name)
        p.an = this.action_name;
    p.rp = this.getId();
    p.fmt = 'json';
    this.add_param_values(p);
    if (this.loadMask) this.loadMask.show();
    Ext.Ajax.request({ 
      waitMsg: 'Loading record...',
      method: 'GET',
      params: p,
      scope: this,
      url: this.get_record_url(record_id),
      success: function(response) {   
        // todo: convert to Lino.action_handler.... but result 
        if (this.loadMask) this.loadMask.hide();
        if (response.responseText) {
          var rec = Ext.decode(response.responseText);
          // console.log('20150905 load_record_id success', rec);
          this.set_param_values(rec.param_values);
          this.set_current_record(rec, after);
        }
      },
      failure: Lino.ajax_error_handler(this)
    });
  }

  ,abandon : function () {
    Ext.MessageBox.alert('Note',
      "No more records to display. Detail window has been closed.");
    Lino.close_window();
  }
  
  ,set_current_record : function(record, after) {
    // console.log('20160825 set_current_record', record);
    if (this.record_selector) {
        this.record_selector.clearValue();
        // e.g. InsertWrapper FormPanel doesn't have a record_selector
    }
    this.current_record = record;
    if (record && record.data) {
      this.enable();
      this.form.my_loadRecord(record.data);
      this.set_window_title(record.title);
      //~ this.getBottomToolbar().enable();
      var da = record.data.disabled_actions;
      if (da) {
          //~ console.log('20120528 disabled_actions =',da,this.getBottomToolbar());
          //~ 20121016 this.getBottomToolbar().items.each(function(item,index,length){
          if(this.hide_top_toolbar) {
              var tb = this.getBottomToolbar();
          } else {
              var tb = this.getTopToolbar();
          }
          if (tb) tb.items.each(function(item,index,length){
              //~ console.log('20120528 ',item.itemId,'-->',da[item.itemId]);
              if (da[item.itemId]) item.disable(); else item.enable();
          });
      };
      if (this.disable_editing | record.data.disable_editing) {
          //~ console.log("20120202 disable_editing",record.title);
          this.form.items.each(function(cmp){
            if (!cmp.always_enabled) cmp.disable();
          },this);
      } else {
          this.form.items.each(function(cmp){
            //~ console.log("20120202",cmp);
            if (record.data.disabled_fields[cmp.name]) cmp.disable();
            else cmp.enable();
          },this);
        
          //~ if (record.data.disabled_fields) {
              //~ for (i = 0; i < record.data.disabled_fields.length; i++) {
                  //~ var flds = this.find('name',record.data.disabled_fields[i]);
                  //~ if (flds.length == 1) { 
                    //~ flds[0].disable(); 
                  //~ }
              //~ }
          //~ }
      };
      if (this.first) {
        if (record.navinfo  && ! this.hide_navigator) {
          this.first.setDisabled(!record.navinfo.first);
          this.prev.setDisabled(!record.navinfo.prev);
          this.next.setDisabled(!record.navinfo.next);
          this.last.setDisabled(!record.navinfo.last);
          this.displayItem.setText(record.navinfo.message);
        } else {
          this.first.setDisabled(true);
          this.prev.setDisabled(true);
          this.next.setDisabled(true);
          this.last.setDisabled(true);
        }
      }
    } else {
      if (this.form.rendered) 
        this.form.reset(); /* FileUploadField would fail when resetting a non-rendered form */
      //~ this.disable();
      //~ this.getBottomToolbar().disable();
      this.form.items.each(function(cmp){
        cmp.disable();
      },this);
      this.set_window_title(this.empty_title);
      //~ this.containing_window.window.setTitle(this.empty_title);
      if (!this.hide_navigator) {
        this.first.disable();
        this.prev.disable();
        this.next.disable();
        this.last.disable();
      }
    }
    // console.log('20140917 gonna call before_row_edit', record);
        var current_focus_fields = false;
        for (var i = 0; i < this.form.items.items.length;i++) {
            if (this.form.items.items[i].hasFocus) current_focus_fields = i;
        }
    this.before_row_edit(record);
        if (current_focus_fields != false){
            this.form.items.items[current_focus_fields].focus();
        }
    // console.log('20140917 gonna call after', after);
    if (after) after();
  },
  
  /* FormPanel */
  before_row_edit : function(record) {},
  search_change : function(field,oldValue,newValue) {
    //~ console.log('search_change',field.getValue(),oldValue,newValue)
    this.set_base_param('query',field.getValue()); 
    this.refresh();
  },
  
  get_selected : function() { return [ this.current_record ] },
  get_current_record : function() {  
    //~ console.log(20100714,this.current_record);
    return this.current_record 
  },
  
  get_permalink_url : function() {
      var rec = this.get_current_record();
      if (rec && ! rec.phantom && rec.id != -99998)
          return '/api' 
              + this.ls_url + '/' + rec.id;
      return '/api' + this.ls_url;
    
  },
  add_param_tab : function(p) {
    var main = this.items.get(0);
    if (main.activeTab) {
      var tab = main.items.indexOf(main.activeTab);
      // console.log('20150130 main.activeTab', tab, main.activeTab);
      if (tab) p.tab = tab;
    // } else {
    //   console.log('20150130 no main.activeTab');
    }
  },
  get_permalink_params : function() {
    var p = {};
    //~ var p = {an:'detail'};
    if (this.action_name)
        p.an = this.action_name;
    this.add_param_tab(p)
    this.add_param_values(p)
    return p;
  }
  
  ,validate_form : function() {  // not used. see actions.ValidateForm
      // var ov = {};
      // this.form.items.each(function(f){
      //     ov[f.name] = f.originalValue
      // });

      // console.log('20140509 FormPanel.validate_form', ov);
      // var after = function() { 
      //     this.form.items.each(function(f){
      //         f.originalValue = ov[f.name];
      //     });
      // }
      // this.save2(null, 'validate', after);
      this.save2(null, 'validate');
  }

  /* Lino.FormPanel */
  ,save : function(after) {
    var action_name = this.save_action_name;
    if (!action_name) 
        action_name = this.action_name;
    // console.log('20140503 FormPanel.save', action_name);
    this.save2(after, action_name);
  }

  ,save2 : function(after, action_name) {
    var rec = this.get_current_record();
    if (!rec) { 
        Lino.notify("Sorry, no current record."); 
        return; 
    }
    var panel = this;
    if (this.has_file_upload) this.form.fileUpload = true;
    this.loadMask.show();
    var p = {};
    Ext.apply(p, this.get_base_params());
    p.rp = this.getId();
    p.an = action_name;
    this.add_param_tab(p)
    // console.log('20150216 FormPanel.save()', rec, this.form);
    var submit_config = {
        params: p, 
        scope: this,
        success: function(form, action) {
          this.loadMask.hide();
          Lino.notify(action.result.message);
          Lino.handle_action_result(this, action.result, after);
        },
        failure: function(form,action) { 
          this.loadMask.hide();
          Lino.on_submit_failure(form, action);
        },
        clientValidation: true
    };
    if (rec.phantom) {  // it's a new record
      Ext.apply(submit_config, {
        url: '/api' + this.ls_url,
        method: 'POST'
      });
      // panel.refresh();
      // temporarily disabled. See 20151002
    } else {  // submit on existing row
      Ext.apply(submit_config, {
        url: '/api' 
              + this.ls_url + '/' + rec.id,
        method: 'PUT'
      })
    }
    this.form.submit(submit_config);
  }
  
  ,on_cancel : function() { 
    this.get_containing_window().close();
  }
  ,on_ok : function() { 
      // console.log("20140424");
      // this.save(null, true, this.save_action_name);
      this.save();
  }
  ,config_containing_window : function(wincfg) { 

      // Note that defaultButton means: which component should receive
      // focus when Window is focussed.  If no defaultButton set,
      // specify the first form field.

      if (!wincfg.defaultButton) this.getForm().items.each(function(f){
          if(f.isFormField){ 
              wincfg.defaultButton = f;
              // console.log("20140205 defaultButton", f);
              return false;
          }
      });

      wincfg.keys = [];

      wincfg.keys.push({
          key: Ext.EventObject.ESCAPE, 
          handler: this.on_cancel, scope:this });
      wincfg.keys.push({
          key: 's', ctrl: true, 
             stopEvent: true, handler: this.on_ok, scope:this });
  }

});



Lino.getRowClass = function(record, rowIndex, rowParams, store) {
    //~ console.log(20130816,record);
    //~ return 'x-grid3-row-green';
    //~ return record.data.row_class + ' auto-height';
    return record.data.row_class;
  //~ if (true) {
      //~ return 'x-grid3-row-red';
  //~ }
  //~ if (record.phantom) {
    //~ console.log(20101009,record);
    //~ rowParams.bodyStyle = "color:red;background-color:blue";
    //~ return 'lino-phantom-row';
    //~ }
  //~ console.log('20101009 not a phantom:',record);
  //~ return '';
}

//~ FOO = 0;



Lino.GridStore = Ext.extend(Ext.data.ArrayStore,{ 
  autoLoad: false
  ,load: function(options) {
    //~ foo.bar = baz; // 20120213
    if (!options) options = {};
    if (!options.params) options.params = {};
    options.params.fmt = 'json';
    options.params.rp = this.grid_panel.getId();
    Lino.insert_subst_user(options.params); // since 20121016
      
    var start = this.grid_panel.start_at_bottom ? -1 : 0;
    if (this.grid_panel.hide_top_toolbar) {
        //~ console.log("20120206 GridStore.load() toolbar is hidden");
        options.params.start = start;
        if (this.grid_panel.preview_limit) {
          options.params.limit = this.grid_panel.preview_limit;
        }
    } else {
        var ps = this.grid_panel.calculatePageSize();
        if (!ps) {
          // console.log("GridStore.load() failed to calculate pagesize");
          return false;
        } 
        options.params.limit = ps;
      
        this.grid_panel.getTopToolbar().pageSize =  ps;
        if (options.params.start == undefined)
            // if (start != -1) 
            //     start = this.grid_panel.getTopToolbar().cursor
            options.params.start = start;
      
        // console.log("20141108 GridStore.load() ", options.params);
    }
      
    this.grid_panel.add_param_values(options.params);
    //~ Lino.insert_subst_user(options.params);
    //~ console.log("20120814 GridStore.load()",options.params,this.baseParams);
    return Lino.GridStore.superclass.load.call(this, options);
  }
  // ,insert : function(index, records) {
  //   return Ext.data.Store.prototype.insert.call(this, index, records)
    // return Lino.GridStore.superclass.insert.call(this, index, records);
  // }
});

Lino.get_current_grid_config = function(panel) {
    return panel.get_current_grid_config();
}


// Like the default value for GridView.cellTpl but adds a class "lino-auto-height"
Lino.auto_height_cell_template = new Ext.Template(
'<td class="x-grid3-col x-grid3-cell x-grid3-td-{id} {css}" style="{style}" tabIndex="0" {cellAttr}>',
    '<div class="lino-auto-height x-grid3-cell-inner x-grid3-col-{id}" unselectable="on" {attr}>{value}</div>',
'</td>'
);

Lino.GridPanel = Ext.extend(Ext.grid.EditorGridPanel, Lino.MainPanel);
Lino.GridPanel = Ext.extend(Lino.GridPanel, Lino.PanelMixin);
Lino.GridPanel = Ext.extend(Lino.GridPanel, {
  quick_search_text : '',
  start_at_bottom : false,
  is_searching : false,
  disabled_in_insert_window : true,
  clicksToEdit:2,
  enableColLock: false,
  autoHeight: false,
  params_panel_hidden : false,
  preview_limit : undefined, 
  // fake_row_content: '<br>',
  row_height: 1,
  //~ loadMask: true,
  //~ viewConfig: {
          //~ getRowClass: Lino.getRowClass,
          //~ emptyText:"$_('No data to display.')"
        //~ },
        
        
  loadMask: {msg:"Please wait..."},
  
  constructor : function(config){

    config.plugins = [new Lino.GridFilters()];
    
    
    Lino.GridPanel.superclass.constructor.call(this,config);
    
    //~ if (this.containing_window) {
        //~ console.log("20111206 install refresh");
        //~ this.containing_window.on('show',this.refresh,this);
    //~ }
    
  },
  
  init_containing_window : function(win) { 
    //~ console.log("20111206 install refresh");
    //~ win.on('show',this.refresh,this);
  }

  ,handle_key_event : function(e) {
    // console.log("20140514 handle_key_event", e, this.keyhandlers);
    var h = this.keyhandlers[e.keyCode];
    if (h) {
        h(this);
        e.stopEvent();
    }
  }
  
  ,initComponent : function(){
    
    /* 
    Problem 20111206:
    When a GridPanel is the main item of the window, then it doesn't 
    have it's own header but uses the window's header bar.
    We must do this in initComponent because e.g. in beforerender 
    it's already to late: a header element has been created because 
    there was a title.
    But Lino.Window adds itself as `this.containing_window` 
    only after the GridPanel has been initialized.
    Workaround is to generate a line "params.containing_window = true;" 
    in the handler function.
    */ 
    if (this.is_main_window) {
        //~ console.log(20111206, 'delete title',this.title,'from',this);
        this.tools = undefined;  
        this.title = undefined;  /* simply deleting it 
          isn't enough because that would only 
          unhide the title defined in some base class. */
    } 
    //~ else console.log(20111206, 'dont delete title',this.title,'from',this);
    
    /* e.g. when slave gridwindow called from a permalink */
    //~ if (this.base_params) Ext.apply(bp,this.base_params);  
    
    var proxy = new Ext.data.HttpProxy({ 
      // 20120814 
      url: '/api' + this.ls_url
      ,method: "GET"
      //~ ,url: ADMIN_URL + '/restful' + this.ls_url
      //~ ,restful: true 
      //~ ,listeners: {load:on_proxy_load} 
      //~ ,listeners: {write:on_proxy_write} 
    });
    //~ config.store = new Ext.data.JsonStore({ 
    //~ this.store = new Ext.data.ArrayStore({ 
    this.store = new Lino.GridStore({ 
      grid_panel: this
      ,listeners: { exception: Lino.on_store_exception }
      ,remoteSort: true
      ,totalProperty: "count"
      ,root: "rows"
      //~ ,id: "id" 
      ,proxy: proxy
      //~ autoLoad: this.containing_window ? true : false
      ,idIndex: this.pk_index
      //~ ,baseParams: bp
      ,fields: this.ls_store_fields
      ,idProperty: this.ls_id_property 
      // 20120814
      //~ ,writer : new Ext.data.JsonWriter({
        //~ writeAllFields: false
        //~ ,listful: true
      //~ })
      //~ ,restful : true
    });
      
    //~ console.log('config.pk_index',config.pk_index,config.store),
    delete this.ls_store_fields;
      
    var this_ = this;
    //~ var grid = this;
    this.store.on('load', function() {
        //~ console.log('20120814 GridStore.on(load)',this_.store);
        this_.set_param_values(this_.store.reader.arrayData.param_values);
        //~ this_.set_status(this_.store.reader.arrayData.status);
        //~ 20120918
        this.getView().getRowClass = Lino.getRowClass;
        
        if (this_.store.reader.arrayData.no_data_text) {
            //~ this.viewConfig.emptyText = this_.store.reader.arrayData.no_data_text;
            this.getView().emptyText = this_.store.reader.arrayData.no_data_text;
            this.getView().refresh();
        }
        if (this_.containing_window)
            this_.set_window_title(this_.store.reader.arrayData.title);
            //~ this_.containing_window.setTitle(this_.store.reader.arrayData.title);
        if (!this.is_searching) { // disabled 20121025: quick_search_field may not lose focus
          this.is_searching = false;
          if (this_.selModel.getSelectedCell){
              if (this_.getStore().getCount()) // there may be no data
                  this_.selModel.select(0,0); 
          } else {
              this_.selModel.selectFirstRow();
              this_.getView().focusEl.focus();
          }
        } 
        //~ else console.log("is_searching -> no focussing");
        //~ var t = this.getTopToolbar();
        //~ var activePage = Math.ceil((t.cursor + t.pageSize) / t.pageSize);
        //~ this.quick_search_field.focus(); // 20121024
      }, this
    );
    var actions = Lino.build_buttons(this, this.ls_bbar_actions);
    //~ Ext.apply(config,Lino.build_buttons(this,config.ls_bbar_actions));
    //~ config.bbar, this.cmenu = Lino.build_buttons(this,config.ls_bbar_actions);
    //~ this.cmenu = new Ext.menu.Menu({items: config.bbar});
    delete this.ls_bbar_actions
    if (actions) {
        this.cmenu = actions.cmenu;
        this.keyhandlers = actions.keyhandlers;
    }
    
    if (!this.hide_top_toolbar) {  
      var tbar = [ 
        this.quick_search_field = new Ext.form.TextField({ 
          //~ fieldLabel: "Search"
          listeners: { 
            scope:this_
            //~ ,change:this_.search_change
            
            ,render: Lino.quicktip_renderer("Quick Search","Enter a text to use as quick search filter")
            
            //~ ,keypress: this.search_keypress 
            ,blur: function() { this.is_searching = false}
          }
          ,validator:function(value) { return this_.search_validate(value) }
          //~ ,tooltip: "Enter a quick search text, then press TAB"
          //~ value: text
          //~ scope:this, 
          //~ ,enableKeyEvents: true
          //~ listeners: { keypress: this.search_keypress }, 
          //~ id: "seachString" 
      })];
      tbar = this.add_params_panel(tbar);
      var menu = [];
      var set_gc = function(index) {
        return function() {
          //~ console.log('set_gc() 20100812');
          this.getColumnModel().setConfig(
              this.apply_grid_config(index,this.ls_grid_configs,this.ls_columns));
        }
      }
      for (var i = 0; i < this.ls_grid_configs.length;i++) {
        var gc = this.ls_grid_configs[i];
        menu.push({text:gc.label,handler:set_gc(i),scope:this})
      }
      if(menu.length > 1) {
        tbar = tbar.concat([
          { text:"View",
            menu: menu,
            tooltip:"Select another view of this report"
          }
        ]);
      }
      
      if (actions) {
        tbar = tbar.concat(actions.bbar);
          //~ this.bbar = actions.bbar;
      }
      
      this.tbar = new Ext.PagingToolbar({ 
        store: this.store, 
        prependButtons: true, 
        //~ pageSize: this.page_length, 
        pageSize: 1, 
        displayInfo: true, 
        beforePageText: "Page",
        afterPageText: "of {0}",
        displayMsg: "Displaying {0} - {1} of {2}",
        firstText: "First page",
        lastText: "Last page",
        prevText: "Previous page",
        nextText: "Next page",
        items: tbar
      });
    }
      
    if (this.cell_edit) {
      this.selModel = new Ext.grid.CellSelectionModel()
      this.get_selected = function() {
        //~ console.log(this.getSelectionModel().selection);
        if (this.selModel.selection)
            return [ this.selModel.selection.record ];
        return [this.store.getAt(0)];
      };
      this.get_current_record = function() { 
        if (this.getSelectionModel().selection) 
          return this.selModel.selection.record;
        return this.store.getAt(0);
      };
    } else { 
      this.selModel = new Ext.grid.RowSelectionModel() 
      this.get_selected = function() {
        var sels = this.selModel.getSelections();
        if (sels.length == 0) sels = [this.store.getAt(0)];
        return sels
      };
      this.get_current_record = function() { 
        var rec = this.selModel.getSelected();
        if (rec == undefined) rec = this.store.getAt(0);
        return rec
      };
    };
    this.columns  = this.apply_grid_config(this.gc_name,this.ls_grid_configs,this.ls_columns);
    
    Lino.GridPanel.superclass.initComponent.call(this);
    
    this.on('resize', function(){
      //~ console.log("20120213 resize",arguments)
      this.refresh();
      },this);
    this.on('viewready', function(){
      //~ console.log("20120213 resize",arguments);
      this.view_is_ready = true;
      this.refresh(); // removed 20130911
      },this);
    this.on('afteredit', this.on_afteredit); // 20120814
    this.on('beforeedit', this.on_beforeedit);
    this.on('beforeedit',function(e) { this.before_row_edit(e.record)},this);
    if (this.cell_edit) {
        this.on('cellcontextmenu', Lino.cell_context_menu, this);
    } else {
        this.on('rowcontextmenu', Lino.row_context_menu, this);
    }
    //~ this.on('contextmenu', Lino.grid_context_menu, this);
    
    delete this.cell_edit;
    
  },
  
  //~ onResize : function(){
      //~ console.log("20120206 GridPanel.onResize",arguments);
      //~ Lino.GridPanel.superclass.onResize.apply(this, arguments);
      //~ this.refresh();
  //~ },
  
  
  get_status : function(){
    var st = { base_params : this.get_base_params()};
    if (!this.hide_top_toolbar) {
        // #866
        if (this.getStore().lastOptions != undefined && this.getStore().lastOptions.params != undefined){
            st.current_page = Math.round(this.getStore().lastOptions.params.start / this.getStore().lastOptions.params.limit ) + 1 ;
        }
    }
    st.param_values = this.status_param_values;
    //~ console.log("20120213 GridPanel.get_status",st);
    return st;
  },
  
  /* 
  Lino.GridPanel.set_status() 
  */
  set_status : function(status, rp){
    this.requesting_panel = Ext.getCmp(rp);
    // console.log("20140527 GridPanel.set_status", status);
    this.clear_base_params();
    if (status == undefined) status = {base_params:{}};
    this.set_param_values(status.param_values);
    if (status.base_params) { 
      this.set_base_params(status.base_params);
    }
    if (status.show_params_panel != undefined) {
        if (this.toggle_params_panel_btn) {
            //~ this.toggle_params_panel_btn.toggle(status.show_params_panel=='true');
            this.toggle_params_panel_btn.toggle(status.show_params_panel);
        }
    }
    if (!this.hide_top_toolbar) {
      //~ console.log("20120213 GridPanel.getTopToolbar().changePage",
          //~ status.current_page || 1);
      this.getTopToolbar().changePage(status.current_page || 1);
    }
    //~ this.fireEvent('resize');
    //~ this.refresh.defer(100,this); 
    //~ this.onResize.defer(100,this); 
    //~ this.refresh(); 
    //~ this.doLayout(); 
    //~ this.onResize(); 
    //~ this.store.load();
  },
  
  refresh : function(unused) { 
    this.refresh_with_after();
  },
  /* GridPanel */
  refresh_with_after : function(after) { 
    // console.log('20140504 Lino.GridPanel.refresh '+ this.store.proxy.url);
    //~ var bp = { fmt:'json' }
    if (! this.view_is_ready) return;
    
    if (this.containing_panel) {
        //~ Ext.apply(p,this.master_panel.get_master_params());
        //~ Ext.apply(options.params,this.containing_panel.get_master_params());
        this.set_base_params(this.containing_panel.get_master_params());
        // 20130911
        if (!this.store.baseParams.mk) {  
            return;
        }
    }
    
    //~ console.log('20130911 Lino.GridPanel.refresh_with_after',this.containing_panel.get_master_params());
    
    var options = {};
    if (after) {
        options.callback = function(r,options,success) {if(success) after()}
    }
      
    //~ if (!this.rendered) {
        //~ console.log("20120206 GridPanel.refresh() must wait until rendered",options);
        //~ this.grid_panel.on('render',this.load.createDelegate(this,options))
        //~ return;
    //~ }
    // Ticket 802
    if (this.store.lastOptions != undefined){
        var params = {};
        params.limit = this.store.lastOptions.params.limit;
        params.start = this.store.lastOptions.params.start;
        options.params = params;
    }
    this.store.load(options);
  },
  
  /* pageSize depends on grid height (Trying to remove scrollbar)
  Thanks to 
  - Christophe Badoit on http://www.sencha.com/forum/showthread.php?82647
  - http://www.sencha.com/forum/archive/index.php/t-37231.html
  */
  calculatePageSize : function(second_attempt) {
    //~ if (!this.rendered) { 
    if (!this.view_is_ready) { 
      //~ console.log('Cannot calculatePageSize() : not rendered');
      return false; }
    //~ if (!this.isVisible()) { 
      //~ console.log('calculatePageSize : not visible');
      //~ return false; }
      
    //~ console.log('getFrameHeight() is',this.getFrameHeight());
    //~ console.log('getView().scroller.getHeight() is',this.getView().scroller.getHeight());
    //~ console.log('mainBody.getHeight() is',this.getView().mainBody.getHeight());
    //~ console.log('getInnerHeight() is',this.getInnerHeight());
    //~ console.log('getHeight() is',this.getHeight());
    //~ console.log('el.getHeight() is',this.getEl().getHeight());
    //~ console.log('getGridEl().getHeight() is',this.getGridEl().getHeight());
    //~ console.log('getOuterSize().height is',this.getOuterSize().height);
    //~ console.log('getBox().height is',this.getBox().height);
    //~ console.log('getResizeEl.getHeight() is',this.getResizeEl().getHeight());
    //~ console.log('getLayoutTarget().getHeight() is',this.getLayoutTarget().getHeight());
      
    // var rowHeight = this.row_height * 11; experimental value 11
    // same as in ext_renderer.py that's not enough because it is the
    // height of one text line. But here we need the outer height of a
    // grid row containing that many text lines.

    var row_content = '&nbsp;'
    for (var i = 0; i < this.row_height;i++) {
        row_content += '<br>';
    }

    var Element = Ext.Element;
    var gv = this.view;
    var fakeBody = new Element(Element.fly(gv.scroller).child('div.x-grid3-body'));
    var rowTemplate = gv.templates.row;
    var cellTemplate = gv.templates.cell;
    var tstyle  = 'width:' + gv.getGridInnerWidth() + 'px;';
    // console.log("20160615", this.fake_row_content);
    var cells = cellTemplate.apply({value:row_content});
    var markup = rowTemplate.apply({
            tstyle: tstyle,
            cols  : 1,
            cells : cells,
            alt   : ''
        });        
    fakeBody.dom.innerHTML = gv.templates.body.apply({rows: markup});
    var row = fakeBody.dom.childNodes[0];
    var rowHeight = Ext.get(row).getHeight();

    //~ console.log('rowHeight is ',rowHeight,this,caller);
    //~ this.getView().syncScroll();
    //~ this.getView().initTemplates();
    var height = this.getView().scroller.getHeight();

    //~ console.log('getView().scroller.getHeight() is',this.getView().scroller.getHeight());
    //~ console.log('getInnerHeight() - getFrameHeight() is',
      //~ this.getInnerHeight(), '-',
      //~ this.getFrameHeight(), '=',
      //~ this.getInnerHeight() - this.getFrameHeight());
    //~ var height = this.getView().mainBody.getHeight();
    //~ var height = this.getView().mainWrap.getHeight();
    //~ var height = this.getView().resizeMarker.getHeight();
    //~ this.syncSize();
    //~ var height = this.getInnerHeight() - this.getFrameHeight();
    //~ var height = this.getHeight() - this.getFrameHeight();
    height -= Ext.getScrollBarWidth(); // leave room for a possible horizontal scrollbar... 
    //~ height -= this.getView().scrollOffset;
    var ps = Math.floor(height / rowHeight);
    //~ console.log('20130816 calculatePageSize():',height,'/',rowHeight,'->',ps);
    ps -= 1; // leave room for a possible phantom row
    //~ return (ps > 1 ? ps : false);
    if (ps > 1) return ps;
    //~ console.log('calculatePageSize() found less than 1 row:',height,'/',rowHeight,'->',ps);
    //~ foo.bar = baz; // 20120213
    return 5; // preview_limit
    //~ if (second_attempt) {
        //~ console.log('calculatePageSize() abandons after second attempt:',
          //~ height,'/',rowHeight,'->',ps);
      //~ return 5;
    //~ }
    //~ return this.calculatePageSize.defer(500,this,[true]);
  },
  
  onCellDblClick : function(grid, row, col){
      //~ console.log("20120307 onCellDblClick",this,grid, row, col);
      if (this.ls_detail_handler) {
          //~ Lino.notify('show detail');
          Lino.show_detail(this);
          return false;
      }else{
        //~ console.log('startEditing');
        this.startEditing(row,col);
      }
  },
  get_base_params : function() {  /* Lino.GridPanel */
    var p = Ext.apply({}, this.store.baseParams);
    Lino.insert_subst_user(p);
    // if (this.quick_search_field)
    //     if (this.quick_search_field.getValue())
    //         p.query = this.quick_search_field.getValue();
    return p;
  },
  set_base_params : function(p) {
    // console.log('20130911 GridPanel.set_base_params',p)
    for (k in p) this.store.setBaseParam(k,p[k]);
    //~ this.store.baseParams = p;
    if (this.quick_search_field)
      this.quick_search_field.setValue(p.query || "");
    //~ if (p.param_values) 
        //~ this.set_param_values(p.param_values);  
  },
  clear_base_params : function() {
      this.store.baseParams = {};
      Lino.insert_subst_user(this.store.baseParams);
  },
  set_base_param : function(k,v) {
    this.store.setBaseParam(k,v);
  },
  
  //~ get_permalink_params : function() {
    //~ var p = {};
    //~ return p;
  //~ },
  
  before_row_edit : function(record) {},
    
  //~ search_keypress : function(){
    //~ console.log("2012124 search_keypress",arguments);
  //~ },
  search_validate : function(value) {
    if (value == this.quick_search_text) return true;
    this.is_searching = true;
    //~ console.log('search_validate',value)
    this.quick_search_text = value;
    this.set_base_param('query',value); 
    //~ this.getTopToolbar().changePage(1);
    this.getTopToolbar().moveFirst();
    //~ this.refresh();
    return true;
  },
  
  search_change : function(field,oldValue,newValue) {
    //~ console.log('search_change',field.getValue(),oldValue,newValue)
    this.set_base_param('query',field.getValue()); 
    this.getTopToolbar().moveFirst();
    //~ this.refresh();
  },
  
  apply_grid_config : function(index,grid_configs,rpt_columns) {
    //~ var rpt_columns = this.ls_columns;
    var gc = grid_configs[index];    
    //~ console.log('apply_grid_config() 20100812',name,gc);
    this.gc_name = index;
    if (gc == undefined) {
      return rpt_columns;
      //~ config.columns = config.ls_columns;
      //~ return;
    } 
    //~ delete config.ls_filters
    
    //~ console.log(20100805,config.ls_columns);
    var columns = Array(gc.columns.length);
    for (var j = 0; j < rpt_columns.length;j++) {
      var col = rpt_columns[j];
      for (var i = 0; i < gc.columns.length; i++) {
        if (col.dataIndex == gc.ci[i]) {
          col.width = gc.cw[i];
          col.hidden = gc.ch[i];
          columns[i] = col;
          break;
        }
      }
    }
    
    //~ var columns = Array(rpt_columns.length);
    //~ for (var i = 0; i < rpt_columns.length; i++) {
      //~ columns[i] = rpt_columns[gc.columns[i]];
      //~ columns[i].width = gc.widths[i];
    //~ }
    
    //~ if (gc.hidden_cols) {
      //~ for (var i = 0; i < gc.hidden_cols.length; i++) {
        //~ var hc = gc.hidden_cols[i];
        //~ for (var j = 0; j < columns.length;j++) {
          //~ var col = columns[j];
          //~ if (col.dataIndex == hc) {
            //~ col.hidden = true;
            //~ break
          //~ }
        //~ }
      //~ }
    //~ }
    if (gc.filters) {
      //~ console.log(20100811,'config.ls_filters',config.ls_filters);
      //~ console.log(20100811,'config.ls_grid_config.filters',config.ls_grid_config.filters);
      for (var i = 0; i < gc.filters.length; i++) {
        var fv = gc.filters[i];
        for (var j = 0; j < columns.length;j++) {
          var col = columns[j];
          if (col.dataIndex == fv.field) {
            //~ console.log(20100811, f,' == ',fv);
            if (fv.type == 'string') {
              col.filter.value = fv.value;
              //~ if (fv.comparison !== undefined) f.comparison = fv.comparison;
            } else {
              //~ console.log(20100811, fv);
              col.filter.value = {};
              col.filter.value[fv.comparison] = fv.value;
            }
            break;
          }
        };
      }
    }
    
    return columns;
    //~ config.columns = cols;
    //~ delete config.ls_columns
  },
  
  get_current_grid_config : function () {
    var cm = this.getColumnModel();
    var widths = Array(cm.config.length);
    var hiddens = Array(cm.config.length);
    //~ var hiddens = Array(cm.config.length);
    var columns = Array(cm.config.length);
    //~ var columns = Array(cm.config.length);
    //~ var hidden_cols = [];
    //~ var filters = this.filters.getFilterValues();
    var p = this.filters.buildQuery(this.filters.getFilterData())
    for (var i = 0; i < cm.config.length; i++) {
      var col = cm.config[i];
      columns[i] = col.dataIndex;
      //~ hiddens[i] = col.hidden;
      widths[i] = col.width;
      hiddens[i] = col.hidden;
      //~ if (col.hidden) hidden_cols.push(col.dataIndex);
    }
    //~ p['hidden_cols'] = hidden_cols;
    p.cw = widths;
    p.ch = hiddens;
    p.ci = columns;
    //~ p['widths'] = widths;
    //~ p['hiddens'] = hiddens;
    //~ p['columns'] = columns;
    p['name'] = this.gc_name;
    //~ var gc = this.ls_grid_configs[this.gc_name];
    //~ if (gc !== undefined) 
        //~ p['label'] = gc.label
    //~ console.log('20100810 save_grid_config',p);
    return p;
  },
  
  unused_manage_grid_configs : function() {
    var data = [];
    for (k in this.ls_grid_configs) {
      var v = this.ls_grid_configs[k];
      var i = [k,String(v.columns),String(v.hidden_cols),String(v.filters)];
      data.push(i)
    }
    if (this.ls_grid_configs[this.gc_name] == undefined) {
      var v = this.get_current_grid_config();
      var i = [k,String(v.columns),String(v.hidden_cols),String(v.filters)];
      data.push(i);
    }
    //~ console.log(20100811, data);
    var main = new Ext.grid.GridPanel({
      store: new Ext.data.ArrayStore({
        idIndex:0,
        fields:['name','columns','hidden_cols','filters'],
        autoDestroy:true,
        data: data}),
      //~ autoHeight:true,
      selModel: new Ext.grid.RowSelectionModel(),
      listeners: { 
        rowdblclick: function(grid,rowIndex,e) {
          console.log('row doubleclicked',grid, rowIndex,e);
        },
        rowclick: function(grid,rowIndex,e) {
          console.log('row clicked',grid, rowIndex,e);
        }
      },
      columns: [ 
        {dataIndex:'name',header:'Name'}, 
        {dataIndex:'columns',header:'columns'}, 
        {dataIndex:'hidden_cols',header:'hidden columns'}, 
        {dataIndex:'filters',header:'filters'} 
      ]
    });
    var win = new Ext.Window({title:'GridConfigs Manager',layout:'fit',items:main,height:200});
    win.show();
  },
  
  unused_edit_grid_config : function(name) {
    gc = this.ls_grid_configs[name];
    var win = new Ext.Window({
      title:'Edit Grid Config',layout:'vbox', 
      //~ layoutConfig:'stretch'
      items:[
        {xtype:'text', value: gc.name},
        {xtype:'text', value: gc.columns},
        {xtype:'text', value: gc.hidden_cols},
        {xtype:'text', value: gc.filters}
      ]
    });
    win.show();
  },
  
  unused_save_grid_config : function () {
    //~ console.log('TODO: save_grid_config',this);
    //~ p.column_widths = Ext.pluck(this.colModel.columns,'width');
    var a = { 
      params:this.get_current_grid_config(), 
      method:'PUT',
      url:'/grid_config' + this.ls_url,
      success: Lino.action_handler(this),
      scope: this,
      failure: Lino.ajax_error_handler(this)
    };
    this.loadMask.show(); // 20120211
    Ext.Ajax.request(a);
    //~ Lino.do_action(this,a);
  },
  
  on_beforeedit : function(e) {
    //~ console.log('20130128 GridPanel.on_beforeedit()',e,e.record.data.disable_editing);
    if(this.disable_editing | e.record.data.disable_editing) {
      e.cancel = true;
      Lino.notify("This record is disabled");
      return;
    }
    if(e.record.data.disabled_fields && e.record.data.disabled_fields[e.field]) {
      e.cancel = true;
      Lino.notify("This field is disabled");
      return;
    }
    //~ if (e.record.data.disabled_fields) {
      //~ for (i in e.record.data.disabled_fields) {
        //~ if(e.record.data.disabled_fields[i] == e.field) {
          //~ e.cancel = true;
          //~ Lino.notify(String.format('Field "{0}" is disabled for this record',e.field));
          //~ return
        //~ }
      //~ }
    //~ }
  },
  save_grid_data : function() {
      //~ console.log("20120814 save_grid_data");
      this.getStore().commitChanges();
  },
  on_afteredit : function(e) {
    /*
    e.grid - The grid that fired the event
    e.record - The record being edited
    e.field - The field name being edited
    e.value - The value being set
    e.originalValue - The original value for the field, before the edit.
    e.row - The grid row index
    e.column - The grid column index
    */
    var p = {};
    // console.log('20140403 afteredit: ',e.record);
    //~ console.log('20101130 value: ',e.value);
    //~ var p = e.record.getChanges();
    //~ console.log('20101130 getChanges: ',e.record.getChanges());
    //~ this.before_row_edit(e.record);

    for(k in e.record.getChanges()) {
        var v = e.record.get(k);
    //~ for(k in e.record.modified) {
        //~ console.log('20101130',k,'=',v);
        //~ var cm = e.grid.getColumnModel();
        //~ var di = cm.getDataIndex(k);
        var f = e.record.fields.get(k);
        //~ console.log('20101130 f = ',f);
        //~ var v = e.record.get(di);
        if (f.type.type == 'date') {
            p[k] = Ext.util.Format.date(v, f.dateFormat);
        }else{
            p[k] = v;
            var v = e.record.get(k+'Hidden');
            if (v !== undefined) {
              p[k+'Hidden'] = v;
            }
        }
    }
    // add value used by ForeignKeyStoreField CHOICES_HIDDEN_SUFFIX
    // not sure whether this is still needed:
    p[e.field+'Hidden'] = e.value;
    //~ p.su = Lino.subst_user;
    Lino.insert_subst_user(p);
    // this one is needed so that this field can serve as choice context:
    e.record.data[e.field+'Hidden'] = e.value;
    // p[pk] = e.record.data[pk];
    // console.log("grid_afteredit:",e.field,'=',e.value);
    Ext.apply(p, this.get_base_params()); // needed for POST, ignored for PUT
    //~ Ext.apply(p,this.containing_window.config.base_params);
    //~ 20121109 p['$constants.URL_PARAM_ACTION_NAME'] = 'grid';
    var self = this;
    var req = {
        params:p,
        waitMsg: 'Saving your data...',
        success: Lino.action_handler( this, function(result) {
          // console.log("20140728 afteredit.success got ", result);
          //~ if (result.data_record) {
          if (result.refresh_all) {
              var cw = self.get_containing_window();
              if (cw) {
                  cw.main_item.refresh();
              }
              else console.log("20120123 cannot refresh_all",self);
          } else if (result.rows) {
              //~ self.getStore().loadData(result,true);
              var r = self.getStore().reader.readRecords(result);
              if (e.record.phantom) {
                  // console.log("20140728 gonna call Store.insert()", self.getStore(), e.row, r.records);
                  self.getStore().insert(e.row, r.records);
              }else{
                  // console.log("20140728 afteredit.success doUpdate", r.records[0]);
                  self.getStore().doUpdate(r.records[0]);
              }
              self.getStore().rejectChanges(); 
              /* 
              get rid of the red triangles without saving the record again
              */
              //~ self.getStore().commitChanges(); // get rid of the red triangles
          } else {
              self.getStore().commitChanges(); // get rid of the red triangles
              self.getStore().reload();        // reload our datastore.
          }
          }),
        scope: this,
        failure: Lino.ajax_error_handler(this)
    };
    if (e.record.phantom) {
      req.params.an = 'grid_post'; // CreateRow.action_name
      Ext.apply(req,{
        method: 'POST',
        url: '/api' + this.ls_url
      });
    } else {
      req.params.an = 'grid_put'; // SaveRow.action_name
      Ext.apply(req,{
        method: 'PUT',
        url: '/api' + this.ls_url + '/' + e.record.id
      });
    }
    //~ console.log('20110406 on_afteredit',req);
    this.loadMask.show(); // 20120211
    Ext.Ajax.request(req);
  },

  afterRender : function() {
    Lino.GridPanel.superclass.afterRender.call(this);
    // this.getView().mainBody.focus();
    // console.log(20100114,this.getView().getRows());
    // if (this.getView().getRows().length > 0) {
    //  this.getView().focusRow(1);
    // }
    //~ this.my_load_mask = new Ext.LoadMask(this.getEl(), {
        //~ msg:'$_("Please wait...")',
        //~ store:this.store});
      
    var tbar = this.getTopToolbar();
    // tbar.on('change',function() {this.getView().focusRow(1);},this);
    // tbar.on('change',function() {this.getSelectionModel().selectFirstRow();this.getView().mainBody.focus();},this);
    // tbar.on('change',function() {this.getView().mainBody.focus();},this);
    // tbar.on('change',function() {this.getView().focusRow(1);},this);
    this.nav = new Ext.KeyNav(this.getEl(),{
      pageUp: function() {tbar.movePrevious(); },
      pageDown: function() {tbar.moveNext(); },
      home: function() {tbar.moveFirst(); },
      end: function() {tbar.moveLast(); },
      scope: this
    });

  },
  after_delete : function() {
    //~ console.log('Lino.GridPanel.after_delete');
    this.refresh();
  },
  add_row_listener : function(fn,scope) {
    this.getSelectionModel().addListener('rowselect',fn,scope);
  },
  postEditValue : function(value, originalValue, r, field){
    value = Lino.GridPanel.superclass.postEditValue.call(this,value,originalValue,r,field);
    //~ console.log('GridPanel.postEdit()',value, originalValue, r, field);
    return value;
  },
  
  set_start_value : function(v) {
      this.start_value = v;
  },
  preEditValue : function(r, field){
      if (this.start_value) {
        var v = this.start_value;
        delete this.start_value;
        this.activeEditor.selectOnFocus = false;
        return v;
      }
      var value = r.data[field];
      return this.autoEncode && Ext.isString(value) ? Ext.util.Format.htmlDecode(value) : value;
  },
  
  on_master_changed : function() {
    //~ if (! this.enabled) return;
    //~ cmp = this;
    //~ console.log('20130911 Lino.GridPanel.on_master_changed()',this.title,this.rendered);
    if (! this.rendered) return; // 20120213
    var todo = function() {
      if (this.disabled) return;
      //~ if (this.disabled) return;
      //~ if (this.enabled) {
          //~ var src = caller.config.url_data + "/" + record.id + ".jpg"
          //~ console.log(20111125, this.containing_window);
          //~ for (k in p) this.getStore().setBaseParam(k,p[k]);
          //~ console.log('Lino.GridPanel.on_master_changed()',this.title,p);
          this.refresh();
          //~ this.set_base_params(this.master_panel.get_master_params());
          //~ this.getStore().load(); 
      //~ }
    };
    Lino.do_when_visible(this,todo.createDelegate(this));
  },
  load_record_id : function(record_id,after) {
      Lino.run_detail_handler(this,record_id)
  }
  
});
  

//~ Lino.MainPanelMixin = {
  //~ tbar_items : function() {
      //~ return ;
  //~ }
//~ };

//~ Ext.override(Lino.GridPanel,Lino.MainPanelMixin);
//~ Ext.override(Lino.FormPanel,Lino.MainPanelMixin);

//~ Lino.grid_context_menu = function(e) {
  //~ console.log('contextmenu',arguments);
//~ }

Lino.row_context_menu = function(grid,row,col,e) {
  console.log('20130927 rowcontextmenu',grid,row,col,e,grid.store.reader.arrayData.rows[row]);
}

Lino.cell_context_menu = function(grid,row,col,e) {
  //~ console.log('20120531 cellcontextmenu',grid,row,col,e,grid.store.reader.arrayData.rows[row]);
  e.stopEvent();
  //~ grid.getView().focusCell(row,col);
  grid.getSelectionModel().select(row,col);
  //~ console.log(grid.store.getAt(row));
  //~ grid.getView().focusRow(row);
  //~ return;
  if(!grid.cmenu.el){grid.cmenu.render(); }
  //~ if(e.record.data.disabled_fields) {
  
  var da = grid.store.reader.arrayData.rows[row][grid.disabled_actions_index];
  if (da) {
      this.cmenu.cascade(function(item){ 
        //~ console.log(20120531, item.itemId, da[item.itemId]);
        if (da[item.itemId]) item.disable(); else item.enable();
      });
  };
  
  var xy = e.getXY();
  xy[1] -= grid.cmenu.el.getHeight();
  grid.cmenu.showAt(xy);
}


Lino.chooser_handler = function(combo,name) {
  return function(cmp, newValue, oldValue) {
    //~ console.log('Lino.chooser_handler()',cmp,oldValue,newValue);
    combo.setContextValue(name, newValue);
  }
};



Lino.ComboBox = Ext.extend(Ext.form.ComboBox,{
  forceSelection: "yes but select on tab",
  // forceSelection: true,
  triggerAction: 'all',
  minListWidth:280, // 20131022
  autoSelect: false,
  selectOnFocus: true, // select any existing text in the field immediately on focus.
  submitValue: true,
  displayField: 'text', // 'text', 
  valueField: 'value', // 'value',
  
  //~ initComponent : Ext.form.ComboBox.prototype.initComponent.createSequence(function() {
  initComponent : function(){
      this.contextParams = {};
      //~ Ext.form.ComboBox.initComponent(this);
      Lino.ComboBox.superclass.initComponent.call(this);
  },
  setValue : function(v, record_data){
      /*
      Based on feature request developed in http://extjs.net/forum/showthread.php?t=75751
      */
      /* `record_data` is used to get the text corresponding to this value */
      //~ if(this.name == 'city') 
      //~ console.log('20120203', this.name,'.setValue(', v ,') this=', this,'record_data=',record_data);
      var text = v;
      if(this.valueField){
        if(v == null || v == '') { 
            //~ if (this.name == 'birth_country') 
                //~ console.log(this.name,'.setValue',v,'no lookup needed, value is empty');
            //~ v = undefined;
            v = '';
            //~ text = '';
        } else if (Ext.isDefined(record_data)) {
          text = record_data[this.name];
          //~ if (this.name == 'birth_country') 
            //~ console.log(this.name,'.setValue',v,'got text ',text,' from record ',record);
        } else {
          // if(this.mode == 'remote' && !Ext.isDefined(this.store.totalLength)){
          if(this.mode == 'remote' && ( this.lastQuery === null || (!Ext.isDefined(this.store.totalLength)))){
              //~ if (this.name == 'birth_country') console.log(this.name,'.setValue',v,'store not yet loaded');
              this.store.on('load', this.setValue.createDelegate(this, arguments), null, {single: true});
              if(this.store.lastOptions === null || this.lastQuery === null){
                  var params;
                  if(this.valueParam){
                      params = {};
                      params[this.valueParam] = v;
                  }else{
                      var q = this.allQuery;
                      this.lastQuery = q;
                      this.store.setBaseParam(this.queryParam, q);
                      params = this.getParams(q);
                  }
                  //~ if (this.name == 'birth_country') 
                    //~ console.log(this.name,'.setValue',v,' : call load() with params ',params);
                  this.store.load({params: params});
              //~ }else{
                  //~ if (this.name == 'birth_country') 
                    //~ console.log(this.name,'.setValue',v,' : but store is loading',this.store.lastOptions);
              }
              return;
          //~ }else{
              //~ if (this.name == 'birth_country') 
                //~ console.log(this.name,'.setValue',v,' : store is loaded, lastQuery is "',this.lastQuery,'"');
          }
          var r = this.findRecord(this.valueField, v);
          if(r){
              text = r.data[this.displayField];
          }else if(this.valueNotFoundText !== undefined){
              text = this.valueNotFoundText;
          }
        }
      }
      this.lastSelectionText = text;
      //~ this.lastSelectionText = v;
      if(this.hiddenField){
          //~ this.hiddenField.originalValue = v;
          this.hiddenField.value = v;
      }
      Ext.form.ComboBox.superclass.setValue.call(this, text);
      this.value = v; // needed for grid.afteredit
  },
  
  getParams : function(q){
    // p = Ext.form.ComboBox.superclass.getParams.call(this, q);
    // causes "Ext.form.ComboBox.superclass.getParams is undefined"
    var p = {};
    if(this.pageSize){
        p['start'] = 0;
        p['limit'] = this.pageSize;
    }
    // now my code:
    if(this.contextParams) Ext.apply(p, this.contextParams);
    return p;
  },
  setContextValue : function(name,value) {
    //~ console.log('setContextValue',this,this.name,':',name,'=',value);
    //~ if (this.contextValues === undefined) {
        //~ this.contextValues = Array(); // this.contextParams.length);
    //~ }
    if (this.contextParams[name] != value) {
      //~ console.log('setContextValue 1',this.contextParams);
      this.contextParams[name] = value;
      this.lastQuery = null;
      //~ console.log('setContextValue 2',this.contextParams);
    }
  }
});

Lino.ChoicesFieldElement = Ext.extend(Lino.ComboBox,{
  mode: 'local'
});


Lino.SimpleRemoteComboStore = Ext.extend(Ext.data.JsonStore,{
  // forceSelection: true,  20140206 why was this here?
  constructor: function(config){
      Lino.SimpleRemoteComboStore.superclass.constructor.call(this, Ext.apply(config, {
          totalProperty: 'count',
          root: 'rows',
          id: 'value', // 'value'
          fields: ['value' ], 
          listeners: { exception: Lino.on_store_exception }
      }));
  }
});

Lino.ComplexRemoteComboStore = Ext.extend(Ext.data.JsonStore,{
  constructor: function(config){
      Lino.ComplexRemoteComboStore.superclass.constructor.call(this, Ext.apply(config, {
          totalProperty: 'count',
          root: 'rows',
          id: 'value', // constants.CHOICES_VALUE_FIELD
          fields: ['value','text'], // constants.CHOICES_VALUE_FIELD, // constants.CHOICES_TEXT_FIELD
          listeners: { exception: Lino.on_store_exception }
      }));
  }
});

Lino.RemoteComboFieldElement = Ext.extend(Lino.ComboBox,{
  mode: 'remote',
  //~ forceSelection:false,
  minChars: 2, // default 4 is too much
  queryDelay: 300, // default 500 is maybe slow
  queryParam: 'query', 
  //~ typeAhead: true,
  //~ selectOnFocus: true, // select any existing text in the field immediately on focus.
  resizable: true
  ,initList : function() {
      Lino.RemoteComboFieldElement.superclass.initList.call(this);
      if (this.pageTb) {
          
          var me = this;
          this.pageTb.on("beforechange", function(toolbar, o){
              if(me.contextParams)
                  Ext.apply(o, me.contextParams);
          });
          
          //~ 
          //~ var btn = ls_buttons
          //~ this.pageTb.items = this.pageTb.items.concat([btn]);
          //~ console.log("20131022 pageTb.items is", this.pageTb.items)
      }
  }
});

/*
Thanks to Animal for posting the basic idea:
http://www.sencha.com/forum/showthread.php?15842-2.0-SOLVED-Combobox-twintrigger-clear&p=76130&viewfull=1#post76130

*/
Lino.TwinCombo = Ext.extend(Lino.RemoteComboFieldElement,{
    trigger2Class : 'x-form-search-trigger',
    //~ trigger2Class : 'x-tbar-detail',
    initComponent : function() {
        //~ Lino.TwinCombo.superclass.initComponent.call(this);
        Lino.ComboBox.prototype.initComponent.call(this);
        Ext.form.TwinTriggerField.prototype.initComponent.call(this);
    },
    onTrigger2Click : function() {
        //~ console.log('onTrigger2Click',this,arguments);
    }
  });
//~ Lino.TwinCombo.prototype.initComponent = Ext.form.TwinTriggerField.prototype.initComponent;
Lino.TwinCombo.prototype.getTrigger = Ext.form.TwinTriggerField.prototype.getTrigger;
Lino.TwinCombo.prototype.getOuterSize = Ext.form.TwinTriggerField.prototype.getOuterSize;
Lino.TwinCombo.prototype.initTrigger = Ext.form.TwinTriggerField.prototype.initTrigger;
Lino.TwinCombo.prototype.onTrigger1Click = Ext.form.ComboBox.prototype.onTriggerClick;
//~ Lino.TwinCombo.prototype.onTrigger2Click = function() {
    //~ console.log('onTrigger2Click',arguments);
//~ };



Lino.SimpleRemoteComboFieldElement = Ext.extend(Lino.RemoteComboFieldElement,{
  displayField: 'value', 
  valueField: null,
  forceSelection: false
});




Lino.Window = Ext.extend(Ext.Window,{
  //~ layout: "fit", 
  closeAction : 'hide',
  renderTo: 'main_area', 
  constrain: true,
  maximized: true,
  draggable: false,
  width: 700,
  height: 500,
  maximizable: false,
  constructor : function (config) {
    if (config.main_item.params_panel) {
        config.layout = 'border';
        config.main_item.region = 'center';
        config.main_item.params_panel.region = 'north';
        //~ config.main_item.params_panel.autoHeight = false; // 20130924
        config.main_item.params_panel.hidden = config.main_item.params_panel_hidden;
        config.items = [config.main_item.params_panel, config.main_item];
        //~ 20130923b
    } else {
        config.layout = 'fit';
        config.items = config.main_item;
    }
    this.main_item = config.main_item; 

    if (typeof config.width == "string" && config.width.slice(-1) == "%") {
        config.width = Lino.perc2width(parseInt(config.width.slice(0, -1)));
    }
    
    delete config.main_item;
    //~ delete config.params_item;
    
    //~ this.main_item = config.items.get(0);
    this.main_item.containing_window = this;
    
    //~ console.log('20120110 Lino.Window.constructor() 1');
    //~ if (Lino.current_window) { // all windows except the top are closable
    if (this.main_item.hide_window_title) { 
      config.closable = false;
      config.frame = false;
      config.shadow = false;
      //~ config.border = true;
      //~ config.title = undefined;
      //~ config.tools = null;
      delete config.title;
      delete config.tools;
    } else {
      config.title = this.main_item.empty_title;
      config.closable = true;
      config.tools = [ 
        { qtip: 'permalink', handler: Lino.permalink_handler(this), id: "pin" }
      ];
      if (this.main_item.content_type && this.main_item.action_name != 'insert') {
        config.tools = [ {
          handler: Lino.help_text_editor,
          qtip: "Edit help texts for fields on this model.",
          scope: this.main_item,
          id: "gear"
        }].concat(config.tools);
      }
        
    //~ { qtip: '', handler: Lino.save_wc_handler(this), id: "save" }, 
    //~ { qtip: this.config.qtip, handler: Lino.save_wc_handler(this), id: "save" }, 
    //~ { qtip: 'Call doLayout() on main Container.', handler: Lino.refresh_handler(this), id: "refresh" },
    //~ if (this.main_item.params_panel) {
        //~ config.tools = config.tools.concat([ 
          //~ { qtip: 'Show/hide parameter panel', handler: this.toggle_params_panel, id: "gear", scope:this } 
        //~ ]);
    //~ }
    //~ if (config.closable !== false) {
      // if undefined, will take default behaviour
      //~ config.tools = config.tools.concat([ 
        //~ { qtip: 'close', handler: this.hide, id: "close", scope:this } 
      //~ ]);
    }
    
    this.main_item.config_containing_window(config);
    
    // console.log('20150514 Lino.Window.constructor() 2');
    Lino.Window.superclass.constructor.call(this, config);
    
    //~ console.log('20120110 Lino.Window.constructor() 3');
    
  },
  initComponent : function() {
    this.main_item.init_containing_window(this);
    Lino.Window.superclass.initComponent.call(this);
  
  },
  hide : function() { 
      this.main_item.do_when_clean(false,function() { 
        Lino.close_window(); });
  },
  hide_really : function() { 
    Lino.Window.superclass.hide.call(this);
  },
  onRender : function(ct, position){
    // console.log('20140829 Lino.Window.onRender() 1');
    Lino.Window.superclass.onRender.call(this, ct, position);
    var main_area = Ext.getCmp('main_area')
    //~ console.log('20120110 Lino.Window.onRender() 2');
  
    this.on('show', function(win) {
        // console.log('20140829 Lino.Window.on(show) : add resize handler');
        main_area.on('resize', win.onWindowResize, win);
    });
    this.on('hide', function(win) {
        // console.log('20140829 Lino.Window.on(hide) : remove resize handler');
        main_area.un('resize', win.onWindowResize, win);
    });
    // console.log('20140829 Lino.Window.onRender() 3');
  }
});


Ext.override(Ext.form.BasicForm,{
    my_loadRecord : function(record_data){
    //~ loadRecord : function(record){
        /* Same as ExtJS's loadRecord() (setValues()), except that we
        forward also the record_data to field.setValue(). This second
        parameter is used by Lino.Combobox.
        */
        //~ console.log('20120918 my_loadRecord', record_data)
        if(Ext.isArray(record_data)){ 
            for(var i = 0, len = record_data.length; i < len; i++){
                var v = record_data[i];
                var f = this.findField(v.id);
                if(f){
                    f.setValue(v.value, record_data);
                    if(this.trackResetOnLoad){
                        f.originalValue = f.getValue();
                    }
                }
            }
        }else{ 
            var field, id;
            for(id in record_data){
                if(!Ext.isFunction(record_data[id]) && (field = this.findField(id))){
                    field.setValue(record_data[id], record_data);
                    if(this.trackResetOnLoad){
                        field.originalValue = field.getValue();
                        //~ if (field.hiddenField) {
                          //~ field.hiddenField.originalValue = field.hiddenField.value;
                        //~ }
                    }
                }
            }
        }
        return this;
    }
});




function initializeFooBarDropZone(cmp) {
    //~ console.log('initializeFooBarDropZone',cmp);
    cmp.dropTarget = new Ext.dd.DropTarget(cmp.bwrap, {
      //~ ddGroup     : 'gridDDGroup',
      notifyEnter : function(ddSource, e, data) {
        console.log('notifyEnter',ddSource,e,data);
        //Add some flare to invite drop.
        cmp.body.stopFx();
        cmp.body.highlight();
      },
      notifyDrop  : function(ddSource, e, data){
        console.log('notifyDrop',ddSource,e,data);
        // Reference the record (single selection) for readability
        //~ var selectedRecord = ddSource.dragData.selections[0];


        // Load the record into the form
        //~ formPanel.getForm().my_loadRecord(selectedRecord);


        // Delete record from the grid.  not really required.
        //~ ddSource.grid.store.remove(selectedRecord);

        return(true);
      }
    })
}



Lino.show_mti_child = function(fieldname,detail_handler) {
  //~ console.log('show_mti_child',this);
  //~ console.log('show_mti_child',panel.find("main_area"));
  rec = Lino.current_window.main_item.get_current_record();
  //~ rec = panel.get_current_record();
  if (rec) {
    //~ console.log('show_mti_child',Lino.current_window,rec);
    if (rec.phantom) {
      Lino.notify('Not allowed on phantom record.');
    }else if (rec.data[fieldname]) {
      //~ console.log('show_mti_child',rec.id);
      //~ detail_handler(Lino.current_window.main_item,{},{record_id:rec.id});
      detail_handler.run(null,{record_id:rec.id});
      //~ window.open(urlroot + '/' + rec.id);
      //~ document.location = urlroot + '/' + rec.id;
      //~ window.open(urlroot + '/' + rec.id,'_blank');
    } else {
      Lino.alert("Cannot show MTI child if checkbox is off.");
    }
  } else {
    Lino.notify('No current record.');
  }
};


/*
captureEvents utility by Aaron Conran
<http://www.sencha.com/learn/grid-faq/>

Ext.onReady(function(){
    var grid = new Ext.grid.GridPanel({
        ... 
    });
    captureEvents(grid);
});
*/
function captureEvents(observable) {
    Ext.util.Observable.capture(
        observable,
        function(eventName) {
            console.info(eventName);
        },
        this
    );		
}

// settings.SITE.get_plugin_snippets()




// from lino_xl.lib.extensible (media_name=extensible-1.0.1):snippets/extensible.js

/*
  This is the `extensible.js` snippet. 
  Used in lino.modlib.extensible.App.site_js_snippets
*/

/*
Mappings towards lino.modlib.extensible.models.PanelCalendars
*/
// Sset SS = Ssite.modules.extensible.PanelCalendars.get_handle(Sui).store
Ext.ensible.cal.CalendarMappings = {
    CalendarId:   {name:'ID',       mapping: 'id', type: 'int'},
    Title:        {name:'CalTitle', mapping: 'summary', type: 'string'},
    Description:  {name:'Desc',     mapping: 'description', type: 'string'},
    ColorId:      {name:'Color',    mapping: 'color', type: 'int'},
    IsHidden:     {name:'Hidden',   mapping: 'is_hidden', type: 'boolean'},    
};
Ext.ensible.cal.CalendarRecord.reconfigure();  


/*
Mappings towards lino.modlib.extensible.models.PanelEvents 
*/
// Sset SS = Ssite.modules.extensible.PanelEvents.get_handle(Sui).store
Ext.ensible.cal.EventMappings = {
    EventId:     {name: 'ID',        mapping: 'id', type:'int'},
    CalendarId:  {name: 'CalID',     mapping: 'calendarHidden', type: 'int'},
    Title:       {name: 'EvtTitle',  mapping: 'summary'},
    StartDate:   {name: 'StartDt',   mapping: 'start_dt', 
      type: 'date', 
      dateFormat: "Y-m-d\TH:i:s" },
    EndDate:     {name: 'EndDt',     mapping: 'end_dt', 
      type: 'date', 
      dateFormat: "Y-m-d\TH:i:s"},
    RRule:       {name: 'RecurRule', mapping: 'rsetHidden'},
    Location:    {name: 'Location',  mapping: 'placeHidden'},
    Notes:       {name: 'Desc',      mapping: 'description'},
    Url:         {name: 'LinkUrl',   mapping: 'url'},
    IsAllDay:    {name: 'AllDay',    mapping: 'all_day', type: 'boolean'},
    Reminder:    {name: 'Reminder',  mapping: 'reminder'}
    
};
Ext.ensible.cal.EventRecord.reconfigure();


//~ Lino.on_eventclick = 
    
Lino.on_editdetails = 

Lino.format_time = function(dt) {
    return dt.getHours() + ':' + dt.getMinutes();
}
    
Lino.on_eventdelete = function() {
  //~ console.log("Lino.on_eventdelete",arguments);
};

Lino.on_eventadd  = function(cp,rec,el) {
  //~ console.log("Lino.on_eventadd ",arguments);
  return false;
}
    
Lino.on_eventresize  = function(cp,rec,el) {
  //~ console.log("Lino.on_eventresize ",arguments);
  //~ Lino.cal.Events.insert(cp);
  //~ return false;
}
    
Lino.on_eventupdate  = function(cp,rec,el) {
  //~ console.log("Lino.on_eventupdate",arguments);
  //~ Lino.cal.Events.insert(cp);
  //~ return false;
}
    

//~ Lino.eventStore = new Ext.ensible.cal.EventStore({ 
//~ Lino.eventStore = new Ext.data.ArrayStore({ 
Lino.unused_eventStore = new Ext.data.JsonStore({ 
  listeners: { exception: Lino.on_store_exception }
  ,url: '/restful/extensible/PanelEvents'
  ,restful : true
  ,proxy: new Ext.data.HttpProxy({ 
      url: '/restful/extensible/PanelEvents', 
      disableCaching: false // no need for cache busting when loading via Ajax
      //~ disableCaching:true,
  })
  ,fields: Ext.ensible.cal.EventRecord.prototype.fields.getRange()
  ,totalProperty: "count"
  ,root: "rows"
  ,idProperty: Ext.ensible.cal.EventMappings.EventId.mapping
  ,writer : new Ext.data.JsonWriter({
    writeAllFields: false
  })
  ,load: function(options) {
    //~ foo.bar = baz; // 20120213
      if (!options) options = {};
      if (!options.params) options.params = {};
      //~ options.params.$constants.URL_PARAM_TEAM_VIEW = Lino.calendar_app.team_view_button.pressed;
      
      var view = this.cal_panel.getActiveView();
      var bounds = view.getViewBounds();
      //~ var p = {sd:'05.02.2012',ed:'11.02.2012'};
      //~ var p = {};
      options.params[view.dateParamStart] = bounds.start.format(view.dateParamFormat);
      options.params[view.dateParamEnd] = bounds.end.format(view.dateParamFormat);
      Lino.insert_subst_user(options.params);
      //~ Ext.apply(options.params,p)
      //~ console.log('20120710 eventStore.load()',this.baseParams,options);
    
    return Ext.data.JsonStore.prototype.load.call(this,options);
  }
});


Lino.CalendarCfg = {
    dateParamFormat: 'd.m.Y',
    dateParamStart:'sd',
    dateParamEnd:'ed'
};
//~ 20120704 Lino.CalendarPanel = Ext.extend(Ext.ensible.cal.CalendarPanel,Lino.MainPanel);
//~ Lino.CalendarPanel = Ext.extend(Lino.CalendarPanel,{
Ext.override(Ext.ensible.cal.CalendarPanel,Lino.MainPanel);
Ext.override(Ext.ensible.cal.CalendarPanel,{
  //~ empty_title : "\$ui.get_actor('cal.Panel').report.label",
  empty_title : "Calendar"
  ,activeItem: 1 // 0: day, 1: week
  ,ls_url: '/extensible/CalendarPanel'
  //~ ,disableCaching:true
  //~ ,eventStore: Lino.eventStore
  //~ ,calendarStore: Lino.calendarStore
  //~ ,initComponent : function(){
    //~ Ext.ensible.cal.CalendarPanel.superclass.initComponent.call(this);
    //~ this.eventStore.on('load',function(){
      //~ console.log("20130808",Lino.eventStore);
      //~ if (this.eventStore.reader.jsonData) {
        //~ console.log("20130808 b",this.eventStore.reader.jsonData.title);
        //~ this.set_window_title(this.eventStore.reader.jsonData.title);
      //~ }
    //~ },this);
  //~ }
  ,listeners: { 
    editdetails: function(cp,rec,el) {
      //~ console.log("Lino.on_editdetails",arguments);
      if (rec.data.ID)
          Lino.extensible.PanelEvents.detail.run(null,{
              record_id:rec.data.ID,
              base_params:this.app_instance.event_store.baseParams});
      return false;
    }
    ,eventclick: function(cp,rec,el) {
      //~ console.log("Lino.on_eventclick",arguments);
      //~ Lino.cal.Events.detail_action.run({record_id:rec.data.ID});
      Lino.extensible.PanelEvents.detail.run(null,{
            record_id:rec.data.ID,
                base_params:this.app_instance.event_store.baseParams});
      return false;
    }
    //~ ,eventadd: Lino.on_eventadd
    //~ ,eventdelete: Lino.on_eventdelete
    //~ ,eventresize: Lino.on_eventresize
    ,afterrender : function(config) {
      // console.log("20140402 CalendarPanel.afterrender");
      this.app_instance.calendar_store.cal_panel = this;
      // 20140402 this.app_instance.calendar_store.load();
      //~ console.log("20120704 afterrender calls eventStore.load()",p);
      this.app_instance.event_store.cal_panel = this;
      //~ Lino.eventStore.load({params:p});
      //~ 20130905 removed: this.app_instance.event_store.load();
      //~ Lino.CalendarPanel.superclass.constructor.call(this, config);
      //~ console.log(20120118, config,this);
    }
    }
  ,enableEditDetails: false
  //~ ,monthViewCfg: Lino.CalendarCfg
  //~ ,weekViewCfg: Lino.CalendarCfg
  //~ ,multiDayViewCfg: Lino.CalendarCfg
  //~ ,multiWeekViewCfg: Lino.CalendarCfg
  //~ ,dayViewCfg: Lino.CalendarCfg
  //~ ,initComponent : function() {
    //~ // this.on('eventadd',Lino.on_eventadd);
    //~ Lino.CalendarPanel.superclass.initComponent.call(this);
  //~ }
});




Lino.CalendarAppPanel = Ext.extend(Ext.Panel,Lino.MainPanel);
Lino.CalendarAppPanel = Ext.extend(Lino.CalendarAppPanel,Lino.PanelMixin);
Lino.CalendarAppPanel = Ext.extend(Lino.CalendarAppPanel,{
  app_instance : null
  //~ empty_title : "\$ui.get_actor('cal.Panel').report.label",
  ,empty_title : "Calendar"
  ,ls_url: '/extensible/CalendarPanel'
  ,set_status : function(status,rp) { 
      // console.log('20140402 CalendarAppPanel.set_status()', status);
      this.requesting_panel = Ext.getCmp(rp);
      this.clear_base_params();
      if (status == undefined) status = {};
      //~ if (status.param_values) 
      //~ this.set_field_values(status.field_values);
      if (status.base_params) this.set_base_params(status.base_params);
      this.refresh();
      }
  ,refresh : function() {
      //~ this.app_instance.event_store.reload(); 20130905
      this.app_instance.calendar_store.load();  // added 20140402
      this.app_instance.event_store.load();
  }
  ,layout: 'fit'
  ,get_base_params : function() {
    // console.log('20140402 getbase_params has', this.base_params);
    var p = Ext.apply({}, this.base_params);
    Lino.insert_subst_user(p);
    // console.log('20140402 getbase_params returns', p);
    return p;
  }
  ,set_base_params : function(p) {
    this.base_params = Ext.apply(this.app_instance.event_store.baseParams,p);
    this.app_instance.event_store.baseParams = this.base_params;
    // console.log('20140402 this.base_params is', this.base_params);
  }
  ,clear_base_params : function() {
      this.base_params = {};
      Lino.insert_subst_user(this.base_params);
  }
  ,set_base_param : function(k,v) {
      if (!this.base_params) this.base_params = {};
      this.base_params[k] = v;
  }
});

Lino.CalendarApp = function() { return {
  team_view_button : null 
  ,get_main_panel : function() {
      var cap = null;
      this.event_store = new Ext.data.JsonStore({ 
          listeners: { exception: Lino.on_store_exception }
          ,url: '/restful/extensible/PanelEvents'
          ,restful : true
          ,proxy: new Ext.data.HttpProxy({ 
              url: '/restful/extensible/PanelEvents', 
              disableCaching: false // no need for cache busting when loading via Ajax
              //~ disableCaching:true,
          })
          ,fields: Ext.ensible.cal.EventRecord.prototype.fields.getRange()
          ,totalProperty: "count"
          ,root: "rows"
          ,idProperty: Ext.ensible.cal.EventMappings.EventId.mapping
          ,writer : new Ext.data.JsonWriter({
            writeAllFields: false
          })
          ,load: function(options) {
            //~ foo.bar = baz; // 20120213
              if (!options) options = {};
              if (!options.params) options.params = {};
              //~ options.params.$constants.URL_PARAM_TEAM_VIEW = Lino.calendar_app.team_view_button.pressed;
              
              var view = this.cal_panel.getActiveView();
              var bounds = view.getViewBounds();
              //~ var p = {sd:'05.02.2012',ed:'11.02.2012'};
              //~ var p = {};
              options.params[view.dateParamStart] = bounds.start.format(view.dateParamFormat);
              options.params[view.dateParamEnd] = bounds.end.format(view.dateParamFormat);
              Lino.insert_subst_user(options.params);
              Ext.apply(options.params, cap.get_base_params());
              //~ this.cal_panel.base_params.su.toString();
              //~ if (this.cal_panel) {
                  // Ext.apply(options.params,this.cal_panel.base_params);
              //~ }
              //~ Ext.apply(options.params,p)
              //~ console.log('20130905 eventStore.load()',this.cal_panel,this.baseParams,options.params);
            
            return Ext.data.JsonStore.prototype.load.call(this,options);
          }
      });

      //~ Lino.calendarStore
      this.calendar_store = new Ext.data.JsonStore({ 
          listeners: { exception: Lino.on_store_exception }
          ,restful : true
          ,proxy: new Ext.data.HttpProxy({ 
              url: '/restful/extensible/PanelCalendars?fmt=json', 
              disableCaching: false // no need for cache busting when loading via Ajax
              //~ restful : true
              //~ method: "GET"
          })
          //~ ,autoLoad: true
          //~ ,remoteSort: true
          //~ ,baseParams: bp
          ,totalProperty: "count"
          ,root: "rows"
          ,fields: Ext.ensible.cal.CalendarRecord.prototype.fields.getRange()
          ,idProperty: Ext.ensible.cal.CalendarMappings.CalendarId.mapping
          //~ ,idIndex: Ext.ensible.cal.CalendarMappings.CalendarId.mapping
          ,load: function(options) {
              // new since 20140402 add substitute user when calling
              // calendars
              if (!options) options = {};
              if (!options.params) options.params = {};
              // Lino.insert_subst_user(options.params);
              Ext.apply(options.params, cap.get_base_params());
              // console.log("20140402 calendar_store.load", options.params, 
              //             this.cal_panel, cap.get_base_params());
            return Ext.data.JsonStore.prototype.load.call(this,options);
          }
      });
      
      cap = new Lino.CalendarAppPanel({ 
          app_instance: this, 
          items : 
        //~ [{
          //~ id: 'app-header',
          //~ region: 'north',
          //~ height: 35,
          //~ border: false,
          // contentEl: 'app-header-content'
        //~ },
      {
          id: 'app-center',
          title: '...', // will be updated to the current view's date range
          region: 'center',
          layout: 'border',
          listeners: {
              'afterrender': function(){
                  Ext.getCmp('app-center').header.addClass('app-center-header');
              }
          },
          items: [{
              id:'app-west',
              region: 'west',
              width: 176,
              border: false,
              items: [{
                  xtype: 'datepicker',
                  id: 'app-nav-picker',
                  cls: 'ext-cal-nav-picker',
                  listeners: {
                      'select': {
                          fn: function(dp, dt){
                              // console.log("20131017",dp);
                              //~ Lino.calendarPanel.setStartDate(dt);
                              //~ cap.setStartDate(dt);
                              Ext.getCmp('app-calendar').setStartDate(dt);
                          },
                          //~ scope: this
                      }
                  }
              //~ },{ 
                //~ layout:'fit',
                //~ items: [
                  //~ new Ext.form.Checkbox({
                    //~ boxLabel:"$_('Team view')",
                    //~ hideLabel:true
                    //~ listeners: { click: }
                  //~ })
                //~ ]
              //~ },{ 
                //~ layout:'form',
                //~ items: [
                  //~ this.team_view_button = new Ext.Button({
                    //~ text:"Team view",
                    //~ enableToggle:true,
                    //~ pressed:false,
                    //~ toggleHandler: function(btn,state) { 
                      //~ // console.log('20120716 teamView.toggle()');
                      //~ this.event_store.setBaseParam('tv',state);
                      //~ this.event_store.load();
                      //~ // console.log("team view",state);
                    //~ }
                  //~ })
                //~ ]
              },{
                  xtype: 'extensible.calendarlist',
                  store: this.calendar_store,
                  border: false,
                  width: 175
              }]
          },{
              xtype: 'extensible.calendarpanel', // Ext.ensible.cal.CalendarPanel
              eventStore: this.event_store,
              app_instance: this,
              calendarStore: this.calendar_store,
              border: false,
              id:'app-calendar',
              region: 'center',
              //~ activeItem: 3, // month view
              
              // Any generic view options that should be applied to all sub views:
              viewConfig: {
                  // Lino.CalendarCfg
                  dateParamFormat: 'd.m.Y',
                  dateParamStart:'sd',
                  dateParamEnd:'ed',
                
                  //enableFx: false,
                  //ddIncrement: 10, //only applies to DayView and subclasses, but convenient to put it here
                  viewStartHour: 8, // 8
                  viewEndHour: 18 // 18
                  //minEventDisplayMinutes: 15
              },
              
              // View options specific to a certain view (if the same options exist in viewConfig
              // they will be overridden by the view-specific config):
              monthViewCfg: {
                  showHeader: true,
                  showWeekLinks: true,
                  showWeekNumbers: true,
                  eventBodyMarkup: ['{Title}',
                    //~ '<tpl if="url">',
                        //~ '<a href="{url}">XX</a>',
                    //~ '</tpl>',
                    '<tpl if="_isReminder">',
                        '<i class="ext-cal-ic ext-cal-ic-rem">&#160;</i>',
                    '</tpl>',
                    '<tpl if="_isRecurring">',
                        '<i class="ext-cal-ic ext-cal-ic-rcr">&#160;</i>',
                    '</tpl>',
                    '<tpl if="spanLeft">',
                        '<i class="ext-cal-spl">&#160;</i>',
                    '</tpl>',
                    '<tpl if="spanRight">',
                        '<i class="ext-cal-spr">&#160;</i>',
                    '</tpl>'
                ].join('')
              },
              
              multiWeekViewCfg: {
                  //weekCount: 3
              },
              
              // Some optional CalendarPanel configs to experiment with:
              //readOnly: true,
              //showDayView: false,
              //showMultiDayView: true,
              //showWeekView: false,
              //showMultiWeekView: false,
              //showMonthView: false,
              //showNavBar: false,
              //showTodayText: false,
              //showTime: false,
              //editModal: true,
              //enableEditDetails: false,
              //title: 'My Calendar', // the header of the calendar, could be a subtitle for the app
              
              // Once this component inits it will set a reference to itself as an application
              // member property for easy reference in other functions within App.
              //~ initComponent: function() {
                  //~ Lino.calendarPanel = this;
                  //~ this.constructor.prototype.initComponent.apply(this, arguments);
              //~ },
              
              listeners: {
                  //~ 'eventclick': {
                      //~ fn: function(vw, rec, el){
                          //~ this.clearMsg();
                      //~ },
                      //~ scope: this
                  //~ },
                  'eventover': function(vw, rec, el){
                      //console.log('Entered evt rec='+rec.data[Ext.ensible.cal.EventMappings.Title.name]', view='+ vw.id +', el='+el.id);
                  },
                  'eventout': function(vw, rec, el){
                      //console.log('Leaving evt rec='+rec.data[Ext.ensible.cal.EventMappings.Title.name]+', view='+ vw.id +', el='+el.id);
                  },
                  'eventadd': {
                      fn: function(cp, rec){
                          this.showMsg('Event '+ rec.data[Ext.ensible.cal.EventMappings.Title.name] +' was added');
                      },
                      scope: this
                  },
                  'eventupdate': {
                      fn: function(cp, rec){
                          this.showMsg('Event '+ rec.data[Ext.ensible.cal.EventMappings.Title.name] +' was updated');
                      },
                      scope: this
                  },
                  'eventdelete': {
                      fn: function(cp, rec){
                          //this.eventStore.remove(rec);
                          this.showMsg('Event '+ rec.data[Ext.ensible.cal.EventMappings.Title.name] +' was deleted');
                      },
                      scope: this
                  },
                  'eventcancel': {
                      fn: function(cp, rec){
                          // edit canceled
                      },
                      scope: this
                  },
                  'viewchange': {
                      fn: function(p, vw, dateInfo){
                          if(this.editWin){
                              this.editWin.hide();
                          };
                          if(dateInfo !== null){
                              // will be null when switching to the event edit form so ignore
                              Ext.getCmp('app-nav-picker').setValue(dateInfo.activeDate);
                              this.updateTitle(dateInfo.viewStart, dateInfo.viewEnd);
                          }
                          
                      },
                      scope: this
                  },
                  'dayclick': {
                      fn: function(vw, dt, ad, el){
                          this.clearMsg();
                      },
                      scope: this
                  },
                  'rangeselect': {
                      fn: function(vw, dates, onComplete){
                          this.clearMsg();
                      },
                      scope: this
                  },
                  'eventmove': {
                      fn: function(vw, rec){
                          rec.commit();
                          var time = rec.data[Ext.ensible.cal.EventMappings.IsAllDay.name] ? '' : ' \\a\\t g:i a';
                          this.showMsg('Event '+ rec.data[Ext.ensible.cal.EventMappings.Title.name] +' was moved to '+
                              rec.data[Ext.ensible.cal.EventMappings.StartDate.name].format('F jS'+time));
                      },
                      scope: this
                  },
                  'eventresize': {
                      fn: function(vw, rec){
                          rec.commit();
                          this.showMsg('Event '+ rec.data[Ext.ensible.cal.EventMappings.Title.name] +' was updated');
                      },
                      scope: this
                  },
                  'eventdelete': {
                      fn: function(win, rec){
                          this.event_store.remove(rec);
                          this.showMsg('Event '+ rec.data[Ext.ensible.cal.EventMappings.Title.name] +' was deleted');
                      },
                      scope: this
                  },
                  'initdrag': {
                      fn: function(vw){
                          if(this.editWin && this.editWin.isVisible()){
                              this.editWin.hide();
                          }
                      },
                      scope: this
                  }
              }
          }]
        }
        //~ ]
        
      });
      
      this.event_store.on('load',function(){
        //~ console.log("20130905 on event_store load",this.event_store.reader.jsonData);
        if (this.event_store.reader.jsonData) {
          //~ console.log("20130808 b",this.event_store.reader.jsonData.title);
          //~ console.log("20130808 c",this);
          cap.set_window_title(this.event_store.reader.jsonData.title);
        }
      },this);
      
      //~ cap.app_instance = this;
      return cap;
      
  }
  ,updateTitle: function(startDt, endDt){
      var p = Ext.getCmp('app-center');
      
      if(startDt.clearTime().getTime() == endDt.clearTime().getTime()){
          p.setTitle(startDt.format('F j, Y'));
      }
      else if(startDt.getFullYear() == endDt.getFullYear()){
          if(startDt.getMonth() == endDt.getMonth()){
              p.setTitle(startDt.format('F j') + ' - ' + endDt.format('j, Y'));
          }
          else{
              p.setTitle(startDt.format('F j') + ' - ' + endDt.format('F j, Y'));
          }
      }
      else{
          p.setTitle(startDt.format('F j, Y') + ' - ' + endDt.format('F j, Y'));
      }
  }
  // This is an application-specific way to communicate CalendarPanel event messages back to the user.
  // This could be replaced with a function to do "toast" style messages, growl messages, etc. This will
  // vary based on application requirements, which is why it's not baked into the CalendarPanel.
  ,showMsg: function(msg){
      Lino.notify(msg);
      //~ Ext.fly('app-msg').update(msg).removeClass('x-hidden');
  }
  
  ,clearMsg: function(){
      Lino.notify('');
      //~ Ext.fly('app-msg').update('').addClass('x-hidden');
  }
}
};


// from lino.modlib.tinymce (media_name=tinymce-3.5.11):tinymce/tinymce.js

/* Copyright 2009-2015 Luc Saffre */


Lino.edit_tinymce_text = function(panel, tinymce_options) {
  // edit the text in own window.
  // `panel` is the RichTextPanel
  // console.log(20150520, panel);
  //~ var rec = panel.get_current_record();
  var rec = panel.containing_panel.get_current_record();
  var value = rec ? rec.data[panel.editor.name] : '';
  var saving = false;
  var todo_after_save = false;
  var discard_changes = false;
  
  
  function save() {
    if (saving) {alert('tried to save again'); return; }
    var url = panel.containing_panel.get_record_url(rec.id);
    var params = Ext.apply({}, panel.containing_panel.get_base_params());
    params[panel.editor.name] = editor.getValue();
    //~ params.su = Lino.subst_user;
    //~ Lino.insert_subst_user(params);

    // 20150325 http://trac.lino-framework.org/ticket/131
    var action_name = panel.containing_panel.save_action_name;
    if (!action_name) 
        action_name = panel.containing_panel.action_name;
    params.an = action_name;

    var a = { 
      params: params, 
      method: 'PUT',
      url: url,
      failure: function() {
          //~ if (editor.ed.getContainer()) 
          editor.ed.setProgressState(0);
          todo_after_save = false;
          saving = false;
          console.log('tinymce.save() failed. sorry.',arguments);
        },
      success: function() {
        saving = false;
        //~ if (editor.ed.getContainer()) 
        editor.ed.setProgressState(0);
        rec.data[panel.editor.name] = editor.getValue();
        if(todo_after_save) {
            var fn = todo_after_save;
            todo_after_save = false;
            fn();
        }
        //~ panel.containing_window.set_current_record(rec);
        panel.refresh();
      }
    };
    //~ if (editor.ed.getContainer()) 
    editor.ed.setProgressState(1); // Show progress
    saving = true;
    //~ console.log(a);
    Ext.Ajax.request(a);
  };
  function save_callback() {
      save();
      //~ save(function(){editor.ed.setDirty(false);})
      /* return true have the save button disabled.  
      That's not perfect because the PUT is asynchronous 
      and the response is not yet known.
      */
      return true;
  }
  //~ var actions = [
    //~ {text:"Save",handler:save}
  //~ ]; 
  //~ console.log(20110610,panel.editor.disabled);
  var settings = {};
  Ext.apply(settings,{
        readonly: panel.editor.disabled,
        //~ language: "de",
        plugins : "save,emotions,spellchecker,advhr,insertdatetime,preview,table,searchreplace,template", 
        // Theme options - button# indicated the row# only
        theme_advanced_buttons1 : "save,cancel,|,bold,italic,underline,|,justifyleft,justifycenter,justifyright,fontselect,fontsizeselect,formatselect,|,search,replace",
        theme_advanced_buttons2 : "cut,copy,paste,template,|,bullist,numlist,|,outdent,indent,|,undo,redo,|,link,unlink,anchor,image,|,code,preview,|,forecolor,backcolor",
        theme_advanced_buttons3 : "insertdate,inserttime,|,spellchecker,advhr,,removeformat,|,sub,sup,|,charmap,emotions,|,tablecontrols",
        theme_advanced_resizing : false,
        convert_urls : false,
        save_onsavecallback : save_callback,
        save_enablewhendirty : true
        //~ save_oncancelcallback: on_cancel
  });
  Ext.apply(settings, tinymce_options);
  var editor = new Ext.ux.TinyMCE({
      value : value,
      tinymceSettings: settings
    });
  var win = new Ext.Window({
    title: rec.title, 
    //~ bbar: actions,
    layout: 'fit',
    items: editor,
    width: 500, 
    height: 400,
    minWidth: 100,
    minHeight: 100,
    modal: true,
    resizable: true,
    maximizable: true,
    //~ maximized: true,
    //~ closeAction: "close"
    closeAction: "hide"
    //~ hideMode: "offsets",
    //~ constrainHeader: true,
    //~ bodyStyle: 'padding: 10px'
  });

  //~ win.on('beforeclose',function() {
  win.on('beforehide',function() {
    if (todo_after_save) return false;
    if (discard_changes) return true;
    if (editor.isDirty()) {
        //~ var ok = false;
        //~ var allowClose = true;
        var config = {title:"Confirmation"};
        config.buttons = Ext.MessageBox.YESNOCANCEL;
        config.msg = "Save changes to text ?";
        config.modal = true;
        config.fn = function(buttonId,text,opt) {
          //~ console.log('do_when_clean',buttonId)
          if (buttonId == "yes") {
              /* we cancel this close, but save()'s onSuccess will call again.*/
              //~ allowClose = false;
              todo_after_save = function(){win.hide();}
              editor.ed.execCommand('mceSave');
              //~ editor.ed.save(function(){win.close();});
          } else if (buttonId == "no") { 
              discard_changes = true;
              win.hide()
          //~ } else if (buttonId == "cancel") { 
            //~ ok = true;
              //~ allowClose = false;
          //~ } else { 
            //~ console.log('unknwon buttonId:',buttonId);
          }
        }
        Ext.MessageBox.show(config);
        return false;
        //~ return allowClose;
    }
  });
  win.show();
}


Lino.RichTextPanel = Ext.extend(Ext.Panel,Lino.PanelMixin);
Lino.RichTextPanel = Ext.extend(Lino.RichTextPanel,Lino.FieldBoxMixin);
Lino.RichTextPanel = Ext.extend(Lino.RichTextPanel,{
    
  //~ initComponent : function(){
    //~ Lino.RichTextPanel.superclass.initComponent.call(this);
  //~ },
  constructor : function(config, params) {
      // console.log('20150520a Lino.RichTextPanel.initComponent', this);
    //~ var url = TEMPLATES_URL + config.ls_url + "/" + String(rec.id) + "/" + config.name;
    //~ var url = TEMPLATES_URL + config.ls_url + "/" + config.name;
    var t = this;
    var tinymce_options = {
        theme : "advanced",
        content_css: '/static/extjs/lino.css,/static/tinymce_content.css',

        theme_advanced_font_sizes : "12px,13px,14px,16px,18px,20px,24px",
        font_size_style_values : "12px,13px,14px,16px,18px,20px,24px",
        language: 'en',
        //~ template_external_list_url : url,
        theme_advanced_toolbar_location : "top",
        theme_advanced_toolbar_align : "left",
        theme_advanced_statusbar_location : "bottom",
        template_popup_width : 500,
        template_popup_height : 400,
        template_replace_values : { 
            data_field : function(element){ 
                //~ console.log(20110722,fieldName,t.containing_window.get_current_record()); 
                var fieldName = element.innerHTML;
                element.innerHTML = t.containing_panel.get_current_record().data[fieldName];
            } 
        }
      };
      
    var editorConfig = {
      tinymceSettings: {
        plugins : "noneditable,template", 
        // Theme options - button# indicated the row# only
        theme_advanced_buttons1 : "bold,italic,underline,|,justifyleft,justifycenter,justifyright,|,bullist,numlist,|,outdent,indent,|,undo,redo,|,removeformat,template",
        theme_advanced_buttons2 : "",
        theme_advanced_buttons3 : "", // ,|,sub,sup,|,charmap",      
        theme_advanced_resizing : false
        //~ save_onsavecallback : save_callback,
        //~ save_enablewhendirty : true
        //~ save_oncancelcallback: on_cancel
        
    }};
    Ext.apply(editorConfig.tinymceSettings, tinymce_options);
    //~ editorConfig.name = config.action_name;
    editorConfig.name = config.name;
    delete config.name;
    //~ config.title = config.label;
    //~ delete config.label;
    this.before_init(config,params);
    
    // console.log('20150520b Lino.RichTextPanel.initComponent', this);

    this.editor = new Ext.ux.TinyMCE(editorConfig);
    var t = this;
    function save_cmd() { 
        // console.log("20150902 save_cmd()", arguments);            
        var cw = t.get_containing_window();
        if (cw) {
            cw.main_item.save();
        }
    }
    this.editor.withEd(function(){
        if (!t.editor.ed.addShortcut(
            'ctrl+s', 'Save the content', save_cmd)) {
            console.log("20150902 addShortcut() failed");            
        };
        // t.editor.ed.onKeyDown.add(function(ed, e) {
        //     if (e.keyCode == 13 && e.ctrlKey) {
        //         save_cmd(); 
        //         return tinymce.dom.Event.cancel(e); 
        //         // e.preventDefault();
        //         // http://stackoverflow.com/questions/18971284/event-preventdefault-vs-return-false-no-jquery
        //     }
        // });
    });
    config.tools = [{
                      qtip: "Edit text in own window", 
                      id: "up",
                      handler: function(){
                        if(t.editor.isDirty()) {
                            var record = t.containing_panel.get_current_record();
                            record.data[t.editor.name] = t.editor.getValue();
                        }
                        Lino.edit_tinymce_text(t, tinymce_options)
                      }
                    }];
    
    config.items = this.editor;
    config.layout = "fit";
    // console.log('20150520c Lino.RichTextPanel.initComponent', this);
    Lino.RichTextPanel.superclass.constructor.call(this, config);
    // console.log('20150520d Lino.RichTextPanel.initComponent', this);
  },
  getValue : function(v) {
      return this.editor.getValue(v);
  },
  refresh : function(unused) { 
      this.refresh_with_after();
  },
  /* RichTextPanel */
  refresh_with_after : function(after) {
    // when called from the dashboard:    
    if (!this.containing_panel.get_current_record) { return; }
    var record = this.containing_panel.get_current_record();
    // console.log('20140504 RichTextPanel.refresh()',
    //             this.title,record.title, record);
    var todo = function() {
      if (record) {
        var url = '/tinymce/templates' 
              + this.containing_panel.ls_url + "/" 
              + String(record.id) + "/" + this.editor.name;
        // console.log('20150415 RichTextPanel.refresh()',url);
        if (this.editor.ed)
            this.editor.ed.settings.template_external_list_url = url;
            // else {console.log("20150415 no editor")}
        this.set_base_params(this.containing_panel.get_master_params());
        //~ var v = record ? this.format_data(record.data[this.editor.name]) : ''
        var v = this.format_data(record.data[this.editor.name])
        this.editor.setValue(v);
      } else {
        this.editor.setValue('(no data)');
      }
    };
    Lino.do_when_visible(this,todo.createDelegate(this));
  }
});
//~ Ext.override(Lino.RichTextPanel,Lino.FieldBoxMixin);


// from lino.modlib.comments:comments/comments.js

function toggle_visibility(id) {
   var e = document.getElementById(id);
   if(e.style.display == 'block'|| (e.style.display != 'block' && e.style.display != 'none'))
      e.style.display = 'none';
   else
      e.style.display = 'block';
}
Lino.main_menu = [ { "menu": { "items": [ { "handler": function() {Lino.contacts.Persons.grid.run(null)}, "listeners": { "render": Lino.quicktip_renderer("Foo","List of all Persons.") }, "text": "Persons" }, { "handler": function() {Lino.contacts.Companies.grid.run(null)}, "text": "Organizations" }, { "handler": function() {Lino.households.Households.grid.run(null)}, "text": "Households" }, { "handler": function() {Lino.lists.Lists.grid.run(null)}, "text": "Partner Lists" } ] }, "text": "Contacts" }, { "menu": { "items": [ { "handler": function() {Lino.plausibility.MyProblems.grid.run(null)}, "listeners": { "render": Lino.quicktip_renderer("Foo","Shows the plausibility problems assigned to this user.") }, "text": "Plausibility problems assigned to me" }, { "handler": function() {Lino.blogs.MyEntries.grid.run(null)}, "text": "My Blog Entries" }, { "handler": function() {Lino.excerpts.MyExcerpts.grid.run(null)}, "listeners": { "render": Lino.quicktip_renderer("Foo","Base class for all tables on Excerpt.") }, "text": "My Excerpts" }, { "handler": function() {Lino.comments.MyComments.grid.run(null)}, "text": "My Comments" } ] }, "text": "Office" }, { "menu": { "items": [ { "handler": function() {Lino.cal.MyEntries.grid.run(null)}, "listeners": { "render": Lino.quicktip_renderer("Foo","Table of my appointments.") }, "text": "My appointments" }, { "handler": function() {Lino.cal.OverdueAppointments.grid.run(null)}, "listeners": { "render": Lino.quicktip_renderer("Foo","Shows overdue appointments, i.e. appointments whose date is\nover but who are still in a nonstable state.") }, "text": "Overdue appointments" }, { "handler": function() {Lino.cal.MyUnconfirmedAppointments.grid.run(null)}, "listeners": { "render": Lino.quicktip_renderer("Foo","Shows my appointments in the near future which are in suggested or\ndraft state.") }, "text": "Unconfirmed appointments" }, { "handler": function() {Lino.cal.MyTasks.grid.run(null)}, "listeners": { "render": Lino.quicktip_renderer("Foo","Table of all my tasks.") }, "text": "My tasks" }, { "handler": function() {Lino.cal.MyGuests.grid.run(null)}, "listeners": { "render": Lino.quicktip_renderer("Foo","The default table for Guest.") }, "text": "My guests" }, { "handler": function() {Lino.cal.MyPresences.grid.run(null)}, "listeners": { "render": Lino.quicktip_renderer("Foo","Shows all my presences in calendar events, independently of their\nstate.") }, "text": "My presences" }, { "handler": function() {Lino.cal.MyOverdueAppointments.grid.run(null)}, "listeners": { "render": Lino.quicktip_renderer("Foo","Like OverdueAppointments, but only for myself.") }, "text": "My overdue appointments" }, { "handler": function() {Lino.extensible.CalendarPanel.grid.run(null)}, "iconCls": "x-tbar-calendar", "listeners": { "render": Lino.quicktip_renderer("Foo","Displays your events in a \"calendar view\"     with the possibility to switch between daily, weekly, monthly view.") }, "text": "Calendar" } ] }, "text": "Calendar" }, { "menu": { "items": [ { "menu": { "items": [ { "handler": function() {Lino.countries.Countries.grid.run(null)}, "listeners": { "render": Lino.quicktip_renderer("Foo","The table of all countries.") }, "text": "Countries" }, { "handler": function() {Lino.countries.Places.grid.run(null)}, "listeners": { "render": Lino.quicktip_renderer("Foo","\n    The table of known geographical places.\n    A geographical place can be a city, a town, a suburb,\n    a province, a lake... any named geographic entity,\n    except for countries because these have their own table.\n    ") }, "text": "Places" } ] }, "text": "Places" }, { "menu": { "items": [ { "handler": function() {Lino.system.SiteConfigs.detail.run(null,{ "record_id": 1 })}, "iconCls": "x-tbar-application_form", "text": "Site Parameters" }, { "handler": function() {Lino.users.AllUsers.grid.run(null)}, "listeners": { "render": Lino.quicktip_renderer("Foo","Shows the list of all users on this site.") }, "text": "Users" }, { "handler": function() {Lino.gfks.HelpTexts.grid.run(null)}, "text": "Help Texts" } ] }, "text": "System" }, { "menu": { "items": [ { "handler": function() {Lino.contacts.CompanyTypes.grid.run(null)}, "text": "Organization types" }, { "handler": function() {Lino.contacts.RoleTypes.grid.run(null)}, "text": "Functions" }, { "handler": function() {Lino.households.Types.grid.run(null)}, "text": "Household Types" }, { "handler": function() {Lino.lists.ListTypes.grid.run(null)}, "text": "List Types" } ] }, "text": "Contacts" }, { "menu": { "items": [ { "handler": function() {Lino.cal.Calendars.grid.run(null)}, "text": "Calendars" }, { "handler": function() {Lino.cal.AllRooms.grid.run(null)}, "listeners": { "render": Lino.quicktip_renderer("Foo","List of rooms where calendar events can happen.") }, "text": "Rooms" }, { "handler": function() {Lino.cal.Priorities.grid.run(null)}, "listeners": { "render": Lino.quicktip_renderer("Foo","List of possible priorities of calendar events.") }, "text": "Priorities" }, { "handler": function() {Lino.cal.RecurrentEvents.grid.run(null)}, "listeners": { "render": Lino.quicktip_renderer("Foo","The list of all recurrent events (RecurrentEvent).") }, "text": "Recurring events" }, { "handler": function() {Lino.cal.GuestRoles.grid.run(null)}, "listeners": { "render": Lino.quicktip_renderer("Foo","The role of a guest expresses what the partner is going to do there.") }, "text": "Guest Roles" }, { "handler": function() {Lino.cal.EventTypes.grid.run(null)}, "listeners": { "render": Lino.quicktip_renderer("Foo","The list of Event Types defined on this system.\n    An EventType is a list of events which have certain things in common,\n    especially they are displayed in the same colour in the calendar panel.\n    ") }, "text": "Calendar entry types" }, { "handler": function() {Lino.cal.EventPolicies.grid.run(null)}, "text": "Recurrency policies" }, { "handler": function() {Lino.cal.RemoteCalendars.grid.run(null)}, "text": "Remote Calendars" } ] }, "text": "Calendar" }, { "menu": { "items": [ { "handler": function() {Lino.topics.AllTopics.grid.run(null)}, "text": "Topics" }, { "handler": function() {Lino.topics.TopicGroups.grid.run(null)}, "text": "Topic groups" } ] }, "text": "Topics" }, { "menu": { "items": [ { "handler": function() {Lino.blogs.EntryTypes.grid.run(null)}, "text": "Blog Entry Types" } ] }, "text": "Blog" }, { "menu": { "items": [ { "handler": function() {Lino.excerpts.ExcerptTypes.grid.run(null)}, "listeners": { "render": Lino.quicktip_renderer("Foo","Displays all rows of ExcerptType.") }, "text": "Excerpt Types" }, { "handler": function() {Lino.tinymce.MyTextFieldTemplates.grid.run(null)}, "text": "My Text Field Templates" }, { "handler": function() {Lino.comments.CommentTypes.grid.run(null)}, "text": "Comment Types" } ] }, "text": "Office" } ] }, "text": "Configure" }, { "menu": { "items": [ { "menu": { "items": [ { "handler": function() {Lino.contacts.Roles.grid.run(null)}, "text": "Contact Persons" }, { "handler": function() {Lino.contacts.Partners.grid.run(null)}, "text": "Partners" }, { "handler": function() {Lino.addresses.AddressTypes.grid.run(null)}, "text": "Address types" }, { "handler": function() {Lino.addresses.Addresses.grid.run(null)}, "text": "Addresses" }, { "handler": function() {Lino.phones.ContactDetailTypes.grid.run(null)}, "text": "Contact Detail Types" }, { "handler": function() {Lino.phones.ContactDetails.grid.run(null)}, "text": "Contact Details" }, { "handler": function() {Lino.households.MemberRoles.grid.run(null)}, "listeners": { "render": Lino.quicktip_renderer("Foo","The list of allowed choices for the (role of a household member.") }, "text": "Household member roles" }, { "handler": function() {Lino.households.Members.grid.run(null)}, "text": "Household Members" }, { "handler": function() {Lino.humanlinks.Links.grid.run(null)}, "text": "Personal Links" }, { "handler": function() {Lino.humanlinks.LinkTypes.grid.run(null)}, "listeners": { "render": Lino.quicktip_renderer("Foo","The global list of human link types.  This is used as choicelist\nfor the type\nfield of a human link.") }, "text": "Parency types" }, { "handler": function() {Lino.lists.AllMembers.grid.run(null)}, "text": "List memberships" } ] }, "text": "Contacts" }, { "menu": { "items": [ { "handler": function() {Lino.users.Authorities.grid.run(null)}, "text": "Authorities" }, { "handler": function() {Lino.users.UserTypes.grid.run(null)}, "listeners": { "render": Lino.quicktip_renderer("Foo","The list of user types available in this application.") }, "text": "User types" }, { "handler": function() {Lino.gfks.ContentTypes.grid.run(null)}, "listeners": { "render": Lino.quicktip_renderer("Foo","Default table for django.contrib.ContentType.") }, "text": "content types" }, { "handler": function() {Lino.plausibility.Checkers.grid.run(null)}, "listeners": { "render": Lino.quicktip_renderer("Foo","The list of plausibility problem types known by this application.") }, "text": "Plausibility checkers" }, { "handler": function() {Lino.plausibility.AllProblems.grid.run(null)}, "listeners": { "render": Lino.quicktip_renderer("Foo","Show all plausibility problems.") }, "text": "Plausibility problems" }, { "handler": function() {Lino.dashboard.AllWidgets.grid.run(null)}, "text": "All dashboard widgets" } ] }, "text": "System" }, { "menu": { "items": [ { "handler": function() {Lino.cal.AllEntries.grid.run(null)}, "listeners": { "render": Lino.quicktip_renderer("Foo","Table which shows all calendar events.") }, "text": "Calendar entries" }, { "handler": function() {Lino.cal.Tasks.grid.run(null)}, "listeners": { "render": Lino.quicktip_renderer("Foo","A calendar task is something you need to do.") }, "text": "Tasks" }, { "handler": function() {Lino.cal.AllGuests.grid.run(null)}, "listeners": { "render": Lino.quicktip_renderer("Foo","The default table for Guest.") }, "text": "Presences" }, { "handler": function() {Lino.cal.Subscriptions.grid.run(null)}, "text": "Subscriptions" }, { "handler": function() {Lino.cal.EntryStates.grid.run(null)}, "listeners": { "render": Lino.quicktip_renderer("Foo","The possible states of a calendar entry.") }, "text": "Event states" }, { "handler": function() {Lino.cal.GuestStates.grid.run(null)}, "listeners": { "render": Lino.quicktip_renderer("Foo","Possible values for the state of a Guest. The list of choices for\nthe Guest.state field.") }, "text": "Guest states" }, { "handler": function() {Lino.cal.TaskStates.grid.run(null)}, "listeners": { "render": Lino.quicktip_renderer("Foo","Possible values for the state of a Task. The list of\nchoices for the Task.state field. By default it contains\nthe following values (which can be redefined in\nworkflows_module):") }, "text": "Task states" } ] }, "text": "Calendar" }, { "menu": { "items": [ { "handler": function() {Lino.topics.AllInterests.grid.run(null)}, "text": "Interests" } ] }, "text": "Topics" }, { "menu": { "items": [ { "handler": function() {Lino.blogs.AllEntries.grid.run(null)}, "text": "Blog Entries" } ] }, "text": "Blog" }, { "menu": { "items": [ { "handler": function() {Lino.excerpts.AllExcerpts.grid.run(null)}, "listeners": { "render": Lino.quicktip_renderer("Foo","Base class for all tables on Excerpt.") }, "text": "Excerpts" }, { "handler": function() {Lino.tinymce.TextFieldTemplates.grid.run(null)}, "text": "Text Field Templates" }, { "handler": function() {Lino.comments.AllComments.grid.run(null)}, "text": "Comments" } ] }, "text": "Office" } ] }, "text": "Explorer" }, { "menu": { "items": [ { "handler": function() {Lino.about.About.show.run(null,{ "record_id": -99998 })}, "listeners": { "render": Lino.quicktip_renderer("Foo","Show information about this site.") }, "text": "About" } ] }, "text": "Site" }, { "handler": function() {Lino.handle_home_button()}, "text": "Home" } ];
Ext.namespace('Lino.countries.Countries')
Ext.namespace('Lino.countries.Places')
Ext.namespace('Lino.system.SiteConfigs')
Ext.namespace('Lino.contacts.Partners')
Ext.namespace('Lino.contacts.Persons')
Ext.namespace('Lino.contacts.CompanyTypes')
Ext.namespace('Lino.contacts.Companies')
Ext.namespace('Lino.contacts.RoleTypes')
Ext.namespace('Lino.contacts.Roles')
Ext.namespace('Lino.gfks.ContentTypes')
Ext.namespace('Lino.gfks.HelpTexts')
Ext.namespace('Lino.plausibility.Problems')
Ext.namespace('Lino.plausibility.AllProblems')
Ext.namespace('Lino.plausibility.MyProblems')
Ext.namespace('Lino.cal.RemoteCalendars')
Ext.namespace('Lino.cal.Rooms')
Ext.namespace('Lino.cal.AllRooms')
Ext.namespace('Lino.cal.Priorities')
Ext.namespace('Lino.cal.Calendars')
Ext.namespace('Lino.cal.Subscriptions')
Ext.namespace('Lino.cal.Tasks')
Ext.namespace('Lino.cal.MyTasks')
Ext.namespace('Lino.cal.GuestRoles')
Ext.namespace('Lino.cal.Guests')
Ext.namespace('Lino.cal.AllGuests')
Ext.namespace('Lino.cal.MyPresences')
Ext.namespace('Lino.cal.MyPendingPresences')
Ext.namespace('Lino.cal.MyGuests')
Ext.namespace('Lino.cal.EventTypes')
Ext.namespace('Lino.cal.RecurrentEvents')
Ext.namespace('Lino.cal.Events')
Ext.namespace('Lino.cal.AllEntries')
Ext.namespace('Lino.cal.PublicEntries')
Ext.namespace('Lino.cal.EntriesByDay')
Ext.namespace('Lino.cal.OneEvent')
Ext.namespace('Lino.cal.MyEntries')
Ext.namespace('Lino.cal.MyEntriesToday')
Ext.namespace('Lino.cal.MyAssignedEvents')
Ext.namespace('Lino.cal.OverdueAppointments')
Ext.namespace('Lino.cal.MyOverdueAppointments')
Ext.namespace('Lino.cal.MyUnconfirmedAppointments')
Ext.namespace('Lino.cal.EventPolicies')
Ext.namespace('Lino.extensible.PanelCalendars')
Ext.namespace('Lino.extensible.PanelEvents')
Ext.namespace('Lino.addresses.Addresses')
Ext.namespace('Lino.phones.ContactDetails')
Ext.namespace('Lino.households.Types')
Ext.namespace('Lino.households.Households')
Ext.namespace('Lino.households.Members')
Ext.namespace('Lino.humanlinks.Links')
Ext.namespace('Lino.topics.TopicGroups')
Ext.namespace('Lino.topics.Topics')
Ext.namespace('Lino.topics.AllTopics')
Ext.namespace('Lino.topics.Interests')
Ext.namespace('Lino.topics.AllInterests')
Ext.namespace('Lino.lists.ListTypes')
Ext.namespace('Lino.lists.Lists')
Ext.namespace('Lino.lists.Members')
Ext.namespace('Lino.lists.AllMembers')
Ext.namespace('Lino.blogs.EntryTypes')
Ext.namespace('Lino.blogs.Entries')
Ext.namespace('Lino.blogs.MyEntries')
Ext.namespace('Lino.blogs.AllEntries')
Ext.namespace('Lino.blogs.LatestEntries')
Ext.namespace('Lino.excerpts.ExcerptTypes')
Ext.namespace('Lino.excerpts.Excerpts')
Ext.namespace('Lino.excerpts.AllExcerpts')
Ext.namespace('Lino.excerpts.MyExcerpts')
Ext.namespace('Lino.tinymce.TextFieldTemplates')
Ext.namespace('Lino.tinymce.MyTextFieldTemplates')
Ext.namespace('Lino.comments.CommentTypes')
Ext.namespace('Lino.comments.Comments')
Ext.namespace('Lino.comments.MyComments')
Ext.namespace('Lino.comments.CommentsByX')
Ext.namespace('Lino.comments.AllComments')
Ext.namespace('Lino.comments.RecentComments')
Ext.namespace('Lino.dashboard.Widgets')
Ext.namespace('Lino.dashboard.AllWidgets')
Ext.namespace('Lino.users.Users')
Ext.namespace('Lino.users.AllUsers')
Ext.namespace('Lino.users.UsersOverview')
Ext.namespace('Lino.users.MySettings')
Ext.namespace('Lino.users.Authorities')
Ext.namespace('Lino.users.OtherUsers')
Ext.namespace('Lino.users.Register')
Ext.namespace('Lino.users.NewUsers')
Ext.namespace('Lino.sessions.SessionTable')
Ext.namespace('Lino.countries.PlacesByPlace')
Ext.namespace('Lino.countries.PlacesByCountry')
Ext.namespace('Lino.contacts.PartnersByCity')
Ext.namespace('Lino.contacts.PartnersByCountry')
Ext.namespace('Lino.contacts.RolesByCompany')
Ext.namespace('Lino.contacts.RolesByPerson')
Ext.namespace('Lino.contacts.CompaniesByCompany')
Ext.namespace('Lino.plausibility.ProblemsByChecker')
Ext.namespace('Lino.cal.SubscriptionsByUser')
Ext.namespace('Lino.cal.SubscriptionsByCalendar')
Ext.namespace('Lino.cal.TasksByUser')
Ext.namespace('Lino.cal.GuestsByEvent')
Ext.namespace('Lino.cal.GuestsByRole')
Ext.namespace('Lino.cal.GuestsByPartner')
Ext.namespace('Lino.cal.EntriesByType')
Ext.namespace('Lino.cal.ConflictingEvents')
Ext.namespace('Lino.cal.EntriesByRoom')
Ext.namespace('Lino.addresses.AddressesByPartner')
Ext.namespace('Lino.addresses.AddressesByCity')
Ext.namespace('Lino.phones.ContactDetailsByPartner')
Ext.namespace('Lino.households.HouseholdsByType')
Ext.namespace('Lino.households.MembersByHousehold')
Ext.namespace('Lino.households.SiblingsByPerson')
Ext.namespace('Lino.households.MembersByPerson')
Ext.namespace('Lino.humanlinks.LinksByHuman')
Ext.namespace('Lino.topics.TopicsByGroup')
Ext.namespace('Lino.topics.InterestsByPartner')
Ext.namespace('Lino.topics.InterestsByTopic')
Ext.namespace('Lino.lists.MembersByList')
Ext.namespace('Lino.lists.MembersByPartner')
Ext.namespace('Lino.blogs.EntriesByType')
Ext.namespace('Lino.excerpts.ExcerptsByType')
Ext.namespace('Lino.comments.CommentsByType')
Ext.namespace('Lino.dashboard.WidgetsByUser')
Ext.namespace('Lino.users.AuthoritiesGiven')
Ext.namespace('Lino.users.AuthoritiesTaken')
Ext.namespace('Lino.comments.CommentsByRFC')
Ext.namespace('Lino.cal.TasksByController')
Ext.namespace('Lino.gfks.HelpTextsByModel')
Ext.namespace('Lino.plausibility.ProblemsByOwner')
Ext.namespace('Lino.cal.EntriesByController')
Ext.namespace('Lino.topics.InterestsByController')
Ext.namespace('Lino.excerpts.ExcerptsByOwner')
Ext.namespace('Lino.blogs.EntriesByController')
Ext.namespace('Lino.about.Models')
Ext.namespace('Lino.about.FieldsByModel')
Ext.namespace('Lino.about.Inspector')
Ext.namespace('Lino.about.SourceFiles')
Ext.namespace('Lino.gfks.BrokenGFKs')
Ext.namespace('Lino.gfks.BrokenGFKsByModel')
Ext.namespace('Lino.about.About')
Ext.namespace('Lino.extensible.CalendarPanel')
Ext.namespace('Lino.plausibility.Checkers')
Ext.namespace('Lino.cal.DurationUnits')
Ext.namespace('Lino.cal.TaskStates')
Ext.namespace('Lino.addresses.DataSources')
Ext.namespace('Lino.cal.Weekdays')
Ext.namespace('Lino.households.MemberDependencies')
Ext.namespace('Lino.excerpts.Shortcuts')
Ext.namespace('Lino.system.PeriodEvents')
Ext.namespace('Lino.cal.Recurrencies')
Ext.namespace('Lino.system.Genders')
Ext.namespace('Lino.cal.EventEvents')
Ext.namespace('Lino.households.MemberRoles')
Ext.namespace('Lino.cal.GuestStates')
Ext.namespace('Lino.addresses.AddressTypes')
Ext.namespace('Lino.phones.ContactDetailTypes')
Ext.namespace('Lino.printing.BuildMethods')
Ext.namespace('Lino.cal.EntryStates')
Ext.namespace('Lino.humanlinks.LinkTypes')
Ext.namespace('Lino.cal.AccessClasses')
Ext.namespace('Lino.system.YesNo')
Ext.namespace('Lino.users.UserTypes')
Ext.namespace('Lino.contacts.PartnerEvents')
Ext.namespace('Lino.countries.PlaceTypes')
Ext.namespace('Lino.users.UserStates')

// ChoiceLists: 
Lino.plausibility.Checkers = [ [ "printing.CachedPrintableChecker", "Check for missing target files" ], [ "countries.PlaceChecker", "Check plausibility of geographical places." ], [ "addresses.AddressOwnerChecker", "Check for missing or non-primary address records" ], [ "cal.EventGuestChecker", "Entries without participants" ], [ "cal.ConflictingEventsChecker", "Check for conflicting calendar entries" ], [ "cal.ObsoleteEventTypeChecker", "Obsolete event type of generated entries" ], [ "cal.LongEntryChecker", "Too long-lasting calendar entries" ] ];
Lino.cal.DurationUnits = [ [ "s", "seconds" ], [ "m", "minutes" ], [ "h", "hours" ], [ "D", "days" ], [ "W", "weeks" ], [ "M", "months" ], [ "Y", "years" ] ];
Lino.cal.TaskStates = [ [ "10", "To do" ], [ "15", "Important" ], [ "20", "Started" ], [ "30", "Done" ], [ "50", "Cancelled" ] ];
Lino.addresses.DataSources = [ [ "01", "Manually entered" ], [ "02", "Read from eID" ] ];
Lino.cal.Weekdays = [ [ "1", "Monday" ], [ "2", "Tuesday" ], [ "3", "Wednesday" ], [ "4", "Thursday" ], [ "5", "Friday" ], [ "6", "Saturday" ], [ "7", "Sunday" ] ];
Lino.households.MemberDependencies = [ [ "01", "At full charge" ], [ "02", "Not at charge" ], [ "03", "At shared charge" ] ];
Lino.excerpts.Shortcuts = [  ];
Lino.system.PeriodEvents = [ [ "10", "Starts" ], [ "20", "Is active" ], [ "30", "Ends" ] ];
Lino.cal.Recurrencies = [ [ "O", "once" ], [ "D", "daily" ], [ "W", "weekly" ], [ "M", "monthly" ], [ "Y", "yearly" ], [ "P", "per weekday" ], [ "E", "Relative to Easter" ] ];
Lino.system.Genders = [ [ "M", "Male" ], [ "F", "Female" ] ];
Lino.cal.EventEvents = [ [ "10", "Stable" ], [ "20", "Unstable" ] ];
Lino.households.MemberRoles = [ [ "01", "Head of household" ], [ "02", "Spouse" ], [ "03", "Partner" ], [ "04", "Cohabitant" ], [ "05", "Child" ], [ "06", "Relative" ], [ "07", "Adopted child" ], [ "10", "Other" ] ];
Lino.cal.GuestStates = [ [ "10", "Invited" ], [ "40", "Present" ], [ "50", "Absent" ], [ "60", "Excused" ] ];
Lino.addresses.AddressTypes = [ [ "01", "Official address" ], [ "02", "Unverified address" ], [ "03", "Declared address" ], [ "04", "Reference address" ], [ "98", "Obsolete" ], [ "99", "Other" ] ];
Lino.phones.ContactDetailTypes = [ [ "010", "E-Mail" ], [ "020", "Mobile" ], [ "030", "Phone" ], [ "040", "Website" ], [ "050", "Fax" ], [ "090", "Other" ] ];
Lino.printing.BuildMethods = [ [ "latex", "LatexBuildMethod" ], [ "pisa", "PisaBuildMethod" ], [ "rtf", "RtfBuildMethod" ], [ "xml", "XmlBuildMethod" ], [ "weasy2html", "WeasyHtmlBuildMethod" ], [ "weasy2pdf", "WeasyPdfBuildMethod" ] ];
Lino.cal.EntryStates = [ [ "10", "Suggested" ], [ "20", "Draft" ], [ "50", "Took place" ], [ "70", "Cancelled" ] ];
Lino.humanlinks.LinkTypes = [ [ "01", "Father (Mother)" ], [ "02", "Adoptive father (Adoptive mother)" ], [ "03", "Grandfather (Grandmother)" ], [ "05", "Husband (Wife)" ], [ "06", "Friend (Friend)" ], [ "07", "Partner (Partner)" ], [ "08", "Stepfather (Stepmother)" ], [ "09", "Foster father (Foster mother)" ], [ "10", "Brother (Sister)" ], [ "11", "Cousin (Cousin)" ], [ "12", "Uncle (Aunt)" ], [ "80", "Relative (Relative)" ], [ "90", "Other (Other)" ] ];
Lino.cal.AccessClasses = [ [ "10", "Private" ], [ "20", "Show busy" ], [ "30", "Public" ] ];
Lino.system.YesNo = [ [ "y", "Yes" ], [ "n", "No" ] ];
Lino.users.UserTypes = [ [ "000", "000 (Anonymous)" ], [ "100", "100 (User)" ], [ "200", "200 (Collector)" ], [ "300", "300 (Project manager)" ], [ "800", "800 (Staff)" ], [ "900", "900 (Administrator)" ] ];
Lino.contacts.PartnerEvents = [  ];
Lino.countries.PlaceTypes = [ [ "10", "Member State" ], [ "11", "Division" ], [ "12", "Region" ], [ "13", "Community" ], [ "14", "Territory" ], [ "20", "County" ], [ "21", "Province" ], [ "22", "Shire" ], [ "23", "Subregion" ], [ "24", "Department" ], [ "25", "Arrondissement" ], [ "26", "Prefecture" ], [ "27", "District" ], [ "28", "Sector" ], [ "50", "City" ], [ "51", "Town" ], [ "52", "Municipality" ], [ "54", "Parish" ], [ "55", "Township" ], [ "56", "Quarter" ], [ "61", "Borough" ], [ "62", "Small borough" ], [ "70", "Village" ] ];
Lino.users.UserStates = [ [ "10", "New" ], [ "20", "Active" ], [ "30", "Inactive" ] ];

Lino.cal.RecurrentEvents.ParamsPanel = Ext.extend(Ext.form.FormPanel, {
  autoScroll: false,
  border: false,
  labelWidth: 63,
  hideCheckBoxLabels: true,
  frame: true,
  bodyBorder: false,
  labelAlign: "top",
  layout: 'form',
  autoHeight: true,
  initComponent : function() {
    var user1 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a User...", "fieldLabel": "Author", "hiddenName": "userHidden", "listeners": { "render": Lino.quicktip_renderer("Author","(cal.RecurrentEvents.user) ") }, "name": "user", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.users.Users.detail,Lino.users.Users.insert)}, "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/RecurrentEvents/user" }) }) });
    this.items = [ { "autoHeight": true, "items": user1, "labelAlign": "top", "layout": "form", "xtype": "panel" } ];
    this.fields = [ user1 ];
    Lino.cal.RecurrentEvents.ParamsPanel.superclass.initComponent.call(this);
  }
});


Lino.cal.Subscriptions.ParamsPanel = Ext.extend(Ext.form.FormPanel, {
  autoScroll: false,
  border: false,
  labelWidth: 63,
  hideCheckBoxLabels: true,
  frame: true,
  bodyBorder: false,
  labelAlign: "top",
  layout: 'form',
  autoHeight: true,
  initComponent : function() {
    var user4 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a User...", "fieldLabel": "Author", "hiddenName": "userHidden", "listeners": { "render": Lino.quicktip_renderer("Author","(cal.Subscriptions.user) ") }, "name": "user", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.users.Users.detail,Lino.users.Users.insert)}, "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/Subscriptions/user" }) }) });
    this.items = [ { "autoHeight": true, "items": user4, "labelAlign": "top", "layout": "form", "xtype": "panel" } ];
    this.fields = [ user4 ];
    Lino.cal.Subscriptions.ParamsPanel.superclass.initComponent.call(this);
  }
});


Lino.blogs.Entries.ParamsPanel = Ext.extend(Ext.form.FormPanel, {
  autoScroll: false,
  border: false,
  labelWidth: 63,
  hideCheckBoxLabels: true,
  frame: true,
  bodyBorder: false,
  labelAlign: "top",
  layout: 'form',
  autoHeight: true,
  initComponent : function() {
    var user7 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a User...", "fieldLabel": "Author", "hiddenName": "userHidden", "listeners": { "render": Lino.quicktip_renderer("Author","(blogs.Entries.user) ") }, "name": "user", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.users.Users.detail,Lino.users.Users.insert)}, "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/blogs/Entries/user" }) }) });
    this.items = [ { "autoHeight": true, "items": user7, "labelAlign": "top", "layout": "form", "xtype": "panel" } ];
    this.fields = [ user7 ];
    Lino.blogs.Entries.ParamsPanel.superclass.initComponent.call(this);
  }
});


Lino.dashboard.Widgets.ParamsPanel = Ext.extend(Ext.form.FormPanel, {
  autoScroll: false,
  border: false,
  labelWidth: 63,
  hideCheckBoxLabels: true,
  frame: true,
  bodyBorder: false,
  labelAlign: "top",
  layout: 'form',
  autoHeight: true,
  initComponent : function() {
    var user10 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a User...", "fieldLabel": "Author", "hiddenName": "userHidden", "listeners": { "render": Lino.quicktip_renderer("Author","(dashboard.Widgets.user) ") }, "name": "user", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.users.Users.detail,Lino.users.Users.insert)}, "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/dashboard/Widgets/user" }) }) });
    this.items = [ { "autoHeight": true, "items": user10, "labelAlign": "top", "layout": "form", "xtype": "panel" } ];
    this.fields = [ user10 ];
    Lino.dashboard.Widgets.ParamsPanel.superclass.initComponent.call(this);
  }
});


Lino.cal.Tasks.ParamsPanel = Ext.extend(Ext.form.FormPanel, {
  autoScroll: false,
  border: false,
  hideCheckBoxLabels: true,
  frame: true,
  bodyBorder: false,
  labelAlign: "top",
  layout: 'form',
  autoHeight: true,
  initComponent : function() {
    var start_date13 = new Lino.DateField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Date from</span>", "listeners": { "render": Lino.quicktip_renderer("Date from","(cal.Tasks.start_date) Start of observed date range") }, "name": "start_date", "selectOnFocus": true, "value": null });
    var end_date14 = new Lino.DateField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">until</span>", "listeners": { "render": Lino.quicktip_renderer("until","(cal.Tasks.end_date) End of observed date range") }, "name": "end_date", "selectOnFocus": true, "value": null });
    var user15 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a User...", "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Managed by</span>", "hiddenName": "userHidden", "listeners": { "render": Lino.quicktip_renderer("Managed by","(cal.Tasks.user) Only rows managed by this user.") }, "name": "user", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.users.Users.detail,Lino.users.Users.insert)}, "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/Tasks/user" }) }) });
    var state16 = new Lino.ChoicesFieldElement({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">State</span>", "forceSelection": true, "hiddenName": "stateHidden", "listeners": { "render": Lino.quicktip_renderer("State","(cal.Tasks.state) Only rows having this state.") }, "name": "state", "selectOnFocus": true, "store": [['','<br>']].concat(Lino.cal.TaskStates) });
    var main_1_panel17 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 22, "items": start_date13, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 22, "items": end_date14, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 34, "items": user15, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 20, "items": state16, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 99, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    this.items = [ main_1_panel17 ];
    this.fields = [ start_date13, end_date14, user15, state16 ];
    Lino.cal.Tasks.ParamsPanel.superclass.initComponent.call(this);
  }
});


Lino.plausibility.Problems.ParamsPanel = Ext.extend(Ext.form.FormPanel, {
  autoHeight: true,
  frame: true,
  layoutConfig: { "align": "stretchmax" },
  hideCheckBoxLabels: true,
  autoScroll: false,
  labelWidth: 189,
  border: false,
  bodyBorder: false,
  labelAlign: "top",
  layout: 'hbox',
  autoHeight: true,
  initComponent : function() {
    var user23 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a User...", "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Responsible</span>", "hiddenName": "userHidden", "listeners": { "render": Lino.quicktip_renderer("Responsible","(plausibility.Problems.user) Only problems for this responsible.") }, "name": "user", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.users.Users.detail,Lino.users.Users.insert)}, "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/plausibility/Problems/user" }) }) });
    var checker24 = new Lino.ChoicesFieldElement({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Plausibility checker</span>", "forceSelection": true, "hiddenName": "checkerHidden", "listeners": { "render": Lino.quicktip_renderer("Plausibility checker","(plausibility.Problems.checker) Only problems by this checker.") }, "name": "checker", "selectOnFocus": true, "store": [['','<br>']].concat(Lino.plausibility.Checkers) });
    this.items = [ { "autoHeight": true, "flex": 50, "items": user23, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 50, "items": checker24, "labelAlign": "top", "layout": "form", "xtype": "panel" } ];
    this.fields = [ user23, checker24 ];
    Lino.plausibility.Problems.ParamsPanel.superclass.initComponent.call(this);
  }
});


Lino.households.Members.ParamsPanel = Ext.extend(Ext.form.FormPanel, {
  autoHeight: true,
  frame: true,
  layoutConfig: { "align": "stretchmax" },
  hideCheckBoxLabels: true,
  autoScroll: false,
  labelWidth: 108,
  border: false,
  bodyBorder: false,
  labelAlign: "top",
  layout: 'hbox',
  autoHeight: true,
  initComponent : function() {
    var gender28 = new Lino.ChoicesFieldElement({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Gender</span>", "forceSelection": true, "hiddenName": "genderHidden", "listeners": { "render": Lino.quicktip_renderer("Gender","(households.Members.gender) Show only persons with the given gender.") }, "name": "gender", "selectOnFocus": true, "store": [['','<br>']].concat(Lino.system.Genders) });
    var end_date29 = new Lino.DateField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">until</span>", "listeners": { "render": Lino.quicktip_renderer("until","(households.Members.end_date) End date of observed period") }, "name": "end_date", "selectOnFocus": true, "value": null });
    var start_date30 = new Lino.DateField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Period from</span>", "listeners": { "render": Lino.quicktip_renderer("Period from","(households.Members.start_date) Start date of observed period") }, "name": "start_date", "selectOnFocus": true, "value": null });
    var aged_to31 = new Ext.form.NumberField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Aged to</span>", "listeners": { "render": Lino.quicktip_renderer("Aged to","(households.Members.aged_to) Select only persons aged at most the given number of years.") }, "name": "aged_to", "selectOnFocus": true });
    var aged_from32 = new Ext.form.NumberField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Aged from</span>", "listeners": { "render": Lino.quicktip_renderer("Aged from","(households.Members.aged_from) Select only persons aged at least the given number of years.") }, "name": "aged_from", "selectOnFocus": true });
    this.items = [ { "autoHeight": true, "flex": 20, "items": gender28, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 28, "items": end_date29, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 28, "items": start_date30, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 11, "items": aged_to31, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 11, "items": aged_from32, "labelAlign": "top", "layout": "form", "xtype": "panel" } ];
    this.fields = [ gender28, end_date29, start_date30, aged_to31, aged_from32 ];
    Lino.households.Members.ParamsPanel.superclass.initComponent.call(this);
  }
});


Lino.excerpts.Excerpts.ParamsPanel = Ext.extend(Ext.form.FormPanel, {
  autoScroll: false,
  autoHeight: true,
  border: false,
  hideCheckBoxLabels: true,
  frame: true,
  bodyBorder: false,
  labelAlign: "top",
  layout: 'form',
  autoHeight: true,
  initComponent : function() {
    var start_date39 = new Lino.DateField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Date from</span>", "listeners": { "render": Lino.quicktip_renderer("Date from","(excerpts.Excerpts.start_date) Start of observed date range") }, "name": "start_date", "selectOnFocus": true, "value": null });
    var end_date40 = new Lino.DateField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">until</span>", "listeners": { "render": Lino.quicktip_renderer("until","(excerpts.Excerpts.end_date) End of observed date range") }, "name": "end_date", "selectOnFocus": true, "value": null });
    var pcertifying41 = new Lino.ChoicesFieldElement({ "anchor": "-20", "autoHeight": true, "fieldLabel": "Certifying excerpts", "forceSelection": true, "hiddenName": "pcertifyingHidden", "listeners": { "render": Lino.quicktip_renderer("Certifying excerpts","(excerpts.Excerpts.pcertifying) ") }, "name": "pcertifying", "selectOnFocus": true, "store": [['','<br>']].concat(Lino.system.YesNo) });
    var main_1_panel42 = new Ext.Panel({ "anchor": "-20", "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 39, "items": start_date39, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 39, "items": end_date40, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 21, "items": pcertifying41, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 180, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var user46 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a User...", "fieldLabel": "Author", "hiddenName": "userHidden", "listeners": { "render": Lino.quicktip_renderer("Author","(excerpts.Excerpts.user) ") }, "name": "user", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.users.Users.detail,Lino.users.Users.insert)}, "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/excerpts/Excerpts/user" }) }) });
    var excerpt_type47 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a Excerpt Type...", "fieldLabel": "Excerpt Type", "hiddenName": "excerpt_typeHidden", "listeners": { "render": Lino.quicktip_renderer("Excerpt Type","(excerpts.Excerpts.excerpt_type) ") }, "name": "excerpt_type", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.excerpts.ExcerptTypes.detail,Lino.excerpts.ExcerptTypes.insert)}, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/excerpts/Excerpts/excerpt_type" }) }) });
    var main_2_panel48 = new Ext.Panel({ "anchor": "-20", "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 50, "items": user46, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 50, "items": excerpt_type47, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 117, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    this.items = [ main_1_panel42, main_2_panel48 ];
    this.fields = [ start_date39, end_date40, pcertifying41, user46, excerpt_type47 ];
    Lino.excerpts.Excerpts.ParamsPanel.superclass.initComponent.call(this);
  }
});


Lino.cal.OneEvent.ParamsPanel = Ext.extend(Ext.form.FormPanel, {
  autoScroll: false,
  autoHeight: true,
  border: false,
  hideCheckBoxLabels: true,
  frame: true,
  bodyBorder: false,
  labelAlign: "top",
  layout: 'form',
  autoHeight: true,
  initComponent : function() {
    var start_date52 = new Lino.DateField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Date from</span>", "listeners": { "render": Lino.quicktip_renderer("Date from","(cal.OneEvent.start_date) Start of observed date range") }, "name": "start_date", "selectOnFocus": true, "value": null });
    var end_date53 = new Lino.DateField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">until</span>", "listeners": { "render": Lino.quicktip_renderer("until","(cal.OneEvent.end_date) End of observed date range") }, "name": "end_date", "selectOnFocus": true, "value": null });
    var observed_event54 = new Lino.ChoicesFieldElement({ "anchor": "-20", "autoHeight": true, "fieldLabel": "Observed event", "forceSelection": true, "hiddenName": "observed_eventHidden", "listeners": { "render": Lino.quicktip_renderer("Observed event","(cal.OneEvent.observed_event) ") }, "name": "observed_event", "selectOnFocus": true, "store": [['','<br>']].concat(Lino.cal.EventEvents) });
    var state55 = new Lino.ChoicesFieldElement({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">State</span>", "forceSelection": true, "hiddenName": "stateHidden", "listeners": { "render": Lino.quicktip_renderer("State","(cal.OneEvent.state) Only rows having this state.") }, "name": "state", "selectOnFocus": true, "store": [['','<br>']].concat(Lino.cal.EntryStates) });
    var main_1_panel56 = new Ext.Panel({ "anchor": "-20", "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 26, "items": start_date52, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 26, "items": end_date53, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 22, "items": observed_event54, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 26, "items": state55, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 135, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var user61 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a User...", "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Managed by</span>", "hiddenName": "userHidden", "listeners": { "render": Lino.quicktip_renderer("Managed by","(cal.OneEvent.user) Only rows managed by this user.") }, "name": "user", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.users.Users.detail,Lino.users.Users.insert)}, "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/OneEvent/user" }) }) });
    var assigned_to62 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a User...", "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Assigned to</span>", "hiddenName": "assigned_toHidden", "listeners": { "render": Lino.quicktip_renderer("Assigned to","(cal.OneEvent.assigned_to) Only events assigned to this user.") }, "name": "assigned_to", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.users.Users.detail,Lino.users.Users.insert)}, "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/OneEvent/assigned_to" }) }) });
    var event_type63 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a Calendar entry type...", "fieldLabel": "Calendar entry type", "hiddenName": "event_typeHidden", "listeners": { "render": Lino.quicktip_renderer("Calendar entry type","(cal.OneEvent.event_type) ") }, "name": "event_type", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.cal.EventTypes.detail,Lino.cal.EventTypes.insert)}, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/OneEvent/event_type" }) }) });
    var room64 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a Room...", "fieldLabel": "Room", "hiddenName": "roomHidden", "listeners": { "render": Lino.quicktip_renderer("Room","(cal.OneEvent.room) ") }, "name": "room", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.cal.Rooms.detail,Lino.cal.Rooms.insert)}, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/OneEvent/room" }) }) });
    var show_appointments65 = new Lino.ChoicesFieldElement({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Appointments</span>", "forceSelection": true, "hiddenName": "show_appointmentsHidden", "listeners": { "render": Lino.quicktip_renderer("Appointments","(cal.OneEvent.show_appointments) Whether only appointments should be\nshown.  \"Yes\" means only appointments, \"No\"\nmeans no appointments and leaving it to blank shows both types\nof events.") }, "name": "show_appointments", "selectOnFocus": true, "store": [['','<br>']].concat(Lino.system.YesNo) });
    var main_2_panel66 = new Ext.Panel({ "anchor": "-20", "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 22, "items": user61, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 22, "items": assigned_to62, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 22, "items": event_type63, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 22, "items": room64, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 8, "items": show_appointments65, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 180, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    this.items = [ main_1_panel56, main_2_panel66 ];
    this.fields = [ start_date52, end_date53, observed_event54, state55, user61, assigned_to62, event_type63, room64, show_appointments65 ];
    Lino.cal.OneEvent.ParamsPanel.superclass.initComponent.call(this);
  }
});


Lino.about.Inspector.ParamsPanel = Ext.extend(Ext.form.FormPanel, {
  autoHeight: true,
  frame: true,
  layoutConfig: { "align": "stretchmax" },
  hideCheckBoxLabels: true,
  autoScroll: false,
  labelWidth: 153,
  border: false,
  bodyBorder: false,
  labelAlign: "top",
  layout: 'hbox',
  autoHeight: true,
  initComponent : function() {
    var inspected73 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "Inspected object", "listeners": { "render": Lino.quicktip_renderer("Inspected object","(about.Inspector.inspected) ") }, "maxLength": 100, "name": "inspected", "selectOnFocus": true });
    var show_callables74 = new Ext.form.Checkbox({ "anchor": "-20", "autoHeight": true, "boxLabel": "show callables", "checked": false, "hideLabel": true, "listeners": { "render": Lino.quicktip_renderer("show callables","(about.Inspector.show_callables) ") }, "name": "show_callables", "selectOnFocus": true });
    this.items = [ { "autoHeight": true, "flex": 67, "items": inspected73, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 32, "items": show_callables74, "labelAlign": "top", "layout": "form", "xtype": "panel" } ];
    this.fields = [ inspected73, show_callables74 ];
    Lino.about.Inspector.ParamsPanel.superclass.initComponent.call(this);
  }
});


Lino.tinymce.TextFieldTemplates.ParamsPanel = Ext.extend(Ext.form.FormPanel, {
  autoScroll: false,
  border: false,
  labelWidth: 63,
  hideCheckBoxLabels: true,
  frame: true,
  bodyBorder: false,
  labelAlign: "top",
  layout: 'form',
  autoHeight: true,
  initComponent : function() {
    var user78 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a User...", "fieldLabel": "Author", "hiddenName": "userHidden", "listeners": { "render": Lino.quicktip_renderer("Author","(tinymce.TextFieldTemplates.user) ") }, "name": "user", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.users.Users.detail,Lino.users.Users.insert)}, "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/tinymce/TextFieldTemplates/user" }) }) });
    this.items = [ { "autoHeight": true, "items": user78, "labelAlign": "top", "layout": "form", "xtype": "panel" } ];
    this.fields = [ user78 ];
    Lino.tinymce.TextFieldTemplates.ParamsPanel.superclass.initComponent.call(this);
  }
});


Lino.contacts.Partners.ParamsPanel = Ext.extend(Ext.form.FormPanel, {
  autoHeight: true,
  frame: true,
  layoutConfig: { "align": "stretchmax" },
  hideCheckBoxLabels: true,
  autoScroll: false,
  labelWidth: 135,
  border: false,
  bodyBorder: false,
  labelAlign: "top",
  layout: 'hbox',
  autoHeight: true,
  initComponent : function() {
    var observed_event81 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Observed event</span>", "listeners": { "render": Lino.quicktip_renderer("Observed event","(contacts.Partners.observed_event) Extended filter criteria") }, "maxLength": 50, "name": "observed_event", "selectOnFocus": true });
    var start_date82 = new Lino.DateField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Date from</span>", "listeners": { "render": Lino.quicktip_renderer("Date from","(contacts.Partners.start_date) Start of observed date range") }, "name": "start_date", "selectOnFocus": true, "value": null });
    var end_date83 = new Lino.DateField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">until</span>", "listeners": { "render": Lino.quicktip_renderer("until","(contacts.Partners.end_date) End of observed date range") }, "name": "end_date", "selectOnFocus": true, "value": null });
    this.items = [ { "autoHeight": true, "flex": 44, "items": observed_event81, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 27, "items": start_date82, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 27, "items": end_date83, "labelAlign": "top", "layout": "form", "xtype": "panel" } ];
    this.fields = [ observed_event81, start_date82, end_date83 ];
    Lino.contacts.Partners.ParamsPanel.superclass.initComponent.call(this);
  }
});


Lino.users.Authorities.ParamsPanel = Ext.extend(Ext.form.FormPanel, {
  autoScroll: false,
  border: false,
  labelWidth: 63,
  hideCheckBoxLabels: true,
  frame: true,
  bodyBorder: false,
  labelAlign: "top",
  layout: 'form',
  autoHeight: true,
  initComponent : function() {
    var user88 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a User...", "fieldLabel": "Author", "hiddenName": "userHidden", "listeners": { "render": Lino.quicktip_renderer("Author","(users.Authorities.user) ") }, "name": "user", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.users.Users.detail,Lino.users.Users.insert)}, "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/users/Authorities/user" }) }) });
    this.items = [ { "autoHeight": true, "items": user88, "labelAlign": "top", "layout": "form", "xtype": "panel" } ];
    this.fields = [ user88 ];
    Lino.users.Authorities.ParamsPanel.superclass.initComponent.call(this);
  }
});


Lino.users.Users.ParamsPanel = Ext.extend(Ext.form.FormPanel, {
  autoHeight: true,
  frame: true,
  layoutConfig: { "align": "stretchmax" },
  hideCheckBoxLabels: true,
  autoScroll: false,
  labelWidth: 135,
  border: false,
  bodyBorder: false,
  labelAlign: "top",
  layout: 'hbox',
  autoHeight: true,
  initComponent : function() {
    var function91 = new Lino.RemoteComboFieldElement({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a Function...", "fieldLabel": "Function", "hiddenName": "functionHidden", "listeners": { "render": Lino.quicktip_renderer("Function","(users.Users.function) ") }, "name": "function", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/users/Users/function" }) }) });
    var end_date92 = new Lino.DateField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">until</span>", "listeners": { "render": Lino.quicktip_renderer("until","(users.Users.end_date) End of observed date range") }, "name": "end_date", "selectOnFocus": true, "value": null });
    var user_state93 = new Lino.ChoicesFieldElement({ "anchor": "-20", "autoHeight": true, "fieldLabel": "User state", "forceSelection": true, "hiddenName": "user_stateHidden", "listeners": { "render": Lino.quicktip_renderer("User state","(users.Users.user_state) ") }, "name": "user_state", "selectOnFocus": true, "store": [['','<br>']].concat(Lino.users.UserStates) });
    var company94 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a Organization...", "fieldLabel": "Organization", "hiddenName": "companyHidden", "listeners": { "render": Lino.quicktip_renderer("Organization","(users.Users.company) ") }, "name": "company", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.contacts.Companies.detail,Lino.contacts.Companies.insert)}, "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/users/Users/company" }) }) });
    var observed_event95 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Observed event</span>", "listeners": { "render": Lino.quicktip_renderer("Observed event","(users.Users.observed_event) Extended filter criteria") }, "maxLength": 50, "name": "observed_event", "selectOnFocus": true });
    var user_type96 = new Lino.ChoicesFieldElement({ "anchor": "-20", "autoHeight": true, "fieldLabel": "User type", "forceSelection": true, "hiddenName": "user_typeHidden", "listeners": { "render": Lino.quicktip_renderer("User type","(users.Users.user_type) ") }, "name": "user_type", "selectOnFocus": true, "store": [['','<br>']].concat(Lino.users.UserTypes) });
    var aged_from97 = new Ext.form.NumberField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Aged from</span>", "listeners": { "render": Lino.quicktip_renderer("Aged from","(users.Users.aged_from) Select only persons aged at least the given number of years.") }, "name": "aged_from", "selectOnFocus": true });
    var topic98 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a Topic...", "fieldLabel": "Topic", "hiddenName": "topicHidden", "listeners": { "render": Lino.quicktip_renderer("Topic","(users.Users.topic) ") }, "name": "topic", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.topics.Topics.detail,Lino.topics.Topics.insert)}, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/users/Users/topic" }) }) });
    var gender99 = new Lino.ChoicesFieldElement({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Gender</span>", "forceSelection": true, "hiddenName": "genderHidden", "listeners": { "render": Lino.quicktip_renderer("Gender","(users.Users.gender) Show only persons with the given gender.") }, "name": "gender", "selectOnFocus": true, "store": [['','<br>']].concat(Lino.system.Genders) });
    var start_date100 = new Lino.DateField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Date from</span>", "listeners": { "render": Lino.quicktip_renderer("Date from","(users.Users.start_date) Start of observed date range") }, "name": "start_date", "selectOnFocus": true, "value": null });
    var aged_to101 = new Ext.form.NumberField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Aged to</span>", "listeners": { "render": Lino.quicktip_renderer("Aged to","(users.Users.aged_to) Select only persons aged at most the given number of years.") }, "name": "aged_to", "selectOnFocus": true });
    this.items = [ { "autoHeight": true, "flex": 12, "items": function91, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 8, "items": end_date92, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 6, "items": user_state93, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 12, "items": company94, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 13, "items": observed_event95, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 14, "items": user_type96, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 3, "items": aged_from97, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 12, "items": topic98, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 5, "items": gender99, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 8, "items": start_date100, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 3, "items": aged_to101, "labelAlign": "top", "layout": "form", "xtype": "panel" } ];
    this.fields = [ function91, end_date92, user_state93, company94, observed_event95, user_type96, aged_from97, topic98, gender99, start_date100, aged_to101 ];
    Lino.users.Users.ParamsPanel.superclass.initComponent.call(this);
  }
});


Lino.contacts.Persons.ParamsPanel = Ext.extend(Ext.form.FormPanel, {
  autoHeight: true,
  frame: true,
  layoutConfig: { "align": "stretchmax" },
  hideCheckBoxLabels: true,
  autoScroll: false,
  labelWidth: 135,
  border: false,
  bodyBorder: false,
  labelAlign: "top",
  layout: 'hbox',
  autoHeight: true,
  initComponent : function() {
    var observed_event114 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Observed event</span>", "listeners": { "render": Lino.quicktip_renderer("Observed event","(contacts.Persons.observed_event) Extended filter criteria") }, "maxLength": 50, "name": "observed_event", "selectOnFocus": true });
    var start_date115 = new Lino.DateField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Date from</span>", "listeners": { "render": Lino.quicktip_renderer("Date from","(contacts.Persons.start_date) Start of observed date range") }, "name": "start_date", "selectOnFocus": true, "value": null });
    var end_date116 = new Lino.DateField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">until</span>", "listeners": { "render": Lino.quicktip_renderer("until","(contacts.Persons.end_date) End of observed date range") }, "name": "end_date", "selectOnFocus": true, "value": null });
    var company117 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a Organization...", "fieldLabel": "Organization", "hiddenName": "companyHidden", "listeners": { "render": Lino.quicktip_renderer("Organization","(contacts.Persons.company) ") }, "name": "company", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.contacts.Companies.detail,Lino.contacts.Companies.insert)}, "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/contacts/Persons/company" }) }) });
    var function118 = new Lino.RemoteComboFieldElement({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a Function...", "fieldLabel": "Function", "hiddenName": "functionHidden", "listeners": { "render": Lino.quicktip_renderer("Function","(contacts.Persons.function) ") }, "name": "function", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/contacts/Persons/function" }) }) });
    var topic119 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a Topic...", "fieldLabel": "Topic", "hiddenName": "topicHidden", "listeners": { "render": Lino.quicktip_renderer("Topic","(contacts.Persons.topic) ") }, "name": "topic", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.topics.Topics.detail,Lino.topics.Topics.insert)}, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/contacts/Persons/topic" }) }) });
    this.items = [ { "autoHeight": true, "flex": 19, "items": observed_event114, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 12, "items": start_date115, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 12, "items": end_date116, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 18, "items": company117, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 18, "items": function118, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 18, "items": topic119, "labelAlign": "top", "layout": "form", "xtype": "panel" } ];
    this.fields = [ observed_event114, start_date115, end_date116, company117, function118, topic119 ];
    Lino.contacts.Persons.ParamsPanel.superclass.initComponent.call(this);
  }
});


Lino.comments.Comments.ParamsPanel = Ext.extend(Ext.form.FormPanel, {
  autoScroll: false,
  border: false,
  labelWidth: 63,
  hideCheckBoxLabels: true,
  frame: true,
  bodyBorder: false,
  labelAlign: "top",
  layout: 'form',
  autoHeight: true,
  initComponent : function() {
    var user127 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a User...", "fieldLabel": "Author", "hiddenName": "userHidden", "listeners": { "render": Lino.quicktip_renderer("Author","(comments.Comments.user) ") }, "name": "user", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.users.Users.detail,Lino.users.Users.insert)}, "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/comments/Comments/user" }) }) });
    this.items = [ { "autoHeight": true, "items": user127, "labelAlign": "top", "layout": "form", "xtype": "panel" } ];
    this.fields = [ user127 ];
    Lino.comments.Comments.ParamsPanel.superclass.initComponent.call(this);
  }
});


Lino.cal.Events.ParamsPanel = Ext.extend(Ext.form.FormPanel, {
  autoScroll: false,
  autoHeight: true,
  border: false,
  hideCheckBoxLabels: true,
  frame: true,
  bodyBorder: false,
  labelAlign: "top",
  layout: 'form',
  autoHeight: true,
  initComponent : function() {
    var start_date130 = new Lino.DateField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Date from</span>", "listeners": { "render": Lino.quicktip_renderer("Date from","(cal.Events.start_date) Start of observed date range") }, "name": "start_date", "selectOnFocus": true, "value": null });
    var end_date131 = new Lino.DateField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">until</span>", "listeners": { "render": Lino.quicktip_renderer("until","(cal.Events.end_date) End of observed date range") }, "name": "end_date", "selectOnFocus": true, "value": null });
    var observed_event132 = new Lino.ChoicesFieldElement({ "anchor": "-20", "autoHeight": true, "fieldLabel": "Observed event", "forceSelection": true, "hiddenName": "observed_eventHidden", "listeners": { "render": Lino.quicktip_renderer("Observed event","(cal.Events.observed_event) ") }, "name": "observed_event", "selectOnFocus": true, "store": [['','<br>']].concat(Lino.cal.EventEvents) });
    var state133 = new Lino.ChoicesFieldElement({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">State</span>", "forceSelection": true, "hiddenName": "stateHidden", "listeners": { "render": Lino.quicktip_renderer("State","(cal.Events.state) Only rows having this state.") }, "name": "state", "selectOnFocus": true, "store": [['','<br>']].concat(Lino.cal.EntryStates) });
    var main_1_panel134 = new Ext.Panel({ "anchor": "-20", "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 26, "items": start_date130, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 26, "items": end_date131, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 22, "items": observed_event132, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 26, "items": state133, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 135, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var user139 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a User...", "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Managed by</span>", "hiddenName": "userHidden", "listeners": { "render": Lino.quicktip_renderer("Managed by","(cal.Events.user) Only rows managed by this user.") }, "name": "user", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.users.Users.detail,Lino.users.Users.insert)}, "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/Events/user" }) }) });
    var assigned_to140 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a User...", "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Assigned to</span>", "hiddenName": "assigned_toHidden", "listeners": { "render": Lino.quicktip_renderer("Assigned to","(cal.Events.assigned_to) Only events assigned to this user.") }, "name": "assigned_to", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.users.Users.detail,Lino.users.Users.insert)}, "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/Events/assigned_to" }) }) });
    var event_type141 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a Calendar entry type...", "fieldLabel": "Calendar entry type", "hiddenName": "event_typeHidden", "listeners": { "render": Lino.quicktip_renderer("Calendar entry type","(cal.Events.event_type) ") }, "name": "event_type", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.cal.EventTypes.detail,Lino.cal.EventTypes.insert)}, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/Events/event_type" }) }) });
    var room142 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a Room...", "fieldLabel": "Room", "hiddenName": "roomHidden", "listeners": { "render": Lino.quicktip_renderer("Room","(cal.Events.room) ") }, "name": "room", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.cal.Rooms.detail,Lino.cal.Rooms.insert)}, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/Events/room" }) }) });
    var show_appointments143 = new Lino.ChoicesFieldElement({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Appointments</span>", "forceSelection": true, "hiddenName": "show_appointmentsHidden", "listeners": { "render": Lino.quicktip_renderer("Appointments","(cal.Events.show_appointments) Whether only appointments should be\nshown.  \"Yes\" means only appointments, \"No\"\nmeans no appointments and leaving it to blank shows both types\nof events.") }, "name": "show_appointments", "selectOnFocus": true, "store": [['','<br>']].concat(Lino.system.YesNo) });
    var main_2_panel144 = new Ext.Panel({ "anchor": "-20", "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 22, "items": user139, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 22, "items": assigned_to140, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 22, "items": event_type141, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 22, "items": room142, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 8, "items": show_appointments143, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 180, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    this.items = [ main_1_panel134, main_2_panel144 ];
    this.fields = [ start_date130, end_date131, observed_event132, state133, user139, assigned_to140, event_type141, room142, show_appointments143 ];
    Lino.cal.Events.ParamsPanel.superclass.initComponent.call(this);
  }
});


Lino.cal.Guests.ParamsPanel = Ext.extend(Ext.form.FormPanel, {
  autoScroll: false,
  autoHeight: true,
  border: false,
  labelWidth: 63,
  hideCheckBoxLabels: true,
  frame: true,
  bodyBorder: false,
  labelAlign: "top",
  layout: 'form',
  autoHeight: true,
  initComponent : function() {
    var start_date151 = new Lino.DateField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Date from</span>", "listeners": { "render": Lino.quicktip_renderer("Date from","(cal.Guests.start_date) Start of observed date range") }, "name": "start_date", "selectOnFocus": true, "value": null });
    var end_date152 = new Lino.DateField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">until</span>", "listeners": { "render": Lino.quicktip_renderer("until","(cal.Guests.end_date) End of observed date range") }, "name": "end_date", "selectOnFocus": true, "value": null });
    var user153 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a User...", "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Responsible user</span>", "hiddenName": "userHidden", "listeners": { "render": Lino.quicktip_renderer("Responsible user","(cal.Guests.user) Only rows managed by this user.") }, "name": "user", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.users.Users.detail,Lino.users.Users.insert)}, "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/Guests/user" }) }) });
    var event_state154 = new Lino.ChoicesFieldElement({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Event state</span>", "forceSelection": true, "hiddenName": "event_stateHidden", "listeners": { "render": Lino.quicktip_renderer("Event state","(cal.Guests.event_state) Only rows having this event state.") }, "name": "event_state", "selectOnFocus": true, "store": [['','<br>']].concat(Lino.cal.EntryStates) });
    var guest_state155 = new Lino.ChoicesFieldElement({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Guest state</span>", "forceSelection": true, "hiddenName": "guest_stateHidden", "listeners": { "render": Lino.quicktip_renderer("Guest state","(cal.Guests.guest_state) Only rows having this guest state.") }, "name": "guest_state", "selectOnFocus": true, "store": [['','<br>']].concat(Lino.cal.GuestStates) });
    var main_1_panel156 = new Ext.Panel({ "anchor": "-20", "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 18, "items": start_date151, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 18, "items": end_date152, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 28, "items": user153, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 18, "items": event_state154, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 14, "items": guest_state155, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 153, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var partner162 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a Person...", "fieldLabel": "Person", "hiddenName": "partnerHidden", "listeners": { "render": Lino.quicktip_renderer("Person","(cal.Guests.partner) ") }, "name": "partner", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.contacts.Persons.detail,Lino.contacts.Persons.insert)}, "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/Guests/partner" }) }) });
    this.items = [ main_1_panel156, { "anchor": "-20", "autoHeight": true, "items": partner162, "labelAlign": "top", "layout": "form", "xtype": "panel" } ];
    this.fields = [ start_date151, end_date152, user153, event_state154, guest_state155, partner162 ];
    Lino.cal.Guests.ParamsPanel.superclass.initComponent.call(this);
  }
});


Lino.users.AllUsers.send_welcome_email_ActionFormPanel = Ext.extend(Lino.ActionFormPanel,{
  autoScroll: false,
  autoHeight: true,
  border: false,
  layout: "form",
  labelWidth: 135,
  hideCheckBoxLabels: true,
  frame: true,
  bodyBorder: false,
  labelAlign: "top",
  action_name: 'send_welcome_email',
  ls_url: "/users/AllUsers",
  window_title: "Welcome mail",
  before_row_edit : function(record) {
  },
  autoHeight: true,
  initComponent : function() {
    this.email206 = new Ext.form.TextField({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "fieldLabel": "e-mail address", "listeners": { "render": Lino.quicktip_renderer("e-mail address","(Welcome mail.email) ") }, "maxLength": 254, "name": "email", "selectOnFocus": true });
    this.subject207 = new Ext.form.TextField({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "fieldLabel": "Subject", "listeners": { "render": Lino.quicktip_renderer("Subject","(Welcome mail.subject) ") }, "maxLength": 250, "name": "subject", "selectOnFocus": true });
    this.items = [ { "anchor": "-20", "autoHeight": true, "items": this.email206, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "anchor": "-20", "autoHeight": true, "items": this.subject207, "labelAlign": "top", "layout": "form", "xtype": "panel" } ];
    this.fields = [ this.email206, this.subject207 ];
    Lino.users.AllUsers.send_welcome_email_ActionFormPanel.superclass.initComponent.call(this);
  }
});


Lino.users.Users.verify_ActionFormPanel = Ext.extend(Lino.ActionFormPanel,{
  autoScroll: false,
  autoHeight: true,
  border: false,
  layout: "form",
  labelWidth: 162,
  hideCheckBoxLabels: true,
  frame: true,
  bodyBorder: false,
  labelAlign: "top",
  action_name: 'verify',
  ls_url: "/users/Users",
  window_title: "Verify",
  before_row_edit : function(record) {
  },
  autoHeight: true,
  initComponent : function() {
    this.email194 = new Ext.form.TextField({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "fieldLabel": "e-mail address", "listeners": { "render": Lino.quicktip_renderer("e-mail address","(Verify.email) ") }, "maxLength": 254, "name": "email", "selectOnFocus": true });
    this.verification_code195 = new Ext.form.TextField({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "fieldLabel": "Verification code", "listeners": { "render": Lino.quicktip_renderer("Verification code","(Verify.verification_code) ") }, "maxLength": 50, "name": "verification_code", "selectOnFocus": true });
    this.items = [ { "anchor": "-20", "autoHeight": true, "items": this.email194, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "anchor": "-20", "autoHeight": true, "items": this.verification_code195, "labelAlign": "top", "layout": "form", "xtype": "panel" } ];
    this.fields = [ this.email194, this.verification_code195 ];
    Lino.users.Users.verify_ActionFormPanel.superclass.initComponent.call(this);
  }
});


Lino.contacts.Companies.merge_row_ActionFormPanel = Ext.extend(Lino.ActionFormPanel,{
  autoScroll: false,
  autoHeight: true,
  border: false,
  layout: "form",
  labelWidth: 351,
  hideCheckBoxLabels: true,
  frame: true,
  bodyBorder: false,
  labelAlign: "top",
  action_name: 'merge_row',
  ls_url: "/contacts/Companies",
  window_title: "Merge",
  before_row_edit : function(record) {
  },
  autoHeight: true,
  initComponent : function() {
    this.merge_to187 = new Lino.TwinCombo({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "emptyText": "Select a Organization...", "fieldLabel": "into...", "hiddenName": "merge_toHidden", "listeners": { "render": Lino.quicktip_renderer("into...","(Merge.merge_to) ") }, "name": "merge_to", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.contacts.Companies.detail,Lino.contacts.Companies.insert)}, "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/apchoices/contacts/Companies/merge_row/merge_to" }) }) });
    this.phones_ContactDetail188 = new Ext.form.Checkbox({ "anchor": "-20", "autoHeight": true, "boxLabel": "Also reassign volatile related objects", "checked": false, "hideLabel": true, "listeners": { "render": Lino.quicktip_renderer("Contact Details","(Merge.phones_ContactDetail) ") }, "name": "phones_ContactDetail", "selectOnFocus": true });
    this.reason189 = new Ext.form.TextField({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "fieldLabel": "Reason", "listeners": { "render": Lino.quicktip_renderer("Reason","(Merge.reason) ") }, "maxLength": 100, "name": "reason", "selectOnFocus": true });
    this.items = [ { "anchor": "-20", "autoHeight": true, "items": this.merge_to187, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "anchor": "-20", "autoHeight": true, "items": this.phones_ContactDetail188, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "anchor": "-20", "autoHeight": true, "items": this.reason189, "labelAlign": "top", "layout": "form", "xtype": "panel" } ];
    this.fields = [ this.merge_to187, this.phones_ContactDetail188, this.reason189 ];
    Lino.contacts.Companies.merge_row_ActionFormPanel.superclass.initComponent.call(this);
  }
});


Lino.users.Users.change_password_ActionFormPanel = Ext.extend(Lino.ActionFormPanel,{
  autoScroll: false,
  autoHeight: true,
  border: false,
  layout: "form",
  labelWidth: 171,
  hideCheckBoxLabels: true,
  frame: true,
  bodyBorder: false,
  labelAlign: "top",
  action_name: 'change_password',
  ls_url: "/users/Users",
  window_title: "Change password",
  before_row_edit : function(record) {
  },
  autoHeight: true,
  initComponent : function() {
    this.current199 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "Current password", "inputType": "password", "listeners": { "render": Lino.quicktip_renderer("Current password","(Change password.current) ") }, "maxLength": null, "name": "current", "selectOnFocus": true });
    this.new1200 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "New password", "inputType": "password", "listeners": { "render": Lino.quicktip_renderer("New password","(Change password.new1) ") }, "maxLength": null, "name": "new1", "selectOnFocus": true });
    this.new2201 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "New password again", "inputType": "password", "listeners": { "render": Lino.quicktip_renderer("New password again","(Change password.new2) ") }, "maxLength": null, "name": "new2", "selectOnFocus": true });
    this.items = [ { "anchor": "-20", "autoHeight": true, "items": this.current199, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "anchor": "-20", "autoHeight": true, "items": this.new1200, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "anchor": "-20", "autoHeight": true, "items": this.new2201, "labelAlign": "top", "layout": "form", "xtype": "panel" } ];
    this.fields = [ this.current199, this.new1200, this.new2201 ];
    Lino.users.Users.change_password_ActionFormPanel.superclass.initComponent.call(this);
  }
});


Lino.contacts.Persons.merge_row_ActionFormPanel = Ext.extend(Lino.ActionFormPanel,{
  autoScroll: false,
  autoHeight: true,
  border: false,
  layout: "form",
  labelWidth: 72,
  hideCheckBoxLabels: true,
  frame: true,
  bodyBorder: false,
  labelAlign: "top",
  action_name: 'merge_row',
  ls_url: "/contacts/Persons",
  window_title: "Merge",
  before_row_edit : function(record) {
  },
  autoHeight: true,
  initComponent : function() {
    this.merge_to170 = new Lino.TwinCombo({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "emptyText": "Select a Person...", "fieldLabel": "into...", "hiddenName": "merge_toHidden", "listeners": { "render": Lino.quicktip_renderer("into...","(Merge.merge_to) ") }, "name": "merge_to", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.contacts.Persons.detail,Lino.contacts.Persons.insert)}, "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/apchoices/contacts/Persons/merge_row/merge_to" }) }) });
    this.addresses_Address171 = new Ext.form.Checkbox({ "anchor": "-20", "autoHeight": true, "boxLabel": "Addresses", "checked": false, "hideLabel": true, "listeners": { "render": Lino.quicktip_renderer("Addresses","(Merge.addresses_Address) ") }, "name": "addresses_Address", "selectOnFocus": true });
    this.phones_ContactDetail172 = new Ext.form.Checkbox({ "anchor": "-20", "autoHeight": true, "boxLabel": "Contact Details", "checked": false, "hideLabel": true, "listeners": { "render": Lino.quicktip_renderer("Contact Details","(Merge.phones_ContactDetail) ") }, "name": "phones_ContactDetail", "selectOnFocus": true });
    var keep_volatiles_panel173 = new Ext.form.FieldSet({ "anchor": "-20", "autoHeight": true, "autoScroll": false, "bodyBorder": true, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 50, "items": this.addresses_Address171, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 50, "items": this.phones_ContactDetail172, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 144, "layout": "hbox", "layoutConfig": { "align": "stretchmax" }, "title": "Also reassign volatile related objects" });
    this.reason176 = new Ext.form.TextField({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "fieldLabel": "Reason", "listeners": { "render": Lino.quicktip_renderer("Reason","(Merge.reason) ") }, "maxLength": 100, "name": "reason", "selectOnFocus": true });
    this.items = [ { "anchor": "-20", "autoHeight": true, "items": this.merge_to170, "labelAlign": "top", "layout": "form", "xtype": "panel" }, keep_volatiles_panel173, { "anchor": "-20", "autoHeight": true, "items": this.reason176, "labelAlign": "top", "layout": "form", "xtype": "panel" } ];
    this.fields = [ this.merge_to170, this.addresses_Address171, this.phones_ContactDetail172, this.reason176 ];
    Lino.contacts.Persons.merge_row_ActionFormPanel.superclass.initComponent.call(this);
  }
});


Lino.countries.Places.merge_row_ActionFormPanel = Ext.extend(Lino.ActionFormPanel,{
  autoScroll: false,
  autoHeight: true,
  border: false,
  layout: "form",
  labelWidth: 72,
  hideCheckBoxLabels: true,
  frame: true,
  bodyBorder: false,
  labelAlign: "top",
  action_name: 'merge_row',
  ls_url: "/countries/Places",
  window_title: "Merge",
  before_row_edit : function(record) {
  },
  autoHeight: true,
  initComponent : function() {
    this.merge_to165 = new Lino.TwinCombo({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "emptyText": "Select a Place...", "fieldLabel": "into...", "hiddenName": "merge_toHidden", "listeners": { "render": Lino.quicktip_renderer("into...","(Merge.merge_to) ") }, "name": "merge_to", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.countries.Places.detail,Lino.countries.Places.insert)}, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/apchoices/countries/Places/merge_row/merge_to" }) }) });
    this.reason166 = new Ext.form.TextField({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "fieldLabel": "Reason", "listeners": { "render": Lino.quicktip_renderer("Reason","(Merge.reason) ") }, "maxLength": 100, "name": "reason", "selectOnFocus": true });
    this.items = [ { "anchor": "-20", "autoHeight": true, "items": this.merge_to165, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "anchor": "-20", "autoHeight": true, "items": this.reason166, "labelAlign": "top", "layout": "form", "xtype": "panel" } ];
    this.fields = [ this.merge_to165, this.reason166 ];
    Lino.countries.Places.merge_row_ActionFormPanel.superclass.initComponent.call(this);
  }
});


Lino.users.NewUsers.send_welcome_email_ActionFormPanel = Ext.extend(Lino.ActionFormPanel,{
  autoScroll: false,
  autoHeight: true,
  border: false,
  layout: "form",
  labelWidth: 135,
  hideCheckBoxLabels: true,
  frame: true,
  bodyBorder: false,
  labelAlign: "top",
  action_name: 'send_welcome_email',
  ls_url: "/users/NewUsers",
  window_title: "Welcome mail",
  before_row_edit : function(record) {
  },
  autoHeight: true,
  initComponent : function() {
    this.email211 = new Ext.form.TextField({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "fieldLabel": "e-mail address", "listeners": { "render": Lino.quicktip_renderer("e-mail address","(Welcome mail.email) ") }, "maxLength": 254, "name": "email", "selectOnFocus": true });
    this.subject212 = new Ext.form.TextField({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "fieldLabel": "Subject", "listeners": { "render": Lino.quicktip_renderer("Subject","(Welcome mail.subject) ") }, "maxLength": 250, "name": "subject", "selectOnFocus": true });
    this.items = [ { "anchor": "-20", "autoHeight": true, "items": this.email211, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "anchor": "-20", "autoHeight": true, "items": this.subject212, "labelAlign": "top", "layout": "form", "xtype": "panel" } ];
    this.fields = [ this.email211, this.subject212 ];
    Lino.users.NewUsers.send_welcome_email_ActionFormPanel.superclass.initComponent.call(this);
  }
});


Lino.contacts.Persons.create_household_ActionFormPanel = Ext.extend(Lino.ActionFormPanel,{
  autoScroll: false,
  autoHeight: true,
  border: false,
  layout: "form",
  labelWidth: 162,
  hideCheckBoxLabels: true,
  frame: true,
  bodyBorder: false,
  labelAlign: "top",
  action_name: 'create_household',
  ls_url: "/contacts/Persons",
  window_title: "Create Household",
  before_row_edit : function(record) {
  },
  autoHeight: true,
  initComponent : function() {
    this.partner180 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a Person...", "fieldLabel": "Partner", "hiddenName": "partnerHidden", "listeners": { "render": Lino.quicktip_renderer("Partner","(Create Household.partner) ") }, "name": "partner", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.contacts.Persons.detail,Lino.contacts.Persons.insert)}, "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/apchoices/contacts/Persons/create_household/partner" }) }) });
    this.type181 = new Lino.TwinCombo({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "emptyText": "Select a Household Type...", "fieldLabel": "Household Type", "hiddenName": "typeHidden", "listeners": { "render": Lino.quicktip_renderer("Household Type","(Create Household.type) ") }, "name": "type", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.households.Types.detail,Lino.households.Types.insert)}, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/apchoices/contacts/Persons/create_household/type" }) }) });
    this.head182 = new Lino.TwinCombo({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "emptyText": "Select a Person...", "fieldLabel": "Head of household", "hiddenName": "headHidden", "listeners": { "render": Lino.quicktip_renderer("Head of household","(Create Household.head) ") }, "name": "head", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.contacts.Persons.detail,Lino.contacts.Persons.insert)}, "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/apchoices/contacts/Persons/create_household/head" }) }) });
    this.items = [ { "anchor": "-20", "autoHeight": true, "items": this.partner180, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "anchor": "-20", "autoHeight": true, "items": this.type181, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "anchor": "-20", "autoHeight": true, "items": this.head182, "labelAlign": "top", "layout": "form", "xtype": "panel" } ];
    this.fields = [ this.partner180, this.type181, this.head182 ];
    Lino.contacts.Persons.create_household_ActionFormPanel.superclass.initComponent.call(this);
  }
});


Lino.comments.CommentTypes.DetailFormPanel = Ext.extend(Lino.FormPanel,{
  layout: 'fit',
  auto_save: true,
  content_type: 45,
  initComponent : function() {
    var id364 = new Ext.form.NumberField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "ID", "listeners": { "render": Lino.quicktip_renderer("ID","(comments.CommentTypes.id) ") }, "name": "id", "selectOnFocus": true });
    var name365 = new Ext.form.TextField({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "fieldLabel": "Designation", "listeners": { "render": Lino.quicktip_renderer("Designation","(comments.CommentTypes.name) ") }, "maxLength": 200, "name": "name", "selectOnFocus": true });
    var main_1_panel366 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 19, "items": id364, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 80, "items": name365, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 108, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var comments_CommentsByType_htmlbox369 = new Lino.HtmlBoxPanel({ "always_enabled": true, "bodyStyle": "overflow-x:hidden;", "containing_panel": this, "flex": 75, "items": new Ext.BoxComponent({autoScroll:true}), "layout": "fit", "listeners": { "render": Lino.quicktip_renderer("Comments","(comments.CommentTypes.comments_CommentsByType) ") }, "master_panel": this, "name": "comments_CommentsByType", "title": "Comments", "tools": [ Lino.show_in_own_window_button(Lino.comments.CommentsByType.grid) ], "value": "<br/>" });
    var main_panel370 = new Ext.Panel({ "autoScroll": false, "bodyBorder": false, "border": false, "frame": true, "hideCheckBoxLabels": true, "items": [ main_1_panel366, comments_CommentsByType_htmlbox369 ], "labelAlign": "top", "labelWidth": 81, "layout": "vbox", "layoutConfig": { "align": "stretch" } });
    this.items = main_panel370;
    this.before_row_edit = function(record) {
      comments_CommentsByType_htmlbox369.refresh();
    }
    Lino.comments.CommentTypes.DetailFormPanel.superclass.initComponent.call(this);
  }
});


Lino.cal.EventTypes.DetailFormPanel = Ext.extend(Lino.FormPanel,{
  layout: 'fit',
  auto_save: true,
  content_type: 18,
  initComponent : function() {
    var name371 = new Ext.form.TextField({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "fieldLabel": "Designation", "listeners": { "render": Lino.quicktip_renderer("Designation","(cal.EventTypes.name) ") }, "maxLength": 200, "name": "name", "selectOnFocus": true });
    var event_label372 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Entry label</span>", "listeners": { "render": Lino.quicktip_renderer("Entry label","(cal.EventTypes.event_label) Default text for summary of new entries.") }, "maxLength": 200, "name": "event_label", "selectOnFocus": true });
    var start_date373 = new Lino.DateField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "Start date", "listeners": { "render": Lino.quicktip_renderer("Start date","(cal.EventTypes.start_date) ") }, "name": "start_date", "selectOnFocus": true });
    var max_days374 = new Ext.form.NumberField({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Maximum days</span>", "listeners": { "render": Lino.quicktip_renderer("Maximum days","(cal.EventTypes.max_days) The maximal number of days allowed as duration.") }, "name": "max_days", "selectOnFocus": true, "value": 1 });
    var id375 = new Ext.form.NumberField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "ID", "listeners": { "render": Lino.quicktip_renderer("ID","(cal.EventTypes.id) ") }, "name": "id", "selectOnFocus": true });
    var main_3_panel376 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 56, "items": start_date373, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 21, "items": max_days374, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 21, "items": id375, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 117, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var email_template380 = new Lino.SimpleRemoteComboFieldElement({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Email template</span>", "listeners": { "render": Lino.quicktip_renderer("Email template","(cal.EventTypes.email_template) The name of the file to be used as template when creating an email from a mailable of this type.") }, "name": "email_template", "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/EventTypes/email_template" }) }) });
    var attach_to_email381 = new Ext.form.Checkbox({ "anchor": "-20", "autoHeight": true, "boxLabel": "Attach to email", "checked": false, "hideLabel": true, "listeners": { "render": Lino.quicktip_renderer("Attach to email","(cal.EventTypes.attach_to_email) Whether the printable file should be attached to the email\nwhen creating an email from a mailable of this type.\n") }, "name": "attach_to_email", "selectOnFocus": true });
    var main_4_panel382 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 50, "items": email_template380, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 50, "items": attach_to_email381, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 144, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var is_appointment385 = new Ext.form.Checkbox({ "anchor": "-20", "autoHeight": true, "boxLabel": "Appointment", "checked": true, "hideLabel": true, "listeners": { "render": Lino.quicktip_renderer("Appointment","(cal.EventTypes.is_appointment) Whether entries of this type should be considered\n\"appointments\" (i.e. whose time and place have been agreed\nupon with other users or external parties).") }, "name": "is_appointment", "selectOnFocus": true });
    var all_rooms386 = new Ext.form.Checkbox({ "anchor": "-20", "autoHeight": true, "boxLabel": "Locks all rooms", "checked": false, "hideLabel": true, "listeners": { "render": Lino.quicktip_renderer("Locks all rooms","(cal.EventTypes.all_rooms) ") }, "name": "all_rooms", "selectOnFocus": true });
    var locks_user387 = new Ext.form.Checkbox({ "anchor": "-20", "autoHeight": true, "boxLabel": "Locks the user", "checked": false, "hideLabel": true, "listeners": { "render": Lino.quicktip_renderer("Locks the user","(cal.EventTypes.locks_user) Whether calendar entries of this type make the user\nunavailable for other locking events at the same time.") }, "name": "locks_user", "selectOnFocus": true });
    var max_conflicting388 = new Ext.form.NumberField({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Simultaneous entries</span>", "listeners": { "render": Lino.quicktip_renderer("Simultaneous entries","(cal.EventTypes.max_conflicting) How many conflicting events should be tolerated.") }, "name": "max_conflicting", "selectOnFocus": true, "value": 1 });
    var main_5_panel389 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 28, "items": is_appointment385, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 28, "items": all_rooms386, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 28, "items": locks_user387, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 14, "items": max_conflicting388, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 189, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var EntriesByType_grid506 = new Lino.cal.EntriesByType.GridPanel({ "containing_panel": this, "flex": 50, "hide_top_toolbar": true, "listeners": { "render": Lino.quicktip_renderer("Calendar entries","(cal.cal.EntriesByType) Table which shows all calendar events.") }, "master_panel": this, "params_panel_hidden": true, "preview_limit": 15, "tools": [ Lino.show_in_own_window_button(Lino.cal.EntriesByType.grid) ] });
    var main_panel507 = new Ext.Panel({ "autoScroll": false, "bodyBorder": false, "border": false, "frame": true, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "items": name371, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "items": event_label372, "labelAlign": "top", "layout": "form", "xtype": "panel" }, main_3_panel376, main_4_panel382, main_5_panel389, EntriesByType_grid506 ], "labelAlign": "top", "labelWidth": 108, "layout": "vbox", "layoutConfig": { "align": "stretch" } });
    this.items = main_panel507;
    this.before_row_edit = function(record) {
      EntriesByType_grid506.on_master_changed();
    }
    Lino.cal.EventTypes.DetailFormPanel.superclass.initComponent.call(this);
  }
});


Lino.cal.RecurrentEvents.DetailFormPanel = Ext.extend(Lino.FormPanel,{
  layout: 'fit',
  auto_save: true,
  content_type: 17,
  initComponent : function() {
    var name510 = new Ext.form.TextField({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Designation</span>", "listeners": { "render": Lino.quicktip_renderer("Designation","(cal.RecurrentEvents.name) See lino.utils.mldbc.mixins.BabelNamed.name.") }, "maxLength": 200, "name": "name", "selectOnFocus": true });
    var id511 = new Ext.form.NumberField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "ID", "listeners": { "render": Lino.quicktip_renderer("ID","(cal.RecurrentEvents.id) ") }, "name": "id", "selectOnFocus": true });
    var user512 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a User...", "fieldLabel": "Author", "hiddenName": "userHidden", "listeners": { "render": Lino.quicktip_renderer("Author","(cal.RecurrentEvents.user) ") }, "name": "user", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.users.Users.detail,Lino.users.Users.insert)}, "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/RecurrentEvents/user" }) }) });
    var event_type513 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a Calendar entry type...", "fieldLabel": "Calendar entry type", "hiddenName": "event_typeHidden", "listeners": { "render": Lino.quicktip_renderer("Calendar entry type","(cal.RecurrentEvents.event_type) ") }, "name": "event_type", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.cal.EventTypes.detail,Lino.cal.EventTypes.insert)}, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/RecurrentEvents/event_type" }) }) });
    var main_2_panel514 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 11, "items": id511, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 44, "items": user512, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 44, "items": event_type513, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 180, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var start_date518 = new Lino.DateField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "Start date", "listeners": { "render": Lino.quicktip_renderer("Start date","(cal.RecurrentEvents.start_date) ") }, "name": "start_date", "selectOnFocus": true });
    var start_time519 = new Lino.TimeField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "Start time", "listeners": { "render": Lino.quicktip_renderer("Start time","(cal.RecurrentEvents.start_time) ") }, "name": "start_time", "selectOnFocus": true });
    var end_date520 = new Lino.DateField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "End Date", "listeners": { "render": Lino.quicktip_renderer("End Date","(cal.RecurrentEvents.end_date) ") }, "name": "end_date", "selectOnFocus": true });
    var end_time521 = new Lino.TimeField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "End Time", "listeners": { "render": Lino.quicktip_renderer("End Time","(cal.RecurrentEvents.end_time) ") }, "name": "end_time", "selectOnFocus": true });
    var main_3_panel522 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 30, "items": start_date518, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 19, "items": start_time519, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 30, "items": end_date520, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 19, "items": end_time521, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 99, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var every_unit527 = new Lino.ChoicesFieldElement({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Recurrency</span>", "forceSelection": true, "hiddenName": "every_unitHidden", "listeners": { "render": Lino.quicktip_renderer("Recurrency","(cal.RecurrentEvents.every_unit) Inherited from RecurrentSet.every_unit.") }, "name": "every_unit", "selectOnFocus": true, "store": Lino.cal.Recurrencies });
    var every528 = new Ext.form.NumberField({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "fieldLabel": "Repeat every", "listeners": { "render": Lino.quicktip_renderer("Repeat every","(cal.RecurrentEvents.every) ") }, "name": "every", "selectOnFocus": true, "value": 1 });
    var max_events529 = new Ext.form.NumberField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "Number of events", "listeners": { "render": Lino.quicktip_renderer("Number of events","(cal.RecurrentEvents.max_events) ") }, "name": "max_events", "selectOnFocus": true });
    var main_4_panel530 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 67, "items": every_unit527, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 16, "items": every528, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 16, "items": max_events529, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 153, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var monday534 = new Ext.form.Checkbox({ "anchor": "-20", "autoHeight": true, "boxLabel": "Monday", "checked": false, "hideLabel": true, "listeners": { "render": Lino.quicktip_renderer("Monday","(cal.RecurrentEvents.monday) ") }, "name": "monday", "selectOnFocus": true });
    var tuesday535 = new Ext.form.Checkbox({ "anchor": "-20", "autoHeight": true, "boxLabel": "Tuesday", "checked": false, "hideLabel": true, "listeners": { "render": Lino.quicktip_renderer("Tuesday","(cal.RecurrentEvents.tuesday) ") }, "name": "tuesday", "selectOnFocus": true });
    var wednesday536 = new Ext.form.Checkbox({ "anchor": "-20", "autoHeight": true, "boxLabel": "Wednesday", "checked": false, "hideLabel": true, "listeners": { "render": Lino.quicktip_renderer("Wednesday","(cal.RecurrentEvents.wednesday) ") }, "name": "wednesday", "selectOnFocus": true });
    var thursday537 = new Ext.form.Checkbox({ "anchor": "-20", "autoHeight": true, "boxLabel": "Thursday", "checked": false, "hideLabel": true, "listeners": { "render": Lino.quicktip_renderer("Thursday","(cal.RecurrentEvents.thursday) ") }, "name": "thursday", "selectOnFocus": true });
    var friday538 = new Ext.form.Checkbox({ "anchor": "-20", "autoHeight": true, "boxLabel": "Friday", "checked": false, "hideLabel": true, "listeners": { "render": Lino.quicktip_renderer("Friday","(cal.RecurrentEvents.friday) ") }, "name": "friday", "selectOnFocus": true });
    var saturday539 = new Ext.form.Checkbox({ "anchor": "-20", "autoHeight": true, "boxLabel": "Saturday", "checked": false, "hideLabel": true, "listeners": { "render": Lino.quicktip_renderer("Saturday","(cal.RecurrentEvents.saturday) ") }, "name": "saturday", "selectOnFocus": true });
    var sunday540 = new Ext.form.Checkbox({ "anchor": "-20", "autoHeight": true, "boxLabel": "Sunday", "checked": false, "hideLabel": true, "listeners": { "render": Lino.quicktip_renderer("Sunday","(cal.RecurrentEvents.sunday) ") }, "name": "sunday", "selectOnFocus": true });
    var main_5_panel541 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 14, "items": monday534, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 14, "items": tuesday535, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 14, "items": wednesday536, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 14, "items": thursday537, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 14, "items": friday538, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 14, "items": saturday539, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 14, "items": sunday540, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 90, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var description549 = new Lino.RichTextPanel({ "containing_panel": this, "fieldLabel": "Description", "flex": 66, "name": "description", "selectOnFocus": true, "title": "Description" });
    var cal_EntriesByController_htmlbox550 = new Lino.HtmlBoxPanel({ "always_enabled": true, "bodyStyle": "overflow-x:hidden;", "containing_panel": this, "flex": 33, "items": new Ext.BoxComponent({autoScroll:true}), "layout": "fit", "listeners": { "render": Lino.quicktip_renderer("Calendar entries","(cal.RecurrentEvents.cal_EntriesByController) Shows the events linked to this database object.") }, "master_panel": this, "name": "cal_EntriesByController", "title": "Calendar entries", "tools": [ Lino.show_in_own_window_button(Lino.cal.EntriesByController.grid) ], "value": "<br/>" });
    var main_6_panel551 = new Ext.Panel({ "autoScroll": false, "border": false, "flex": 50, "frame": false, "hideCheckBoxLabels": true, "items": [ description549, cal_EntriesByController_htmlbox550 ], "labelAlign": "top", "labelWidth": 153, "layout": "hbox", "layoutConfig": { "align": "stretch" } });
    var main_panel552 = new Ext.Panel({ "autoScroll": false, "bodyBorder": false, "border": false, "frame": true, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "items": name510, "labelAlign": "top", "layout": "form", "xtype": "panel" }, main_2_panel514, main_3_panel522, main_4_panel530, main_5_panel541, main_6_panel551 ], "labelAlign": "top", "labelWidth": 108, "layout": "vbox", "layoutConfig": { "align": "stretch" } });
    this.items = main_panel552;
    this.before_row_edit = function(record) {
      description549.refresh();
      cal_EntriesByController_htmlbox550.refresh();
    }
    Lino.cal.RecurrentEvents.DetailFormPanel.superclass.initComponent.call(this);
  }
});


Lino.comments.CommentTypes.InsertFormPanel = Ext.extend(Lino.FormPanel,{
  layout: 'fit',
  auto_save: true,
  autoHeight: true,
  content_type: 45,
  initComponent : function() {
    var name554 = new Ext.form.TextField({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "fieldLabel": "Designation", "listeners": { "render": Lino.quicktip_renderer("Designation","(comments.CommentTypes.name) ") }, "maxLength": 200, "name": "name", "selectOnFocus": true });
    var id555 = new Ext.form.NumberField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "ID", "listeners": { "render": Lino.quicktip_renderer("ID","(comments.CommentTypes.id) ") }, "name": "id", "selectOnFocus": true });
    var main_panel556 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "bodyBorder": false, "border": false, "frame": true, "hideCheckBoxLabels": true, "items": [ { "anchor": "-20", "autoHeight": true, "items": name554, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "anchor": "-20", "autoHeight": true, "items": id555, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 108, "layout": "form" });
    this.items = main_panel556;
    this.before_row_edit = function(record) {
    }
    Lino.comments.CommentTypes.InsertFormPanel.superclass.initComponent.call(this);
  }
});


Lino.comments.Comments.DetailFormPanel = Ext.extend(Lino.FormPanel,{
  layout: 'fit',
  auto_save: true,
  content_type: 44,
  initComponent : function() {
    var id559 = new Ext.form.NumberField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "ID", "listeners": { "render": Lino.quicktip_renderer("ID","(comments.Comments.id) ") }, "name": "id", "selectOnFocus": true });
    var user560 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "disabled": true, "emptyText": "Select a User...", "fieldLabel": "Author", "hiddenName": "userHidden", "listeners": { "render": Lino.quicktip_renderer("Author","(comments.Comments.user) ") }, "name": "user", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.users.Users.detail,Lino.users.Users.insert)}, "pageSize": 20, "preferred_width": 15, "store": new Lino.ComplexRemoteComboStore({  }) });
    var created561 = new Ext.form.DisplayField({ "anchor": "-20", "autoHeight": true, "disabled": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Created</span>", "listeners": { "render": Lino.quicktip_renderer("Created","(comments.Comments.created) The timestame when this object was created.") }, "name": "created", "value": "<br>" });
    var modified562 = new Ext.form.DisplayField({ "anchor": "-20", "autoHeight": true, "disabled": true, "fieldLabel": "Modified", "listeners": { "render": Lino.quicktip_renderer("Modified","(comments.Comments.modified) ") }, "name": "modified", "value": "<br>" });
    var main_1_panel563 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 8, "items": id559, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 35, "items": user560, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 28, "items": created561, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 28, "items": modified562, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 81, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var reply_to568 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a Comment...", "fieldLabel": "Reply to", "hiddenName": "reply_toHidden", "listeners": { "render": Lino.quicktip_renderer("Reply to","(comments.Comments.reply_to) ") }, "name": "reply_to", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.comments.Comments.detail,Lino.comments.Comments.insert)}, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/comments/Comments/reply_to" }) }) });
    var owner_disp569 = new Ext.form.DisplayField({ "anchor": "-20", "autoHeight": true, "disabled": true, "fieldLabel": "Controlled by", "name": "owner" });
    var owner_type570 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a content type...", "fieldLabel": "Controlled by (type)", "hiddenName": "owner_typeHidden", "listeners": { "render": Lino.quicktip_renderer("Controlled by (type)","(comments.Comments.owner_type) ") }, "name": "owner_type", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.gfks.ContentTypes.detail,Lino.gfks.ContentTypes.insert)}, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/comments/Comments/owner_type" }) }) });
    var owner_id571 = new Lino.RemoteComboFieldElement({ "anchor": "-20", "autoHeight": true, "fieldLabel": "Controlled by (object)", "hiddenName": "owner_idHidden", "listeners": { "render": Lino.quicktip_renderer("Controlled by (object)","(comments.Comments.owner_id) ") }, "name": "owner_id", "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/comments/Comments/owner_id" }) }) });
    var comment_type572 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a Comment Type...", "fieldLabel": "Comment Type", "hiddenName": "comment_typeHidden", "listeners": { "render": Lino.quicktip_renderer("Comment Type","(comments.Comments.comment_type) ") }, "name": "comment_type", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.comments.CommentTypes.detail,Lino.comments.CommentTypes.insert)}, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/comments/Comments/comment_type" }) }) });
    var main_2_panel573 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 25, "items": reply_to568, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 12, "items": owner_disp569, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 25, "items": owner_type570, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 12, "items": owner_id571, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 25, "items": comment_type572, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 207, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var short_text579 = new Lino.RichTextPanel({ "allowBlank": false, "containing_panel": this, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Short text</span>", "flex": 71, "name": "short_text", "selectOnFocus": true, "title": "Short text" });
    var main_panel580 = new Ext.Panel({ "autoScroll": false, "bodyBorder": false, "border": false, "frame": true, "hideCheckBoxLabels": true, "items": [ main_1_panel563, main_2_panel573, short_text579 ], "labelAlign": "top", "labelWidth": 99, "layout": "vbox", "layoutConfig": { "align": "stretch" } });
    this.items = main_panel580;
    this.before_row_edit = function(record) {
      owner_id571.setContextValue('owner_type', record ? record.data['owner_typeHidden'] : undefined);
      short_text579.refresh();
    }
    this.onRender = function(ct, position) {
      owner_type570.on('change',Lino.chooser_handler(owner_id571,'owner_type'));
      Lino.comments.Comments.DetailFormPanel.superclass.onRender.call(this, ct, position);
    }
    Lino.comments.Comments.DetailFormPanel.superclass.initComponent.call(this);
  }
});


Lino.cal.Tasks.InsertFormPanel = Ext.extend(Lino.FormPanel,{
  layout: 'fit',
  auto_save: true,
  autoHeight: true,
  content_type: 15,
  initComponent : function() {
    var summary581 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "Short description", "listeners": { "render": Lino.quicktip_renderer("Short description","(cal.Tasks.summary) ") }, "maxLength": 200, "name": "summary", "selectOnFocus": true });
    var user582 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a User...", "fieldLabel": "Author", "hiddenName": "userHidden", "listeners": { "render": Lino.quicktip_renderer("Author","(cal.Tasks.user) ") }, "name": "user", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.users.Users.detail,Lino.users.Users.insert)}, "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/Tasks/user" }) }) });
    var main_panel583 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "bodyBorder": false, "border": false, "frame": true, "hideCheckBoxLabels": true, "items": [ { "anchor": "-20", "autoHeight": true, "items": summary581, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "anchor": "-20", "autoHeight": true, "items": user582, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 162, "layout": "form" });
    this.items = main_panel583;
    this.before_row_edit = function(record) {
    }
    Lino.cal.Tasks.InsertFormPanel.superclass.initComponent.call(this);
  }
});


Lino.addresses.Addresses.InsertFormPanel = Ext.extend(Lino.FormPanel,{
  layout: 'fit',
  auto_save: true,
  autoHeight: true,
  content_type: 27,
  initComponent : function() {
    var country586 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a Country...", "fieldLabel": "Country", "hiddenName": "countryHidden", "listeners": { "render": Lino.quicktip_renderer("Country","(addresses.Addresses.country) ") }, "name": "country", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.countries.Countries.detail,Lino.countries.Countries.insert)}, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/addresses/Addresses/country" }) }) });
    var city587 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a Place...", "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">City</span>", "forceSelection": false, "hiddenName": "cityHidden", "listeners": { "render": Lino.quicktip_renderer("City","(addresses.Addresses.city) A pointer to the Place which is used as city.") }, "name": "city", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.countries.Places.detail,Lino.countries.Places.insert)}, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/addresses/Addresses/city" }) }) });
    var main_1_panel588 = new Ext.Panel({ "anchor": "-20", "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 50, "items": country586, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 50, "items": city587, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 72, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var street591 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Street</span>", "listeners": { "render": Lino.quicktip_renderer("Street","(addresses.Addresses.street) Name of street, without house number.") }, "maxLength": 200, "name": "street", "selectOnFocus": true });
    var street_no592 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "boxMinWidth": Lino.chars2width(10), "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">No.</span>", "listeners": { "render": Lino.quicktip_renderer("No.","(addresses.Addresses.street_no) House number.") }, "maxLength": 10, "name": "street_no", "selectOnFocus": true });
    var street_box593 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "boxMinWidth": Lino.chars2width(10), "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Box</span>", "listeners": { "render": Lino.quicktip_renderer("Box","(addresses.Addresses.street_box) Text to print after street nuber on the same line.") }, "maxLength": 10, "name": "street_box", "selectOnFocus": true });
    var main_2_panel594 = new Ext.Panel({ "anchor": "-20", "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 48, "items": street591, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 25, "items": street_no592, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 25, "items": street_box593, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 63, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var address_type598 = new Lino.ChoicesFieldElement({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "fieldLabel": "Address type", "forceSelection": true, "hiddenName": "address_typeHidden", "listeners": { "render": Lino.quicktip_renderer("Address type","(addresses.Addresses.address_type) ") }, "name": "address_type", "selectOnFocus": true, "store": Lino.addresses.AddressTypes });
    var remark599 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "Remark", "listeners": { "render": Lino.quicktip_renderer("Remark","(addresses.Addresses.remark) ") }, "maxLength": 50, "name": "remark", "selectOnFocus": true });
    var main_3_panel600 = new Ext.Panel({ "anchor": "-20", "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 50, "items": address_type598, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 50, "items": remark599, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 117, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var main_panel603 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "bodyBorder": false, "border": false, "frame": true, "hideCheckBoxLabels": true, "items": [ main_1_panel588, main_2_panel594, main_3_panel600 ], "labelAlign": "top", "layout": "form" });
    this.items = main_panel603;
    this.before_row_edit = function(record) {
      city587.setContextValue('country', record ? record.data['countryHidden'] : undefined);
      city587.setContextValue('region', record ? record.data['regionHidden'] : undefined);
    }
    this.onRender = function(ct, position) {
      country586.on('change',Lino.chooser_handler(city587,'country'));
      Lino.addresses.Addresses.InsertFormPanel.superclass.onRender.call(this, ct, position);
    }
    Lino.addresses.Addresses.InsertFormPanel.superclass.initComponent.call(this);
  }
});


Lino.blogs.Entries.DetailFormPanel = Ext.extend(Lino.FormPanel,{
  layout: 'fit',
  auto_save: true,
  content_type: 39,
  initComponent : function() {
    var title604 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "Heading", "listeners": { "render": Lino.quicktip_renderer("Heading","(blogs.Entries.title) ") }, "maxLength": 200, "name": "title", "selectOnFocus": true });
    var entry_type605 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a Blog Entry Type...", "fieldLabel": "Blog Entry Type", "hiddenName": "entry_typeHidden", "listeners": { "render": Lino.quicktip_renderer("Blog Entry Type","(blogs.Entries.entry_type) ") }, "name": "entry_type", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.blogs.EntryTypes.detail,Lino.blogs.EntryTypes.insert)}, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/blogs/Entries/entry_type" }) }) });
    var id606 = new Ext.form.NumberField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "ID", "listeners": { "render": Lino.quicktip_renderer("ID","(blogs.Entries.id) ") }, "name": "id", "selectOnFocus": true });
    var main_1_panel607 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 55, "items": title604, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 31, "items": entry_type605, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 13, "items": id606, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 144, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var pub_date611 = new Lino.DateField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "Publication date", "listeners": { "render": Lino.quicktip_renderer("Publication date","(blogs.Entries.pub_date) ") }, "name": "pub_date", "selectOnFocus": true });
    var pub_time612 = new Lino.TimeField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "Publication time", "listeners": { "render": Lino.quicktip_renderer("Publication time","(blogs.Entries.pub_time) ") }, "name": "pub_time", "selectOnFocus": true });
    var user613 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a User...", "fieldLabel": "Author", "hiddenName": "userHidden", "listeners": { "render": Lino.quicktip_renderer("Author","(blogs.Entries.user) ") }, "name": "user", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.users.Users.detail,Lino.users.Users.insert)}, "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/blogs/Entries/user" }) }) });
    var language614 = new Lino.ChoicesFieldElement({ "anchor": "-20", "autoHeight": true, "fieldLabel": "Language", "hiddenName": "languageHidden", "listeners": { "render": Lino.quicktip_renderer("Language","(blogs.Entries.language) ") }, "name": "language", "selectOnFocus": true, "store": [ [ "en-us", "American English" ] ] });
    var owner_disp615 = new Ext.form.DisplayField({ "anchor": "-20", "autoHeight": true, "disabled": true, "fieldLabel": "Controlled by", "name": "owner" });
    var add_interest616 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a Topic...", "fieldLabel": "Add interest", "hiddenName": "add_interestHidden", "listeners": { "render": Lino.quicktip_renderer("Add interest","(blogs.Entries.add_interest) ") }, "name": "add_interest", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.topics.Topics.detail,Lino.topics.Topics.insert)}, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/blogs/Entries/add_interest" }) }) });
    var main_2_panel617 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 18, "items": pub_date611, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 11, "items": pub_time612, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 14, "items": user613, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 14, "items": language614, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 14, "items": owner_disp615, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 28, "items": add_interest616, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 153, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var body624 = new Lino.RichTextPanel({ "containing_panel": this, "fieldLabel": "Body", "flex": 75, "name": "body", "selectOnFocus": true, "title": "Body" });
    var topics_InterestsByController_htmlbox625 = new Lino.HtmlBoxPanel({ "always_enabled": true, "bodyStyle": "overflow-x:hidden;", "containing_panel": this, "flex": 25, "items": new Ext.BoxComponent({autoScroll:true}), "layout": "fit", "listeners": { "render": Lino.quicktip_renderer("Interests","(blogs.Entries.topics_InterestsByController) ") }, "master_panel": this, "name": "topics_InterestsByController", "title": "Interests", "tools": [ Lino.show_in_own_window_button(Lino.topics.InterestsByController.grid) ], "value": "<br/>" });
    var main_3_panel626 = new Ext.Panel({ "autoScroll": false, "border": false, "flex": 71, "frame": false, "hideCheckBoxLabels": true, "items": [ body624, topics_InterestsByController_htmlbox625 ], "labelAlign": "top", "labelWidth": 90, "layout": "hbox", "layoutConfig": { "align": "stretch" } });
    var main_panel627 = new Ext.Panel({ "autoScroll": false, "bodyBorder": false, "border": false, "frame": true, "hideCheckBoxLabels": true, "items": [ main_1_panel607, main_2_panel617, main_3_panel626 ], "labelAlign": "top", "layout": "vbox", "layoutConfig": { "align": "stretch" } });
    this.items = main_panel627;
    this.before_row_edit = function(record) {
      body624.refresh();
      topics_InterestsByController_htmlbox625.refresh();
    }
    Lino.blogs.Entries.DetailFormPanel.superclass.initComponent.call(this);
  }
});


Lino.addresses.Addresses.DetailFormPanel = Ext.extend(Lino.FormPanel,{
  layout: 'fit',
  auto_save: true,
  autoHeight: true,
  content_type: 27,
  initComponent : function() {
    var country628 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a Country...", "fieldLabel": "Country", "hiddenName": "countryHidden", "listeners": { "render": Lino.quicktip_renderer("Country","(addresses.Addresses.country) ") }, "name": "country", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.countries.Countries.detail,Lino.countries.Countries.insert)}, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/addresses/Addresses/country" }) }) });
    var city629 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a Place...", "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">City</span>", "forceSelection": false, "hiddenName": "cityHidden", "listeners": { "render": Lino.quicktip_renderer("City","(addresses.Addresses.city) A pointer to the Place which is used as city.") }, "name": "city", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.countries.Places.detail,Lino.countries.Places.insert)}, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/addresses/Addresses/city" }) }) });
    var zip_code630 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "boxMinWidth": Lino.chars2width(10), "fieldLabel": "Zip code", "listeners": { "render": Lino.quicktip_renderer("Zip code","(addresses.Addresses.zip_code) ") }, "maxLength": 10, "name": "zip_code", "selectOnFocus": true });
    var main_1_panel631 = new Ext.Panel({ "anchor": "-20", "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 39, "items": country628, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 39, "items": city629, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 21, "items": zip_code630, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 81, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var addr1635 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Address line before street</span>", "listeners": { "render": Lino.quicktip_renderer("Address line before street","(addresses.Addresses.addr1) Address line before street") }, "maxLength": 200, "name": "addr1", "selectOnFocus": true });
    var street636 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Street</span>", "listeners": { "render": Lino.quicktip_renderer("Street","(addresses.Addresses.street) Name of street, without house number.") }, "maxLength": 200, "name": "street", "selectOnFocus": true });
    var street_no637 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "boxMinWidth": Lino.chars2width(10), "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">No.</span>", "listeners": { "render": Lino.quicktip_renderer("No.","(addresses.Addresses.street_no) House number.") }, "maxLength": 10, "name": "street_no", "selectOnFocus": true });
    var street_box638 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "boxMinWidth": Lino.chars2width(10), "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Box</span>", "listeners": { "render": Lino.quicktip_renderer("Box","(addresses.Addresses.street_box) Text to print after street nuber on the same line.") }, "maxLength": 10, "name": "street_box", "selectOnFocus": true });
    var main_3_panel639 = new Ext.Panel({ "anchor": "-20", "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 48, "items": street636, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 25, "items": street_no637, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 25, "items": street_box638, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 63, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var addr2643 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Address line after street</span>", "listeners": { "render": Lino.quicktip_renderer("Address line after street","(addresses.Addresses.addr2) Address line to print below street line.") }, "maxLength": 200, "name": "addr2", "selectOnFocus": true });
    var address_type644 = new Lino.ChoicesFieldElement({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "fieldLabel": "Address type", "forceSelection": true, "hiddenName": "address_typeHidden", "listeners": { "render": Lino.quicktip_renderer("Address type","(addresses.Addresses.address_type) ") }, "name": "address_type", "selectOnFocus": true, "store": Lino.addresses.AddressTypes });
    var remark645 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "Remark", "listeners": { "render": Lino.quicktip_renderer("Remark","(addresses.Addresses.remark) ") }, "maxLength": 50, "name": "remark", "selectOnFocus": true });
    var main_5_panel646 = new Ext.Panel({ "anchor": "-20", "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 50, "items": address_type644, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 50, "items": remark645, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 117, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var data_source649 = new Lino.ChoicesFieldElement({ "anchor": "-20", "autoHeight": true, "disabled": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Data source</span>", "forceSelection": true, "hiddenName": "data_sourceHidden", "listeners": { "render": Lino.quicktip_renderer("Data source","(addresses.Addresses.data_source) Pointer to choicelists.DataSources.") }, "name": "data_source", "store": Lino.addresses.DataSources });
    var partner650 = new Lino.TwinCombo({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "emptyText": "Select a Person...", "fieldLabel": "Person", "hiddenName": "partnerHidden", "listeners": { "render": Lino.quicktip_renderer("Person","(addresses.Addresses.partner) ") }, "name": "partner", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.contacts.Persons.detail,Lino.contacts.Persons.insert)}, "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/addresses/Addresses/partner" }) }) });
    var main_6_panel651 = new Ext.Panel({ "anchor": "-20", "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 48, "items": data_source649, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 51, "items": partner650, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 108, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var main_panel654 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "bodyBorder": false, "border": false, "frame": true, "hideCheckBoxLabels": true, "items": [ main_1_panel631, { "anchor": "-20", "autoHeight": true, "items": addr1635, "labelAlign": "top", "layout": "form", "xtype": "panel" }, main_3_panel639, { "anchor": "-20", "autoHeight": true, "items": addr2643, "labelAlign": "top", "layout": "form", "xtype": "panel" }, main_5_panel646, main_6_panel651 ], "labelAlign": "top", "labelWidth": 243, "layout": "form" });
    this.items = main_panel654;
    this.before_row_edit = function(record) {
      city629.setContextValue('country', record ? record.data['countryHidden'] : undefined);
      city629.setContextValue('region', record ? record.data['regionHidden'] : undefined);
    }
    this.onRender = function(ct, position) {
      country628.on('change',Lino.chooser_handler(city629,'country'));
      Lino.addresses.Addresses.DetailFormPanel.superclass.onRender.call(this, ct, position);
    }
    Lino.addresses.Addresses.DetailFormPanel.superclass.initComponent.call(this);
    // active_fields:
    city629.on("change", function(){ this.save() }, this);
    zip_code630.on("change", function(){ this.save() }, this);
  }
});


Lino.cal.Tasks.DetailFormPanel = Ext.extend(Lino.FormPanel,{
  layout: 'fit',
  auto_save: true,
  content_type: 15,
  initComponent : function() {
    var start_date657 = new Lino.DateField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "Start date", "listeners": { "render": Lino.quicktip_renderer("Start date","(cal.Tasks.start_date) ") }, "name": "start_date", "selectOnFocus": true });
    var due_date658 = new Lino.DateField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "Due date", "listeners": { "render": Lino.quicktip_renderer("Due date","(cal.Tasks.due_date) ") }, "name": "due_date", "selectOnFocus": true });
    var id659 = new Ext.form.NumberField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "ID", "listeners": { "render": Lino.quicktip_renderer("ID","(cal.Tasks.id) ") }, "name": "id", "selectOnFocus": true });
    var workflow_buttons_disp660 = new Ext.form.DisplayField({ "always_enabled": true, "anchor": "-20", "autoHeight": true, "disabled": true, "fieldLabel": "Actions", "listeners": { "render": Lino.quicktip_renderer("Actions","(cal.Tasks.workflow_buttons) ") }, "name": "workflow_buttons", "value": "<br/>" });
    var main_1_panel661 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 21, "items": start_date657, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 21, "items": due_date658, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 8, "items": id659, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 49, "items": workflow_buttons_disp660, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 99, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var summary666 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "Short description", "listeners": { "render": Lino.quicktip_renderer("Short description","(cal.Tasks.summary) ") }, "maxLength": 200, "name": "summary", "selectOnFocus": true });
    var user667 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a User...", "fieldLabel": "Author", "hiddenName": "userHidden", "listeners": { "render": Lino.quicktip_renderer("Author","(cal.Tasks.user) ") }, "name": "user", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.users.Users.detail,Lino.users.Users.insert)}, "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/Tasks/user" }) }) });
    var owner_disp668 = new Ext.form.DisplayField({ "anchor": "-20", "autoHeight": true, "disabled": true, "fieldLabel": "Controlled by", "name": "owner" });
    var created669 = new Ext.form.DisplayField({ "anchor": "-20", "autoHeight": true, "disabled": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Created</span>", "listeners": { "render": Lino.quicktip_renderer("Created","(cal.Tasks.created) The timestame when this object was created.") }, "name": "created", "value": "<br>" });
    var modified670 = new Ext.form.DisplayField({ "anchor": "-20", "autoHeight": true, "disabled": true, "fieldLabel": "Modified", "listeners": { "render": Lino.quicktip_renderer("Modified","(cal.Tasks.modified) ") }, "name": "modified", "value": "<br>" });
    var main_4_panel671 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 20, "items": owner_disp668, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 40, "items": created669, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 40, "items": modified670, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 126, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var description675 = new Ext.form.TextArea({ "anchor": "-20 -10", "fieldLabel": "Description", "growMax": 2000, "listeners": { "render": Lino.quicktip_renderer("Description","(cal.Tasks.description) ") }, "name": "description", "selectOnFocus": true });
    var main_panel676 = new Ext.Panel({ "autoScroll": false, "bodyBorder": false, "border": false, "frame": true, "hideCheckBoxLabels": true, "items": [ main_1_panel661, { "autoHeight": true, "items": summary666, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "items": user667, "labelAlign": "top", "layout": "form", "xtype": "panel" }, main_4_panel671, { "flex": 45, "items": description675, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 162, "layout": "vbox", "layoutConfig": { "align": "stretch" } });
    this.items = main_panel676;
    this.before_row_edit = function(record) {
    }
    Lino.cal.Tasks.DetailFormPanel.superclass.initComponent.call(this);
  }
});


Lino.tinymce.TextFieldTemplates.DetailFormPanel = Ext.extend(Lino.FormPanel,{
  layout: 'fit',
  auto_save: true,
  content_type: 43,
  initComponent : function() {
    var id680 = new Ext.form.NumberField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "ID", "listeners": { "render": Lino.quicktip_renderer("ID","(tinymce.TextFieldTemplates.id) ") }, "name": "id", "selectOnFocus": true });
    var name681 = new Ext.form.TextField({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "fieldLabel": "Designation", "listeners": { "render": Lino.quicktip_renderer("Designation","(tinymce.TextFieldTemplates.name) ") }, "maxLength": 200, "name": "name", "selectOnFocus": true });
    var user682 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a User...", "fieldLabel": "Author", "hiddenName": "userHidden", "listeners": { "render": Lino.quicktip_renderer("Author","(tinymce.TextFieldTemplates.user) ") }, "name": "user", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.users.Users.detail,Lino.users.Users.insert)}, "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/tinymce/TextFieldTemplates/user" }) }) });
    var main_1_panel683 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 10, "items": id680, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 45, "items": name681, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 43, "items": user682, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 108, "layout": "hbox", "layoutConfig": { "align": "stretchmax" }, "region": "north", "split": true });
    var description687 = new Ext.form.TextArea({ "anchor": "-20 -10", "fieldLabel": "Description", "growMax": 2000, "listeners": { "render": Lino.quicktip_renderer("Description","(tinymce.TextFieldTemplates.description) ") }, "name": "description", "selectOnFocus": true });
    var text688 = new Lino.RichTextPanel({ "containing_panel": this, "fieldLabel": "Template Text", "flex": 5, "name": "text", "region": "south", "selectOnFocus": true, "split": true, "title": "Template Text" });
    var main_panel689 = new Lino.VBorderPanel({ "autoScroll": false, "bodyBorder": false, "border": false, "frame": true, "hideCheckBoxLabels": true, "items": [ main_1_panel683, { "flex": 5, "items": description687, "labelAlign": "top", "layout": "form", "region": "center", "split": true, "xtype": "panel" }, text688 ], "labelAlign": "top", "labelWidth": 126 });
    this.items = main_panel689;
    this.before_row_edit = function(record) {
      text688.refresh();
    }
    Lino.tinymce.TextFieldTemplates.DetailFormPanel.superclass.initComponent.call(this);
  }
});


Lino.cal.Guests.InsertFormPanel = Ext.extend(Lino.FormPanel,{
  layout: 'fit',
  auto_save: true,
  autoHeight: true,
  content_type: 21,
  initComponent : function() {
    var event485 = new Lino.TwinCombo({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "emptyText": "Select a Calendar entry...", "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Calendar entry</span>", "hiddenName": "eventHidden", "listeners": { "render": Lino.quicktip_renderer("Calendar entry","(cal.Guests.event) The calendar event to which this presence applies.") }, "name": "event", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.cal.OneEvent.detail,Lino.cal.OneEvent.insert)}, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/Guests/event" }) }) });
    var partner486 = new Lino.TwinCombo({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "emptyText": "Select a Person...", "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Person</span>", "hiddenName": "partnerHidden", "listeners": { "render": Lino.quicktip_renderer("Person","(cal.Guests.partner) The partner to which this presence applies.") }, "name": "partner", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.contacts.Persons.detail,Lino.contacts.Persons.insert)}, "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/Guests/partner" }) }) });
    var role487 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a Guest Role...", "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Role</span>", "hiddenName": "roleHidden", "listeners": { "render": Lino.quicktip_renderer("Role","(cal.Guests.role) The role of this partner in this presence.") }, "name": "role", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.cal.GuestRoles.detail,Lino.cal.GuestRoles.insert)}, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/Guests/role" }) }) });
    var main_panel488 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "bodyBorder": false, "border": false, "frame": true, "hideCheckBoxLabels": true, "items": [ { "anchor": "-20", "autoHeight": true, "items": event485, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "anchor": "-20", "autoHeight": true, "items": partner486, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "anchor": "-20", "autoHeight": true, "items": role487, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 135, "layout": "form" });
    this.items = main_panel488;
    this.before_row_edit = function(record) {
    }
    Lino.cal.Guests.InsertFormPanel.superclass.initComponent.call(this);
  }
});


Lino.cal.Guests.DetailFormPanel = Ext.extend(Lino.FormPanel,{
  layout: 'fit',
  auto_save: true,
  content_type: 21,
  initComponent : function() {
    var event470 = new Lino.TwinCombo({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "emptyText": "Select a Calendar entry...", "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Calendar entry</span>", "hiddenName": "eventHidden", "listeners": { "render": Lino.quicktip_renderer("Calendar entry","(cal.Guests.event) The calendar event to which this presence applies.") }, "name": "event", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.cal.OneEvent.detail,Lino.cal.OneEvent.insert)}, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/Guests/event" }) }) });
    var partner471 = new Lino.TwinCombo({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "emptyText": "Select a Person...", "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Person</span>", "hiddenName": "partnerHidden", "listeners": { "render": Lino.quicktip_renderer("Person","(cal.Guests.partner) The partner to which this presence applies.") }, "name": "partner", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.contacts.Persons.detail,Lino.contacts.Persons.insert)}, "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/Guests/partner" }) }) });
    var role472 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a Guest Role...", "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Role</span>", "hiddenName": "roleHidden", "listeners": { "render": Lino.quicktip_renderer("Role","(cal.Guests.role) The role of this partner in this presence.") }, "name": "role", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.cal.GuestRoles.detail,Lino.cal.GuestRoles.insert)}, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/Guests/role" }) }) });
    var main_1_panel473 = new Ext.Panel({ "anchor": "-20", "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 33, "items": event470, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 33, "items": partner471, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 33, "items": role472, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 135, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var state477 = new Lino.ChoicesFieldElement({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">State</span>", "forceSelection": true, "hiddenName": "stateHidden", "listeners": { "render": Lino.quicktip_renderer("State","(cal.Guests.state) The state of this presence.") }, "name": "state", "selectOnFocus": true, "store": Lino.cal.GuestStates });
    var remark478 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "Remark", "listeners": { "render": Lino.quicktip_renderer("Remark","(cal.Guests.remark) ") }, "maxLength": 200, "name": "remark", "selectOnFocus": true });
    var workflow_buttons_disp479 = new Ext.form.DisplayField({ "always_enabled": true, "anchor": "-20", "autoHeight": true, "disabled": true, "fieldLabel": "Actions", "listeners": { "render": Lino.quicktip_renderer("Actions","(cal.Guests.workflow_buttons) ") }, "name": "workflow_buttons", "value": "<br/>" });
    var main_2_panel480 = new Ext.Panel({ "anchor": "-20", "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 16, "items": state477, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 34, "items": remark478, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 49, "items": workflow_buttons_disp479, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 72, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var main_panel484 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "bodyBorder": false, "border": false, "frame": true, "hideCheckBoxLabels": true, "items": [ main_1_panel473, main_2_panel480 ], "labelAlign": "top", "layout": "form" });
    this.items = main_panel484;
    this.before_row_edit = function(record) {
    }
    Lino.cal.Guests.DetailFormPanel.superclass.initComponent.call(this);
  }
});


Lino.contacts.Partners.InsertFormPanel = Ext.extend(Lino.FormPanel,{
  layout: 'fit',
  auto_save: true,
  autoHeight: true,
  content_type: 8,
  initComponent : function() {
    var name691 = new Ext.form.TextField({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Name</span>", "listeners": { "render": Lino.quicktip_renderer("Name","(contacts.Partners.name) The full name of this partner. Used for alphabetic sorting.\nSubclasses may hide this field and fill it automatically,\ne.g. saving a Person will automatically set her\nname field to \"last_name, first_name\".") }, "maxLength": 200, "name": "name", "selectOnFocus": true });
    var email692 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">e-mail address</span>", "listeners": { "render": Lino.quicktip_renderer("e-mail address","(contacts.Partners.email) The primary email address.") }, "maxLength": 254, "name": "email", "selectOnFocus": true });
    var main_panel693 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "bodyBorder": false, "border": false, "frame": true, "hideCheckBoxLabels": true, "items": [ { "anchor": "-20", "autoHeight": true, "items": name691, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "anchor": "-20", "autoHeight": true, "items": email692, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 135, "layout": "form" });
    this.items = main_panel693;
    this.before_row_edit = function(record) {
    }
    Lino.contacts.Partners.InsertFormPanel.superclass.initComponent.call(this);
  }
});


Lino.plausibility.Checkers.DetailFormPanel = Ext.extend(Lino.FormPanel,{
  layout: 'fit',
  auto_save: true,
  disable_editing: true,
  initComponent : function() {
    var value696 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "disabled": true, "fieldLabel": "value", "listeners": { "render": Lino.quicktip_renderer("value","(plausibility.Checkers.value) ") }, "maxLength": 20, "name": "value" });
    var text697 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "disabled": true, "fieldLabel": "text", "listeners": { "render": Lino.quicktip_renderer("text","(plausibility.Checkers.text) ") }, "maxLength": 50, "name": "text" });
    var main_1_panel698 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 50, "items": value696, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 50, "items": text697, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 54, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var plausibility_ProblemsByChecker_grid713 = new Lino.plausibility.ProblemsByChecker.GridPanel({ "containing_panel": this, "flex": 83, "hide_top_toolbar": true, "listeners": { "render": Lino.quicktip_renderer("Plausibility problems","(plausibility.plausibility.ProblemsByChecker) Show the plausibility problems by checker.") }, "master_panel": this, "params_panel_hidden": true, "preview_limit": 15, "tools": [ Lino.show_in_own_window_button(Lino.plausibility.ProblemsByChecker.grid) ] });
    var main_panel714 = new Ext.Panel({ "autoScroll": false, "bodyBorder": false, "border": false, "frame": true, "hideCheckBoxLabels": true, "items": [ main_1_panel698, plausibility_ProblemsByChecker_grid713 ], "labelAlign": "top", "layout": "vbox", "layoutConfig": { "align": "stretch" } });
    this.items = main_panel714;
    this.before_row_edit = function(record) {
      plausibility_ProblemsByChecker_grid713.on_master_changed();
    }
    Lino.plausibility.Checkers.DetailFormPanel.superclass.initComponent.call(this);
  }
});


Lino.households.Types.DetailFormPanel = Ext.extend(Lino.FormPanel,{
  layout: 'fit',
  auto_save: true,
  content_type: 31,
  initComponent : function() {
    var name715 = new Ext.form.TextField({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "fieldLabel": "Designation", "listeners": { "render": Lino.quicktip_renderer("Designation","(households.Types.name) ") }, "maxLength": 200, "name": "name", "selectOnFocus": true });
    var HouseholdsByType_grid810 = new Lino.households.HouseholdsByType.GridPanel({ "containing_panel": this, "flex": 83, "hide_top_toolbar": true, "listeners": { "render": Lino.quicktip_renderer("Households","(households.households.HouseholdsByType) ") }, "master_panel": this, "params_panel_hidden": true, "preview_limit": 15, "tools": [ Lino.show_in_own_window_button(Lino.households.HouseholdsByType.grid) ] });
    var main_panel811 = new Ext.Panel({ "autoScroll": false, "bodyBorder": false, "border": false, "frame": true, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "items": name715, "labelAlign": "top", "layout": "form", "xtype": "panel" }, HouseholdsByType_grid810 ], "labelAlign": "top", "labelWidth": 108, "layout": "vbox", "layoutConfig": { "align": "stretch" } });
    this.items = main_panel811;
    this.before_row_edit = function(record) {
      HouseholdsByType_grid810.on_master_changed();
    }
    Lino.households.Types.DetailFormPanel.superclass.initComponent.call(this);
  }
});


Lino.lists.Lists.DetailFormPanel = Ext.extend(Lino.FormPanel,{
  layout: 'fit',
  auto_save: true,
  content_type: 38,
  initComponent : function() {
    var ref813 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Reference</span>", "listeners": { "render": Lino.quicktip_renderer("Reference","(lists.Lists.ref) The reference. This must be either empty or unique.") }, "maxLength": 40, "name": "ref", "selectOnFocus": true });
    var list_type814 = new Lino.RemoteComboFieldElement({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a List Type...", "fieldLabel": "List Type", "hiddenName": "list_typeHidden", "listeners": { "render": Lino.quicktip_renderer("List Type","(lists.Lists.list_type) ") }, "name": "list_type", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/lists/Lists/list_type" }) }) });
    var id815 = new Ext.form.NumberField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "ID", "listeners": { "render": Lino.quicktip_renderer("ID","(lists.Lists.id) ") }, "name": "id", "selectOnFocus": true });
    var main_1_panel816 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 45, "items": ref813, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 43, "items": list_type814, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 10, "items": id815, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 90, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var designation820 = new Ext.form.TextField({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "fieldLabel": "Designation", "listeners": { "render": Lino.quicktip_renderer("Designation","(lists.Lists.designation) ") }, "maxLength": 200, "name": "designation", "selectOnFocus": true });
    var remarks821 = new Lino.RichTextPanel({ "containing_panel": this, "fieldLabel": "Remarks", "flex": 41, "name": "remarks", "selectOnFocus": true, "title": "Remarks" });
    var MembersByList_grid833 = new Lino.lists.MembersByList.GridPanel({ "containing_panel": this, "flex": 41, "hide_top_toolbar": true, "listeners": { "render": Lino.quicktip_renderer("Members","(lists.lists.MembersByList) ") }, "master_panel": this, "params_panel_hidden": true, "preview_limit": 15, "tools": [ Lino.show_in_own_window_button(Lino.lists.MembersByList.grid) ] });
    var main_panel834 = new Ext.Panel({ "autoScroll": false, "bodyBorder": false, "border": false, "frame": true, "hideCheckBoxLabels": true, "items": [ main_1_panel816, { "autoHeight": true, "items": designation820, "labelAlign": "top", "layout": "form", "xtype": "panel" }, remarks821, MembersByList_grid833 ], "labelAlign": "top", "labelWidth": 108, "layout": "vbox", "layoutConfig": { "align": "stretch" } });
    this.items = main_panel834;
    this.before_row_edit = function(record) {
      remarks821.refresh();
      MembersByList_grid833.on_master_changed();
    }
    Lino.lists.Lists.DetailFormPanel.superclass.initComponent.call(this);
  }
});


Lino.blogs.Entries.InsertFormPanel = Ext.extend(Lino.FormPanel,{
  layout: 'fit',
  auto_save: true,
  autoHeight: true,
  content_type: 39,
  initComponent : function() {
    var title836 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "Heading", "listeners": { "render": Lino.quicktip_renderer("Heading","(blogs.Entries.title) ") }, "maxLength": 200, "name": "title", "selectOnFocus": true });
    var entry_type837 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a Blog Entry Type...", "fieldLabel": "Blog Entry Type", "hiddenName": "entry_typeHidden", "listeners": { "render": Lino.quicktip_renderer("Blog Entry Type","(blogs.Entries.entry_type) ") }, "name": "entry_type", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.blogs.EntryTypes.detail,Lino.blogs.EntryTypes.insert)}, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/blogs/Entries/entry_type" }) }) });
    var main_panel838 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "bodyBorder": false, "border": false, "frame": true, "hideCheckBoxLabels": true, "items": [ { "anchor": "-20", "autoHeight": true, "items": title836, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "anchor": "-20", "autoHeight": true, "items": entry_type837, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 144, "layout": "form" });
    this.items = main_panel838;
    this.before_row_edit = function(record) {
    }
    Lino.blogs.Entries.InsertFormPanel.superclass.initComponent.call(this);
  }
});


Lino.countries.Countries.InsertFormPanel = Ext.extend(Lino.FormPanel,{
  layout: 'fit',
  auto_save: true,
  autoHeight: true,
  content_type: 1,
  initComponent : function() {
    var isocode841 = new Ext.form.TextField({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "boxMinWidth": Lino.chars2width(4), "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">ISO code</span>", "listeners": { "render": Lino.quicktip_renderer("ISO code","(countries.Countries.isocode)         The two-letter code for this country as defined by ISO 3166-1.\n        For countries that no longer exist it may be a 4-letter code.") }, "maxLength": 4, "name": "isocode", "selectOnFocus": true });
    var short_code842 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "boxMinWidth": Lino.chars2width(4), "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Short code</span>", "listeners": { "render": Lino.quicktip_renderer("Short code","(countries.Countries.short_code) A short abbreviation for regional usage. Obsolete.") }, "maxLength": 4, "name": "short_code", "selectOnFocus": true });
    var main_1_panel843 = new Ext.Panel({ "anchor": "-20", "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 50, "items": isocode841, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 50, "items": short_code842, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 99, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var name846 = new Ext.form.TextField({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "fieldLabel": "Designation", "listeners": { "render": Lino.quicktip_renderer("Designation","(countries.Countries.name) ") }, "maxLength": 200, "name": "name", "selectOnFocus": true });
    var main_panel847 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "bodyBorder": false, "border": false, "frame": true, "hideCheckBoxLabels": true, "items": [ main_1_panel843, { "anchor": "-20", "autoHeight": true, "items": name846, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 108, "layout": "form" });
    this.items = main_panel847;
    this.before_row_edit = function(record) {
    }
    Lino.countries.Countries.InsertFormPanel.superclass.initComponent.call(this);
  }
});


Lino.about.About.DetailFormPanel = Ext.extend(Lino.FormPanel,{
  layout: 'fit',
  auto_save: true,
  disable_editing: true,
  initComponent : function() {
    var server_status_disp850 = new Ext.form.DisplayField({ "always_enabled": true, "anchor": "-20", "autoHeight": true, "disabled": true, "fieldLabel": "Server status", "listeners": { "render": Lino.quicktip_renderer("Server status","(about.About.server_status) ") }, "name": "server_status", "value": "<br/>" });
    var main_panel851 = new Ext.Panel({ "autoScroll": false, "bodyBorder": false, "border": false, "frame": true, "hideCheckBoxLabels": true, "items": [ { "flex": 25, "html": "<div class=\"htmlText\"><span>This is <a href=\"http://amici.lino-framework.org/\" target=\"_blank\">Lino Amici</a> 2017.4.0 using <a href=\"http://www.lino-framework.org\" target=\"_blank\">Lino</a> 2016.12.0, <a href=\"http://www.djangoproject.com\" target=\"_blank\">Django</a> 1.11.2, <a href=\"http://www.python.org/\" target=\"_blank\">Python</a> 2.7.12, <a href=\"http://babel.edgewall.org/\" target=\"_blank\">Babel</a> 2.4.0, <a href=\"http://jinja.pocoo.org/\" target=\"_blank\">Jinja</a> 2.9.6, <a href=\"http://labix.org/python-dateutil\" target=\"_blank\">python-dateutil</a> 2.6.0, <a href=\"http://getbootstrap.com\" target=\"_blank\">Bootstrap</a> 3.3.4, <a href=\"http://www.sencha.com\" target=\"_blank\">ExtJS</a> <a href=\"#\" onclick=\"alert('ExtJS client version is ' + Ext.version);\" title=\"Click to see ExtJS client version\">(version)</a>, <a href=\"http://www.famfamfam.com/lab/icons/silk/\" target=\"_blank\">Silk Icons</a> 1.3, <a href=\"http://ext.ensible.com/products/calendar/\" target=\"_blank\">Ext.ensible adapter</a> <a href=\"#\" onclick=\"alert('Extensible Calendar version is '             + Ext.ensible.version);\" title=\"Click to see Extensible Calendar version\">(version)</a>, <a href=\"http://www.tinymce.com/\" target=\"_blank\">TinyMCE</a> 3.5.11, <a href=\"http://www.byte-force.com\" target=\"_blank\">Ext.ux.TinyMCE</a> 0.8.4</span><p>Languages: en-us</p><p>Server uptime : <b>8/26/17 at 07:41</b> (UTC)</p><p>This is a Lino demo site.</p><p>We are running with simulated date set to Thursday, March 16, 2017.</p><p>Source timestamps:</p><ul><li>django : <b>6/22/17 at 09:33</b></li><li>atelier : <b>7/18/17 at 20:45</b></li><li>lino : <b>8/26/17 at 05:58</b></li><li>lino_xl : <b>8/26/17 at 05:58</b></li><li>lino_amici : <b>8/26/17 at 07:34</b></li></ul></div>", "xtype": "label" }, { "autoHeight": true, "items": server_status_disp850, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 126, "layout": "vbox", "layoutConfig": { "align": "stretch" } });
    this.items = main_panel851;
    this.before_row_edit = function(record) {
    }
    Lino.about.About.DetailFormPanel.superclass.initComponent.call(this);
  }
});


Lino.humanlinks.Links.DetailFormPanel = Ext.extend(Lino.FormPanel,{
  layout: 'fit',
  auto_save: true,
  autoHeight: true,
  content_type: 32,
  initComponent : function() {
    var parent853 = new Lino.TwinCombo({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "emptyText": "Select a Person...", "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Who is...</span>", "hiddenName": "parentHidden", "listeners": { "render": Lino.quicktip_renderer("Who is...","(humanlinks.Links.parent) Pointer to the person who is \"parent\".") }, "name": "parent", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.contacts.Persons.detail,Lino.contacts.Persons.insert)}, "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/humanlinks/Links/parent" }) }) });
    var type854 = new Lino.ChoicesFieldElement({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Parency type</span>", "forceSelection": true, "hiddenName": "typeHidden", "listeners": { "render": Lino.quicktip_renderer("Parency type","(humanlinks.Links.type) The type of link.  Pointer to LinkTypes.") }, "name": "type", "selectOnFocus": true, "store": Lino.humanlinks.LinkTypes });
    var child855 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a Person...", "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">To whom...</span>", "hiddenName": "childHidden", "listeners": { "render": Lino.quicktip_renderer("To whom...","(humanlinks.Links.child) Pointer to the person who is \"child\".") }, "name": "child", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.contacts.Persons.detail,Lino.contacts.Persons.insert)}, "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/humanlinks/Links/child" }) }) });
    var main_panel856 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "bodyBorder": false, "border": false, "frame": true, "hideCheckBoxLabels": true, "items": [ { "anchor": "-20", "autoHeight": true, "items": parent853, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "anchor": "-20", "autoHeight": true, "items": type854, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "anchor": "-20", "autoHeight": true, "items": child855, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 117, "layout": "form" });
    this.items = main_panel856;
    this.before_row_edit = function(record) {
    }
    Lino.humanlinks.Links.DetailFormPanel.superclass.initComponent.call(this);
  }
});


Lino.plausibility.Problems.DetailFormPanel = Ext.extend(Lino.FormPanel,{
  layout: 'fit',
  auto_save: true,
  autoHeight: true,
  content_type: 14,
  disable_editing: true,
  initComponent : function() {
    var user337 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a User...", "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Responsible</span>", "hiddenName": "userHidden", "listeners": { "render": Lino.quicktip_renderer("Responsible","(plausibility.Problems.user) The user reponsible\nfor fixing this problem.") }, "name": "user", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.users.Users.detail,Lino.users.Users.insert)}, "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/plausibility/Problems/user" }) }) });
    var owner_disp338 = new Ext.form.DisplayField({ "anchor": "-20", "autoHeight": true, "disabled": true, "fieldLabel": "Controlled by", "name": "owner" });
    var checker339 = new Lino.ChoicesFieldElement({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Plausibility checker</span>", "forceSelection": true, "hiddenName": "checkerHidden", "listeners": { "render": Lino.quicktip_renderer("Plausibility checker","(plausibility.Problems.checker) The Checker which reported\nthis problem.") }, "name": "checker", "selectOnFocus": true, "store": Lino.plausibility.Checkers });
    var id340 = new Ext.form.NumberField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "ID", "listeners": { "render": Lino.quicktip_renderer("ID","(plausibility.Problems.id) ") }, "name": "id", "selectOnFocus": true });
    var main_1_panel341 = new Ext.Panel({ "anchor": "-20", "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 28, "items": user337, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 28, "items": owner_disp338, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 28, "items": checker339, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 14, "items": id340, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 189, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var message346 = new Ext.form.TextField({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Message</span>", "listeners": { "render": Lino.quicktip_renderer("Message","(plausibility.Problems.message) The message text. This is a concatenation of all messages that\nwere yeld by the checker.") }, "maxLength": 250, "name": "message", "selectOnFocus": true });
    var main_panel347 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "bodyBorder": false, "border": false, "frame": true, "hideCheckBoxLabels": true, "items": [ main_1_panel341, { "anchor": "-20", "autoHeight": true, "items": message346, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 72, "layout": "form" });
    this.items = main_panel347;
    this.before_row_edit = function(record) {
    }
    Lino.plausibility.Problems.DetailFormPanel.superclass.initComponent.call(this);
  }
});


Lino.cal.Calendars.InsertFormPanel = Ext.extend(Lino.FormPanel,{
  layout: 'fit',
  auto_save: true,
  autoHeight: true,
  content_type: 24,
  initComponent : function() {
    var name860 = new Ext.form.TextField({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "fieldLabel": "Designation", "listeners": { "render": Lino.quicktip_renderer("Designation","(cal.Calendars.name) ") }, "maxLength": 200, "name": "name", "selectOnFocus": true });
    var color861 = new Ext.form.NumberField({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "fieldLabel": "color", "listeners": { "render": Lino.quicktip_renderer("color","(cal.Calendars.color) ") }, "name": "color", "selectOnFocus": true });
    var main_panel862 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "bodyBorder": false, "border": false, "frame": true, "hideCheckBoxLabels": true, "items": [ { "anchor": "-20", "autoHeight": true, "items": name860, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "anchor": "-20", "autoHeight": true, "items": color861, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 108, "layout": "form" });
    this.items = main_panel862;
    this.before_row_edit = function(record) {
    }
    Lino.cal.Calendars.InsertFormPanel.superclass.initComponent.call(this);
  }
});


Lino.households.Households.DetailFormPanel = Ext.extend(Lino.FormPanel,{
  layout: 'fit',
  auto_save: true,
  content_type: 30,
  initComponent : function() {
    var type745 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a Household Type...", "fieldLabel": "Household Type", "hiddenName": "typeHidden", "listeners": { "render": Lino.quicktip_renderer("Household Type","(households.Households.type) ") }, "name": "type", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.households.Types.detail,Lino.households.Types.insert)}, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/households/Households/type" }) }) });
    var prefix746 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Name prefix</span>", "listeners": { "render": Lino.quicktip_renderer("Name prefix","(households.Households.prefix) An optional name prefix. For organisations this is inserted\nbefore the name, for persons this is inserted between first\nname and last name (see\nlino.mixins.human.Human.get_last_name_prefix()).") }, "maxLength": 200, "name": "prefix", "selectOnFocus": true });
    var name747 = new Ext.form.TextField({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Name</span>", "listeners": { "render": Lino.quicktip_renderer("Name","(households.Households.name) The full name of this partner. Used for alphabetic sorting.\nSubclasses may hide this field and fill it automatically,\ne.g. saving a Person will automatically set her\nname field to \"last_name, first_name\".") }, "maxLength": 200, "name": "name", "selectOnFocus": true });
    var language748 = new Lino.ChoicesFieldElement({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Language</span>", "hiddenName": "languageHidden", "listeners": { "render": Lino.quicktip_renderer("Language","(households.Households.language) The language to use when communicating with this partner.") }, "name": "language", "selectOnFocus": true, "store": [ [ "en-us", "American English" ] ] });
    var id749 = new Ext.form.NumberField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "ID", "listeners": { "render": Lino.quicktip_renderer("ID","(households.Households.id) ") }, "name": "id", "selectOnFocus": true });
    var main_1_panel750 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 25, "items": type745, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 27, "items": prefix746, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 27, "items": name747, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 12, "items": language748, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 6, "items": id749, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 135, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var country756 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a Country...", "fieldLabel": "Country", "hiddenName": "countryHidden", "listeners": { "render": Lino.quicktip_renderer("Country","(households.Households.country) ") }, "name": "country", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.countries.Countries.detail,Lino.countries.Countries.insert)}, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/households/Households/country" }) }) });
    var region757 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a Place...", "fieldLabel": "County", "hiddenName": "regionHidden", "listeners": { "render": Lino.quicktip_renderer("County","(households.Households.region) ") }, "name": "region", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.countries.Places.detail,Lino.countries.Places.insert)}, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/households/Households/region" }) }) });
    var box3_1_panel758 = new Ext.Panel({ "anchor": "-20", "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 50, "items": country756, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 50, "items": region757, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 72, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var city761 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a Place...", "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">City</span>", "forceSelection": false, "hiddenName": "cityHidden", "listeners": { "render": Lino.quicktip_renderer("City","(households.Households.city) A pointer to the Place which is used as city.") }, "name": "city", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.countries.Places.detail,Lino.countries.Places.insert)}, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/households/Households/city" }) }) });
    var zip_code762 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "boxMinWidth": Lino.chars2width(10), "fieldLabel": "Zip code", "listeners": { "render": Lino.quicktip_renderer("Zip code","(households.Households.zip_code) ") }, "maxLength": 10, "name": "zip_code", "selectOnFocus": true });
    var box3_2_panel763 = new Ext.Panel({ "anchor": "-20", "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 66, "items": city761, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 33, "items": zip_code762, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 81, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var street_prefix766 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Street prefix</span>", "listeners": { "render": Lino.quicktip_renderer("Street prefix","(households.Households.street_prefix) Text to print before name of street, but to ignore for sorting.") }, "maxLength": 200, "name": "street_prefix", "selectOnFocus": true });
    var street767 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Street</span>", "listeners": { "render": Lino.quicktip_renderer("Street","(households.Households.street) Name of street, without house number.") }, "maxLength": 200, "name": "street", "selectOnFocus": true });
    var street_no768 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "boxMinWidth": Lino.chars2width(10), "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">No.</span>", "listeners": { "render": Lino.quicktip_renderer("No.","(households.Households.street_no) House number.") }, "maxLength": 10, "name": "street_no", "selectOnFocus": true });
    var street_box769 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "boxMinWidth": Lino.chars2width(10), "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Box</span>", "listeners": { "render": Lino.quicktip_renderer("Box","(households.Households.street_box) Text to print after street nuber on the same line.") }, "maxLength": 10, "name": "street_box", "selectOnFocus": true });
    var box3_3_panel770 = new Ext.Panel({ "anchor": "-20", "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 30, "items": street_prefix766, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 36, "items": street767, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 16, "items": street_no768, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 16, "items": street_box769, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 126, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var addr2775 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Address line after street</span>", "listeners": { "render": Lino.quicktip_renderer("Address line after street","(households.Households.addr2) Address line to print below street line.") }, "maxLength": 200, "name": "addr2", "selectOnFocus": true });
    var box3_panel776 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "bodyBorder": false, "border": false, "flex": 62, "frame": true, "hideCheckBoxLabels": true, "items": [ box3_1_panel758, box3_2_panel763, box3_3_panel770, { "anchor": "-20", "autoHeight": true, "items": addr2775, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 234, "layout": "form" });
    var phone778 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Phone</span>", "listeners": { "render": Lino.quicktip_renderer("Phone","(households.Households.phone) The primary phone number.  Note that Lino does not ignore\nformatting characters in phone numbers when searching.  For\nexample, if you enter \"087/12.34.56\" as a phone number, then a\nsearch for phone number containing \"1234\" will not find it.") }, "maxLength": 200, "name": "phone", "selectOnFocus": true });
    var gsm779 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">GSM</span>", "listeners": { "render": Lino.quicktip_renderer("GSM","(households.Households.gsm) The primary mobile phone number.") }, "maxLength": 200, "name": "gsm", "selectOnFocus": true });
    var email780 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">e-mail address</span>", "listeners": { "render": Lino.quicktip_renderer("e-mail address","(households.Households.email) The primary email address.") }, "maxLength": 254, "name": "email", "selectOnFocus": true });
    var url781 = new Lino.URLField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "URL", "listeners": { "render": Lino.quicktip_renderer("URL","(households.Households.url) ") }, "maxLength": 200, "name": "url", "selectOnFocus": true });
    var box4_panel782 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "bodyBorder": false, "border": false, "flex": 37, "frame": true, "hideCheckBoxLabels": true, "items": [ { "anchor": "-20", "autoHeight": true, "items": phone778, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "anchor": "-20", "autoHeight": true, "items": gsm779, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "anchor": "-20", "autoHeight": true, "items": email780, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "anchor": "-20", "autoHeight": true, "items": url781, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 135, "layout": "form" });
    var address_box_panel787 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ box3_panel776, box4_panel782 ], "labelAlign": "top", "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var households_MembersByHousehold_grid808 = new Lino.households.MembersByHousehold.GridPanel({ "containing_panel": this, "flex": 50, "hide_top_toolbar": true, "listeners": { "render": Lino.quicktip_renderer("Household Members","(households.households.MembersByHousehold) ") }, "master_panel": this, "params_panel_hidden": true, "preview_limit": 15, "tools": [ Lino.show_in_own_window_button(Lino.households.MembersByHousehold.grid) ] });
    var main_panel809 = new Ext.Panel({ "autoScroll": false, "bodyBorder": false, "border": false, "frame": true, "hideCheckBoxLabels": true, "items": [ main_1_panel750, address_box_panel787, households_MembersByHousehold_grid808 ], "labelAlign": "top", "layout": "vbox", "layoutConfig": { "align": "stretch" } });
    this.items = main_panel809;
    this.before_row_edit = function(record) {
      region757.setContextValue('country', record ? record.data['countryHidden'] : undefined);
      city761.setContextValue('country', record ? record.data['countryHidden'] : undefined);
      city761.setContextValue('region', record ? record.data['regionHidden'] : undefined);
      households_MembersByHousehold_grid808.on_master_changed();
    }
    this.onRender = function(ct, position) {
      country756.on('change',Lino.chooser_handler(region757,'country'));
      country756.on('change',Lino.chooser_handler(city761,'country'));
      region757.on('change',Lino.chooser_handler(city761,'region'));
      Lino.households.Households.DetailFormPanel.superclass.onRender.call(this, ct, position);
    }
    Lino.households.Households.DetailFormPanel.superclass.initComponent.call(this);
    // active_fields:
    city761.on("change", function(){ this.save() }, this);
    zip_code762.on("change", function(){ this.save() }, this);
  }
});


Lino.topics.TopicGroups.DetailFormPanel = Ext.extend(Lino.FormPanel,{
  layout: 'fit',
  auto_save: true,
  content_type: 33,
  initComponent : function() {
    var id865 = new Ext.form.NumberField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "ID", "listeners": { "render": Lino.quicktip_renderer("ID","(topics.TopicGroups.id) ") }, "name": "id", "selectOnFocus": true });
    var name866 = new Ext.form.TextField({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "fieldLabel": "Designation", "listeners": { "render": Lino.quicktip_renderer("Designation","(topics.TopicGroups.name) ") }, "maxLength": 200, "name": "name", "selectOnFocus": true });
    var main_1_panel867 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 19, "items": id865, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 80, "items": name866, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 108, "layout": "hbox", "layoutConfig": { "align": "stretchmax" }, "region": "north", "split": true });
    var description870 = new Lino.RichTextPanel({ "containing_panel": this, "fieldLabel": "Description", "flex": 5, "name": "description", "region": "center", "selectOnFocus": true, "split": true, "title": "Description" });
    var TopicsByGroup_grid910 = new Lino.topics.TopicsByGroup.GridPanel({ "containing_panel": this, "flex": 5, "hide_top_toolbar": true, "listeners": { "render": Lino.quicktip_renderer("Topics","(topics.topics.TopicsByGroup) ") }, "master_panel": this, "params_panel_hidden": true, "preview_limit": 15, "region": "south", "split": true, "tools": [ Lino.show_in_own_window_button(Lino.topics.TopicsByGroup.grid) ] });
    var main_panel911 = new Lino.VBorderPanel({ "autoScroll": false, "bodyBorder": false, "border": false, "frame": true, "hideCheckBoxLabels": true, "items": [ main_1_panel867, description870, TopicsByGroup_grid910 ], "labelAlign": "top", "labelWidth": 108 });
    this.items = main_panel911;
    this.before_row_edit = function(record) {
      description870.refresh();
      TopicsByGroup_grid910.on_master_changed();
    }
    Lino.topics.TopicGroups.DetailFormPanel.superclass.initComponent.call(this);
  }
});


Lino.gfks.ContentTypes.DetailFormPanel = Ext.extend(Lino.FormPanel,{
  layout: 'fit',
  auto_save: true,
  content_type: 12,
  initComponent : function() {
    var id912 = new Ext.form.NumberField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "ID", "listeners": { "render": Lino.quicktip_renderer("ID","(gfks.ContentTypes.id) ") }, "name": "id", "selectOnFocus": true });
    var app_label913 = new Ext.form.TextField({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "fieldLabel": "app label", "listeners": { "render": Lino.quicktip_renderer("app label","(gfks.ContentTypes.app_label) ") }, "maxLength": 100, "name": "app_label", "selectOnFocus": true });
    var model914 = new Ext.form.TextField({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "fieldLabel": "python model class name", "listeners": { "render": Lino.quicktip_renderer("python model class name","(gfks.ContentTypes.model) ") }, "maxLength": 100, "name": "model", "selectOnFocus": true });
    var base_classes_disp915 = new Ext.form.DisplayField({ "always_enabled": true, "anchor": "-20", "autoHeight": true, "disabled": true, "fieldLabel": "Base classes", "listeners": { "render": Lino.quicktip_renderer("Base classes","(gfks.ContentTypes.base_classes) ") }, "name": "base_classes", "value": "<br/>" });
    var main_1_panel916 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 6, "items": id912, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 27, "items": app_label913, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 27, "items": model914, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 38, "items": base_classes_disp915, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 216, "layout": "hbox", "layoutConfig": { "align": "stretchmax" }, "region": "north", "split": true });
    var HelpTextsByModel_grid927 = new Lino.gfks.HelpTextsByModel.GridPanel({ "containing_panel": this, "flex": 5, "hide_top_toolbar": true, "listeners": { "render": Lino.quicktip_renderer("Help Texts","(gfks.gfks.HelpTextsByModel) ") }, "master_panel": this, "params_panel_hidden": true, "preview_limit": 15, "region": "center", "split": true, "tools": [ Lino.show_in_own_window_button(Lino.gfks.HelpTextsByModel.grid) ] });
    var BrokenGFKsByModel_grid932 = new Lino.gfks.BrokenGFKsByModel.GridPanel({ "containing_panel": this, "flex": 5, "hide_top_toolbar": true, "listeners": { "render": Lino.quicktip_renderer("Broken GFKs","(gfks.gfks.BrokenGFKsByModel) Shows all database objects (model instances) who have a broken\nGeneriForeignKey field.") }, "master_panel": this, "params_panel_hidden": true, "preview_limit": 15, "region": "south", "split": true, "tools": [ Lino.show_in_own_window_button(Lino.gfks.BrokenGFKsByModel.grid) ] });
    var main_panel933 = new Lino.VBorderPanel({ "autoScroll": false, "bodyBorder": false, "border": false, "frame": true, "hideCheckBoxLabels": true, "items": [ main_1_panel916, HelpTextsByModel_grid927, BrokenGFKsByModel_grid932 ], "labelAlign": "top" });
    this.items = main_panel933;
    this.before_row_edit = function(record) {
      HelpTextsByModel_grid927.on_master_changed();
      BrokenGFKsByModel_grid932.on_master_changed();
    }
    Lino.gfks.ContentTypes.DetailFormPanel.superclass.initComponent.call(this);
  }
});


Lino.contacts.Companies.DetailFormPanel = Ext.extend(Lino.FormPanel,{
  layout: 'fit',
  auto_save: true,
  content_type: 5,
  initComponent : function() {
    var overview_disp934 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "flex": 50, "listeners": { "render": Lino.quicktip_renderer(null,"(contacts.Companies.overview) ") }, "name": "overview", "value": "<br/>" });
    var phones_ContactDetailsByPartner_htmlbox935 = new Lino.HtmlBoxPanel({ "always_enabled": true, "bodyStyle": "overflow-x:hidden;", "containing_panel": this, "flex": 50, "items": new Ext.BoxComponent({autoScroll:true}), "layout": "fit", "listeners": { "render": Lino.quicktip_renderer("Contact Details","(contacts.Companies.phones_ContactDetailsByPartner) ") }, "master_panel": this, "name": "phones_ContactDetailsByPartner", "title": "Contact Details", "tools": [ Lino.show_in_own_window_button(Lino.phones.ContactDetailsByPartner.grid) ], "value": "<br/>" });
    var general_1_panel936 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ overview_disp934, phones_ContactDetailsByPartner_htmlbox935 ], "labelAlign": "top", "labelWidth": 144, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var contacts_RolesByCompany_grid946 = new Lino.contacts.RolesByCompany.GridPanel({ "containing_panel": this, "flex": 50, "hide_top_toolbar": true, "listeners": { "render": Lino.quicktip_renderer("Contact persons","(contacts.contacts.RolesByCompany) ") }, "master_panel": this, "params_panel_hidden": true, "preview_limit": 15, "tools": [ Lino.show_in_own_window_button(Lino.contacts.RolesByCompany.grid) ] });
    var comments_CommentsByRFC_htmlbox947 = new Lino.HtmlBoxPanel({ "always_enabled": true, "bodyStyle": "overflow-x:hidden;", "containing_panel": this, "flex": 50, "items": new Ext.BoxComponent({autoScroll:true}), "layout": "fit", "listeners": { "render": Lino.quicktip_renderer("Comments","(contacts.Companies.comments_CommentsByRFC) ") }, "master_panel": this, "name": "comments_CommentsByRFC", "title": "Comments", "tools": [ Lino.show_in_own_window_button(Lino.comments.CommentsByRFC.grid) ], "value": "<br/>" });
    var general_2_panel948 = new Ext.Panel({ "autoScroll": false, "border": false, "flex": 62, "frame": false, "hideCheckBoxLabels": true, "items": [ contacts_RolesByCompany_grid946, comments_CommentsByRFC_htmlbox947 ], "labelAlign": "top", "labelWidth": 81, "layout": "hbox", "layoutConfig": { "align": "stretch" } });
    var general_panel949 = new Ext.Panel({ "autoScroll": false, "bodyBorder": false, "border": false, "frame": true, "hideCheckBoxLabels": true, "items": [ general_1_panel936, general_2_panel948 ], "labelAlign": "top", "layout": "vbox", "layoutConfig": { "align": "stretch" }, "listeners": { "activate": Lino.on_tab_activate }, "title": "General" });
    var prefix950 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Name prefix</span>", "listeners": { "render": Lino.quicktip_renderer("Name prefix","(contacts.Companies.prefix) An optional name prefix. For organisations this is inserted\nbefore the name, for persons this is inserted between first\nname and last name (see\nlino.mixins.human.Human.get_last_name_prefix()).") }, "maxLength": 200, "name": "prefix", "selectOnFocus": true });
    var name951 = new Ext.form.TextField({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Name</span>", "listeners": { "render": Lino.quicktip_renderer("Name","(contacts.Companies.name) The full name of this partner. Used for alphabetic sorting.\nSubclasses may hide this field and fill it automatically,\ne.g. saving a Person will automatically set her\nname field to \"last_name, first_name\".") }, "maxLength": 200, "name": "name", "selectOnFocus": true });
    var type952 = new Lino.RemoteComboFieldElement({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a Organization type...", "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Organization type</span>", "hiddenName": "typeHidden", "listeners": { "render": Lino.quicktip_renderer("Organization type","(contacts.Companies.type) Pointer to the CompanyType.") }, "name": "type", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/contacts/Companies/type" }) }) });
    var name_box_panel953 = new Ext.Panel({ "anchor": "-20", "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 16, "items": prefix950, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 34, "items": name951, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 49, "items": type952, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 162, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var country957 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a Country...", "fieldLabel": "Country", "hiddenName": "countryHidden", "listeners": { "render": Lino.quicktip_renderer("Country","(contacts.Companies.country) ") }, "name": "country", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.countries.Countries.detail,Lino.countries.Countries.insert)}, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/contacts/Companies/country" }) }) });
    var city958 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a Place...", "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">City</span>", "forceSelection": false, "hiddenName": "cityHidden", "listeners": { "render": Lino.quicktip_renderer("City","(contacts.Companies.city) A pointer to the Place which is used as city.") }, "name": "city", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.countries.Places.detail,Lino.countries.Places.insert)}, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/contacts/Companies/city" }) }) });
    var zip_code959 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "boxMinWidth": Lino.chars2width(10), "fieldLabel": "Zip code", "listeners": { "render": Lino.quicktip_renderer("Zip code","(contacts.Companies.zip_code) ") }, "maxLength": 10, "name": "zip_code", "selectOnFocus": true });
    var address_box_2_panel960 = new Ext.Panel({ "anchor": "-20", "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 40, "items": country957, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 40, "items": city958, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 20, "items": zip_code959, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 81, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var street964 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Street</span>", "listeners": { "render": Lino.quicktip_renderer("Street","(contacts.Companies.street) Name of street, without house number.") }, "maxLength": 200, "name": "street", "selectOnFocus": true });
    var street_no965 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "boxMinWidth": Lino.chars2width(10), "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">No.</span>", "listeners": { "render": Lino.quicktip_renderer("No.","(contacts.Companies.street_no) House number.") }, "maxLength": 10, "name": "street_no", "selectOnFocus": true });
    var street_box966 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "boxMinWidth": Lino.chars2width(10), "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Box</span>", "listeners": { "render": Lino.quicktip_renderer("Box","(contacts.Companies.street_box) Text to print after street nuber on the same line.") }, "maxLength": 10, "name": "street_box", "selectOnFocus": true });
    var address_box_4_panel967 = new Ext.Panel({ "anchor": "-20", "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 53, "items": street964, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 23, "items": street_no965, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 23, "items": street_box966, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 63, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var address_box_panel971 = new Ext.form.FieldSet({ "autoHeight": true, "autoScroll": false, "bodyBorder": false, "border": false, "frame": true, "hideCheckBoxLabels": true, "items": [ name_box_panel953, address_box_2_panel960, address_box_4_panel967 ], "labelAlign": "top", "layout": "form", "title": "Address" });
    var remarks972 = new Lino.RichTextPanel({ "containing_panel": this, "fieldLabel": "About me", "flex": 33, "name": "remarks", "selectOnFocus": true, "title": "About me" });
    var lists_MembersByPartner_grid973 = new Lino.lists.MembersByPartner.GridPanel({ "containing_panel": this, "flex": 66, "hide_top_toolbar": true, "listeners": { "render": Lino.quicktip_renderer("List memberships","(lists.lists.MembersByPartner) ") }, "master_panel": this, "params_panel_hidden": true, "preview_limit": 15, "tools": [ Lino.show_in_own_window_button(Lino.lists.MembersByPartner.grid) ] });
    var contact_2_panel974 = new Ext.Panel({ "autoScroll": false, "border": false, "flex": 62, "frame": false, "hideCheckBoxLabels": true, "items": [ remarks972, lists_MembersByPartner_grid973 ], "labelAlign": "top", "labelWidth": 81, "layout": "hbox", "layoutConfig": { "align": "stretch" } });
    var contact_panel975 = new Ext.Panel({ "autoScroll": false, "bodyBorder": false, "border": false, "frame": true, "hideCheckBoxLabels": true, "items": [ address_box_panel971, contact_2_panel974 ], "labelAlign": "top", "layout": "vbox", "layoutConfig": { "align": "stretch" }, "listeners": { "activate": Lino.on_tab_activate }, "title": "Contact" });
    var id976 = new Ext.form.NumberField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "ID", "listeners": { "render": Lino.quicktip_renderer("ID","(contacts.Companies.id) ") }, "name": "id", "selectOnFocus": true });
    var language977 = new Lino.ChoicesFieldElement({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Language</span>", "hiddenName": "languageHidden", "listeners": { "render": Lino.quicktip_renderer("Language","(contacts.Companies.language) The language to use when communicating with this partner.") }, "name": "language", "selectOnFocus": true, "store": [ [ "en-us", "American English" ] ] });
    var parent978 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a Organization...", "fieldLabel": "Parent", "hiddenName": "parentHidden", "listeners": { "render": Lino.quicktip_renderer("Parent","(contacts.Companies.parent) ") }, "name": "parent", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.contacts.Companies.detail,Lino.contacts.Companies.insert)}, "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/contacts/Companies/parent" }) }) });
    var more_1_panel979 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 14, "items": id976, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 28, "items": language977, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 57, "items": parent978, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 81, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var CompaniesByCompany_grid1070 = new Lino.contacts.CompaniesByCompany.GridPanel({ "containing_panel": this, "flex": 50, "hide_top_toolbar": true, "listeners": { "render": Lino.quicktip_renderer("Child organisations","(contacts.contacts.CompaniesByCompany) ") }, "master_panel": this, "params_panel_hidden": true, "preview_limit": 15, "tools": [ Lino.show_in_own_window_button(Lino.contacts.CompaniesByCompany.grid) ] });
    var plausibility_ProblemsByOwner_grid1071 = new Lino.plausibility.ProblemsByOwner.GridPanel({ "containing_panel": this, "flex": 50, "hide_top_toolbar": true, "listeners": { "render": Lino.quicktip_renderer("Plausibility problems","(plausibility.plausibility.ProblemsByOwner) Show data problems related to this database object.") }, "master_panel": this, "params_panel_hidden": true, "preview_limit": 15, "tools": [ Lino.show_in_own_window_button(Lino.plausibility.ProblemsByOwner.grid) ] });
    var more_2_panel1072 = new Ext.Panel({ "autoScroll": false, "border": false, "flex": 83, "frame": false, "hideCheckBoxLabels": true, "items": [ CompaniesByCompany_grid1070, plausibility_ProblemsByOwner_grid1071 ], "labelAlign": "top", "layout": "hbox", "layoutConfig": { "align": "stretch" } });
    var more_panel1073 = new Ext.Panel({ "autoScroll": false, "bodyBorder": false, "border": false, "frame": true, "hideCheckBoxLabels": true, "items": [ more_1_panel979, more_2_panel1072 ], "labelAlign": "top", "layout": "vbox", "layoutConfig": { "align": "stretch" }, "listeners": { "activate": Lino.on_tab_activate }, "title": "More" });
    var main_panel1074 = new Ext.TabPanel({ "activeTab": 0, "autoScroll": false, "bodyBorder": false, "border": false, "enableTabScroll": true, "frame": true, "hideCheckBoxLabels": true, "items": [ general_panel949, contact_panel975, more_panel1073 ], "labelAlign": "top", "split": true });
    this.items = main_panel1074;
    this.before_row_edit = function(record) {
      phones_ContactDetailsByPartner_htmlbox935.refresh();
      contacts_RolesByCompany_grid946.on_master_changed();
      comments_CommentsByRFC_htmlbox947.refresh();
      city958.setContextValue('country', record ? record.data['countryHidden'] : undefined);
      city958.setContextValue('region', record ? record.data['regionHidden'] : undefined);
      remarks972.refresh();
      lists_MembersByPartner_grid973.on_master_changed();
      CompaniesByCompany_grid1070.on_master_changed();
      plausibility_ProblemsByOwner_grid1071.on_master_changed();
    }
    this.onRender = function(ct, position) {
      country957.on('change',Lino.chooser_handler(city958,'country'));
      Lino.contacts.Companies.DetailFormPanel.superclass.onRender.call(this, ct, position);
    }
    Lino.contacts.Companies.DetailFormPanel.superclass.initComponent.call(this);
    // active_fields:
    city958.on("change", function(){ this.save() }, this);
    zip_code959.on("change", function(){ this.save() }, this);
  }
});


Lino.users.Users.DetailFormPanel = Ext.extend(Lino.FormPanel,{
  layout: 'fit',
  auto_save: true,
  content_type: 10,
  initComponent : function() {
    var username1075 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Username</span>", "listeners": { "render": Lino.quicktip_renderer("Username","(users.Users.username) Must be unique or empty.\nLeaving this empty means that the user cannot log in.") }, "maxLength": 30, "name": "username", "selectOnFocus": true });
    var user_type1076 = new Lino.ChoicesFieldElement({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">User type</span>", "forceSelection": true, "hiddenName": "user_typeHidden", "listeners": { "render": Lino.quicktip_renderer("User type","(users.Users.user_type) The user_type of a user is what defines her or his permissions.") }, "name": "user_type", "selectOnFocus": true, "store": [['','<br>']].concat(Lino.users.UserTypes) });
    var box1_1_panel1077 = new Ext.Panel({ "anchor": "-20", "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 51, "items": username1075, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 48, "items": user_type1076, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 90, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var first_name1080 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">First name</span>", "listeners": { "render": Lino.quicktip_renderer("First name","(users.Users.first_name) The first name, also known as given name.") }, "maxLength": 200, "name": "first_name", "selectOnFocus": true });
    var last_name1081 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Last name</span>", "listeners": { "render": Lino.quicktip_renderer("Last name","(users.Users.last_name) The last name, also known as family name.") }, "maxLength": 200, "name": "last_name", "selectOnFocus": true });
    var initials1082 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "boxMinWidth": Lino.chars2width(10), "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Initials</span>", "listeners": { "render": Lino.quicktip_renderer("Initials","(users.Users.initials) The nickname or initials of this user. This does not need to\nbe unique but should provide a reasonably identifying\nfunction.") }, "maxLength": 10, "name": "initials", "selectOnFocus": true });
    var box1_2_panel1083 = new Ext.Panel({ "anchor": "-20", "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 39, "items": first_name1080, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 39, "items": last_name1081, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 20, "items": initials1082, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 99, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var email1087 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">e-mail address</span>", "listeners": { "render": Lino.quicktip_renderer("e-mail address","(users.Users.email) The primary email address.") }, "maxLength": 254, "name": "email", "selectOnFocus": true });
    var language1088 = new Lino.ChoicesFieldElement({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Language</span>", "hiddenName": "languageHidden", "listeners": { "render": Lino.quicktip_renderer("Language","(users.Users.language) The language to use when communicating with this partner.") }, "name": "language", "selectOnFocus": true, "store": [ [ "en-us", "American English" ] ] });
    var timezone1089 = new Lino.SimpleRemoteComboFieldElement({ "anchor": "-20", "autoHeight": true, "fieldLabel": "Time zone", "listeners": { "render": Lino.quicktip_renderer("Time zone","(users.Users.timezone) ") }, "name": "timezone", "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/users/Users/timezone" }) }) });
    var box1_3_panel1090 = new Ext.Panel({ "anchor": "-20", "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 41, "items": email1087, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 39, "items": language1088, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 19, "items": timezone1089, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 135, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var id1094 = new Ext.form.NumberField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "ID", "listeners": { "render": Lino.quicktip_renderer("ID","(users.Users.id) ") }, "name": "id", "selectOnFocus": true });
    var created1095 = new Ext.form.DisplayField({ "anchor": "-20", "autoHeight": true, "disabled": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Created</span>", "listeners": { "render": Lino.quicktip_renderer("Created","(users.Users.created) The timestame when this object was created.") }, "name": "created", "value": "<br>" });
    var modified1096 = new Ext.form.DisplayField({ "anchor": "-20", "autoHeight": true, "disabled": true, "fieldLabel": "Modified", "listeners": { "render": Lino.quicktip_renderer("Modified","(users.Users.modified) ") }, "name": "modified", "value": "<br>" });
    var box1_4_panel1097 = new Ext.Panel({ "anchor": "-20", "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 13, "items": id1094, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 43, "items": created1095, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 43, "items": modified1096, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 81, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var box1_panel1101 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "bodyBorder": false, "border": false, "frame": true, "hideCheckBoxLabels": true, "items": [ box1_1_panel1077, box1_2_panel1083, box1_3_panel1090, box1_4_panel1097 ], "labelAlign": "top", "layout": "form" });
    var remarks1102 = new Lino.RichTextPanel({ "containing_panel": this, "fieldLabel": "About me", "flex": 66, "name": "remarks", "selectOnFocus": true, "title": "About me" });
    var AuthoritiesGiven_grid1105 = new Lino.users.AuthoritiesGiven.GridPanel({ "containing_panel": this, "flex": 33, "hideHeaders": true, "hide_top_toolbar": true, "listeners": { "render": Lino.quicktip_renderer("Authorities given","(users.users.AuthoritiesGiven) ") }, "master_panel": this, "params_panel_hidden": true, "preview_limit": 15, "tools": [ Lino.show_in_own_window_button(Lino.users.AuthoritiesGiven.grid) ] });
    var main_2_panel1106 = new Ext.Panel({ "autoScroll": false, "border": false, "flex": 55, "frame": false, "hideCheckBoxLabels": true, "items": [ remarks1102, AuthoritiesGiven_grid1105 ], "labelAlign": "top", "labelWidth": 81, "layout": "hbox", "layoutConfig": { "align": "stretch" } });
    var main_panel1107 = new Ext.Panel({ "autoScroll": false, "bodyBorder": false, "border": false, "frame": true, "hideCheckBoxLabels": true, "items": [ box1_panel1101, main_2_panel1106 ], "labelAlign": "top", "layout": "vbox", "layoutConfig": { "align": "stretch" } });
    this.items = main_panel1107;
    this.before_row_edit = function(record) {
      timezone1089.setContextValue('partner', record ? record.data['partner'] : undefined);
      remarks1102.refresh();
      AuthoritiesGiven_grid1105.on_master_changed();
    }
    Lino.users.Users.DetailFormPanel.superclass.initComponent.call(this);
    // active_fields:
  }
});


Lino.contacts.Persons.InsertFormPanel = Ext.extend(Lino.FormPanel,{
  layout: 'fit',
  auto_save: true,
  autoHeight: true,
  content_type: 6,
  initComponent : function() {
    var first_name353 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">First name</span>", "listeners": { "render": Lino.quicktip_renderer("First name","(contacts.Persons.first_name) The first name, also known as given name.") }, "maxLength": 200, "name": "first_name", "selectOnFocus": true });
    var last_name354 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Last name</span>", "listeners": { "render": Lino.quicktip_renderer("Last name","(contacts.Persons.last_name) The last name, also known as family name.") }, "maxLength": 200, "name": "last_name", "selectOnFocus": true });
    var main_1_panel355 = new Ext.Panel({ "anchor": "-20", "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 50, "items": first_name353, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 50, "items": last_name354, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 99, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var gender358 = new Lino.ChoicesFieldElement({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Gender</span>", "forceSelection": true, "hiddenName": "genderHidden", "listeners": { "render": Lino.quicktip_renderer("Gender","(contacts.Persons.gender) The sex of this person (male or female).") }, "name": "gender", "selectOnFocus": true, "store": [['','<br>']].concat(Lino.system.Genders) });
    var email359 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">e-mail address</span>", "listeners": { "render": Lino.quicktip_renderer("e-mail address","(contacts.Persons.email) The primary email address.") }, "maxLength": 254, "name": "email", "selectOnFocus": true });
    var main_2_panel360 = new Ext.Panel({ "anchor": "-20", "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 30, "items": gender358, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 70, "items": email359, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 135, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var main_panel363 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "bodyBorder": false, "border": false, "frame": true, "hideCheckBoxLabels": true, "items": [ main_1_panel355, main_2_panel360 ], "labelAlign": "top", "layout": "form" });
    this.items = main_panel363;
    this.before_row_edit = function(record) {
    }
    Lino.contacts.Persons.InsertFormPanel.superclass.initComponent.call(this);
  }
});


Lino.cal.GuestRoles.DetailFormPanel = Ext.extend(Lino.FormPanel,{
  layout: 'fit',
  auto_save: true,
  content_type: 23,
  initComponent : function() {
    var id1108 = new Ext.form.NumberField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "ID", "listeners": { "render": Lino.quicktip_renderer("ID","(cal.GuestRoles.id) ") }, "name": "id", "selectOnFocus": true });
    var name1109 = new Ext.form.TextField({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "fieldLabel": "Designation", "listeners": { "render": Lino.quicktip_renderer("Designation","(cal.GuestRoles.name) ") }, "maxLength": 200, "name": "name", "selectOnFocus": true });
    var main_1_panel1110 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 19, "items": id1108, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 80, "items": name1109, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 108, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var cal_GuestsByRole_grid1125 = new Lino.cal.GuestsByRole.GridPanel({ "containing_panel": this, "flex": 83, "hide_top_toolbar": true, "listeners": { "render": Lino.quicktip_renderer("Presences","(cal.cal.GuestsByRole) The default table for Guest.") }, "master_panel": this, "params_panel_hidden": true, "preview_limit": 15, "tools": [ Lino.show_in_own_window_button(Lino.cal.GuestsByRole.grid) ] });
    var main_panel1126 = new Ext.Panel({ "autoScroll": false, "bodyBorder": false, "border": false, "frame": true, "hideCheckBoxLabels": true, "items": [ main_1_panel1110, cal_GuestsByRole_grid1125 ], "labelAlign": "top", "layout": "vbox", "layoutConfig": { "align": "stretch" } });
    this.items = main_panel1126;
    this.before_row_edit = function(record) {
      cal_GuestsByRole_grid1125.on_master_changed();
    }
    Lino.cal.GuestRoles.DetailFormPanel.superclass.initComponent.call(this);
  }
});


Lino.excerpts.ExcerptTypes.InsertFormPanel = Ext.extend(Lino.FormPanel,{
  layout: 'fit',
  auto_save: true,
  autoHeight: true,
  content_type: 41,
  initComponent : function() {
    var name1127 = new Ext.form.TextField({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Designation</span>", "listeners": { "render": Lino.quicktip_renderer("Designation","(excerpts.ExcerptTypes.name) The designation of this excerpt type.\nOne field for every language.") }, "maxLength": 200, "name": "name", "selectOnFocus": true });
    var content_type1128 = new Lino.TwinCombo({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "emptyText": "Select a content type...", "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Model</span>", "hiddenName": "content_typeHidden", "listeners": { "render": Lino.quicktip_renderer("Model","(excerpts.ExcerptTypes.content_type) The model that can issue printouts of this type.") }, "name": "content_type", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.gfks.ContentTypes.detail,Lino.gfks.ContentTypes.insert)}, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/excerpts/ExcerptTypes/content_type" }) }) });
    var primary1129 = new Ext.form.Checkbox({ "anchor": "-20", "autoHeight": true, "boxLabel": "Primary", "checked": false, "hideLabel": true, "listeners": { "render": Lino.quicktip_renderer("Primary","(excerpts.ExcerptTypes.primary) Whether this is the default type to use for this model. There's at most one primary type per model. Enabling this field will automatically make the other types non-primary.") }, "name": "primary", "selectOnFocus": true });
    var certifying1130 = new Ext.form.Checkbox({ "anchor": "-20", "autoHeight": true, "boxLabel": "Certifying", "checked": false, "hideLabel": true, "listeners": { "render": Lino.quicktip_renderer("Certifying","(excerpts.ExcerptTypes.certifying) Whether an excerpt of this type is a unique printout.") }, "name": "certifying", "selectOnFocus": true });
    var main_2_panel1131 = new Ext.Panel({ "anchor": "-20", "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 50, "items": content_type1128, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 25, "items": primary1129, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 25, "items": certifying1130, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 99, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var build_method1135 = new Lino.ChoicesFieldElement({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Build method</span>", "forceSelection": true, "hiddenName": "build_methodHidden", "listeners": { "render": Lino.quicktip_renderer("Build method","(excerpts.ExcerptTypes.build_method) See lino.modlib.printing.mixins.PrintableType.build_method.") }, "name": "build_method", "selectOnFocus": true, "store": [['','<br>']].concat(Lino.printing.BuildMethods) });
    var template1136 = new Lino.SimpleRemoteComboFieldElement({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Template</span>", "listeners": { "render": Lino.quicktip_renderer("Template","(excerpts.ExcerptTypes.template) The main template to be used when printing an excerpt of this type.") }, "name": "template", "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/excerpts/ExcerptTypes/template" }) }) });
    var body_template1137 = new Lino.SimpleRemoteComboFieldElement({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Body template</span>", "listeners": { "render": Lino.quicktip_renderer("Body template","(excerpts.ExcerptTypes.body_template) The body template to be used when         rendering a printable of this type. This is a list of files         with extension `.body.html`.") }, "name": "body_template", "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/excerpts/ExcerptTypes/body_template" }) }) });
    var main_3_panel1138 = new Ext.Panel({ "anchor": "-20", "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 53, "items": build_method1135, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 23, "items": template1136, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 23, "items": body_template1137, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 126, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var main_panel1142 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "bodyBorder": false, "border": false, "frame": true, "hideCheckBoxLabels": true, "items": [ { "anchor": "-20", "autoHeight": true, "items": name1127, "labelAlign": "top", "layout": "form", "xtype": "panel" }, main_2_panel1131, main_3_panel1138 ], "labelAlign": "top", "labelWidth": 108, "layout": "form" });
    this.items = main_panel1142;
    this.before_row_edit = function(record) {
      template1136.setContextValue('build_method', record ? record.data['build_methodHidden'] : undefined);
      template1136.setContextValue('content_type', record ? record.data['content_typeHidden'] : undefined);
      body_template1137.setContextValue('content_type', record ? record.data['content_typeHidden'] : undefined);
    }
    this.onRender = function(ct, position) {
      build_method1135.on('change',Lino.chooser_handler(template1136,'build_method'));
      content_type1128.on('change',Lino.chooser_handler(template1136,'content_type'));
      content_type1128.on('change',Lino.chooser_handler(body_template1137,'content_type'));
      Lino.excerpts.ExcerptTypes.InsertFormPanel.superclass.onRender.call(this, ct, position);
    }
    Lino.excerpts.ExcerptTypes.InsertFormPanel.superclass.initComponent.call(this);
  }
});


Lino.cal.Calendars.DetailFormPanel = Ext.extend(Lino.FormPanel,{
  layout: 'fit',
  auto_save: true,
  content_type: 24,
  initComponent : function() {
    var name1144 = new Ext.form.TextField({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "fieldLabel": "Designation", "listeners": { "render": Lino.quicktip_renderer("Designation","(cal.Calendars.name) ") }, "maxLength": 200, "name": "name", "selectOnFocus": true });
    var color1145 = new Ext.form.NumberField({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "fieldLabel": "color", "listeners": { "render": Lino.quicktip_renderer("color","(cal.Calendars.color) ") }, "name": "color", "selectOnFocus": true });
    var id1146 = new Ext.form.NumberField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "ID", "listeners": { "render": Lino.quicktip_renderer("ID","(cal.Calendars.id) ") }, "name": "id", "selectOnFocus": true });
    var main_1_panel1147 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 67, "items": name1144, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 16, "items": color1145, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 16, "items": id1146, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 108, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var description1151 = new Lino.RichTextPanel({ "containing_panel": this, "fieldLabel": "Description", "flex": 33, "name": "description", "selectOnFocus": true, "title": "Description" });
    var SubscriptionsByCalendar_grid1161 = new Lino.cal.SubscriptionsByCalendar.GridPanel({ "containing_panel": this, "flex": 66, "hide_top_toolbar": true, "listeners": { "render": Lino.quicktip_renderer("Subscriptions","(cal.cal.SubscriptionsByCalendar) ") }, "master_panel": this, "params_panel_hidden": true, "preview_limit": 15, "tools": [ Lino.show_in_own_window_button(Lino.cal.SubscriptionsByCalendar.grid) ] });
    var main_2_panel1162 = new Ext.Panel({ "autoScroll": false, "border": false, "flex": 83, "frame": false, "hideCheckBoxLabels": true, "items": [ description1151, SubscriptionsByCalendar_grid1161 ], "labelAlign": "top", "labelWidth": 108, "layout": "hbox", "layoutConfig": { "align": "stretch" } });
    var main_panel1163 = new Ext.Panel({ "autoScroll": false, "bodyBorder": false, "border": false, "frame": true, "hideCheckBoxLabels": true, "items": [ main_1_panel1147, main_2_panel1162 ], "labelAlign": "top", "layout": "vbox", "layoutConfig": { "align": "stretch" } });
    this.items = main_panel1163;
    this.before_row_edit = function(record) {
      description1151.refresh();
      SubscriptionsByCalendar_grid1161.on_master_changed();
    }
    Lino.cal.Calendars.DetailFormPanel.superclass.initComponent.call(this);
  }
});


Lino.phones.ContactDetails.DetailFormPanel = Ext.extend(Lino.FormPanel,{
  layout: 'fit',
  auto_save: true,
  autoHeight: true,
  content_type: 28,
  initComponent : function() {
    var email1164 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "e-mail address", "listeners": { "render": Lino.quicktip_renderer("e-mail address","(phones.ContactDetails.email) ") }, "maxLength": 254, "name": "email", "selectOnFocus": true });
    var url1165 = new Lino.URLField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "URL", "listeners": { "render": Lino.quicktip_renderer("URL","(phones.ContactDetails.url) ") }, "maxLength": 200, "name": "url", "selectOnFocus": true });
    var main_1_panel1166 = new Ext.Panel({ "anchor": "-20", "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 50, "items": email1164, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 50, "items": url1165, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 135, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var gsm1169 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "GSM", "listeners": { "render": Lino.quicktip_renderer("GSM","(phones.ContactDetails.gsm) ") }, "maxLength": 200, "name": "gsm", "selectOnFocus": true });
    var phone1170 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "Phone", "listeners": { "render": Lino.quicktip_renderer("Phone","(phones.ContactDetails.phone) ") }, "maxLength": 200, "name": "phone", "selectOnFocus": true });
    var fax1171 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "Fax", "listeners": { "render": Lino.quicktip_renderer("Fax","(phones.ContactDetails.fax) ") }, "maxLength": 200, "name": "fax", "selectOnFocus": true });
    var main_2_panel1172 = new Ext.Panel({ "anchor": "-20", "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 33, "items": gsm1169, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 33, "items": phone1170, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 33, "items": fax1171, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 54, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var detail_type1176 = new Lino.ChoicesFieldElement({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "fieldLabel": "Contact Detail Type", "forceSelection": true, "hiddenName": "detail_typeHidden", "listeners": { "render": Lino.quicktip_renderer("Contact Detail Type","(phones.ContactDetails.detail_type) ") }, "name": "detail_type", "selectOnFocus": true, "store": Lino.phones.ContactDetailTypes });
    var remark1177 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "Remark", "listeners": { "render": Lino.quicktip_renderer("Remark","(phones.ContactDetails.remark) ") }, "maxLength": 200, "name": "remark", "selectOnFocus": true });
    var main_3_panel1178 = new Ext.Panel({ "anchor": "-20", "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 32, "items": detail_type1176, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 67, "items": remark1177, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 180, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var partner1181 = new Lino.TwinCombo({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "emptyText": "Select a Partner...", "fieldLabel": "Partner", "hiddenName": "partnerHidden", "listeners": { "render": Lino.quicktip_renderer("Partner","(phones.ContactDetails.partner) ") }, "name": "partner", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.contacts.Partners.detail,Lino.contacts.Partners.insert)}, "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/phones/ContactDetails/partner" }) }) });
    var main_panel1182 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "bodyBorder": false, "border": false, "frame": true, "hideCheckBoxLabels": true, "items": [ main_1_panel1166, main_2_panel1172, main_3_panel1178, { "anchor": "-20", "autoHeight": true, "items": partner1181, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 72, "layout": "form" });
    this.items = main_panel1182;
    this.before_row_edit = function(record) {
    }
    Lino.phones.ContactDetails.DetailFormPanel.superclass.initComponent.call(this);
  }
});


Lino.comments.Comments.InsertFormPanel = Ext.extend(Lino.FormPanel,{
  layout: 'fit',
  auto_save: true,
  content_type: 44,
  initComponent : function() {
    var reply_to1184 = new Lino.TwinCombo({ "emptyText": "Select a Comment...", "fieldLabel": "Reply to", "flex": 33, "hidden": true, "hiddenName": "reply_toHidden", "listeners": { "render": Lino.quicktip_renderer("Reply to","(comments.Comments.reply_to) ") }, "name": "reply_to", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.comments.Comments.detail,Lino.comments.Comments.insert)}, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/comments/Comments/reply_to" }) }) });
    var owner_disp1185 = new Ext.form.DisplayField({ "disabled": true, "fieldLabel": "Controlled by", "flex": 16, "hidden": true, "name": "owner" });
    var owner_type1186 = new Lino.TwinCombo({ "emptyText": "Select a content type...", "fieldLabel": "Controlled by (type)", "flex": 33, "hidden": true, "hiddenName": "owner_typeHidden", "listeners": { "render": Lino.quicktip_renderer("Controlled by (type)","(comments.Comments.owner_type) ") }, "name": "owner_type", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.gfks.ContentTypes.detail,Lino.gfks.ContentTypes.insert)}, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/comments/Comments/owner_type" }) }) });
    var owner_id1187 = new Lino.RemoteComboFieldElement({ "fieldLabel": "Controlled by (object)", "flex": 16, "hidden": true, "hiddenName": "owner_idHidden", "listeners": { "render": Lino.quicktip_renderer("Controlled by (object)","(comments.Comments.owner_id) ") }, "name": "owner_id", "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/comments/Comments/owner_id" }) }) });
    var main_1_panel1188 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hidden": true, "hideCheckBoxLabels": true, "items": [ reply_to1184, owner_disp1185, owner_type1186, owner_id1187 ], "labelAlign": "top", "labelWidth": 207, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var short_text1189 = new Lino.RichTextPanel({ "allowBlank": false, "containing_panel": this, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Short text</span>", "flex": 83, "name": "short_text", "selectOnFocus": true, "title": "Short text" });
    var main_panel1190 = new Ext.Panel({ "autoScroll": false, "bodyBorder": false, "border": false, "frame": true, "hideCheckBoxLabels": true, "items": [ main_1_panel1188, short_text1189 ], "labelAlign": "top", "labelWidth": 99, "layout": "vbox", "layoutConfig": { "align": "stretch" } });
    this.items = main_panel1190;
    this.before_row_edit = function(record) {
      owner_id1187.setContextValue('owner_type', record ? record.data['owner_typeHidden'] : undefined);
      short_text1189.refresh();
    }
    this.onRender = function(ct, position) {
      owner_type1186.on('change',Lino.chooser_handler(owner_id1187,'owner_type'));
      Lino.comments.Comments.InsertFormPanel.superclass.onRender.call(this, ct, position);
    }
    Lino.comments.Comments.InsertFormPanel.superclass.initComponent.call(this);
  }
});


Lino.cal.Events.InsertFormPanel = Ext.extend(Lino.FormPanel,{
  layout: 'fit',
  auto_save: true,
  autoHeight: true,
  content_type: 19,
  initComponent : function() {
    var start_date494 = new Lino.DateField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "Start date", "listeners": { "render": Lino.quicktip_renderer("Start date","(cal.Events.start_date) ") }, "name": "start_date", "selectOnFocus": true });
    var start_time495 = new Lino.TimeField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "Start time", "listeners": { "render": Lino.quicktip_renderer("Start time","(cal.Events.start_time) ") }, "name": "start_time", "selectOnFocus": true });
    var end_date496 = new Lino.DateField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "End Date", "listeners": { "render": Lino.quicktip_renderer("End Date","(cal.Events.end_date) ") }, "name": "end_date", "selectOnFocus": true });
    var end_time497 = new Lino.TimeField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">End Time</span>", "listeners": { "render": Lino.quicktip_renderer("End Time","(cal.Events.end_time) These four fields define the duration of this entry.\nOnly start_date is mandatory.") }, "name": "end_time", "selectOnFocus": true });
    var main_1_panel498 = new Ext.Panel({ "anchor": "-20", "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 30, "items": start_date494, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 19, "items": start_time495, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 30, "items": end_date496, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 19, "items": end_time497, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 99, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var summary503 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Short description</span>", "listeners": { "render": Lino.quicktip_renderer("Short description","(cal.Events.summary) A one-line descriptive text.") }, "maxLength": 200, "name": "summary", "selectOnFocus": true });
    var main_panel504 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "bodyBorder": false, "border": false, "frame": true, "hideCheckBoxLabels": true, "items": [ main_1_panel498, { "anchor": "-20", "autoHeight": true, "items": summary503, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 162, "layout": "form" });
    this.items = main_panel504;
    this.before_row_edit = function(record) {
    }
    Lino.cal.Events.InsertFormPanel.superclass.initComponent.call(this);
  }
});


Lino.system.SiteConfigs.DetailFormPanel = Ext.extend(Lino.FormPanel,{
  layout: 'fit',
  auto_save: true,
  content_type: 3,
  initComponent : function() {
    var site_company1191 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a Organization...", "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Site owner</span>", "hiddenName": "site_companyHidden", "listeners": { "render": Lino.quicktip_renderer("Site owner","(system.SiteConfigs.site_company) The organisation who runs this site.  This is used e.g. when\nprinting your address in certain documents or reports.  Or\nnewly created partners inherit the country of the site owner.") }, "name": "site_company", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.contacts.Companies.detail,Lino.contacts.Companies.insert)}, "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/system/SiteConfigs/site_company" }) }) });
    var next_partner_id1192 = new Ext.form.NumberField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Next partner id</span>", "listeners": { "render": Lino.quicktip_renderer("Next partner id","(system.SiteConfigs.next_partner_id) The next automatic id for any new partner.") }, "name": "next_partner_id", "selectOnFocus": true, "value": 100 });
    var default_build_method1193 = new Lino.ChoicesFieldElement({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Default build method</span>", "forceSelection": true, "hiddenName": "default_build_methodHidden", "listeners": { "render": Lino.quicktip_renderer("Default build method","(system.SiteConfigs.default_build_method) The default build method to use when rendering printable documents.") }, "name": "default_build_method", "selectOnFocus": true, "store": [['','<br>']].concat(Lino.printing.BuildMethods) });
    var main_1_panel1194 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 37, "items": site_company1191, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 18, "items": next_partner_id1192, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 43, "items": default_build_method1193, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 189, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var main_panel1198 = new Ext.Panel({ "autoScroll": false, "bodyBorder": false, "border": false, "frame": true, "hideCheckBoxLabels": true, "items": [ main_1_panel1194 ], "labelAlign": "top", "layout": "fit" });
    this.items = main_panel1198;
    this.before_row_edit = function(record) {
    }
    Lino.system.SiteConfigs.DetailFormPanel.superclass.initComponent.call(this);
  }
});


Lino.users.Register.InsertFormPanel = Ext.extend(Lino.FormPanel,{
  layout: 'fit',
  auto_save: true,
  autoHeight: true,
  content_type: 10,
  initComponent : function() {
    var first_name1199 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">First name</span>", "listeners": { "render": Lino.quicktip_renderer("First name","(users.Register.first_name) The first name, also known as given name.") }, "maxLength": 200, "name": "first_name", "selectOnFocus": true });
    var last_name1200 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Last name</span>", "listeners": { "render": Lino.quicktip_renderer("Last name","(users.Register.last_name) The last name, also known as family name.") }, "maxLength": 200, "name": "last_name", "selectOnFocus": true });
    var main_1_panel1201 = new Ext.Panel({ "anchor": "-20", "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 50, "items": first_name1199, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 50, "items": last_name1200, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 99, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var email1204 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">e-mail address</span>", "listeners": { "render": Lino.quicktip_renderer("e-mail address","(users.Register.email) The primary email address.") }, "maxLength": 254, "name": "email", "selectOnFocus": true });
    var language1205 = new Lino.ChoicesFieldElement({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Language</span>", "hiddenName": "languageHidden", "listeners": { "render": Lino.quicktip_renderer("Language","(users.Register.language) The language to use when communicating with this partner.") }, "name": "language", "selectOnFocus": true, "store": [ [ "en-us", "American English" ] ] });
    var main_2_panel1206 = new Ext.Panel({ "anchor": "-20", "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 51, "items": email1204, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 48, "items": language1205, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 135, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var gsm1209 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">GSM</span>", "listeners": { "render": Lino.quicktip_renderer("GSM","(users.Register.gsm) The primary mobile phone number.") }, "maxLength": 200, "name": "gsm", "selectOnFocus": true });
    var phone1210 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Phone</span>", "listeners": { "render": Lino.quicktip_renderer("Phone","(users.Register.phone) The primary phone number.  Note that Lino does not ignore\nformatting characters in phone numbers when searching.  For\nexample, if you enter \"087/12.34.56\" as a phone number, then a\nsearch for phone number containing \"1234\" will not find it.") }, "maxLength": 200, "name": "phone", "selectOnFocus": true });
    var main_3_panel1211 = new Ext.Panel({ "anchor": "-20", "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 50, "items": gsm1209, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 50, "items": phone1210, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 54, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var country1214 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a Country...", "fieldLabel": "Country", "hiddenName": "countryHidden", "listeners": { "render": Lino.quicktip_renderer("Country","(users.Register.country) ") }, "name": "country", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.countries.Countries.detail,Lino.countries.Countries.insert)}, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/users/Register/country" }) }) });
    var city1215 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a Place...", "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">City</span>", "forceSelection": false, "hiddenName": "cityHidden", "listeners": { "render": Lino.quicktip_renderer("City","(users.Register.city) A pointer to the Place which is used as city.") }, "name": "city", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.countries.Places.detail,Lino.countries.Places.insert)}, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/users/Register/city" }) }) });
    var main_4_panel1216 = new Ext.Panel({ "anchor": "-20", "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 50, "items": country1214, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 50, "items": city1215, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 72, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var street1219 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Street</span>", "listeners": { "render": Lino.quicktip_renderer("Street","(users.Register.street) Name of street, without house number.") }, "maxLength": 200, "name": "street", "selectOnFocus": true });
    var street_no1220 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "boxMinWidth": Lino.chars2width(10), "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">No.</span>", "listeners": { "render": Lino.quicktip_renderer("No.","(users.Register.street_no) House number.") }, "maxLength": 10, "name": "street_no", "selectOnFocus": true });
    var main_5_panel1221 = new Ext.Panel({ "anchor": "-20", "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 65, "items": street1219, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 34, "items": street_no1220, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 63, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var username1224 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Username</span>", "listeners": { "render": Lino.quicktip_renderer("Username","(users.Register.username) Must be unique or empty.\nLeaving this empty means that the user cannot log in.") }, "maxLength": 30, "name": "username", "selectOnFocus": true });
    var main_panel1225 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "bodyBorder": false, "border": false, "frame": true, "hideCheckBoxLabels": true, "items": [ main_1_panel1201, main_2_panel1206, main_3_panel1211, main_4_panel1216, main_5_panel1221, { "anchor": "-20", "autoHeight": true, "items": username1224, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 81, "layout": "form" });
    this.items = main_panel1225;
    this.before_row_edit = function(record) {
      city1215.setContextValue('country', record ? record.data['countryHidden'] : undefined);
      city1215.setContextValue('region', record ? record.data['regionHidden'] : undefined);
    }
    this.onRender = function(ct, position) {
      country1214.on('change',Lino.chooser_handler(city1215,'country'));
      Lino.users.Register.InsertFormPanel.superclass.onRender.call(this, ct, position);
    }
    Lino.users.Register.InsertFormPanel.superclass.initComponent.call(this);
  }
});


Lino.countries.Countries.DetailFormPanel = Ext.extend(Lino.FormPanel,{
  layout: 'fit',
  auto_save: true,
  content_type: 1,
  initComponent : function() {
    var isocode1227 = new Ext.form.TextField({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "boxMinWidth": Lino.chars2width(4), "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">ISO code</span>", "listeners": { "render": Lino.quicktip_renderer("ISO code","(countries.Countries.isocode)         The two-letter code for this country as defined by ISO 3166-1.\n        For countries that no longer exist it may be a 4-letter code.") }, "maxLength": 4, "name": "isocode", "selectOnFocus": true });
    var name1228 = new Ext.form.TextField({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "fieldLabel": "Designation", "listeners": { "render": Lino.quicktip_renderer("Designation","(countries.Countries.name) ") }, "maxLength": 200, "name": "name", "selectOnFocus": true });
    var short_code1229 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "boxMinWidth": Lino.chars2width(4), "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Short code</span>", "listeners": { "render": Lino.quicktip_renderer("Short code","(countries.Countries.short_code) A short abbreviation for regional usage. Obsolete.") }, "maxLength": 4, "name": "short_code", "selectOnFocus": true });
    var main_1_panel1230 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 24, "items": isocode1227, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 51, "items": name1228, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 24, "items": short_code1229, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 108, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var countries_PlacesByCountry_grid1379 = new Lino.countries.PlacesByCountry.GridPanel({ "containing_panel": this, "flex": 83, "hide_top_toolbar": true, "listeners": { "render": Lino.quicktip_renderer("Places","(countries.countries.PlacesByCountry) ") }, "master_panel": this, "params_panel_hidden": true, "preview_limit": 15, "tools": [ Lino.show_in_own_window_button(Lino.countries.PlacesByCountry.grid) ] });
    var main_panel1380 = new Ext.Panel({ "autoScroll": false, "bodyBorder": false, "border": false, "frame": true, "hideCheckBoxLabels": true, "items": [ main_1_panel1230, countries_PlacesByCountry_grid1379 ], "labelAlign": "top", "layout": "vbox", "layoutConfig": { "align": "stretch" } });
    this.items = main_panel1380;
    this.before_row_edit = function(record) {
      countries_PlacesByCountry_grid1379.on_master_changed();
    }
    Lino.countries.Countries.DetailFormPanel.superclass.initComponent.call(this);
  }
});


Lino.excerpts.ExcerptTypes.DetailFormPanel = Ext.extend(Lino.FormPanel,{
  layout: 'fit',
  auto_save: true,
  content_type: 41,
  initComponent : function() {
    var id1381 = new Ext.form.NumberField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "ID", "listeners": { "render": Lino.quicktip_renderer("ID","(excerpts.ExcerptTypes.id) ") }, "name": "id", "selectOnFocus": true });
    var name1382 = new Ext.form.TextField({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Designation</span>", "listeners": { "render": Lino.quicktip_renderer("Designation","(excerpts.ExcerptTypes.name) The designation of this excerpt type.\nOne field for every language.") }, "maxLength": 200, "name": "name", "selectOnFocus": true });
    var main_1_panel1383 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 19, "items": id1381, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 80, "items": name1382, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 108, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var content_type1386 = new Lino.TwinCombo({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "emptyText": "Select a content type...", "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Model</span>", "hiddenName": "content_typeHidden", "listeners": { "render": Lino.quicktip_renderer("Model","(excerpts.ExcerptTypes.content_type) The model that can issue printouts of this type.") }, "name": "content_type", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.gfks.ContentTypes.detail,Lino.gfks.ContentTypes.insert)}, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/excerpts/ExcerptTypes/content_type" }) }) });
    var build_method1387 = new Lino.ChoicesFieldElement({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Build method</span>", "forceSelection": true, "hiddenName": "build_methodHidden", "listeners": { "render": Lino.quicktip_renderer("Build method","(excerpts.ExcerptTypes.build_method) See lino.modlib.printing.mixins.PrintableType.build_method.") }, "name": "build_method", "selectOnFocus": true, "store": [['','<br>']].concat(Lino.printing.BuildMethods) });
    var template1388 = new Lino.SimpleRemoteComboFieldElement({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Template</span>", "listeners": { "render": Lino.quicktip_renderer("Template","(excerpts.ExcerptTypes.template) The main template to be used when printing an excerpt of this type.") }, "name": "template", "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/excerpts/ExcerptTypes/template" }) }) });
    var body_template1389 = new Lino.SimpleRemoteComboFieldElement({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Body template</span>", "listeners": { "render": Lino.quicktip_renderer("Body template","(excerpts.ExcerptTypes.body_template) The body template to be used when         rendering a printable of this type. This is a list of files         with extension `.body.html`.") }, "name": "body_template", "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/excerpts/ExcerptTypes/body_template" }) }) });
    var email_template1390 = new Lino.SimpleRemoteComboFieldElement({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Email template</span>", "listeners": { "render": Lino.quicktip_renderer("Email template","(excerpts.ExcerptTypes.email_template) The name of the file to be used as template when creating an email from a mailable of this type.") }, "name": "email_template", "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/excerpts/ExcerptTypes/email_template" }) }) });
    var shortcut1391 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Excerpt shortcut</span>", "listeners": { "render": Lino.quicktip_renderer("Excerpt shortcut","(excerpts.ExcerptTypes.shortcut) Optional pointer to a shortcut field.  If this is not empty, then\nthe given shortcut field will manage excerpts of this type.") }, "maxLength": 50, "name": "shortcut", "selectOnFocus": true });
    var main_2_panel1392 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 15, "items": content_type1386, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 15, "items": build_method1387, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 15, "items": template1388, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 15, "items": body_template1389, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 15, "items": email_template1390, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 21, "items": shortcut1391, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 153, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var primary1399 = new Ext.form.Checkbox({ "anchor": "-20", "autoHeight": true, "boxLabel": "Primary", "checked": false, "hideLabel": true, "listeners": { "render": Lino.quicktip_renderer("Primary","(excerpts.ExcerptTypes.primary) Whether this is the default type to use for this model. There's at most one primary type per model. Enabling this field will automatically make the other types non-primary.") }, "name": "primary", "selectOnFocus": true });
    var print_directly1400 = new Ext.form.Checkbox({ "anchor": "-20", "autoHeight": true, "boxLabel": "Print directly", "checked": true, "hideLabel": true, "listeners": { "render": Lino.quicktip_renderer("Print directly","(excerpts.ExcerptTypes.print_directly) ") }, "name": "print_directly", "selectOnFocus": true });
    var certifying1401 = new Ext.form.Checkbox({ "anchor": "-20", "autoHeight": true, "boxLabel": "Certifying", "checked": false, "hideLabel": true, "listeners": { "render": Lino.quicktip_renderer("Certifying","(excerpts.ExcerptTypes.certifying) Whether an excerpt of this type is a unique printout.") }, "name": "certifying", "selectOnFocus": true });
    var print_recipient1402 = new Ext.form.Checkbox({ "anchor": "-20", "autoHeight": true, "boxLabel": "Print recipient", "checked": true, "hideLabel": true, "listeners": { "render": Lino.quicktip_renderer("Print recipient","(excerpts.ExcerptTypes.print_recipient) Whether to print a recipient field in document.") }, "name": "print_recipient", "selectOnFocus": true });
    var backward_compat1403 = new Ext.form.Checkbox({ "anchor": "-20", "autoHeight": true, "boxLabel": "Backward compatible", "checked": false, "hideLabel": true, "listeners": { "render": Lino.quicktip_renderer("Backward compatible","(excerpts.ExcerptTypes.backward_compat) Check this to have `this` in template context point to owner instead of excerpt.") }, "name": "backward_compat", "selectOnFocus": true });
    var attach_to_email1404 = new Ext.form.Checkbox({ "anchor": "-20", "autoHeight": true, "boxLabel": "Attach to email", "checked": false, "hideLabel": true, "listeners": { "render": Lino.quicktip_renderer("Attach to email","(excerpts.ExcerptTypes.attach_to_email) Whether the printable file should be attached to the email\nwhen creating an email from a mailable of this type.\n") }, "name": "attach_to_email", "selectOnFocus": true });
    var main_3_panel1405 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 16, "items": primary1399, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 16, "items": print_directly1400, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 16, "items": certifying1401, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 16, "items": print_recipient1402, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 16, "items": backward_compat1403, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 16, "items": attach_to_email1404, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 180, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var excerpts_ExcerptsByType_grid1462 = new Lino.excerpts.ExcerptsByType.GridPanel({ "containing_panel": this, "flex": 62, "hide_top_toolbar": true, "listeners": { "render": Lino.quicktip_renderer("Excerpts","(excerpts.excerpts.ExcerptsByType) Base class for all tables on Excerpt.") }, "master_panel": this, "params_panel_hidden": true, "preview_limit": 15, "tools": [ Lino.show_in_own_window_button(Lino.excerpts.ExcerptsByType.grid) ] });
    var main_panel1463 = new Ext.Panel({ "autoScroll": false, "bodyBorder": false, "border": false, "frame": true, "hideCheckBoxLabels": true, "items": [ main_1_panel1383, main_2_panel1392, main_3_panel1405, excerpts_ExcerptsByType_grid1462 ], "labelAlign": "top", "layout": "vbox", "layoutConfig": { "align": "stretch" } });
    this.items = main_panel1463;
    this.before_row_edit = function(record) {
      template1388.setContextValue('build_method', record ? record.data['build_methodHidden'] : undefined);
      template1388.setContextValue('content_type', record ? record.data['content_typeHidden'] : undefined);
      body_template1389.setContextValue('content_type', record ? record.data['content_typeHidden'] : undefined);
      email_template1390.setContextValue('content_type', record ? record.data['content_typeHidden'] : undefined);
      excerpts_ExcerptsByType_grid1462.on_master_changed();
    }
    this.onRender = function(ct, position) {
      build_method1387.on('change',Lino.chooser_handler(template1388,'build_method'));
      content_type1386.on('change',Lino.chooser_handler(template1388,'content_type'));
      content_type1386.on('change',Lino.chooser_handler(body_template1389,'content_type'));
      content_type1386.on('change',Lino.chooser_handler(email_template1390,'content_type'));
      Lino.excerpts.ExcerptTypes.DetailFormPanel.superclass.onRender.call(this, ct, position);
    }
    Lino.excerpts.ExcerptTypes.DetailFormPanel.superclass.initComponent.call(this);
  }
});


Lino.lists.Lists.InsertFormPanel = Ext.extend(Lino.FormPanel,{
  layout: 'fit',
  auto_save: true,
  content_type: 38,
  initComponent : function() {
    var ref1464 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Reference</span>", "listeners": { "render": Lino.quicktip_renderer("Reference","(lists.Lists.ref) The reference. This must be either empty or unique.") }, "maxLength": 40, "name": "ref", "selectOnFocus": true });
    var list_type1465 = new Lino.RemoteComboFieldElement({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a List Type...", "fieldLabel": "List Type", "hiddenName": "list_typeHidden", "listeners": { "render": Lino.quicktip_renderer("List Type","(lists.Lists.list_type) ") }, "name": "list_type", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/lists/Lists/list_type" }) }) });
    var main_1_panel1466 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 51, "items": ref1464, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 48, "items": list_type1465, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 90, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var designation1469 = new Ext.form.TextField({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "fieldLabel": "Designation", "listeners": { "render": Lino.quicktip_renderer("Designation","(lists.Lists.designation) ") }, "maxLength": 200, "name": "designation", "selectOnFocus": true });
    var remarks1470 = new Lino.RichTextPanel({ "containing_panel": this, "fieldLabel": "Remarks", "flex": 71, "name": "remarks", "selectOnFocus": true, "title": "Remarks" });
    var main_panel1471 = new Ext.Panel({ "autoScroll": false, "bodyBorder": false, "border": false, "frame": true, "hideCheckBoxLabels": true, "items": [ main_1_panel1466, { "autoHeight": true, "items": designation1469, "labelAlign": "top", "layout": "form", "xtype": "panel" }, remarks1470 ], "labelAlign": "top", "labelWidth": 108, "layout": "vbox", "layoutConfig": { "align": "stretch" } });
    this.items = main_panel1471;
    this.before_row_edit = function(record) {
      remarks1470.refresh();
    }
    Lino.lists.Lists.InsertFormPanel.superclass.initComponent.call(this);
  }
});


Lino.topics.Topics.InsertFormPanel = Ext.extend(Lino.FormPanel,{
  layout: 'fit',
  auto_save: true,
  autoHeight: true,
  content_type: 34,
  initComponent : function() {
    var topic_group905 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a Topic group...", "fieldLabel": "Topic group", "hiddenName": "topic_groupHidden", "listeners": { "render": Lino.quicktip_renderer("Topic group","(topics.Topics.topic_group) ") }, "name": "topic_group", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.topics.TopicGroups.detail,Lino.topics.TopicGroups.insert)}, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/topics/Topics/topic_group" }) }) });
    var name906 = new Ext.form.TextField({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "fieldLabel": "Designation", "listeners": { "render": Lino.quicktip_renderer("Designation","(topics.Topics.name) ") }, "maxLength": 200, "name": "name", "selectOnFocus": true });
    var main_panel907 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "bodyBorder": false, "border": false, "frame": true, "hideCheckBoxLabels": true, "items": [ { "anchor": "-20", "autoHeight": true, "items": topic_group905, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "anchor": "-20", "autoHeight": true, "items": name906, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 108, "layout": "form" });
    this.items = main_panel907;
    this.before_row_edit = function(record) {
    }
    Lino.topics.Topics.InsertFormPanel.superclass.initComponent.call(this);
  }
});


Lino.topics.Topics.DetailFormPanel = Ext.extend(Lino.FormPanel,{
  layout: 'fit',
  auto_save: true,
  content_type: 34,
  initComponent : function() {
    var id881 = new Ext.form.NumberField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "ID", "listeners": { "render": Lino.quicktip_renderer("ID","(topics.Topics.id) ") }, "name": "id", "selectOnFocus": true });
    var ref882 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Reference</span>", "listeners": { "render": Lino.quicktip_renderer("Reference","(topics.Topics.ref) The reference. This must be either empty or unique.") }, "maxLength": 40, "name": "ref", "selectOnFocus": true });
    var name883 = new Ext.form.TextField({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "fieldLabel": "Designation", "listeners": { "render": Lino.quicktip_renderer("Designation","(topics.Topics.name) ") }, "maxLength": 200, "name": "name", "selectOnFocus": true });
    var topic_group884 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a Topic group...", "fieldLabel": "Topic group", "hiddenName": "topic_groupHidden", "listeners": { "render": Lino.quicktip_renderer("Topic group","(topics.Topics.topic_group) ") }, "name": "topic_group", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.topics.TopicGroups.detail,Lino.topics.TopicGroups.insert)}, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/topics/Topics/topic_group" }) }) });
    var main_1_panel885 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 7, "items": id881, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 31, "items": ref882, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 31, "items": name883, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 29, "items": topic_group884, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 108, "layout": "hbox", "layoutConfig": { "align": "stretchmax" }, "region": "north", "split": true });
    var description890 = new Lino.RichTextPanel({ "containing_panel": this, "fieldLabel": "Long description", "flex": 5, "name": "description", "region": "center", "selectOnFocus": true, "split": true, "title": "Long description" });
    var topics_InterestsByTopic_grid903 = new Lino.topics.InterestsByTopic.GridPanel({ "containing_panel": this, "flex": 5, "hide_top_toolbar": true, "listeners": { "render": Lino.quicktip_renderer("Interests","(topics.topics.InterestsByTopic) ") }, "master_panel": this, "params_panel_hidden": true, "preview_limit": 15, "region": "south", "split": true, "tools": [ Lino.show_in_own_window_button(Lino.topics.InterestsByTopic.grid) ] });
    var main_panel904 = new Lino.VBorderPanel({ "autoScroll": false, "bodyBorder": false, "border": false, "frame": true, "hideCheckBoxLabels": true, "items": [ main_1_panel885, description890, topics_InterestsByTopic_grid903 ], "labelAlign": "top", "labelWidth": 153 });
    this.items = main_panel904;
    this.before_row_edit = function(record) {
      description890.refresh();
      topics_InterestsByTopic_grid903.on_master_changed();
    }
    Lino.topics.Topics.DetailFormPanel.superclass.initComponent.call(this);
  }
});


Lino.cal.Rooms.InsertFormPanel = Ext.extend(Lino.FormPanel,{
  layout: 'fit',
  auto_save: true,
  autoHeight: true,
  content_type: 16,
  initComponent : function() {
    var id1473 = new Ext.form.NumberField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "ID", "listeners": { "render": Lino.quicktip_renderer("ID","(cal.Rooms.id) ") }, "name": "id", "selectOnFocus": true });
    var name1474 = new Ext.form.TextField({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "fieldLabel": "Designation", "listeners": { "render": Lino.quicktip_renderer("Designation","(cal.Rooms.name) ") }, "maxLength": 200, "name": "name", "selectOnFocus": true });
    var main_1_panel1475 = new Ext.Panel({ "anchor": "-20", "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 19, "items": id1473, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 80, "items": name1474, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 108, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var company1478 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a Organization...", "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Responsible</span>", "hiddenName": "companyHidden", "listeners": { "render": Lino.quicktip_renderer("Responsible","(cal.Rooms.company) Pointer to lino_xl.lib.contacts.models.Company.") }, "name": "company", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.contacts.Companies.detail,Lino.contacts.Companies.insert)}, "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/Rooms/company" }) }) });
    var contact_person1479 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a Person...", "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Contact person</span>", "hiddenName": "contact_personHidden", "listeners": { "render": Lino.quicktip_renderer("Contact person","(cal.Rooms.contact_person) Pointer to lino_xl.lib.contacts.models.Person.") }, "name": "contact_person", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.contacts.Persons.detail,Lino.contacts.Persons.insert)}, "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/Rooms/contact_person" }) }) });
    var main_panel1480 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "bodyBorder": false, "border": false, "frame": true, "hideCheckBoxLabels": true, "items": [ main_1_panel1475, { "anchor": "-20", "autoHeight": true, "items": company1478, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "anchor": "-20", "autoHeight": true, "items": contact_person1479, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 135, "layout": "form" });
    this.items = main_panel1480;
    this.before_row_edit = function(record) {
      contact_person1479.setContextValue('company', record ? record.data['companyHidden'] : undefined);
    }
    this.onRender = function(ct, position) {
      company1478.on('change',Lino.chooser_handler(contact_person1479,'company'));
      Lino.cal.Rooms.InsertFormPanel.superclass.onRender.call(this, ct, position);
    }
    Lino.cal.Rooms.InsertFormPanel.superclass.initComponent.call(this);
  }
});


Lino.countries.Places.DetailFormPanel = Ext.extend(Lino.FormPanel,{
  layout: 'fit',
  auto_save: true,
  content_type: 2,
  initComponent : function() {
    var name1247 = new Ext.form.TextField({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "fieldLabel": "Designation", "listeners": { "render": Lino.quicktip_renderer("Designation","(countries.Places.name) ") }, "maxLength": 200, "name": "name", "selectOnFocus": true });
    var country1248 = new Lino.TwinCombo({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "emptyText": "Select a Country...", "fieldLabel": "Country", "hiddenName": "countryHidden", "listeners": { "render": Lino.quicktip_renderer("Country","(countries.Places.country) ") }, "name": "country", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.countries.Countries.detail,Lino.countries.Countries.insert)}, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/countries/Places/country" }) }) });
    var main_1_panel1249 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 51, "items": name1247, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 48, "items": country1248, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 108, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var type1252 = new Lino.RemoteComboFieldElement({ "anchor": "-20", "autoHeight": true, "fieldLabel": "Place Type", "hiddenName": "typeHidden", "listeners": { "render": Lino.quicktip_renderer("Place Type","(countries.Places.type) ") }, "name": "type", "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/countries/Places/type" }) }) });
    var parent1253 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a Place...", "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Part of</span>", "hiddenName": "parentHidden", "listeners": { "render": Lino.quicktip_renderer("Part of","(countries.Places.parent) The superordinate geographic place of which this place is a part.") }, "name": "parent", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.countries.Places.detail,Lino.countries.Places.insert)}, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/countries/Places/parent" }) }) });
    var zip_code1254 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "boxMinWidth": Lino.chars2width(8), "fieldLabel": "zip code", "listeners": { "render": Lino.quicktip_renderer("zip code","(countries.Places.zip_code) ") }, "maxLength": 8, "name": "zip_code", "selectOnFocus": true });
    var id1255 = new Ext.form.NumberField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "ID", "listeners": { "render": Lino.quicktip_renderer("ID","(countries.Places.id) ") }, "name": "id", "selectOnFocus": true });
    var main_2_panel1256 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 22, "items": type1252, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 45, "items": parent1253, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 20, "items": zip_code1254, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 11, "items": id1255, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 99, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var addresses_AddressesByCity_grid1283 = new Lino.addresses.AddressesByCity.GridPanel({ "containing_panel": this, "flex": 41, "hide_top_toolbar": true, "listeners": { "render": Lino.quicktip_renderer("Addresses","(addresses.addresses.AddressesByCity) ") }, "master_panel": this, "params_panel_hidden": true, "preview_limit": 15, "tools": [ Lino.show_in_own_window_button(Lino.addresses.AddressesByCity.grid) ] });
    var contacts_PartnersByCity_grid1343 = new Lino.contacts.PartnersByCity.GridPanel({ "containing_panel": this, "flex": 50, "hide_top_toolbar": true, "listeners": { "render": Lino.quicktip_renderer("Partners","(contacts.contacts.PartnersByCity) ") }, "master_panel": this, "params_panel_hidden": true, "preview_limit": 15, "tools": [ Lino.show_in_own_window_button(Lino.contacts.PartnersByCity.grid) ] });
    var PlacesByPlace_grid1376 = new Lino.countries.PlacesByPlace.GridPanel({ "containing_panel": this, "flex": 50, "hide_top_toolbar": true, "listeners": { "render": Lino.quicktip_renderer("Subdivisions","(countries.countries.PlacesByPlace) ") }, "master_panel": this, "params_panel_hidden": true, "preview_limit": 15, "tools": [ Lino.show_in_own_window_button(Lino.countries.PlacesByPlace.grid) ] });
    var main_4_panel1377 = new Ext.Panel({ "autoScroll": false, "border": false, "flex": 41, "frame": false, "hideCheckBoxLabels": true, "items": [ contacts_PartnersByCity_grid1343, PlacesByPlace_grid1376 ], "labelAlign": "top", "layout": "hbox", "layoutConfig": { "align": "stretch" } });
    var main_panel1378 = new Ext.Panel({ "autoScroll": false, "bodyBorder": false, "border": false, "frame": true, "hideCheckBoxLabels": true, "items": [ main_1_panel1249, main_2_panel1256, addresses_AddressesByCity_grid1283, main_4_panel1377 ], "labelAlign": "top", "layout": "vbox", "layoutConfig": { "align": "stretch" } });
    this.items = main_panel1378;
    this.before_row_edit = function(record) {
      type1252.setContextValue('country', record ? record.data['countryHidden'] : undefined);
      addresses_AddressesByCity_grid1283.on_master_changed();
      contacts_PartnersByCity_grid1343.on_master_changed();
      PlacesByPlace_grid1376.on_master_changed();
    }
    this.onRender = function(ct, position) {
      country1248.on('change',Lino.chooser_handler(type1252,'country'));
      Lino.countries.Places.DetailFormPanel.superclass.onRender.call(this, ct, position);
    }
    Lino.countries.Places.DetailFormPanel.superclass.initComponent.call(this);
  }
});


Lino.phones.ContactDetails.InsertFormPanel = Ext.extend(Lino.FormPanel,{
  layout: 'fit',
  auto_save: true,
  autoHeight: true,
  content_type: 28,
  initComponent : function() {
    var email1483 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "e-mail address", "listeners": { "render": Lino.quicktip_renderer("e-mail address","(phones.ContactDetails.email) ") }, "maxLength": 254, "name": "email", "selectOnFocus": true });
    var url1484 = new Lino.URLField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "URL", "listeners": { "render": Lino.quicktip_renderer("URL","(phones.ContactDetails.url) ") }, "maxLength": 200, "name": "url", "selectOnFocus": true });
    var main_1_panel1485 = new Ext.Panel({ "anchor": "-20", "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 50, "items": email1483, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 50, "items": url1484, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 135, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var gsm1488 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "GSM", "listeners": { "render": Lino.quicktip_renderer("GSM","(phones.ContactDetails.gsm) ") }, "maxLength": 200, "name": "gsm", "selectOnFocus": true });
    var phone1489 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "Phone", "listeners": { "render": Lino.quicktip_renderer("Phone","(phones.ContactDetails.phone) ") }, "maxLength": 200, "name": "phone", "selectOnFocus": true });
    var main_2_panel1490 = new Ext.Panel({ "anchor": "-20", "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 50, "items": gsm1488, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 50, "items": phone1489, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 54, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var detail_type1493 = new Lino.ChoicesFieldElement({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "fieldLabel": "Contact Detail Type", "forceSelection": true, "hiddenName": "detail_typeHidden", "listeners": { "render": Lino.quicktip_renderer("Contact Detail Type","(phones.ContactDetails.detail_type) ") }, "name": "detail_type", "selectOnFocus": true, "store": Lino.phones.ContactDetailTypes });
    var remark1494 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "Remark", "listeners": { "render": Lino.quicktip_renderer("Remark","(phones.ContactDetails.remark) ") }, "maxLength": 200, "name": "remark", "selectOnFocus": true });
    var main_3_panel1495 = new Ext.Panel({ "anchor": "-20", "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 32, "items": detail_type1493, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 67, "items": remark1494, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 180, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var main_panel1498 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "bodyBorder": false, "border": false, "frame": true, "hideCheckBoxLabels": true, "items": [ main_1_panel1485, main_2_panel1490, main_3_panel1495 ], "labelAlign": "top", "layout": "form" });
    this.items = main_panel1498;
    this.before_row_edit = function(record) {
    }
    Lino.phones.ContactDetails.InsertFormPanel.superclass.initComponent.call(this);
  }
});


Lino.cal.Rooms.DetailFormPanel = Ext.extend(Lino.FormPanel,{
  layout: 'fit',
  auto_save: true,
  content_type: 16,
  initComponent : function() {
    var id1499 = new Ext.form.NumberField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "ID", "listeners": { "render": Lino.quicktip_renderer("ID","(cal.Rooms.id) ") }, "name": "id", "selectOnFocus": true });
    var name1500 = new Ext.form.TextField({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "fieldLabel": "Designation", "listeners": { "render": Lino.quicktip_renderer("Designation","(cal.Rooms.name) ") }, "maxLength": 200, "name": "name", "selectOnFocus": true });
    var main_1_panel1501 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 19, "items": id1499, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 80, "items": name1500, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 108, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var company1504 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a Organization...", "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Responsible</span>", "hiddenName": "companyHidden", "listeners": { "render": Lino.quicktip_renderer("Responsible","(cal.Rooms.company) Pointer to lino_xl.lib.contacts.models.Company.") }, "name": "company", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.contacts.Companies.detail,Lino.contacts.Companies.insert)}, "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/Rooms/company" }) }) });
    var contact_person1505 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a Person...", "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Contact person</span>", "hiddenName": "contact_personHidden", "listeners": { "render": Lino.quicktip_renderer("Contact person","(cal.Rooms.contact_person) Pointer to lino_xl.lib.contacts.models.Person.") }, "name": "contact_person", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.contacts.Persons.detail,Lino.contacts.Persons.insert)}, "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/Rooms/contact_person" }) }) });
    var main_2_panel1506 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 50, "items": company1504, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 50, "items": contact_person1505, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 135, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var description1509 = new Lino.RichTextPanel({ "containing_panel": this, "fieldLabel": "Description", "flex": 41, "name": "description", "selectOnFocus": true, "title": "Description" });
    var cal_EntriesByRoom_grid1547 = new Lino.cal.EntriesByRoom.GridPanel({ "containing_panel": this, "flex": 41, "hide_top_toolbar": true, "listeners": { "render": Lino.quicktip_renderer("Calendar entries","(cal.cal.EntriesByRoom) Displays the Events at a given Room.") }, "master_panel": this, "params_panel_hidden": true, "preview_limit": 15, "tools": [ Lino.show_in_own_window_button(Lino.cal.EntriesByRoom.grid) ] });
    var main_panel1548 = new Ext.Panel({ "autoScroll": false, "bodyBorder": false, "border": false, "frame": true, "hideCheckBoxLabels": true, "items": [ main_1_panel1501, main_2_panel1506, description1509, cal_EntriesByRoom_grid1547 ], "labelAlign": "top", "labelWidth": 108, "layout": "vbox", "layoutConfig": { "align": "stretch" } });
    this.items = main_panel1548;
    this.before_row_edit = function(record) {
      contact_person1505.setContextValue('company', record ? record.data['companyHidden'] : undefined);
      description1509.refresh();
      cal_EntriesByRoom_grid1547.on_master_changed();
    }
    this.onRender = function(ct, position) {
      company1504.on('change',Lino.chooser_handler(contact_person1505,'company'));
      Lino.cal.Rooms.DetailFormPanel.superclass.onRender.call(this, ct, position);
    }
    Lino.cal.Rooms.DetailFormPanel.superclass.initComponent.call(this);
  }
});


Lino.cal.Events.DetailFormPanel = Ext.extend(Lino.FormPanel,{
  layout: 'fit',
  auto_save: true,
  content_type: 19,
  initComponent : function() {
    var event_type431 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a Calendar entry type...", "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Calendar entry type</span>", "hiddenName": "event_typeHidden", "listeners": { "render": Lino.quicktip_renderer("Calendar entry type","(cal.Events.event_type) The type of this entry. Every calendar entry should have this\nfield pointing to a given EventType, which holds\nextended configurable information about this entry.") }, "name": "event_type", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.cal.EventTypes.detail,Lino.cal.EventTypes.insert)}, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/Events/event_type" }) }) });
    var summary432 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Short description</span>", "listeners": { "render": Lino.quicktip_renderer("Short description","(cal.Events.summary) A one-line descriptive text.") }, "maxLength": 200, "name": "summary", "selectOnFocus": true });
    var user433 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a User...", "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Responsible user</span>", "hiddenName": "userHidden", "listeners": { "render": Lino.quicktip_renderer("Responsible user","(cal.Events.user) The responsible user.") }, "name": "user", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.users.Users.detail,Lino.users.Users.insert)}, "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/Events/user" }) }) });
    var main_1_panel434 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 32, "items": event_type431, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 34, "items": summary432, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 32, "items": user433, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 180, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var start_date438 = new Lino.DateField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "Start date", "listeners": { "render": Lino.quicktip_renderer("Start date","(cal.Events.start_date) ") }, "name": "start_date", "selectOnFocus": true });
    var start_time439 = new Lino.TimeField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "Start time", "listeners": { "render": Lino.quicktip_renderer("Start time","(cal.Events.start_time) ") }, "name": "start_time", "selectOnFocus": true });
    var start_panel440 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "border": false, "flex": 33, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 61, "items": start_date438, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 38, "items": start_time439, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 99, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var end_date443 = new Lino.DateField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "End Date", "listeners": { "render": Lino.quicktip_renderer("End Date","(cal.Events.end_date) ") }, "name": "end_date", "selectOnFocus": true });
    var end_time444 = new Lino.TimeField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">End Time</span>", "listeners": { "render": Lino.quicktip_renderer("End Time","(cal.Events.end_time) These four fields define the duration of this entry.\nOnly start_date is mandatory.") }, "name": "end_time", "selectOnFocus": true });
    var end_panel445 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "border": false, "flex": 33, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 61, "items": end_date443, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 38, "items": end_time444, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 81, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var assigned_to448 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a User...", "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Assigned to</span>", "hiddenName": "assigned_toHidden", "listeners": { "render": Lino.quicktip_renderer("Assigned to","(cal.Events.assigned_to) Another user who is expected to take responsibility for this\nentry.") }, "name": "assigned_to", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.users.Users.detail,Lino.users.Users.insert)}, "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/Events/assigned_to" }) }) });
    var main_2_panel449 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ start_panel440, end_panel445, { "autoHeight": true, "flex": 32, "items": assigned_to448, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 108, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var room451 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a Room...", "fieldLabel": "Room", "hiddenName": "roomHidden", "listeners": { "render": Lino.quicktip_renderer("Room","(cal.Events.room) ") }, "name": "room", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.cal.Rooms.detail,Lino.cal.Rooms.insert)}, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/Events/room" }) }) });
    var owner_disp452 = new Ext.form.DisplayField({ "anchor": "-20", "autoHeight": true, "disabled": true, "fieldLabel": "Controlled by", "name": "owner" });
    var workflow_buttons_disp453 = new Ext.form.DisplayField({ "always_enabled": true, "anchor": "-20", "autoHeight": true, "disabled": true, "fieldLabel": "Actions", "listeners": { "render": Lino.quicktip_renderer("Actions","(cal.Events.workflow_buttons) ") }, "name": "workflow_buttons", "value": "<br/>" });
    var main_3_panel454 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 33, "items": room451, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 16, "items": owner_disp452, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 50, "items": workflow_buttons_disp453, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 126, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var GuestsByEvent_grid492 = new Lino.cal.GuestsByEvent.GridPanel({ "containing_panel": this, "flex": 50, "hide_top_toolbar": true, "listeners": { "render": Lino.quicktip_renderer("Presences","(cal.cal.GuestsByEvent) The default table for Guest.") }, "master_panel": this, "params_panel_hidden": true, "preview_limit": 15, "tools": [ Lino.show_in_own_window_button(Lino.cal.GuestsByEvent.grid) ] });
    var main_panel493 = new Ext.Panel({ "autoScroll": false, "bodyBorder": false, "border": false, "frame": true, "hideCheckBoxLabels": true, "items": [ main_1_panel434, main_2_panel449, main_3_panel454, GuestsByEvent_grid492 ], "labelAlign": "top", "layout": "vbox", "layoutConfig": { "align": "stretch" } });
    this.items = main_panel493;
    this.before_row_edit = function(record) {
      GuestsByEvent_grid492.on_master_changed();
    }
    Lino.cal.Events.DetailFormPanel.superclass.initComponent.call(this);
  }
});


Lino.comments.CommentsByRFC.InsertFormPanel = Ext.extend(Lino.FormPanel,{
  layout: 'fit',
  auto_save: true,
  content_type: 44,
  initComponent : function() {
    var reply_to1549 = new Lino.TwinCombo({ "emptyText": "Select a Comment...", "fieldLabel": "Reply to", "hidden": true, "hiddenName": "reply_toHidden", "listeners": { "render": Lino.quicktip_renderer("Reply to","(comments.CommentsByRFC.reply_to) ") }, "name": "reply_to", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.comments.Comments.detail,Lino.comments.Comments.insert)}, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/comments/CommentsByRFC/reply_to" }) }) });
    var short_text1550 = new Lino.RichTextPanel({ "allowBlank": false, "containing_panel": this, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Short text</span>", "flex": 83, "name": "short_text", "selectOnFocus": true, "title": "Short text" });
    var main_panel1551 = new Ext.Panel({ "autoScroll": false, "bodyBorder": false, "border": false, "frame": true, "hideCheckBoxLabels": true, "items": [ reply_to1549, short_text1550 ], "labelAlign": "top", "labelWidth": 99, "layout": "vbox", "layoutConfig": { "align": "stretch" } });
    this.items = main_panel1551;
    this.before_row_edit = function(record) {
      short_text1550.refresh();
    }
    Lino.comments.CommentsByRFC.InsertFormPanel.superclass.initComponent.call(this);
  }
});


Lino.contacts.Partners.DetailFormPanel = Ext.extend(Lino.FormPanel,{
  layout: 'fit',
  auto_save: true,
  content_type: 8,
  initComponent : function() {
    var prefix1312 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Name prefix</span>", "listeners": { "render": Lino.quicktip_renderer("Name prefix","(contacts.Partners.prefix) An optional name prefix. For organisations this is inserted\nbefore the name, for persons this is inserted between first\nname and last name (see\nlino.mixins.human.Human.get_last_name_prefix()).") }, "maxLength": 200, "name": "prefix", "selectOnFocus": true });
    var name1313 = new Ext.form.TextField({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Name</span>", "listeners": { "render": Lino.quicktip_renderer("Name","(contacts.Partners.name) The full name of this partner. Used for alphabetic sorting.\nSubclasses may hide this field and fill it automatically,\ne.g. saving a Person will automatically set her\nname field to \"last_name, first_name\".") }, "maxLength": 200, "name": "name", "selectOnFocus": true });
    var name_box_panel1314 = new Ext.Panel({ "anchor": "-20", "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 50, "items": prefix1312, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 50, "items": name1313, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 108, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var country1317 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a Country...", "fieldLabel": "Country", "hiddenName": "countryHidden", "listeners": { "render": Lino.quicktip_renderer("Country","(contacts.Partners.country) ") }, "name": "country", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.countries.Countries.detail,Lino.countries.Countries.insert)}, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/contacts/Partners/country" }) }) });
    var city1318 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a Place...", "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">City</span>", "forceSelection": false, "hiddenName": "cityHidden", "listeners": { "render": Lino.quicktip_renderer("City","(contacts.Partners.city) A pointer to the Place which is used as city.") }, "name": "city", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.countries.Places.detail,Lino.countries.Places.insert)}, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/contacts/Partners/city" }) }) });
    var zip_code1319 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "boxMinWidth": Lino.chars2width(10), "fieldLabel": "Zip code", "listeners": { "render": Lino.quicktip_renderer("Zip code","(contacts.Partners.zip_code) ") }, "maxLength": 10, "name": "zip_code", "selectOnFocus": true });
    var address_box_2_panel1320 = new Ext.Panel({ "anchor": "-20", "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 40, "items": country1317, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 40, "items": city1318, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 20, "items": zip_code1319, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 81, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var street1324 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Street</span>", "listeners": { "render": Lino.quicktip_renderer("Street","(contacts.Partners.street) Name of street, without house number.") }, "maxLength": 200, "name": "street", "selectOnFocus": true });
    var street_no1325 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "boxMinWidth": Lino.chars2width(10), "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">No.</span>", "listeners": { "render": Lino.quicktip_renderer("No.","(contacts.Partners.street_no) House number.") }, "maxLength": 10, "name": "street_no", "selectOnFocus": true });
    var street_box1326 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "boxMinWidth": Lino.chars2width(10), "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Box</span>", "listeners": { "render": Lino.quicktip_renderer("Box","(contacts.Partners.street_box) Text to print after street nuber on the same line.") }, "maxLength": 10, "name": "street_box", "selectOnFocus": true });
    var address_box_4_panel1327 = new Ext.Panel({ "anchor": "-20", "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 53, "items": street1324, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 23, "items": street_no1325, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 23, "items": street_box1326, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 63, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var address_box_panel1331 = new Ext.form.FieldSet({ "autoHeight": true, "autoScroll": false, "bodyBorder": false, "border": false, "flex": 50, "frame": true, "hideCheckBoxLabels": true, "items": [ name_box_panel1314, address_box_2_panel1320, address_box_4_panel1327 ], "labelAlign": "top", "layout": "form", "title": "Address" });
    var url1332 = new Lino.URLField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "URL", "listeners": { "render": Lino.quicktip_renderer("URL","(contacts.Partners.url) ") }, "maxLength": 200, "name": "url", "selectOnFocus": true });
    var phone1333 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Phone</span>", "listeners": { "render": Lino.quicktip_renderer("Phone","(contacts.Partners.phone) The primary phone number.  Note that Lino does not ignore\nformatting characters in phone numbers when searching.  For\nexample, if you enter \"087/12.34.56\" as a phone number, then a\nsearch for phone number containing \"1234\" will not find it.") }, "maxLength": 200, "name": "phone", "selectOnFocus": true });
    var gsm1334 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">GSM</span>", "listeners": { "render": Lino.quicktip_renderer("GSM","(contacts.Partners.gsm) The primary mobile phone number.") }, "maxLength": 200, "name": "gsm", "selectOnFocus": true });
    var contact_box_panel1335 = new Ext.form.FieldSet({ "autoHeight": true, "autoScroll": false, "bodyBorder": false, "border": false, "flex": 25, "frame": true, "hideCheckBoxLabels": true, "items": [ { "anchor": "-20", "autoHeight": true, "items": url1332, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "anchor": "-20", "autoHeight": true, "items": phone1333, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "anchor": "-20", "autoHeight": true, "items": gsm1334, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 54, "layout": "form", "title": "Contact" });
    var overview_disp1339 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "flex": 25, "listeners": { "render": Lino.quicktip_renderer(null,"(contacts.Partners.overview) ") }, "name": "overview", "value": "<br/>" });
    var main_1_panel1340 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ address_box_panel1331, contact_box_panel1335, overview_disp1339 ], "labelAlign": "top", "labelWidth": 0, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var remarks1341 = new Lino.RichTextPanel({ "containing_panel": this, "fieldLabel": "About me", "flex": 62, "name": "remarks", "selectOnFocus": true, "title": "About me" });
    var main_panel1342 = new Ext.Panel({ "autoScroll": false, "bodyBorder": false, "border": false, "frame": true, "hideCheckBoxLabels": true, "items": [ main_1_panel1340, remarks1341 ], "labelAlign": "top", "labelWidth": 81, "layout": "vbox", "layoutConfig": { "align": "stretch" } });
    this.items = main_panel1342;
    this.before_row_edit = function(record) {
      city1318.setContextValue('country', record ? record.data['countryHidden'] : undefined);
      city1318.setContextValue('region', record ? record.data['regionHidden'] : undefined);
      remarks1341.refresh();
    }
    this.onRender = function(ct, position) {
      country1317.on('change',Lino.chooser_handler(city1318,'country'));
      Lino.contacts.Partners.DetailFormPanel.superclass.onRender.call(this, ct, position);
    }
    Lino.contacts.Partners.DetailFormPanel.superclass.initComponent.call(this);
    // active_fields:
    city1318.on("change", function(){ this.save() }, this);
    zip_code1319.on("change", function(){ this.save() }, this);
  }
});


Lino.excerpts.Excerpts.DetailFormPanel = Ext.extend(Lino.FormPanel,{
  layout: 'fit',
  auto_save: true,
  autoHeight: true,
  content_type: 42,
  initComponent : function() {
    var id1431 = new Ext.form.NumberField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "ID", "listeners": { "render": Lino.quicktip_renderer("ID","(excerpts.Excerpts.id) ") }, "name": "id", "selectOnFocus": true });
    var excerpt_type1432 = new Lino.TwinCombo({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "emptyText": "Select a Excerpt Type...", "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Excerpt Type</span>", "hiddenName": "excerpt_typeHidden", "listeners": { "render": Lino.quicktip_renderer("Excerpt Type","(excerpts.Excerpts.excerpt_type) The type of this excerpt (ForeignKey to ExcerptType).") }, "name": "excerpt_type", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.excerpts.ExcerptTypes.detail,Lino.excerpts.ExcerptTypes.insert)}, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/excerpts/Excerpts/excerpt_type" }) }) });
    var main_1_panel1433 = new Ext.Panel({ "anchor": "-20", "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 16, "items": id1431, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 83, "items": excerpt_type1432, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 117, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var user1436 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a User...", "fieldLabel": "Author", "hiddenName": "userHidden", "listeners": { "render": Lino.quicktip_renderer("Author","(excerpts.Excerpts.user) ") }, "name": "user", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.users.Users.detail,Lino.users.Users.insert)}, "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/excerpts/Excerpts/user" }) }) });
    var build_method1437 = new Lino.ChoicesFieldElement({ "anchor": "-20", "autoHeight": true, "fieldLabel": "Build method", "forceSelection": true, "hiddenName": "build_methodHidden", "listeners": { "render": Lino.quicktip_renderer("Build method","(excerpts.Excerpts.build_method) ") }, "name": "build_method", "selectOnFocus": true, "store": [['','<br>']].concat(Lino.printing.BuildMethods) });
    var main_2_panel1438 = new Ext.Panel({ "anchor": "-20", "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 30, "items": user1436, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 69, "items": build_method1437, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 117, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var company1441 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a Organization...", "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Recipient (Organization)</span>", "hiddenName": "companyHidden", "listeners": { "render": Lino.quicktip_renderer("Recipient (Organization)","(excerpts.Excerpts.company) The optional company of the recipient of this\nexcerpt.  See ContactRelated.company.") }, "name": "company", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.contacts.Companies.detail,Lino.contacts.Companies.insert)}, "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/excerpts/Excerpts/company" }) }) });
    var contact_person1442 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a Person...", "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Recipient (Person)</span>", "hiddenName": "contact_personHidden", "listeners": { "render": Lino.quicktip_renderer("Recipient (Person)","(excerpts.Excerpts.contact_person) The optional contact person of the recipient of this\nexcerpt.  See ContactRelated.contact_person.") }, "name": "contact_person", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.contacts.Persons.detail,Lino.contacts.Persons.insert)}, "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/excerpts/Excerpts/contact_person" }) }) });
    var language1443 = new Lino.ChoicesFieldElement({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Language</span>", "hiddenName": "languageHidden", "listeners": { "render": Lino.quicktip_renderer("Language","(excerpts.Excerpts.language) The language used for printing this excerpt.") }, "name": "language", "selectOnFocus": true, "store": [ [ "en-us", "American English" ] ] });
    var main_3_panel1444 = new Ext.Panel({ "anchor": "-20", "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 33, "items": company1441, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 33, "items": contact_person1442, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 33, "items": language1443, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 225, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var owner_disp1448 = new Ext.form.DisplayField({ "anchor": "-20", "autoHeight": true, "disabled": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Controlled by</span>", "name": "owner" });
    var build_time1449 = new Ext.form.DisplayField({ "anchor": "-20", "autoHeight": true, "disabled": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">build time</span>", "listeners": { "render": Lino.quicktip_renderer("build time","(excerpts.Excerpts.build_time) Timestamp of the built target file. Contains None\nif no build hasn't been called yet.") }, "name": "build_time", "value": "<br>" });
    var main_4_panel1450 = new Ext.Panel({ "anchor": "-20", "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 38, "items": owner_disp1448, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 61, "items": build_time1449, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 126, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var main_panel1453 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "bodyBorder": false, "border": false, "frame": true, "hideCheckBoxLabels": true, "items": [ main_1_panel1433, main_2_panel1438, main_3_panel1444, main_4_panel1450 ], "labelAlign": "top", "layout": "form" });
    this.items = main_panel1453;
    this.before_row_edit = function(record) {
      excerpt_type1432.setContextValue('owner', record ? record.data['owner'] : undefined);
      contact_person1442.setContextValue('company', record ? record.data['companyHidden'] : undefined);
    }
    this.onRender = function(ct, position) {
      owner_disp1448.on('change',Lino.chooser_handler(excerpt_type1432,'owner'));
      company1441.on('change',Lino.chooser_handler(contact_person1442,'company'));
      Lino.excerpts.Excerpts.DetailFormPanel.superclass.onRender.call(this, ct, position);
    }
    Lino.excerpts.Excerpts.DetailFormPanel.superclass.initComponent.call(this);
  }
});


Lino.cal.EventTypes.InsertFormPanel = Ext.extend(Lino.FormPanel,{
  layout: 'fit',
  auto_save: true,
  autoHeight: true,
  content_type: 18,
  initComponent : function() {
    var name1552 = new Ext.form.TextField({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "fieldLabel": "Designation", "listeners": { "render": Lino.quicktip_renderer("Designation","(cal.EventTypes.name) ") }, "maxLength": 200, "name": "name", "selectOnFocus": true });
    var event_label1553 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Entry label</span>", "listeners": { "render": Lino.quicktip_renderer("Entry label","(cal.EventTypes.event_label) Default text for summary of new entries.") }, "maxLength": 200, "name": "event_label", "selectOnFocus": true });
    var main_panel1554 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "bodyBorder": false, "border": false, "frame": true, "hideCheckBoxLabels": true, "items": [ { "anchor": "-20", "autoHeight": true, "items": name1552, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "anchor": "-20", "autoHeight": true, "items": event_label1553, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 108, "layout": "form" });
    this.items = main_panel1554;
    this.before_row_edit = function(record) {
    }
    Lino.cal.EventTypes.InsertFormPanel.superclass.initComponent.call(this);
  }
});


Lino.cal.RecurrentEvents.InsertFormPanel = Ext.extend(Lino.FormPanel,{
  layout: 'fit',
  auto_save: true,
  autoHeight: true,
  content_type: 17,
  initComponent : function() {
    var name1557 = new Ext.form.TextField({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Designation</span>", "listeners": { "render": Lino.quicktip_renderer("Designation","(cal.RecurrentEvents.name) See lino.utils.mldbc.mixins.BabelNamed.name.") }, "maxLength": 200, "name": "name", "selectOnFocus": true });
    var start_date1558 = new Lino.DateField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "Start date", "listeners": { "render": Lino.quicktip_renderer("Start date","(cal.RecurrentEvents.start_date) ") }, "name": "start_date", "selectOnFocus": true });
    var end_date1559 = new Lino.DateField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "End Date", "listeners": { "render": Lino.quicktip_renderer("End Date","(cal.RecurrentEvents.end_date) ") }, "name": "end_date", "selectOnFocus": true });
    var every_unit1560 = new Lino.ChoicesFieldElement({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Recurrency</span>", "forceSelection": true, "hiddenName": "every_unitHidden", "listeners": { "render": Lino.quicktip_renderer("Recurrency","(cal.RecurrentEvents.every_unit) Inherited from RecurrentSet.every_unit.") }, "name": "every_unit", "selectOnFocus": true, "store": Lino.cal.Recurrencies });
    var event_type1561 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a Calendar entry type...", "fieldLabel": "Calendar entry type", "hiddenName": "event_typeHidden", "listeners": { "render": Lino.quicktip_renderer("Calendar entry type","(cal.RecurrentEvents.event_type) ") }, "name": "event_type", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.cal.EventTypes.detail,Lino.cal.EventTypes.insert)}, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/RecurrentEvents/event_type" }) }) });
    var main_2_panel1562 = new Ext.Panel({ "anchor": "-20", "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 19, "items": start_date1558, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 19, "items": end_date1559, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 31, "items": every_unit1560, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 29, "items": event_type1561, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 180, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var main_panel1567 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "bodyBorder": false, "border": false, "frame": true, "hideCheckBoxLabels": true, "items": [ { "anchor": "-20", "autoHeight": true, "items": name1557, "labelAlign": "top", "layout": "form", "xtype": "panel" }, main_2_panel1562 ], "labelAlign": "top", "labelWidth": 108, "layout": "form" });
    this.items = main_panel1567;
    this.before_row_edit = function(record) {
    }
    Lino.cal.RecurrentEvents.InsertFormPanel.superclass.initComponent.call(this);
  }
});


Lino.users.Users.InsertFormPanel = Ext.extend(Lino.FormPanel,{
  layout: 'fit',
  auto_save: true,
  autoHeight: true,
  content_type: 10,
  initComponent : function() {
    var username1569 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Username</span>", "listeners": { "render": Lino.quicktip_renderer("Username","(users.Users.username) Must be unique or empty.\nLeaving this empty means that the user cannot log in.") }, "maxLength": 30, "name": "username", "selectOnFocus": true });
    var email1570 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">e-mail address</span>", "listeners": { "render": Lino.quicktip_renderer("e-mail address","(users.Users.email) The primary email address.") }, "maxLength": 254, "name": "email", "selectOnFocus": true });
    var main_1_panel1571 = new Ext.Panel({ "anchor": "-20", "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 50, "items": username1569, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 50, "items": email1570, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 135, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var first_name1574 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">First name</span>", "listeners": { "render": Lino.quicktip_renderer("First name","(users.Users.first_name) The first name, also known as given name.") }, "maxLength": 200, "name": "first_name", "selectOnFocus": true });
    var last_name1575 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Last name</span>", "listeners": { "render": Lino.quicktip_renderer("Last name","(users.Users.last_name) The last name, also known as family name.") }, "maxLength": 200, "name": "last_name", "selectOnFocus": true });
    var main_2_panel1576 = new Ext.Panel({ "anchor": "-20", "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 50, "items": first_name1574, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 50, "items": last_name1575, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 99, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var language1579 = new Lino.ChoicesFieldElement({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Language</span>", "hiddenName": "languageHidden", "listeners": { "render": Lino.quicktip_renderer("Language","(users.Users.language) The language to use when communicating with this partner.") }, "name": "language", "selectOnFocus": true, "store": [ [ "en-us", "American English" ] ] });
    var user_type1580 = new Lino.ChoicesFieldElement({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">User type</span>", "forceSelection": true, "hiddenName": "user_typeHidden", "listeners": { "render": Lino.quicktip_renderer("User type","(users.Users.user_type) The user_type of a user is what defines her or his permissions.") }, "name": "user_type", "selectOnFocus": true, "store": [['','<br>']].concat(Lino.users.UserTypes) });
    var main_4_panel1581 = new Ext.Panel({ "anchor": "-20", "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 45, "items": language1579, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 54, "items": user_type1580, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 90, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var main_panel1584 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "bodyBorder": false, "border": false, "frame": true, "hideCheckBoxLabels": true, "items": [ main_1_panel1571, main_2_panel1576, main_4_panel1581 ], "labelAlign": "top", "layout": "form" });
    this.items = main_panel1584;
    this.before_row_edit = function(record) {
    }
    Lino.users.Users.InsertFormPanel.superclass.initComponent.call(this);
  }
});


Lino.contacts.Companies.InsertFormPanel = Ext.extend(Lino.FormPanel,{
  layout: 'fit',
  auto_save: true,
  autoHeight: true,
  content_type: 5,
  initComponent : function() {
    var name1060 = new Ext.form.TextField({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Name</span>", "listeners": { "render": Lino.quicktip_renderer("Name","(contacts.Companies.name) The full name of this partner. Used for alphabetic sorting.\nSubclasses may hide this field and fill it automatically,\ne.g. saving a Person will automatically set her\nname field to \"last_name, first_name\".") }, "maxLength": 200, "name": "name", "selectOnFocus": true });
    var email1061 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">e-mail address</span>", "listeners": { "render": Lino.quicktip_renderer("e-mail address","(contacts.Companies.email) The primary email address.") }, "maxLength": 254, "name": "email", "selectOnFocus": true });
    var type1062 = new Lino.RemoteComboFieldElement({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a Organization type...", "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Organization type</span>", "hiddenName": "typeHidden", "listeners": { "render": Lino.quicktip_renderer("Organization type","(contacts.Companies.type) Pointer to the CompanyType.") }, "name": "type", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/contacts/Companies/type" }) }) });
    var id1063 = new Ext.form.NumberField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "ID", "listeners": { "render": Lino.quicktip_renderer("ID","(contacts.Companies.id) ") }, "name": "id", "selectOnFocus": true });
    var main_3_panel1064 = new Ext.Panel({ "anchor": "-20", "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 80, "items": type1062, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 20, "items": id1063, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 162, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var main_panel1067 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "bodyBorder": false, "border": false, "frame": true, "hideCheckBoxLabels": true, "items": [ { "anchor": "-20", "autoHeight": true, "items": name1060, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "anchor": "-20", "autoHeight": true, "items": email1061, "labelAlign": "top", "layout": "form", "xtype": "panel" }, main_3_panel1064 ], "labelAlign": "top", "labelWidth": 135, "layout": "form" });
    this.items = main_panel1067;
    this.before_row_edit = function(record) {
    }
    Lino.contacts.Companies.InsertFormPanel.superclass.initComponent.call(this);
  }
});


Lino.users.OtherUsers.DetailFormPanel = Ext.extend(Lino.FormPanel,{
  layout: 'fit',
  auto_save: true,
  content_type: 10,
  disable_editing: true,
  initComponent : function() {
    var first_name1585 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">First name</span>", "listeners": { "render": Lino.quicktip_renderer("First name","(users.OtherUsers.first_name) The first name, also known as given name.") }, "maxLength": 200, "name": "first_name", "selectOnFocus": true });
    var last_name1586 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Last name</span>", "listeners": { "render": Lino.quicktip_renderer("Last name","(users.OtherUsers.last_name) The last name, also known as family name.") }, "maxLength": 200, "name": "last_name", "selectOnFocus": true });
    var city1587 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a Place...", "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">City</span>", "forceSelection": false, "hiddenName": "cityHidden", "listeners": { "render": Lino.quicktip_renderer("City","(users.OtherUsers.city) A pointer to the Place which is used as city.") }, "name": "city", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.countries.Places.detail,Lino.countries.Places.insert)}, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/users/OtherUsers/city" }) }) });
    var main_1_panel1588 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 33, "items": first_name1585, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 33, "items": last_name1586, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 32, "items": city1587, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 99, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var phone1592 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Phone</span>", "listeners": { "render": Lino.quicktip_renderer("Phone","(users.OtherUsers.phone) The primary phone number.  Note that Lino does not ignore\nformatting characters in phone numbers when searching.  For\nexample, if you enter \"087/12.34.56\" as a phone number, then a\nsearch for phone number containing \"1234\" will not find it.") }, "maxLength": 200, "name": "phone", "selectOnFocus": true });
    var gsm1593 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">GSM</span>", "listeners": { "render": Lino.quicktip_renderer("GSM","(users.OtherUsers.gsm) The primary mobile phone number.") }, "maxLength": 200, "name": "gsm", "selectOnFocus": true });
    var main_2_panel1594 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 50, "items": phone1592, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 50, "items": gsm1593, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 54, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var about_me_htmlbox1597 = new Lino.HtmlBoxPanel({ "always_enabled": true, "bodyStyle": "overflow-x:hidden;", "containing_panel": this, "flex": 60, "items": new Ext.BoxComponent({autoScroll:true}), "layout": "fit", "listeners": { "render": Lino.quicktip_renderer("About me","(users.OtherUsers.about_me) ") }, "name": "about_me", "title": "About me", "value": "<br/>" });
    var main_panel1598 = new Ext.Panel({ "autoScroll": false, "bodyBorder": false, "border": false, "frame": true, "hideCheckBoxLabels": true, "items": [ main_1_panel1588, main_2_panel1594, about_me_htmlbox1597 ], "labelAlign": "top", "labelWidth": 81, "layout": "vbox", "layoutConfig": { "align": "stretch" } });
    this.items = main_panel1598;
    this.before_row_edit = function(record) {
      about_me_htmlbox1597.refresh();
    }
    Lino.users.OtherUsers.DetailFormPanel.superclass.initComponent.call(this);
    // active_fields:
    city1587.on("change", function(){ this.save() }, this);
  }
});


Lino.about.Models.DetailFormPanel = Ext.extend(Lino.FormPanel,{
  layout: 'fit',
  auto_save: true,
  disable_editing: true,
  initComponent : function() {
    var app_disp1599 = new Ext.form.DisplayField({ "always_enabled": true, "anchor": "-20", "autoHeight": true, "disabled": true, "fieldLabel": "app_label", "listeners": { "render": Lino.quicktip_renderer("app_label","(about.Models.app) ") }, "name": "app", "value": "<br/>" });
    var name_disp1600 = new Ext.form.DisplayField({ "always_enabled": true, "anchor": "-20", "autoHeight": true, "disabled": true, "fieldLabel": "name", "listeners": { "render": Lino.quicktip_renderer("name","(about.Models.name) ") }, "name": "name", "value": "<br/>" });
    var docstring_disp1601 = new Ext.form.DisplayField({ "always_enabled": true, "anchor": "-20", "autoHeight": true, "disabled": true, "fieldLabel": "docstring", "listeners": { "render": Lino.quicktip_renderer("docstring","(about.Models.docstring) ") }, "name": "docstring", "value": "<br/>" });
    var rows1602 = new Ext.form.NumberField({ "anchor": "-20", "autoHeight": true, "disabled": true, "fieldLabel": "Rows", "listeners": { "render": Lino.quicktip_renderer("Rows","(about.Models.rows) ") }, "name": "rows" });
    var main_1_panel1603 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 31, "items": app_disp1599, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 31, "items": name_disp1600, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 31, "items": docstring_disp1601, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 5, "items": rows1602, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 90, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var about_FieldsByModel_grid1612 = new Lino.about.FieldsByModel.GridPanel({ "containing_panel": this, "flex": 62, "hide_top_toolbar": true, "listeners": { "render": Lino.quicktip_renderer("Fields","(about.about.FieldsByModel) ") }, "master_panel": this, "params_panel_hidden": true, "preview_limit": 15, "tools": [ Lino.show_in_own_window_button(Lino.about.FieldsByModel.grid) ] });
    var main_panel1613 = new Ext.Panel({ "autoScroll": false, "bodyBorder": false, "border": false, "frame": true, "hideCheckBoxLabels": true, "items": [ main_1_panel1603, about_FieldsByModel_grid1612 ], "labelAlign": "top", "layout": "vbox", "layoutConfig": { "align": "stretch" } });
    this.items = main_panel1613;
    this.before_row_edit = function(record) {
      about_FieldsByModel_grid1612.on_master_changed();
    }
    Lino.about.Models.DetailFormPanel.superclass.initComponent.call(this);
  }
});


Lino.excerpts.Excerpts.InsertFormPanel = Ext.extend(Lino.FormPanel,{
  layout: 'fit',
  auto_save: true,
  autoHeight: true,
  content_type: 42,
  initComponent : function() {
    var excerpt_type1454 = new Lino.TwinCombo({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "emptyText": "Select a Excerpt Type...", "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Excerpt Type</span>", "hiddenName": "excerpt_typeHidden", "listeners": { "render": Lino.quicktip_renderer("Excerpt Type","(excerpts.Excerpts.excerpt_type) The type of this excerpt (ForeignKey to ExcerptType).") }, "name": "excerpt_type", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.excerpts.ExcerptTypes.detail,Lino.excerpts.ExcerptTypes.insert)}, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/excerpts/Excerpts/excerpt_type" }) }) });
    var company1455 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a Organization...", "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Recipient (Organization)</span>", "hiddenName": "companyHidden", "listeners": { "render": Lino.quicktip_renderer("Recipient (Organization)","(excerpts.Excerpts.company) The optional company of the recipient of this\nexcerpt.  See ContactRelated.company.") }, "name": "company", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.contacts.Companies.detail,Lino.contacts.Companies.insert)}, "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/excerpts/Excerpts/company" }) }) });
    var contact_person1456 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a Person...", "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Recipient (Person)</span>", "hiddenName": "contact_personHidden", "listeners": { "render": Lino.quicktip_renderer("Recipient (Person)","(excerpts.Excerpts.contact_person) The optional contact person of the recipient of this\nexcerpt.  See ContactRelated.contact_person.") }, "name": "contact_person", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.contacts.Persons.detail,Lino.contacts.Persons.insert)}, "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/excerpts/Excerpts/contact_person" }) }) });
    var main_2_panel1457 = new Ext.Panel({ "anchor": "-20", "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 50, "items": company1455, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 50, "items": contact_person1456, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 225, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var main_panel1460 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "bodyBorder": false, "border": false, "frame": true, "hideCheckBoxLabels": true, "items": [ { "anchor": "-20", "autoHeight": true, "items": excerpt_type1454, "labelAlign": "top", "layout": "form", "xtype": "panel" }, main_2_panel1457 ], "labelAlign": "top", "labelWidth": 117, "layout": "form" });
    this.items = main_panel1460;
    this.before_row_edit = function(record) {
      excerpt_type1454.setContextValue('owner', record ? record.data['owner'] : undefined);
      contact_person1456.setContextValue('company', record ? record.data['companyHidden'] : undefined);
    }
    this.onRender = function(ct, position) {
      company1455.on('change',Lino.chooser_handler(contact_person1456,'company'));
      Lino.excerpts.Excerpts.InsertFormPanel.superclass.onRender.call(this, ct, position);
    }
    Lino.excerpts.Excerpts.InsertFormPanel.superclass.initComponent.call(this);
  }
});


Lino.contacts.Persons.DetailFormPanel = Ext.extend(Lino.FormPanel,{
  layout: 'fit',
  auto_save: true,
  content_type: 6,
  initComponent : function() {
    var overview_disp252 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "flex": 40, "listeners": { "render": Lino.quicktip_renderer(null,"(contacts.Persons.overview) ") }, "name": "overview", "value": "<br/>" });
    var last_name253 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Last name</span>", "listeners": { "render": Lino.quicktip_renderer("Last name","(contacts.Persons.last_name) The last name, also known as family name.") }, "maxLength": 200, "name": "last_name", "selectOnFocus": true });
    var first_name254 = new Ext.form.TextField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">First name</span>", "listeners": { "render": Lino.quicktip_renderer("First name","(contacts.Persons.first_name) The first name, also known as given name.") }, "maxLength": 200, "name": "first_name", "selectOnFocus": true });
    var gender255 = new Lino.ChoicesFieldElement({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Gender</span>", "forceSelection": true, "hiddenName": "genderHidden", "listeners": { "render": Lino.quicktip_renderer("Gender","(contacts.Persons.gender) The sex of this person (male or female).") }, "name": "gender", "selectOnFocus": true, "store": [['','<br>']].concat(Lino.system.Genders) });
    var name_box_panel256 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 46, "items": last_name253, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 33, "items": first_name254, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 20, "items": gender255, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 99, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var phones_ContactDetailsByPartner_htmlbox260 = new Lino.HtmlBoxPanel({ "always_enabled": true, "bodyStyle": "overflow-x:hidden;", "containing_panel": this, "flex": 75, "items": new Ext.BoxComponent({autoScroll:true}), "layout": "fit", "listeners": { "render": Lino.quicktip_renderer("Contact Details","(contacts.Persons.phones_ContactDetailsByPartner) ") }, "master_panel": this, "name": "phones_ContactDetailsByPartner", "title": "Contact Details", "tools": [ Lino.show_in_own_window_button(Lino.phones.ContactDetailsByPartner.grid) ], "value": "<br/>" });
    var contact_box_panel261 = new Ext.Panel({ "autoScroll": false, "bodyBorder": false, "border": false, "flex": 60, "frame": true, "hideCheckBoxLabels": true, "items": [ name_box_panel256, phones_ContactDetailsByPartner_htmlbox260 ], "labelAlign": "top", "labelWidth": 144, "layout": "vbox", "layoutConfig": { "align": "stretch" } });
    var general_1_panel262 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ overview_disp252, contact_box_panel261 ], "labelAlign": "top", "labelWidth": 0, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var contacts_RolesByPerson_grid272 = new Lino.contacts.RolesByPerson.GridPanel({ "containing_panel": this, "flex": 33, "hide_top_toolbar": true, "listeners": { "render": Lino.quicktip_renderer("Contact for","(contacts.contacts.RolesByPerson) Shows all roles of a person.") }, "master_panel": this, "params_panel_hidden": true, "preview_limit": 15, "tools": [ Lino.show_in_own_window_button(Lino.contacts.RolesByPerson.grid) ] });
    var lists_MembersByPartner_grid284 = new Lino.lists.MembersByPartner.GridPanel({ "containing_panel": this, "flex": 33, "hide_top_toolbar": true, "listeners": { "render": Lino.quicktip_renderer("List memberships","(lists.lists.MembersByPartner) ") }, "master_panel": this, "params_panel_hidden": true, "preview_limit": 15, "tools": [ Lino.show_in_own_window_button(Lino.lists.MembersByPartner.grid) ] });
    var comments_CommentsByRFC_htmlbox285 = new Lino.HtmlBoxPanel({ "always_enabled": true, "bodyStyle": "overflow-x:hidden;", "containing_panel": this, "flex": 33, "items": new Ext.BoxComponent({autoScroll:true}), "layout": "fit", "listeners": { "render": Lino.quicktip_renderer("Comments","(contacts.Persons.comments_CommentsByRFC) ") }, "master_panel": this, "name": "comments_CommentsByRFC", "title": "Comments", "tools": [ Lino.show_in_own_window_button(Lino.comments.CommentsByRFC.grid) ], "value": "<br/>" });
    var general_2_panel286 = new Ext.Panel({ "autoScroll": false, "border": false, "flex": 55, "frame": false, "hideCheckBoxLabels": true, "items": [ contacts_RolesByPerson_grid272, lists_MembersByPartner_grid284, comments_CommentsByRFC_htmlbox285 ], "labelAlign": "top", "labelWidth": 81, "layout": "hbox", "layoutConfig": { "align": "stretch" } });
    var general_panel287 = new Ext.Panel({ "autoScroll": false, "bodyBorder": false, "border": false, "frame": true, "hideCheckBoxLabels": true, "items": [ general_1_panel262, general_2_panel286 ], "labelAlign": "top", "layout": "vbox", "layoutConfig": { "align": "stretch" }, "listeners": { "activate": Lino.on_tab_activate }, "title": "General" });
    var humanlinks_LinksByHuman_htmlbox288 = new Lino.HtmlBoxPanel({ "always_enabled": true, "bodyStyle": "overflow-x:hidden;", "containing_panel": this, "flex": 3, "items": new Ext.BoxComponent({autoScroll:true}), "layout": "fit", "listeners": { "render": Lino.quicktip_renderer("Human Links","(contacts.Persons.humanlinks_LinksByHuman) Show all links for which this human is either parent or child.") }, "master_panel": this, "name": "humanlinks_LinksByHuman", "region": "north", "split": true, "title": "Human Links", "tools": [ Lino.show_in_own_window_button(Lino.humanlinks.LinksByHuman.grid) ], "value": "<br/>" });
    var households_MembersByPerson_htmlbox289 = new Lino.HtmlBoxPanel({ "always_enabled": true, "bodyStyle": "overflow-x:hidden;", "containing_panel": this, "flex": 28, "items": new Ext.BoxComponent({autoScroll:true}), "layout": "fit", "listeners": { "render": Lino.quicktip_renderer("Household memberships","(contacts.Persons.households_MembersByPerson) ") }, "master_panel": this, "name": "households_MembersByPerson", "title": "Household memberships", "tools": [ Lino.show_in_own_window_button(Lino.households.MembersByPerson.grid) ], "value": "<br/>" });
    var households_SiblingsByPerson_grid310 = new Lino.households.SiblingsByPerson.GridPanel({ "containing_panel": this, "flex": 71, "hide_top_toolbar": true, "listeners": { "render": Lino.quicktip_renderer("Household composition","(households.households.SiblingsByPerson) Displays the siblings of a given person in that person's active\nhousehold.") }, "master_panel": this, "params_panel_hidden": true, "preview_limit": 15, "tools": [ Lino.show_in_own_window_button(Lino.households.SiblingsByPerson.grid) ] });
    var links_2_panel311 = new Ext.Panel({ "autoScroll": false, "border": false, "flex": 5, "frame": false, "hideCheckBoxLabels": true, "items": [ households_MembersByPerson_htmlbox289, households_SiblingsByPerson_grid310 ], "labelAlign": "top", "labelWidth": 198, "layout": "hbox", "layoutConfig": { "align": "stretch" }, "region": "center", "split": true });
    var links_panel312 = new Lino.VBorderPanel({ "autoScroll": false, "bodyBorder": false, "border": false, "frame": true, "hideCheckBoxLabels": true, "items": [ humanlinks_LinksByHuman_htmlbox288, links_2_panel311 ], "labelAlign": "top", "labelWidth": 108, "listeners": { "activate": Lino.on_tab_activate }, "title": "Links" });
    var id313 = new Ext.form.NumberField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "ID", "listeners": { "render": Lino.quicktip_renderer("ID","(contacts.Persons.id) ") }, "name": "id", "selectOnFocus": true });
    var language314 = new Lino.ChoicesFieldElement({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Language</span>", "hiddenName": "languageHidden", "listeners": { "render": Lino.quicktip_renderer("Language","(contacts.Persons.language) The language to use when communicating with this partner.") }, "name": "language", "selectOnFocus": true, "store": [ [ "en-us", "American English" ] ] });
    var url315 = new Lino.URLField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "URL", "listeners": { "render": Lino.quicktip_renderer("URL","(contacts.Persons.url) ") }, "maxLength": 200, "name": "url", "selectOnFocus": true });
    var birth_date316 = new Lino.IncompleteDateField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "<span style=\"border-bottom: 1px dotted #000000;\">Birth date</span>", "listeners": { "render": Lino.quicktip_renderer("Birth date","(contacts.Persons.birth_date) Uncomplete dates are allowed, e.g. \n\"00.00.1980\" means \"some day in 1980\", \n\"00.07.1980\" means \"in July 1980\"\nor \"23.07.0000\" means \"on a 23th of July\".") }, "name": "birth_date", "selectOnFocus": true });
    var age_disp317 = new Ext.form.DisplayField({ "always_enabled": true, "anchor": "-20", "autoHeight": true, "disabled": true, "fieldLabel": "Age", "listeners": { "render": Lino.quicktip_renderer("Age","(contacts.Persons.age) ") }, "name": "age", "value": "<br/>" });
    var more_1_panel318 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 6, "items": id313, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 12, "items": language314, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 26, "items": url315, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 15, "items": birth_date316, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 38, "items": age_disp317, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 99, "layout": "hbox", "layoutConfig": { "align": "stretchmax" } });
    var remarks324 = new Lino.RichTextPanel({ "containing_panel": this, "fieldLabel": "About me", "flex": 33, "name": "remarks", "selectOnFocus": true, "title": "About me" });
    var plausibility_ProblemsByOwner_grid349 = new Lino.plausibility.ProblemsByOwner.GridPanel({ "containing_panel": this, "flex": 66, "hide_top_toolbar": true, "listeners": { "render": Lino.quicktip_renderer("Plausibility problems","(plausibility.plausibility.ProblemsByOwner) Show data problems related to this database object.") }, "master_panel": this, "params_panel_hidden": true, "preview_limit": 15, "tools": [ Lino.show_in_own_window_button(Lino.plausibility.ProblemsByOwner.grid) ] });
    var more_2_panel350 = new Ext.Panel({ "autoScroll": false, "border": false, "flex": 62, "frame": false, "hideCheckBoxLabels": true, "items": [ remarks324, plausibility_ProblemsByOwner_grid349 ], "labelAlign": "top", "labelWidth": 81, "layout": "hbox", "layoutConfig": { "align": "stretch" } });
    var more_panel351 = new Ext.Panel({ "autoScroll": false, "bodyBorder": false, "border": false, "frame": true, "hideCheckBoxLabels": true, "items": [ more_1_panel318, more_2_panel350 ], "labelAlign": "top", "layout": "vbox", "layoutConfig": { "align": "stretch" }, "listeners": { "activate": Lino.on_tab_activate }, "title": "More" });
    var main_panel352 = new Ext.TabPanel({ "activeTab": 0, "autoScroll": false, "bodyBorder": false, "border": false, "enableTabScroll": true, "frame": true, "hideCheckBoxLabels": true, "items": [ general_panel287, links_panel312, more_panel351 ], "labelAlign": "top", "split": true });
    this.items = main_panel352;
    this.before_row_edit = function(record) {
      phones_ContactDetailsByPartner_htmlbox260.refresh();
      contacts_RolesByPerson_grid272.on_master_changed();
      lists_MembersByPartner_grid284.on_master_changed();
      comments_CommentsByRFC_htmlbox285.refresh();
      humanlinks_LinksByHuman_htmlbox288.refresh();
      households_MembersByPerson_htmlbox289.refresh();
      households_SiblingsByPerson_grid310.on_master_changed();
      remarks324.refresh();
      plausibility_ProblemsByOwner_grid349.on_master_changed();
    }
    Lino.contacts.Persons.DetailFormPanel.superclass.initComponent.call(this);
    // active_fields:
  }
});


Lino.blogs.EntryTypes.DetailFormPanel = Ext.extend(Lino.FormPanel,{
  layout: 'fit',
  auto_save: true,
  content_type: 40,
  initComponent : function() {
    var id1614 = new Ext.form.NumberField({ "anchor": "-20", "autoHeight": true, "fieldLabel": "ID", "listeners": { "render": Lino.quicktip_renderer("ID","(blogs.EntryTypes.id) ") }, "name": "id", "selectOnFocus": true });
    var name1615 = new Ext.form.TextField({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "fieldLabel": "Designation", "listeners": { "render": Lino.quicktip_renderer("Designation","(blogs.EntryTypes.name) ") }, "maxLength": 200, "name": "name", "selectOnFocus": true });
    var main_1_panel1616 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "border": false, "frame": false, "hideCheckBoxLabels": true, "items": [ { "autoHeight": true, "flex": 19, "items": id1614, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "autoHeight": true, "flex": 80, "items": name1615, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 108, "layout": "hbox", "layoutConfig": { "align": "stretchmax" }, "region": "north", "split": true });
    var remark1619 = new Lino.RichTextPanel({ "containing_panel": this, "fieldLabel": "Remark", "flex": 5, "name": "remark", "region": "center", "selectOnFocus": true, "split": true, "title": "Remark" });
    var blogs_EntriesByType_grid1638 = new Lino.blogs.EntriesByType.GridPanel({ "containing_panel": this, "flex": 5, "hide_top_toolbar": true, "listeners": { "render": Lino.quicktip_renderer("Blog Entries","(blogs.blogs.EntriesByType) ") }, "master_panel": this, "params_panel_hidden": true, "preview_limit": 15, "region": "south", "split": true, "tools": [ Lino.show_in_own_window_button(Lino.blogs.EntriesByType.grid) ] });
    var main_panel1639 = new Lino.VBorderPanel({ "autoScroll": false, "bodyBorder": false, "border": false, "frame": true, "hideCheckBoxLabels": true, "items": [ main_1_panel1616, remark1619, blogs_EntriesByType_grid1638 ], "labelAlign": "top", "labelWidth": 63 });
    this.items = main_panel1639;
    this.before_row_edit = function(record) {
      remark1619.refresh();
      blogs_EntriesByType_grid1638.on_master_changed();
    }
    Lino.blogs.EntryTypes.DetailFormPanel.superclass.initComponent.call(this);
  }
});


Lino.tinymce.TextFieldTemplates.InsertFormPanel = Ext.extend(Lino.FormPanel,{
  layout: 'fit',
  auto_save: true,
  autoHeight: true,
  content_type: 43,
  initComponent : function() {
    var name1640 = new Ext.form.TextField({ "allowBlank": false, "anchor": "-20", "autoHeight": true, "fieldLabel": "Designation", "listeners": { "render": Lino.quicktip_renderer("Designation","(tinymce.TextFieldTemplates.name) ") }, "maxLength": 200, "name": "name", "selectOnFocus": true });
    var user1641 = new Lino.TwinCombo({ "anchor": "-20", "autoHeight": true, "emptyText": "Select a User...", "fieldLabel": "Author", "hiddenName": "userHidden", "listeners": { "render": Lino.quicktip_renderer("Author","(tinymce.TextFieldTemplates.user) ") }, "name": "user", "onTrigger2Click": function(e){ Lino.show_fk_detail(this,Lino.users.Users.detail,Lino.users.Users.insert)}, "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/tinymce/TextFieldTemplates/user" }) }) });
    var main_panel1642 = new Ext.Panel({ "autoHeight": true, "autoScroll": false, "bodyBorder": false, "border": false, "frame": true, "hideCheckBoxLabels": true, "items": [ { "anchor": "-20", "autoHeight": true, "items": name1640, "labelAlign": "top", "layout": "form", "xtype": "panel" }, { "anchor": "-20", "autoHeight": true, "items": user1641, "labelAlign": "top", "layout": "form", "xtype": "panel" } ], "labelAlign": "top", "labelWidth": 108, "layout": "form" });
    this.items = main_panel1642;
    this.before_row_edit = function(record) {
    }
    Lino.tinymce.TextFieldTemplates.InsertFormPanel.superclass.initComponent.call(this);
  }
});

Lino.countries.Places.merge_row = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(50) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.countries.Places.merge_row_ActionFormPanel({});
});
Lino.contacts.Persons.merge_row = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(70) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.contacts.Persons.merge_row_ActionFormPanel({});
});
Lino.contacts.Persons.create_household = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(50) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.contacts.Persons.create_household_ActionFormPanel({});
});
Lino.contacts.Companies.merge_row = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(70) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.contacts.Companies.merge_row_ActionFormPanel({});
});
Lino.users.Users.verify = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(50) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.users.Users.verify_ActionFormPanel({});
});
Lino.users.Users.change_password = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(50) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.users.Users.change_password_ActionFormPanel({});
});
Lino.users.AllUsers.send_welcome_email = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(50) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.users.AllUsers.send_welcome_email_ActionFormPanel({});
});
Lino.users.NewUsers.send_welcome_email = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(50) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.users.NewUsers.send_welcome_email_ActionFormPanel({});
});

// js_render_GridPanel_class countries.Countries
Lino.countries.Countries.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/countries/Countries",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/countries/Countries','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/countries/Countries','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "Countries",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 9,
  ls_store_fields : [ { "name": "name" }, { "name": "isocode" }, { "name": "short_code" }, { "name": "iso3" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 1,
  ls_grid_configs : [  ],
  content_type : 1,
  ls_id_property : "isocode",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.countries.Countries.detail;
    this.ls_insert_handler = Lino.countries.Countries.insert;
    var ww = this.containing_window;
    var name1750 = new Ext.form.TextField({ "allowBlank": false, "maxLength": 200, "selectOnFocus": true });
    var isocode1751 = new Ext.form.TextField({ "allowBlank": false, "boxMinWidth": Lino.chars2width(4), "maxLength": 4, "selectOnFocus": true });
    var short_code1752 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(4), "hidden": true, "maxLength": 4, "selectOnFocus": true });
    var iso31753 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(3), "hidden": true, "maxLength": 3, "selectOnFocus": true });
    var mobile_item_disp1754 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp1755 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp1756 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp1757 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "name", "editable": true, "editor": name1750, "filter": { "type": "string" }, "header": "Designation", "sortable": true, "tooltip": "(countries.Countries.name) ", "width": Lino.chars2width(22) }, { "colIndex": 1, "dataIndex": "isocode", "editable": true, "editor": isocode1751, "filter": { "type": "string" }, "header": "ISO code", "sortable": true, "tooltip": "(countries.Countries.isocode)         The two-letter code for this country as defined by ISO 3166-1.\n        For countries that no longer exist it may be a 4-letter code.", "width": Lino.chars2width(11) }, { "colIndex": 2, "dataIndex": "short_code", "editable": true, "editor": short_code1752, "filter": { "type": "string" }, "header": "Short code", "hidden": true, "sortable": true, "tooltip": "(countries.Countries.short_code) A short abbreviation for regional usage. Obsolete.", "width": Lino.chars2width(11) }, { "colIndex": 3, "dataIndex": "iso3", "editable": true, "editor": iso31753, "filter": { "type": "string" }, "header": "ISO-3 code", "hidden": true, "sortable": true, "tooltip": "(countries.Countries.iso3) The three-letter code for this country as defined by ISO 3166-1.", "width": Lino.chars2width(5) }, { "colIndex": 4, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(countries.Countries.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 5, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(countries.Countries.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 6, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(countries.Countries.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 7, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(countries.Countries.workflow_buttons) ", "width": Lino.chars2width(31) } ];
    Lino.countries.Countries.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.countries.Countries.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/countries/Countries", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.countries.Countries.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/countries/Countries", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.countries.Countries.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/countries/Countries", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.countries.Countries.insertPanel = Ext.extend(Lino.countries.Countries.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/countries/Countries",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.countries.Countries.detail;
    this.ls_insert_handler = Lino.countries.Countries.insert;
    Lino.countries.Countries.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.countries.Countries.insert = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.countries.Countries.insertPanel(p);
});
Lino.countries.Countries.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/countries/Countries", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.countries.Countries.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/countries/Countries", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.countries.Countries.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/countries/Countries", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.countries.Countries.detailPanel = Ext.extend(Lino.countries.Countries.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  ls_url: "/countries/Countries",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.countries.Countries.detail;
    this.ls_insert_handler = Lino.countries.Countries.insert;
    Lino.countries.Countries.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.countries.Countries.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.countries.Countries.detailPanel(p);
});
Lino.countries.Countries.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/countries/Countries", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.countries.Countries.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.countries.Countries.GridPanel(p);
});
Lino.countries.Countries.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/countries/Countries", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class countries.Places
Lino.countries.Places.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/countries/Places",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/countries/Places','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/countries/Places','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "itemId": "duplicate", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Duplicate the selected row.") }, "menu_item_text": "\u2687", "overflowText": "\u2687", "panel_btn_handler": Lino.row_action_handler('duplicate','GET',null), "text": " <font size=\"4\">\u2687</font>" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "iconCls": "x-tbar-arrow_join", "itemId": "merge_row", "menu_item_text": "Merge", "overflowText": "Merge", "panel_btn_handler": Lino.param_action_handler(Lino.countries.Places.merge_row), "tooltip": "Merge this object into another object of same class." }, { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "check_plausibility", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": "Check plausibility", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." }, { "auto_save": true, "itemId": "fix_problems", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": "Fix plausibility problems", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." } ], "menu_item_text": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": null, "xtype": "splitbutton" } ],
  cell_edit : true,
  title : "Places",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 16,
  ls_store_fields : [ { "name": "country" }, 'countryHidden', { "name": "name" }, { "name": "type" }, 'typeHidden', { "name": "zip_code" }, { "name": "parent" }, 'parentHidden', { "name": "id", "type": "int" }, { "name": "show_type", "type": "boolean" }, { "name": "children_summary" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 8,
  ls_grid_configs : [  ],
  content_type : 2,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.countries.Places.detail;
    this.ls_insert_handler = Lino.countries.Places.insert;
    var ww = this.containing_window;
    var country1759 = new Lino.RemoteComboFieldElement({ "allowBlank": false, "emptyText": "Select a Country...", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/countries/Places/country" }) }) });
    var name1760 = new Ext.form.TextField({ "allowBlank": false, "maxLength": 200, "selectOnFocus": true });
    var type1761 = new Lino.RemoteComboFieldElement({ "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/countries/Places/type" }) }) });
    var zip_code1762 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(8), "maxLength": 8, "selectOnFocus": true });
    var parent1763 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Place...", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/countries/Places/parent" }) }) });
    var id1764 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var show_type1765 = new Ext.form.Checkbox({ "checked": false, "hidden": true, "selectOnFocus": true });
    var children_summary_disp1766 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var mobile_item_disp1767 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp1768 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp1769 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp1770 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
      type1761.setContextValue('country', record ? record.data['countryHidden'] : undefined);
    };
    this.onRender = function(ct, position) {
      country1759.on('change',Lino.chooser_handler(type1761,'country'));
      Lino.countries.Places.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "country", "editable": true, "editor": country1759, "filter": { "type": "string" }, "header": "Country", "renderer": Lino.fk_renderer('countryHidden','Lino.countries.Countries.detail'), "sortable": false, "tooltip": "(countries.Places.country) ", "width": Lino.chars2width(21) }, { "colIndex": 1, "dataIndex": "name", "editable": true, "editor": name1760, "filter": { "type": "string" }, "header": "Designation", "sortable": true, "tooltip": "(countries.Places.name) ", "width": Lino.chars2width(22) }, { "colIndex": 2, "dataIndex": "type", "editable": true, "editor": type1761, "filter": { "type": "string" }, "header": "Place Type", "sortable": false, "tooltip": "(countries.Places.type) ", "width": Lino.chars2width(11) }, { "colIndex": 3, "dataIndex": "zip_code", "editable": true, "editor": zip_code1762, "filter": { "type": "string" }, "header": "zip code", "sortable": true, "tooltip": "(countries.Places.zip_code) ", "width": Lino.chars2width(10) }, { "colIndex": 4, "dataIndex": "parent", "editable": true, "editor": parent1763, "filter": { "type": "string" }, "header": "Part of", "renderer": Lino.fk_renderer('parentHidden','Lino.countries.Places.detail'), "sortable": false, "tooltip": "(countries.Places.parent) The superordinate geographic place of which this place is a part.", "width": Lino.chars2width(21) }, { "align": "right", "colIndex": 5, "dataIndex": "id", "editable": true, "editor": id1764, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(countries.Places.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 6, "dataIndex": "show_type", "editable": true, "filter": { "type": "boolean" }, "header": "Show type", "hidden": true, "sortable": false, "tooltip": "(countries.Places.show_type) ", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 7, "dataIndex": "children_summary", "editable": false, "header": "Children", "hidden": true, "sortable": false, "tooltip": "(countries.Places.children_summary) ", "width": Lino.chars2width(31) }, { "colIndex": 8, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(countries.Places.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 9, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(countries.Places.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 10, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(countries.Places.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 11, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(countries.Places.workflow_buttons) ", "width": Lino.chars2width(31) } ];
    Lino.countries.Places.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.countries.Places.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/countries/Places", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.countries.Places.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/countries/Places", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.countries.Places.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/countries/Places", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.countries.Places.insertPanel = Ext.extend(Lino.countries.Places.DetailFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/countries/Places",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.countries.Places.detail;
    this.ls_insert_handler = Lino.countries.Places.insert;
    Lino.countries.Places.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.countries.Places.insert = new Lino.WindowAction({  }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.countries.Places.insertPanel(p);
});
Lino.countries.Places.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/countries/Places", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.countries.Places.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/countries/Places", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.countries.Places.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/countries/Places", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.countries.Places.duplicate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/countries/Places", "GET", pk, "duplicate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.countries.Places.detailPanel = Ext.extend(Lino.countries.Places.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "itemId": "duplicate", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Duplicate the selected row.") }, "menu_item_text": "\u2687", "overflowText": "\u2687", "panel_btn_handler": Lino.row_action_handler('duplicate','GET',null), "text": " <font size=\"4\">\u2687</font>" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "iconCls": "x-tbar-arrow_join", "itemId": "merge_row", "menu_item_text": "Merge", "overflowText": "Merge", "panel_btn_handler": Lino.param_action_handler(Lino.countries.Places.merge_row), "tooltip": "Merge this object into another object of same class." }, { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "check_plausibility", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": "Check plausibility", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." }, { "auto_save": true, "itemId": "fix_problems", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": "Fix plausibility problems", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." } ], "menu_item_text": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": null, "xtype": "splitbutton" } ],
  ls_url: "/countries/Places",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.countries.Places.detail;
    this.ls_insert_handler = Lino.countries.Places.insert;
    Lino.countries.Places.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.countries.Places.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.countries.Places.detailPanel(p);
});
Lino.countries.Places.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/countries/Places", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.countries.Places.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.countries.Places.GridPanel(p);
});
Lino.countries.Places.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/countries/Places", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.countries.Places.check_plausibility = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/countries/Places", "GET", pk, "check_plausibility", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.countries.Places.fix_problems = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/countries/Places", "GET", pk, "fix_problems", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class system.SiteConfigs
Lino.system.SiteConfigs.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/system/SiteConfigs",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/system/SiteConfigs','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/system/SiteConfigs','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": true, "itemId": "do_build", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Rebuild the site cache.\nThis action is available on About.") }, "menu_item_text": "Rebuild site cache", "overflowText": "Rebuild site cache", "panel_btn_handler": Lino.row_action_handler('do_build','GET',null), "text": "Rebuild site cache" } ],
  cell_edit : true,
  title : "Site configurations",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 18,
  ls_store_fields : [ { "name": "id", "type": "int" }, { "name": "default_build_method" }, 'default_build_methodHidden', { "dateFormat": "d.m.Y", "name": "simulate_today", "type": "date" }, { "name": "site_company" }, 'site_companyHidden', { "name": "next_partner_id", "type": "int", "useNull": true }, { "name": "default_event_type" }, 'default_event_typeHidden', { "name": "site_calendar" }, 'site_calendarHidden', { "name": "max_auto_events", "type": "int", "useNull": true }, { "dateFormat": "d.m.Y", "name": "hide_events_before", "type": "date" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 0,
  ls_grid_configs : [  ],
  content_type : 3,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.system.SiteConfigs.detail;
    var ww = this.containing_window;
    var id1772 = new Ext.form.NumberField({ "selectOnFocus": true });
    var default_build_method1773 = new Lino.ChoicesFieldElement({ "forceSelection": true, "selectOnFocus": true, "store": [['','<br>']].concat(Lino.printing.BuildMethods) });
    var simulate_today1774 = new Lino.DateField({ "selectOnFocus": true });
    var site_company1775 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Organization...", "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/system/SiteConfigs/site_company" }) }) });
    var next_partner_id1776 = new Ext.form.NumberField({ "selectOnFocus": true, "value": 100 });
    var default_event_type1777 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Calendar entry type...", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/system/SiteConfigs/default_event_type" }) }) });
    var site_calendar1778 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Calendar...", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/system/SiteConfigs/site_calendar" }) }) });
    var max_auto_events1779 = new Ext.form.NumberField({ "selectOnFocus": true, "value": 72 });
    var hide_events_before1780 = new Lino.DateField({ "selectOnFocus": true });
    var mobile_item_disp1781 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp1782 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp1783 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp1784 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "align": "right", "colIndex": 0, "dataIndex": "id", "editable": true, "editor": id1772, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "sortable": true, "tooltip": "(system.SiteConfigs.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 1, "dataIndex": "default_build_method", "editable": true, "editor": default_build_method1773, "filter": { "type": "string" }, "header": "Default build method", "sortable": false, "tooltip": "(system.SiteConfigs.default_build_method) The default build method to use when rendering printable documents.", "width": Lino.chars2width(24) }, { "colIndex": 2, "dataIndex": "simulate_today", "editable": true, "editor": simulate_today1774, "filter": { "dateFormat": "d.m.Y", "type": "date" }, "format": "d.m.Y", "header": "Simulated date", "sortable": true, "tooltip": "(system.SiteConfigs.simulate_today) A constant user-defined date to be substituted as current\nsystem date.", "width": Lino.chars2width(14), "xtype": "datecolumn" }, { "colIndex": 3, "dataIndex": "site_company", "editable": true, "editor": site_company1775, "filter": { "type": "string" }, "header": "Site owner", "renderer": Lino.fk_renderer('site_companyHidden','Lino.contacts.Companies.detail'), "sortable": false, "tooltip": "(system.SiteConfigs.site_company) The organisation who runs this site.  This is used e.g. when\nprinting your address in certain documents or reports.  Or\nnewly created partners inherit the country of the site owner.", "width": Lino.chars2width(21) }, { "align": "right", "colIndex": 4, "dataIndex": "next_partner_id", "editable": true, "editor": next_partner_id1776, "filter": { "type": "numeric" }, "format": "0", "header": "Next partner id", "sortable": true, "tooltip": "(system.SiteConfigs.next_partner_id) The next automatic id for any new partner.", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 5, "dataIndex": "default_event_type", "editable": true, "editor": default_event_type1777, "filter": { "type": "string" }, "header": "Default Event Type", "renderer": Lino.fk_renderer('default_event_typeHidden','Lino.cal.EventTypes.detail'), "sortable": false, "tooltip": "(system.SiteConfigs.default_event_type) The default type of events on this site.", "width": Lino.chars2width(21) }, { "colIndex": 6, "dataIndex": "site_calendar", "editable": true, "editor": site_calendar1778, "filter": { "type": "string" }, "header": "Site Calendar", "renderer": Lino.fk_renderer('site_calendarHidden','Lino.cal.Calendars.detail'), "sortable": false, "tooltip": "(system.SiteConfigs.site_calendar) The default calendar of this site.", "width": Lino.chars2width(21) }, { "align": "right", "colIndex": 7, "dataIndex": "max_auto_events", "editable": true, "editor": max_auto_events1779, "filter": { "type": "numeric" }, "format": "0", "header": "Max automatic events", "sortable": true, "tooltip": "(system.SiteConfigs.max_auto_events) Maximum number of automatic events to be generated.", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 8, "dataIndex": "hide_events_before", "editable": true, "editor": hide_events_before1780, "filter": { "dateFormat": "d.m.Y", "type": "date" }, "format": "d.m.Y", "header": "Hide events before", "sortable": true, "tooltip": "(system.SiteConfigs.hide_events_before) If this is specified, certain tables show only \nevents after the given date.", "width": Lino.chars2width(14), "xtype": "datecolumn" }, { "colIndex": 9, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(system.SiteConfigs.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 10, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(system.SiteConfigs.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 11, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(system.SiteConfigs.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 12, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(system.SiteConfigs.workflow_buttons) ", "width": Lino.chars2width(31) } ];
    Lino.system.SiteConfigs.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.system.SiteConfigs.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/system/SiteConfigs", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.system.SiteConfigs.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/system/SiteConfigs", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.system.SiteConfigs.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/system/SiteConfigs", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.system.SiteConfigs.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/system/SiteConfigs", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.system.SiteConfigs.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/system/SiteConfigs", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.system.SiteConfigs.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/system/SiteConfigs", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.system.SiteConfigs.detailPanel = Ext.extend(Lino.system.SiteConfigs.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "itemId": "do_build", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Rebuild the site cache.\nThis action is available on About.") }, "menu_item_text": "Rebuild site cache", "overflowText": "Rebuild site cache", "panel_btn_handler": Lino.row_action_handler('do_build','GET',null), "text": "Rebuild site cache" } ],
  ls_url: "/system/SiteConfigs",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.system.SiteConfigs.detail;
    Lino.system.SiteConfigs.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.system.SiteConfigs.detail = new Lino.WindowAction({  }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.system.SiteConfigs.detailPanel(p);
});
Lino.system.SiteConfigs.grid = new Lino.WindowAction({  }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.system.SiteConfigs.GridPanel(p);
});
Lino.system.SiteConfigs.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/system/SiteConfigs", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.system.SiteConfigs.do_build = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/system/SiteConfigs", "GET", pk, "do_build", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class contacts.Partners
Lino.contacts.Partners.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/contacts/Partners",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/contacts/Partners','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/contacts/Partners','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "Partners",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 32,
  ls_store_fields : [ { "name": "name" }, { "name": "email" }, { "name": "language" }, 'languageHidden', { "name": "url" }, { "name": "phone" }, { "name": "gsm" }, { "name": "fax" }, { "name": "country" }, 'countryHidden', { "name": "city" }, 'cityHidden', { "name": "zip_code" }, { "name": "region" }, 'regionHidden', { "name": "addr1" }, { "name": "street_prefix" }, { "name": "street" }, { "name": "street_no" }, { "name": "street_box" }, { "name": "addr2" }, { "name": "prefix" }, { "name": "remarks" }, { "name": "name_column" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "mti_navigator" }, { "name": "address_column" }, { "name": "id", "type": "int" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 30,
  ls_grid_configs : [  ],
  content_type : 8,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.contacts.Partners.detail;
    this.ls_insert_handler = Lino.contacts.Partners.insert;
    var ww = this.containing_window;
    var name1786 = new Ext.form.TextField({ "allowBlank": false, "maxLength": 200, "selectOnFocus": true });
    var email1787 = new Ext.form.TextField({ "maxLength": 254, "selectOnFocus": true });
    var language1788 = new Lino.ChoicesFieldElement({ "hidden": true, "selectOnFocus": true, "store": [ [ "en-us", "American English" ] ] });
    var url1789 = new Lino.URLField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var phone1790 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var gsm1791 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var fax1792 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var country1793 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Country...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/contacts/Partners/country" }) }) });
    var city1794 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Place...", "forceSelection": false, "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/contacts/Partners/city" }) }) });
    var zip_code1795 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(10), "hidden": true, "maxLength": 10, "selectOnFocus": true });
    var region1796 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Place...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/contacts/Partners/region" }) }) });
    var addr11797 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var street_prefix1798 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var street1799 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var street_no1800 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(10), "hidden": true, "maxLength": 10, "selectOnFocus": true });
    var street_box1801 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(10), "hidden": true, "maxLength": 10, "selectOnFocus": true });
    var addr21802 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var prefix1803 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var remarks1804 = new Lino.RichTextPanel({ "containing_panel": this, "hidden": true, "selectOnFocus": true, "title": "About me" });
    var name_column_disp1805 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var mobile_item_disp1806 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp1807 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp1808 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp1809 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var mti_navigator_disp1810 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var address_column_disp1811 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var id1812 = new Ext.form.NumberField({ "selectOnFocus": true });
    this.before_row_edit = function(record) {
      city1794.setContextValue('country', record ? record.data['countryHidden'] : undefined);
      city1794.setContextValue('region', record ? record.data['regionHidden'] : undefined);
      region1796.setContextValue('country', record ? record.data['countryHidden'] : undefined);
      remarks1804.refresh();
    };
    this.onRender = function(ct, position) {
      country1793.on('change',Lino.chooser_handler(city1794,'country'));
      region1796.on('change',Lino.chooser_handler(city1794,'region'));
      country1793.on('change',Lino.chooser_handler(region1796,'country'));
      Lino.contacts.Partners.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "name", "editable": true, "editor": name1786, "filter": { "type": "string" }, "header": "Name", "sortable": true, "tooltip": "(contacts.Partners.name) The full name of this partner. Used for alphabetic sorting.\nSubclasses may hide this field and fill it automatically,\ne.g. saving a Person will automatically set her\nname field to \"last_name, first_name\".", "width": Lino.chars2width(22) }, { "colIndex": 1, "dataIndex": "email", "editable": true, "editor": email1787, "filter": { "type": "string" }, "header": "e-mail address", "sortable": true, "tooltip": "(contacts.Partners.email) The primary email address.", "width": Lino.chars2width(22) }, { "colIndex": 2, "dataIndex": "language", "editable": true, "editor": language1788, "filter": { "type": "string" }, "header": "Language", "hidden": true, "sortable": false, "tooltip": "(contacts.Partners.language) The language to use when communicating with this partner.", "width": Lino.chars2width(21) }, { "colIndex": 3, "dataIndex": "url", "editable": true, "editor": url1789, "filter": { "type": "string" }, "header": "URL", "hidden": true, "sortable": true, "tooltip": "(contacts.Partners.url) ", "width": Lino.chars2width(22) }, { "colIndex": 4, "dataIndex": "phone", "editable": true, "editor": phone1790, "filter": { "type": "string" }, "header": "Phone", "hidden": true, "sortable": true, "tooltip": "(contacts.Partners.phone) The primary phone number.  Note that Lino does not ignore\nformatting characters in phone numbers when searching.  For\nexample, if you enter \"087/12.34.56\" as a phone number, then a\nsearch for phone number containing \"1234\" will not find it.", "width": Lino.chars2width(22) }, { "colIndex": 5, "dataIndex": "gsm", "editable": true, "editor": gsm1791, "filter": { "type": "string" }, "header": "GSM", "hidden": true, "sortable": true, "tooltip": "(contacts.Partners.gsm) The primary mobile phone number.", "width": Lino.chars2width(22) }, { "colIndex": 6, "dataIndex": "fax", "editable": true, "editor": fax1792, "filter": { "type": "string" }, "header": "Fax", "hidden": true, "sortable": true, "tooltip": "(contacts.Partners.fax) ", "width": Lino.chars2width(22) }, { "colIndex": 7, "dataIndex": "country", "editable": true, "editor": country1793, "filter": { "type": "string" }, "header": "Country", "hidden": true, "renderer": Lino.fk_renderer('countryHidden','Lino.countries.Countries.detail'), "sortable": false, "tooltip": "(contacts.Partners.country) ", "width": Lino.chars2width(21) }, { "colIndex": 8, "dataIndex": "city", "editable": true, "editor": city1794, "filter": { "type": "string" }, "header": "City", "hidden": true, "renderer": Lino.fk_renderer('cityHidden','Lino.countries.Places.detail'), "sortable": false, "tooltip": "(contacts.Partners.city) A pointer to the Place which is used as city.", "width": Lino.chars2width(21) }, { "colIndex": 9, "dataIndex": "zip_code", "editable": true, "editor": zip_code1795, "filter": { "type": "string" }, "header": "Zip code", "hidden": true, "sortable": true, "tooltip": "(contacts.Partners.zip_code) ", "width": Lino.chars2width(12) }, { "colIndex": 10, "dataIndex": "region", "editable": true, "editor": region1796, "filter": { "type": "string" }, "header": "County", "hidden": true, "renderer": Lino.fk_renderer('regionHidden','Lino.countries.Places.detail'), "sortable": false, "tooltip": "(contacts.Partners.region) ", "width": Lino.chars2width(21) }, { "colIndex": 11, "dataIndex": "addr1", "editable": true, "editor": addr11797, "filter": { "type": "string" }, "header": "Address line before street", "hidden": true, "sortable": true, "tooltip": "(contacts.Partners.addr1) Address line before street", "width": Lino.chars2width(22) }, { "colIndex": 12, "dataIndex": "street_prefix", "editable": true, "editor": street_prefix1798, "filter": { "type": "string" }, "header": "Street prefix", "hidden": true, "sortable": true, "tooltip": "(contacts.Partners.street_prefix) Text to print before name of street, but to ignore for sorting.", "width": Lino.chars2width(22) }, { "colIndex": 13, "dataIndex": "street", "editable": true, "editor": street1799, "filter": { "type": "string" }, "header": "Street", "hidden": true, "sortable": true, "tooltip": "(contacts.Partners.street) Name of street, without house number.", "width": Lino.chars2width(22) }, { "colIndex": 14, "dataIndex": "street_no", "editable": true, "editor": street_no1800, "filter": { "type": "string" }, "header": "No.", "hidden": true, "sortable": true, "tooltip": "(contacts.Partners.street_no) House number.", "width": Lino.chars2width(12) }, { "colIndex": 15, "dataIndex": "street_box", "editable": true, "editor": street_box1801, "filter": { "type": "string" }, "header": "Box", "hidden": true, "sortable": true, "tooltip": "(contacts.Partners.street_box) Text to print after street nuber on the same line.", "width": Lino.chars2width(12) }, { "colIndex": 16, "dataIndex": "addr2", "editable": true, "editor": addr21802, "filter": { "type": "string" }, "header": "Address line after street", "hidden": true, "sortable": true, "tooltip": "(contacts.Partners.addr2) Address line to print below street line.", "width": Lino.chars2width(22) }, { "colIndex": 17, "dataIndex": "prefix", "editable": true, "editor": prefix1803, "filter": { "type": "string" }, "header": "Name prefix", "hidden": true, "sortable": true, "tooltip": "(contacts.Partners.prefix) An optional name prefix. For organisations this is inserted\nbefore the name, for persons this is inserted between first\nname and last name (see\nlino.mixins.human.Human.get_last_name_prefix()).", "width": Lino.chars2width(22) }, { "colIndex": 18, "dataIndex": "remarks", "editable": true, "editor": remarks1804, "filter": { "type": "string" }, "header": "About me", "hidden": true, "sortable": false, "tooltip": "(contacts.Partners.remarks) ", "width": Lino.chars2width(61) }, { "colIndex": 19, "dataIndex": "name_column", "editable": false, "header": "Name", "hidden": true, "sortable": false, "tooltip": "(contacts.Partners.name_column) ", "width": Lino.chars2width(31) }, { "colIndex": 20, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(contacts.Partners.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 21, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(contacts.Partners.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 22, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(contacts.Partners.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 23, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(contacts.Partners.workflow_buttons) ", "width": Lino.chars2width(31) }, { "colIndex": 24, "dataIndex": "mti_navigator", "editable": false, "header": "See as ", "hidden": true, "sortable": false, "tooltip": "(contacts.Partners.mti_navigator) ", "width": Lino.chars2width(31) }, { "colIndex": 25, "dataIndex": "address_column", "editable": false, "header": "Address", "hidden": true, "sortable": false, "tooltip": "(contacts.Partners.address_column) ", "width": Lino.chars2width(31) }, { "align": "right", "colIndex": 26, "dataIndex": "id", "editable": true, "editor": id1812, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "sortable": true, "tooltip": "(contacts.Partners.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" } ];
    Lino.contacts.Partners.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.contacts.Partners.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/Partners", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.Partners.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/Partners", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.Partners.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/Partners", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.contacts.Partners.insertPanel = Ext.extend(Lino.contacts.Partners.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/contacts/Partners",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.contacts.Partners.detail;
    this.ls_insert_handler = Lino.contacts.Partners.insert;
    Lino.contacts.Partners.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.contacts.Partners.insert = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.contacts.Partners.insertPanel(p);
});
Lino.contacts.Partners.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/Partners", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.Partners.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/Partners", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.Partners.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/Partners", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.contacts.Partners.detailPanel = Ext.extend(Lino.contacts.Partners.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  ls_url: "/contacts/Partners",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.contacts.Partners.detail;
    this.ls_insert_handler = Lino.contacts.Partners.insert;
    Lino.contacts.Partners.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.contacts.Partners.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.contacts.Partners.detailPanel(p);
});
Lino.contacts.Partners.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/Partners", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.Partners.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.contacts.Partners.ParamsPanel({});
  return new Lino.contacts.Partners.GridPanel(p);
});
Lino.contacts.Partners.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/Partners", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.Partners.del_company = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/Partners", "GET", pk, "del_company", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.Partners.ins_company = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/Partners", "GET", pk, "ins_company", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.Partners.ins_partner = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/Partners", "GET", pk, "ins_partner", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.Partners.del_person = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/Partners", "GET", pk, "del_person", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.Partners.ins_user = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/Partners", "GET", pk, "ins_user", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.Partners.del_partner = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/Partners", "GET", pk, "del_partner", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.Partners.ins_person = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/Partners", "GET", pk, "ins_person", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.Partners.del_household = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/Partners", "GET", pk, "del_household", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.Partners.ins_household = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/Partners", "GET", pk, "ins_household", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.Partners.del_user = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/Partners", "GET", pk, "del_user", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class contacts.Persons
Lino.contacts.Persons.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/contacts/Persons",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/contacts/Persons','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/contacts/Persons','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "iconCls": "x-tbar-arrow_join", "itemId": "merge_row", "menu_item_text": "Merge", "overflowText": "Merge", "panel_btn_handler": Lino.param_action_handler(Lino.contacts.Persons.merge_row), "tooltip": "Merge this object into another object of same class." }, { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "check_plausibility", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": "Check plausibility", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." }, { "auto_save": true, "itemId": "fix_problems", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": "Fix plausibility problems", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." } ], "menu_item_text": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": null, "xtype": "splitbutton" } ],
  cell_edit : true,
  title : "Persons",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 41,
  ls_store_fields : [ { "name": "name_column" }, { "name": "address_column" }, { "name": "email" }, { "name": "phone" }, { "name": "gsm" }, { "name": "id", "type": "int" }, { "name": "language" }, 'languageHidden', { "name": "url" }, { "name": "fax" }, { "name": "country" }, 'countryHidden', { "name": "city" }, 'cityHidden', { "name": "zip_code" }, { "name": "region" }, 'regionHidden', { "name": "addr1" }, { "name": "street_prefix" }, { "name": "street" }, { "name": "street_no" }, { "name": "street_box" }, { "name": "addr2" }, { "name": "prefix" }, { "name": "name" }, { "name": "remarks" }, { "name": "title" }, { "name": "first_name" }, { "name": "middle_name" }, { "name": "last_name" }, { "name": "gender" }, 'genderHidden', { "name": "birth_date" }, { "name": "private", "type": "boolean" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "age" }, { "name": "mti_navigator" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 5,
  ls_grid_configs : [  ],
  content_type : 8,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.contacts.Persons.detail;
    this.ls_insert_handler = Lino.contacts.Persons.insert;
    var ww = this.containing_window;
    var name_column_disp216 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    var address_column_disp217 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    var email218 = new Ext.form.TextField({ "maxLength": 254, "selectOnFocus": true });
    var phone219 = new Ext.form.TextField({ "maxLength": 200, "selectOnFocus": true });
    var gsm220 = new Ext.form.TextField({ "maxLength": 200, "selectOnFocus": true });
    var id221 = new Ext.form.NumberField({ "selectOnFocus": true });
    var language222 = new Lino.ChoicesFieldElement({ "selectOnFocus": true, "store": [ [ "en-us", "American English" ] ] });
    var url223 = new Lino.URLField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var fax224 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var country225 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Country...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/contacts/Persons/country" }) }) });
    var city226 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Place...", "forceSelection": false, "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/contacts/Persons/city" }) }) });
    var zip_code227 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(10), "hidden": true, "maxLength": 10, "selectOnFocus": true });
    var region228 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Place...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/contacts/Persons/region" }) }) });
    var addr1229 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var street_prefix230 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var street231 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var street_no232 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(10), "hidden": true, "maxLength": 10, "selectOnFocus": true });
    var street_box233 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(10), "hidden": true, "maxLength": 10, "selectOnFocus": true });
    var addr2234 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var prefix235 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var name236 = new Ext.form.TextField({ "allowBlank": false, "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var remarks237 = new Lino.RichTextPanel({ "containing_panel": this, "hidden": true, "selectOnFocus": true, "title": "About me" });
    var title238 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var first_name239 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var middle_name240 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var last_name241 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var gender242 = new Lino.ChoicesFieldElement({ "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": [['','<br>']].concat(Lino.system.Genders) });
    var birth_date243 = new Lino.IncompleteDateField({ "hidden": true, "selectOnFocus": true });
    var private244 = new Ext.form.Checkbox({ "checked": false, "hidden": true, "selectOnFocus": true });
    var mobile_item_disp245 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp246 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp247 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp248 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var age_disp249 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var mti_navigator_disp250 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
      city226.setContextValue('country', record ? record.data['countryHidden'] : undefined);
      city226.setContextValue('region', record ? record.data['regionHidden'] : undefined);
      region228.setContextValue('country', record ? record.data['countryHidden'] : undefined);
      remarks237.refresh();
    };
    this.onRender = function(ct, position) {
      country225.on('change',Lino.chooser_handler(city226,'country'));
      region228.on('change',Lino.chooser_handler(city226,'region'));
      country225.on('change',Lino.chooser_handler(region228,'country'));
      Lino.contacts.Persons.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "name_column", "editable": false, "header": "Name", "sortable": false, "tooltip": "(contacts.Persons.name_column) ", "width": Lino.chars2width(21) }, { "colIndex": 1, "dataIndex": "address_column", "editable": false, "header": "Address", "sortable": false, "tooltip": "(contacts.Persons.address_column) ", "width": Lino.chars2width(31) }, { "colIndex": 2, "dataIndex": "email", "editable": true, "editor": email218, "filter": { "type": "string" }, "header": "e-mail address", "sortable": true, "tooltip": "(contacts.Persons.email) The primary email address.", "width": Lino.chars2width(22) }, { "colIndex": 3, "dataIndex": "phone", "editable": true, "editor": phone219, "filter": { "type": "string" }, "header": "Phone", "sortable": true, "tooltip": "(contacts.Persons.phone) The primary phone number.  Note that Lino does not ignore\nformatting characters in phone numbers when searching.  For\nexample, if you enter \"087/12.34.56\" as a phone number, then a\nsearch for phone number containing \"1234\" will not find it.", "width": Lino.chars2width(11) }, { "colIndex": 4, "dataIndex": "gsm", "editable": true, "editor": gsm220, "filter": { "type": "string" }, "header": "GSM", "sortable": true, "tooltip": "(contacts.Persons.gsm) The primary mobile phone number.", "width": Lino.chars2width(11) }, { "align": "right", "colIndex": 5, "dataIndex": "id", "editable": true, "editor": id221, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "sortable": true, "tooltip": "(contacts.Persons.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 6, "dataIndex": "language", "editable": true, "editor": language222, "filter": { "type": "string" }, "header": "Language", "sortable": false, "tooltip": "(contacts.Persons.language) The language to use when communicating with this partner.", "width": Lino.chars2width(11) }, { "colIndex": 7, "dataIndex": "url", "editable": true, "editor": url223, "filter": { "type": "string" }, "header": "URL", "hidden": true, "sortable": true, "tooltip": "(contacts.Persons.url) ", "width": Lino.chars2width(22) }, { "colIndex": 8, "dataIndex": "fax", "editable": true, "editor": fax224, "filter": { "type": "string" }, "header": "Fax", "hidden": true, "sortable": true, "tooltip": "(contacts.Persons.fax) ", "width": Lino.chars2width(22) }, { "colIndex": 9, "dataIndex": "country", "editable": true, "editor": country225, "filter": { "type": "string" }, "header": "Country", "hidden": true, "renderer": Lino.fk_renderer('countryHidden','Lino.countries.Countries.detail'), "sortable": false, "tooltip": "(contacts.Persons.country) ", "width": Lino.chars2width(21) }, { "colIndex": 10, "dataIndex": "city", "editable": true, "editor": city226, "filter": { "type": "string" }, "header": "City", "hidden": true, "renderer": Lino.fk_renderer('cityHidden','Lino.countries.Places.detail'), "sortable": false, "tooltip": "(contacts.Persons.city) A pointer to the Place which is used as city.", "width": Lino.chars2width(21) }, { "colIndex": 11, "dataIndex": "zip_code", "editable": true, "editor": zip_code227, "filter": { "type": "string" }, "header": "Zip code", "hidden": true, "sortable": true, "tooltip": "(contacts.Persons.zip_code) ", "width": Lino.chars2width(12) }, { "colIndex": 12, "dataIndex": "region", "editable": true, "editor": region228, "filter": { "type": "string" }, "header": "County", "hidden": true, "renderer": Lino.fk_renderer('regionHidden','Lino.countries.Places.detail'), "sortable": false, "tooltip": "(contacts.Persons.region) ", "width": Lino.chars2width(21) }, { "colIndex": 13, "dataIndex": "addr1", "editable": true, "editor": addr1229, "filter": { "type": "string" }, "header": "Address line before street", "hidden": true, "sortable": true, "tooltip": "(contacts.Persons.addr1) Address line before street", "width": Lino.chars2width(22) }, { "colIndex": 14, "dataIndex": "street_prefix", "editable": true, "editor": street_prefix230, "filter": { "type": "string" }, "header": "Street prefix", "hidden": true, "sortable": true, "tooltip": "(contacts.Persons.street_prefix) Text to print before name of street, but to ignore for sorting.", "width": Lino.chars2width(22) }, { "colIndex": 15, "dataIndex": "street", "editable": true, "editor": street231, "filter": { "type": "string" }, "header": "Street", "hidden": true, "sortable": true, "tooltip": "(contacts.Persons.street) Name of street, without house number.", "width": Lino.chars2width(22) }, { "colIndex": 16, "dataIndex": "street_no", "editable": true, "editor": street_no232, "filter": { "type": "string" }, "header": "No.", "hidden": true, "sortable": true, "tooltip": "(contacts.Persons.street_no) House number.", "width": Lino.chars2width(12) }, { "colIndex": 17, "dataIndex": "street_box", "editable": true, "editor": street_box233, "filter": { "type": "string" }, "header": "Box", "hidden": true, "sortable": true, "tooltip": "(contacts.Persons.street_box) Text to print after street nuber on the same line.", "width": Lino.chars2width(12) }, { "colIndex": 18, "dataIndex": "addr2", "editable": true, "editor": addr2234, "filter": { "type": "string" }, "header": "Address line after street", "hidden": true, "sortable": true, "tooltip": "(contacts.Persons.addr2) Address line to print below street line.", "width": Lino.chars2width(22) }, { "colIndex": 19, "dataIndex": "prefix", "editable": true, "editor": prefix235, "filter": { "type": "string" }, "header": "Name prefix", "hidden": true, "sortable": true, "tooltip": "(contacts.Persons.prefix) An optional name prefix. For organisations this is inserted\nbefore the name, for persons this is inserted between first\nname and last name (see\nlino.mixins.human.Human.get_last_name_prefix()).", "width": Lino.chars2width(22) }, { "colIndex": 20, "dataIndex": "name", "editable": true, "editor": name236, "filter": { "type": "string" }, "header": "Name", "hidden": true, "sortable": true, "tooltip": "(contacts.Persons.name) The full name of this partner. Used for alphabetic sorting.\nSubclasses may hide this field and fill it automatically,\ne.g. saving a Person will automatically set her\nname field to \"last_name, first_name\".", "width": Lino.chars2width(22) }, { "colIndex": 21, "dataIndex": "remarks", "editable": true, "editor": remarks237, "filter": { "type": "string" }, "header": "About me", "hidden": true, "sortable": false, "tooltip": "(contacts.Persons.remarks) ", "width": Lino.chars2width(61) }, { "colIndex": 22, "dataIndex": "title", "editable": true, "editor": title238, "filter": { "type": "string" }, "header": "Title", "hidden": true, "sortable": true, "tooltip": "(contacts.Persons.title) Used to specify a professional position or academic\nqualification like \"Dr.\" or \"PhD\".", "width": Lino.chars2width(22) }, { "colIndex": 23, "dataIndex": "first_name", "editable": true, "editor": first_name239, "filter": { "type": "string" }, "header": "First name", "hidden": true, "sortable": true, "tooltip": "(contacts.Persons.first_name) The first name, also known as given name.", "width": Lino.chars2width(22) }, { "colIndex": 24, "dataIndex": "middle_name", "editable": true, "editor": middle_name240, "filter": { "type": "string" }, "header": "Middle name", "hidden": true, "sortable": true, "tooltip": "(contacts.Persons.middle_name) A space-separated list of all middle names.", "width": Lino.chars2width(22) }, { "colIndex": 25, "dataIndex": "last_name", "editable": true, "editor": last_name241, "filter": { "type": "string" }, "header": "Last name", "hidden": true, "sortable": true, "tooltip": "(contacts.Persons.last_name) The last name, also known as family name.", "width": Lino.chars2width(22) }, { "colIndex": 26, "dataIndex": "gender", "editable": true, "editor": gender242, "filter": { "type": "string" }, "header": "Gender", "hidden": true, "sortable": false, "tooltip": "(contacts.Persons.gender) The sex of this person (male or female).", "width": Lino.chars2width(10) }, { "colIndex": 27, "dataIndex": "birth_date", "editable": true, "editor": birth_date243, "filter": { "type": "string" }, "header": "Birth date", "hidden": true, "sortable": true, "tooltip": "(contacts.Persons.birth_date) Uncomplete dates are allowed, e.g. \n\"00.00.1980\" means \"some day in 1980\", \n\"00.07.1980\" means \"in July 1980\"\nor \"23.07.0000\" means \"on a 23th of July\".", "width": Lino.chars2width(13) }, { "colIndex": 28, "dataIndex": "private", "editable": true, "filter": { "type": "boolean" }, "header": "Private", "hidden": true, "sortable": false, "tooltip": "(contacts.Persons.private) ", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 29, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(contacts.Persons.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 30, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(contacts.Persons.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 31, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(contacts.Persons.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 32, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(contacts.Persons.workflow_buttons) ", "width": Lino.chars2width(31) }, { "colIndex": 33, "dataIndex": "age", "editable": false, "header": "Age", "hidden": true, "sortable": false, "tooltip": "(contacts.Persons.age) ", "width": Lino.chars2width(31) }, { "colIndex": 34, "dataIndex": "mti_navigator", "editable": false, "header": "See as ", "hidden": true, "sortable": false, "tooltip": "(contacts.Persons.mti_navigator) ", "width": Lino.chars2width(31) } ];
    Lino.contacts.Persons.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.contacts.Persons.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/Persons", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.Persons.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/Persons", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.Persons.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/Persons", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.contacts.Persons.insertPanel = Ext.extend(Lino.contacts.Persons.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/contacts/Persons",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.contacts.Persons.detail;
    this.ls_insert_handler = Lino.contacts.Persons.insert;
    Lino.contacts.Persons.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.contacts.Persons.insert = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.contacts.Persons.insertPanel(p);
});
Lino.contacts.Persons.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/Persons", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.Persons.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/Persons", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.Persons.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/Persons", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.contacts.Persons.detailPanel = Ext.extend(Lino.contacts.Persons.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "iconCls": "x-tbar-arrow_join", "itemId": "merge_row", "menu_item_text": "Merge", "overflowText": "Merge", "panel_btn_handler": Lino.param_action_handler(Lino.contacts.Persons.merge_row), "tooltip": "Merge this object into another object of same class." }, { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "check_plausibility", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": "Check plausibility", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." }, { "auto_save": true, "itemId": "fix_problems", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": "Fix plausibility problems", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." } ], "menu_item_text": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": null, "xtype": "splitbutton" } ],
  ls_url: "/contacts/Persons",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.contacts.Persons.detail;
    this.ls_insert_handler = Lino.contacts.Persons.insert;
    Lino.contacts.Persons.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.contacts.Persons.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.contacts.Persons.detailPanel(p);
});
Lino.contacts.Persons.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/Persons", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.Persons.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.contacts.Persons.ParamsPanel({});
  return new Lino.contacts.Persons.GridPanel(p);
});
Lino.contacts.Persons.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/Persons", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.Persons.del_company = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/Persons", "GET", pk, "del_company", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.Persons.check_plausibility = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/Persons", "GET", pk, "check_plausibility", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.Persons.ins_company = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/Persons", "GET", pk, "ins_company", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.Persons.ins_partner = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/Persons", "GET", pk, "ins_partner", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.Persons.del_person = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/Persons", "GET", pk, "del_person", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.Persons.ins_user = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/Persons", "GET", pk, "ins_user", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.Persons.del_partner = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/Persons", "GET", pk, "del_partner", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.Persons.fix_problems = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/Persons", "GET", pk, "fix_problems", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.Persons.ins_person = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/Persons", "GET", pk, "ins_person", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.Persons.del_household = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/Persons", "GET", pk, "del_household", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.Persons.ins_household = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/Persons", "GET", pk, "ins_household", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.Persons.del_user = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/Persons", "GET", pk, "del_user", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class contacts.CompanyTypes
Lino.contacts.CompanyTypes.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/contacts/CompanyTypes",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/contacts/CompanyTypes','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/contacts/CompanyTypes','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "Organization types",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 8,
  ls_store_fields : [ { "name": "name" }, { "name": "id", "type": "int" }, { "name": "abbr" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 1,
  ls_grid_configs : [  ],
  content_type : 9,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    var ww = this.containing_window;
    var name1814 = new Ext.form.TextField({ "allowBlank": false, "maxLength": 200, "selectOnFocus": true });
    var id1815 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var abbr1816 = new Ext.form.TextField({ "hidden": true, "maxLength": 30, "selectOnFocus": true });
    var mobile_item_disp1817 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp1818 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp1819 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp1820 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "name", "editable": true, "editor": name1814, "filter": { "type": "string" }, "header": "Designation", "sortable": true, "tooltip": "(contacts.CompanyTypes.name) ", "width": Lino.chars2width(22) }, { "align": "right", "colIndex": 1, "dataIndex": "id", "editable": true, "editor": id1815, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(contacts.CompanyTypes.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 2, "dataIndex": "abbr", "editable": true, "editor": abbr1816, "filter": { "type": "string" }, "header": "Abbreviation", "hidden": true, "sortable": true, "tooltip": "(contacts.CompanyTypes.abbr) ", "width": Lino.chars2width(22) }, { "colIndex": 3, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(contacts.CompanyTypes.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 4, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(contacts.CompanyTypes.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 5, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(contacts.CompanyTypes.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 6, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(contacts.CompanyTypes.workflow_buttons) ", "width": Lino.chars2width(31) } ];
    Lino.contacts.CompanyTypes.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.contacts.CompanyTypes.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/CompanyTypes", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.CompanyTypes.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/CompanyTypes", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.CompanyTypes.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/CompanyTypes", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.CompanyTypes.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/CompanyTypes", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.CompanyTypes.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/CompanyTypes", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.CompanyTypes.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/CompanyTypes", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.CompanyTypes.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.contacts.CompanyTypes.GridPanel(p);
});

// js_render_GridPanel_class contacts.Companies
Lino.contacts.Companies.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/contacts/Companies",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/contacts/Companies','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/contacts/Companies','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "itemId": "duplicate", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Duplicate the selected row.") }, "menu_item_text": "\u2687", "overflowText": "\u2687", "panel_btn_handler": Lino.row_action_handler('duplicate','GET',null), "text": " <font size=\"4\">\u2687</font>" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "iconCls": "x-tbar-arrow_join", "itemId": "merge_row", "menu_item_text": "Merge", "overflowText": "Merge", "panel_btn_handler": Lino.param_action_handler(Lino.contacts.Companies.merge_row), "tooltip": "Merge this object into another object of same class." } ],
  cell_edit : true,
  title : "Organizations",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 38,
  ls_store_fields : [ { "name": "name_column" }, { "name": "address_column" }, { "name": "email" }, { "name": "phone" }, { "name": "gsm" }, { "name": "id", "type": "int" }, { "name": "language" }, 'languageHidden', { "name": "url" }, { "name": "fax" }, { "name": "country" }, 'countryHidden', { "name": "city" }, 'cityHidden', { "name": "zip_code" }, { "name": "region" }, 'regionHidden', { "name": "addr1" }, { "name": "street_prefix" }, { "name": "street" }, { "name": "street_no" }, { "name": "street_box" }, { "name": "addr2" }, { "name": "prefix" }, { "name": "name" }, { "name": "remarks" }, { "name": "parent" }, 'parentHidden', { "name": "type" }, 'typeHidden', { "name": "private", "type": "boolean" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "mti_navigator" }, { "name": "children_summary" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 5,
  ls_grid_configs : [  ],
  content_type : 8,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.contacts.Companies.detail;
    this.ls_insert_handler = Lino.contacts.Companies.insert;
    var ww = this.containing_window;
    var name_column_disp1822 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    var address_column_disp1823 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    var email1824 = new Ext.form.TextField({ "maxLength": 254, "selectOnFocus": true });
    var phone1825 = new Ext.form.TextField({ "maxLength": 200, "selectOnFocus": true });
    var gsm1826 = new Ext.form.TextField({ "maxLength": 200, "selectOnFocus": true });
    var id1827 = new Ext.form.NumberField({ "selectOnFocus": true });
    var language1828 = new Lino.ChoicesFieldElement({ "selectOnFocus": true, "store": [ [ "en-us", "American English" ] ] });
    var url1829 = new Lino.URLField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var fax1830 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var country1831 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Country...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/contacts/Companies/country" }) }) });
    var city1832 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Place...", "forceSelection": false, "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/contacts/Companies/city" }) }) });
    var zip_code1833 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(10), "hidden": true, "maxLength": 10, "selectOnFocus": true });
    var region1834 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Place...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/contacts/Companies/region" }) }) });
    var addr11835 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var street_prefix1836 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var street1837 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var street_no1838 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(10), "hidden": true, "maxLength": 10, "selectOnFocus": true });
    var street_box1839 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(10), "hidden": true, "maxLength": 10, "selectOnFocus": true });
    var addr21840 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var prefix1841 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var name1842 = new Ext.form.TextField({ "allowBlank": false, "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var remarks1843 = new Lino.RichTextPanel({ "containing_panel": this, "hidden": true, "selectOnFocus": true, "title": "About me" });
    var parent1844 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Organization...", "hidden": true, "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/contacts/Companies/parent" }) }) });
    var type1845 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Organization type...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/contacts/Companies/type" }) }) });
    var private1846 = new Ext.form.Checkbox({ "checked": false, "hidden": true, "selectOnFocus": true });
    var mobile_item_disp1847 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp1848 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp1849 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp1850 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var mti_navigator_disp1851 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var children_summary_disp1852 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
      city1832.setContextValue('country', record ? record.data['countryHidden'] : undefined);
      city1832.setContextValue('region', record ? record.data['regionHidden'] : undefined);
      region1834.setContextValue('country', record ? record.data['countryHidden'] : undefined);
      remarks1843.refresh();
    };
    this.onRender = function(ct, position) {
      country1831.on('change',Lino.chooser_handler(city1832,'country'));
      region1834.on('change',Lino.chooser_handler(city1832,'region'));
      country1831.on('change',Lino.chooser_handler(region1834,'country'));
      Lino.contacts.Companies.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "name_column", "editable": false, "header": "Name", "sortable": false, "tooltip": "(contacts.Companies.name_column) ", "width": Lino.chars2width(21) }, { "colIndex": 1, "dataIndex": "address_column", "editable": false, "header": "Address", "sortable": false, "tooltip": "(contacts.Companies.address_column) ", "width": Lino.chars2width(31) }, { "colIndex": 2, "dataIndex": "email", "editable": true, "editor": email1824, "filter": { "type": "string" }, "header": "e-mail address", "sortable": true, "tooltip": "(contacts.Companies.email) The primary email address.", "width": Lino.chars2width(22) }, { "colIndex": 3, "dataIndex": "phone", "editable": true, "editor": phone1825, "filter": { "type": "string" }, "header": "Phone", "sortable": true, "tooltip": "(contacts.Companies.phone) The primary phone number.  Note that Lino does not ignore\nformatting characters in phone numbers when searching.  For\nexample, if you enter \"087/12.34.56\" as a phone number, then a\nsearch for phone number containing \"1234\" will not find it.", "width": Lino.chars2width(11) }, { "colIndex": 4, "dataIndex": "gsm", "editable": true, "editor": gsm1826, "filter": { "type": "string" }, "header": "GSM", "sortable": true, "tooltip": "(contacts.Companies.gsm) The primary mobile phone number.", "width": Lino.chars2width(11) }, { "align": "right", "colIndex": 5, "dataIndex": "id", "editable": true, "editor": id1827, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "sortable": true, "tooltip": "(contacts.Companies.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 6, "dataIndex": "language", "editable": true, "editor": language1828, "filter": { "type": "string" }, "header": "Language", "sortable": false, "tooltip": "(contacts.Companies.language) The language to use when communicating with this partner.", "width": Lino.chars2width(11) }, { "colIndex": 7, "dataIndex": "url", "editable": true, "editor": url1829, "filter": { "type": "string" }, "header": "URL", "hidden": true, "sortable": true, "tooltip": "(contacts.Companies.url) ", "width": Lino.chars2width(22) }, { "colIndex": 8, "dataIndex": "fax", "editable": true, "editor": fax1830, "filter": { "type": "string" }, "header": "Fax", "hidden": true, "sortable": true, "tooltip": "(contacts.Companies.fax) ", "width": Lino.chars2width(22) }, { "colIndex": 9, "dataIndex": "country", "editable": true, "editor": country1831, "filter": { "type": "string" }, "header": "Country", "hidden": true, "renderer": Lino.fk_renderer('countryHidden','Lino.countries.Countries.detail'), "sortable": false, "tooltip": "(contacts.Companies.country) ", "width": Lino.chars2width(21) }, { "colIndex": 10, "dataIndex": "city", "editable": true, "editor": city1832, "filter": { "type": "string" }, "header": "City", "hidden": true, "renderer": Lino.fk_renderer('cityHidden','Lino.countries.Places.detail'), "sortable": false, "tooltip": "(contacts.Companies.city) A pointer to the Place which is used as city.", "width": Lino.chars2width(21) }, { "colIndex": 11, "dataIndex": "zip_code", "editable": true, "editor": zip_code1833, "filter": { "type": "string" }, "header": "Zip code", "hidden": true, "sortable": true, "tooltip": "(contacts.Companies.zip_code) ", "width": Lino.chars2width(12) }, { "colIndex": 12, "dataIndex": "region", "editable": true, "editor": region1834, "filter": { "type": "string" }, "header": "County", "hidden": true, "renderer": Lino.fk_renderer('regionHidden','Lino.countries.Places.detail'), "sortable": false, "tooltip": "(contacts.Companies.region) ", "width": Lino.chars2width(21) }, { "colIndex": 13, "dataIndex": "addr1", "editable": true, "editor": addr11835, "filter": { "type": "string" }, "header": "Address line before street", "hidden": true, "sortable": true, "tooltip": "(contacts.Companies.addr1) Address line before street", "width": Lino.chars2width(22) }, { "colIndex": 14, "dataIndex": "street_prefix", "editable": true, "editor": street_prefix1836, "filter": { "type": "string" }, "header": "Street prefix", "hidden": true, "sortable": true, "tooltip": "(contacts.Companies.street_prefix) Text to print before name of street, but to ignore for sorting.", "width": Lino.chars2width(22) }, { "colIndex": 15, "dataIndex": "street", "editable": true, "editor": street1837, "filter": { "type": "string" }, "header": "Street", "hidden": true, "sortable": true, "tooltip": "(contacts.Companies.street) Name of street, without house number.", "width": Lino.chars2width(22) }, { "colIndex": 16, "dataIndex": "street_no", "editable": true, "editor": street_no1838, "filter": { "type": "string" }, "header": "No.", "hidden": true, "sortable": true, "tooltip": "(contacts.Companies.street_no) House number.", "width": Lino.chars2width(12) }, { "colIndex": 17, "dataIndex": "street_box", "editable": true, "editor": street_box1839, "filter": { "type": "string" }, "header": "Box", "hidden": true, "sortable": true, "tooltip": "(contacts.Companies.street_box) Text to print after street nuber on the same line.", "width": Lino.chars2width(12) }, { "colIndex": 18, "dataIndex": "addr2", "editable": true, "editor": addr21840, "filter": { "type": "string" }, "header": "Address line after street", "hidden": true, "sortable": true, "tooltip": "(contacts.Companies.addr2) Address line to print below street line.", "width": Lino.chars2width(22) }, { "colIndex": 19, "dataIndex": "prefix", "editable": true, "editor": prefix1841, "filter": { "type": "string" }, "header": "Name prefix", "hidden": true, "sortable": true, "tooltip": "(contacts.Companies.prefix) An optional name prefix. For organisations this is inserted\nbefore the name, for persons this is inserted between first\nname and last name (see\nlino.mixins.human.Human.get_last_name_prefix()).", "width": Lino.chars2width(22) }, { "colIndex": 20, "dataIndex": "name", "editable": true, "editor": name1842, "filter": { "type": "string" }, "header": "Name", "hidden": true, "sortable": true, "tooltip": "(contacts.Companies.name) The full name of this partner. Used for alphabetic sorting.\nSubclasses may hide this field and fill it automatically,\ne.g. saving a Person will automatically set her\nname field to \"last_name, first_name\".", "width": Lino.chars2width(22) }, { "colIndex": 21, "dataIndex": "remarks", "editable": true, "editor": remarks1843, "filter": { "type": "string" }, "header": "About me", "hidden": true, "sortable": false, "tooltip": "(contacts.Companies.remarks) ", "width": Lino.chars2width(61) }, { "colIndex": 22, "dataIndex": "parent", "editable": true, "editor": parent1844, "filter": { "type": "string" }, "header": "Parent", "hidden": true, "renderer": Lino.fk_renderer('parentHidden','Lino.contacts.Companies.detail'), "sortable": false, "tooltip": "(contacts.Companies.parent) ", "width": Lino.chars2width(21) }, { "colIndex": 23, "dataIndex": "type", "editable": true, "editor": type1845, "filter": { "type": "string" }, "header": "Organization type", "hidden": true, "sortable": false, "tooltip": "(contacts.Companies.type) Pointer to the CompanyType.", "width": Lino.chars2width(21) }, { "colIndex": 24, "dataIndex": "private", "editable": true, "filter": { "type": "boolean" }, "header": "Private", "hidden": true, "sortable": false, "tooltip": "(contacts.Companies.private) ", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 25, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(contacts.Companies.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 26, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(contacts.Companies.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 27, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(contacts.Companies.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 28, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(contacts.Companies.workflow_buttons) ", "width": Lino.chars2width(31) }, { "colIndex": 29, "dataIndex": "mti_navigator", "editable": false, "header": "See as ", "hidden": true, "sortable": false, "tooltip": "(contacts.Companies.mti_navigator) ", "width": Lino.chars2width(31) }, { "colIndex": 30, "dataIndex": "children_summary", "editable": false, "header": "Children", "hidden": true, "sortable": false, "tooltip": "(contacts.Companies.children_summary) ", "width": Lino.chars2width(31) } ];
    Lino.contacts.Companies.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.contacts.Companies.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/Companies", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.Companies.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/Companies", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.Companies.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/Companies", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.contacts.Companies.insertPanel = Ext.extend(Lino.contacts.Companies.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/contacts/Companies",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.contacts.Companies.detail;
    this.ls_insert_handler = Lino.contacts.Companies.insert;
    Lino.contacts.Companies.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.contacts.Companies.insert = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.contacts.Companies.insertPanel(p);
});
Lino.contacts.Companies.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/Companies", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.Companies.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/Companies", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.Companies.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/Companies", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.Companies.duplicate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/Companies", "GET", pk, "duplicate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.contacts.Companies.detailPanel = Ext.extend(Lino.contacts.Companies.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "itemId": "duplicate", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Duplicate the selected row.") }, "menu_item_text": "\u2687", "overflowText": "\u2687", "panel_btn_handler": Lino.row_action_handler('duplicate','GET',null), "text": " <font size=\"4\">\u2687</font>" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "iconCls": "x-tbar-arrow_join", "itemId": "merge_row", "menu_item_text": "Merge", "overflowText": "Merge", "panel_btn_handler": Lino.param_action_handler(Lino.contacts.Companies.merge_row), "tooltip": "Merge this object into another object of same class." } ],
  ls_url: "/contacts/Companies",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.contacts.Companies.detail;
    this.ls_insert_handler = Lino.contacts.Companies.insert;
    Lino.contacts.Companies.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.contacts.Companies.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.contacts.Companies.detailPanel(p);
});
Lino.contacts.Companies.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/Companies", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.Companies.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.contacts.Partners.ParamsPanel({});
  return new Lino.contacts.Companies.GridPanel(p);
});
Lino.contacts.Companies.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/Companies", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.Companies.del_company = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/Companies", "GET", pk, "del_company", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.Companies.ins_company = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/Companies", "GET", pk, "ins_company", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.Companies.ins_partner = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/Companies", "GET", pk, "ins_partner", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.Companies.del_person = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/Companies", "GET", pk, "del_person", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.Companies.ins_user = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/Companies", "GET", pk, "ins_user", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.Companies.del_partner = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/Companies", "GET", pk, "del_partner", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.Companies.ins_person = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/Companies", "GET", pk, "ins_person", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.Companies.del_household = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/Companies", "GET", pk, "del_household", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.Companies.ins_household = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/Companies", "GET", pk, "ins_household", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.Companies.del_user = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/Companies", "GET", pk, "del_user", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class contacts.RoleTypes
Lino.contacts.RoleTypes.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/contacts/RoleTypes",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/contacts/RoleTypes','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/contacts/RoleTypes','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "Functions",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 7,
  ls_store_fields : [ { "name": "id", "type": "int" }, { "name": "name" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 0,
  ls_grid_configs : [  ],
  content_type : 4,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    var ww = this.containing_window;
    var id1854 = new Ext.form.NumberField({ "selectOnFocus": true });
    var name1855 = new Ext.form.TextField({ "allowBlank": false, "maxLength": 200, "selectOnFocus": true });
    var mobile_item_disp1856 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp1857 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp1858 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp1859 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "align": "right", "colIndex": 0, "dataIndex": "id", "editable": true, "editor": id1854, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "sortable": true, "tooltip": "(contacts.RoleTypes.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 1, "dataIndex": "name", "editable": true, "editor": name1855, "filter": { "type": "string" }, "header": "Designation", "sortable": true, "tooltip": "(contacts.RoleTypes.name) ", "width": Lino.chars2width(22) }, { "colIndex": 2, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(contacts.RoleTypes.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 3, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(contacts.RoleTypes.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 4, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(contacts.RoleTypes.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 5, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(contacts.RoleTypes.workflow_buttons) ", "width": Lino.chars2width(31) } ];
    Lino.contacts.RoleTypes.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.contacts.RoleTypes.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/RoleTypes", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.RoleTypes.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/RoleTypes", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.RoleTypes.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/RoleTypes", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.RoleTypes.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/RoleTypes", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.RoleTypes.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/RoleTypes", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.RoleTypes.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/RoleTypes", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.RoleTypes.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.contacts.RoleTypes.GridPanel(p);
});

// js_render_GridPanel_class contacts.Roles
Lino.contacts.Roles.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/contacts/Roles",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/contacts/Roles','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/contacts/Roles','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "Contact Persons",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 12,
  ls_store_fields : [ { "name": "id", "type": "int" }, { "name": "type" }, 'typeHidden', { "name": "person" }, 'personHidden', { "name": "company" }, 'companyHidden', { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 0,
  ls_grid_configs : [  ],
  content_type : 7,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    var ww = this.containing_window;
    var id1861 = new Ext.form.NumberField({ "selectOnFocus": true });
    var type1862 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Function...", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/contacts/Roles/type" }) }) });
    var person1863 = new Lino.RemoteComboFieldElement({ "allowBlank": false, "emptyText": "Select a Person...", "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/contacts/Roles/person" }) }) });
    var company1864 = new Lino.RemoteComboFieldElement({ "allowBlank": false, "emptyText": "Select a Organization...", "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/contacts/Roles/company" }) }) });
    var mobile_item_disp1865 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp1866 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp1867 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp1868 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "align": "right", "colIndex": 0, "dataIndex": "id", "editable": true, "editor": id1861, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "sortable": true, "tooltip": "(contacts.Roles.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 1, "dataIndex": "type", "editable": true, "editor": type1862, "filter": { "type": "string" }, "header": "Contact Role", "sortable": false, "tooltip": "(contacts.Roles.type) The role of this person in this company.", "width": Lino.chars2width(21) }, { "colIndex": 2, "dataIndex": "person", "editable": true, "editor": person1863, "filter": { "type": "string" }, "header": "Person", "renderer": Lino.fk_renderer('personHidden','Lino.contacts.Persons.detail'), "sortable": false, "tooltip": "(contacts.Roles.person) The person having this role in this company.", "width": Lino.chars2width(21) }, { "colIndex": 3, "dataIndex": "company", "editable": true, "editor": company1864, "filter": { "type": "string" }, "header": "Organization", "renderer": Lino.fk_renderer('companyHidden','Lino.contacts.Companies.detail'), "sortable": false, "tooltip": "(contacts.Roles.company) The company where this person has a role.", "width": Lino.chars2width(21) }, { "colIndex": 4, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(contacts.Roles.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 5, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(contacts.Roles.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 6, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(contacts.Roles.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 7, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(contacts.Roles.workflow_buttons) ", "width": Lino.chars2width(31) } ];
    Lino.contacts.Roles.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.contacts.Roles.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/Roles", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.Roles.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/Roles", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.Roles.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/Roles", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.Roles.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/Roles", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.Roles.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/Roles", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.Roles.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/Roles", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.Roles.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.contacts.Roles.GridPanel(p);
});

// js_render_GridPanel_class gfks.ContentTypes
Lino.gfks.ContentTypes.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/gfks/ContentTypes",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/gfks/ContentTypes','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/gfks/ContentTypes','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "content types",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 4,
  ls_store_fields : [ { "name": "id", "type": "int" }, { "name": "app_label" }, { "name": "model" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 0,
  ls_grid_configs : [  ],
  content_type : 12,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.gfks.ContentTypes.detail;
    this.ls_insert_handler = Lino.gfks.ContentTypes.insert;
    var ww = this.containing_window;
    var id1870 = new Ext.form.NumberField({ "selectOnFocus": true });
    var app_label1871 = new Ext.form.TextField({ "allowBlank": false, "maxLength": 100, "selectOnFocus": true });
    var model1872 = new Ext.form.TextField({ "allowBlank": false, "maxLength": 100, "selectOnFocus": true });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "align": "right", "colIndex": 0, "dataIndex": "id", "editable": true, "editor": id1870, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "sortable": true, "tooltip": "(gfks.ContentTypes.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 1, "dataIndex": "app_label", "editable": true, "editor": app_label1871, "filter": { "type": "string" }, "header": "app label", "sortable": true, "tooltip": "(gfks.ContentTypes.app_label) ", "width": Lino.chars2width(22) }, { "colIndex": 2, "dataIndex": "model", "editable": true, "editor": model1872, "filter": { "type": "string" }, "header": "python model class name", "sortable": true, "tooltip": "(gfks.ContentTypes.model) ", "width": Lino.chars2width(22) } ];
    Lino.gfks.ContentTypes.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.gfks.ContentTypes.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/gfks/ContentTypes", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.gfks.ContentTypes.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/gfks/ContentTypes", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.gfks.ContentTypes.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/gfks/ContentTypes", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.gfks.ContentTypes.insertPanel = Ext.extend(Lino.gfks.ContentTypes.DetailFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/gfks/ContentTypes",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.gfks.ContentTypes.detail;
    this.ls_insert_handler = Lino.gfks.ContentTypes.insert;
    Lino.gfks.ContentTypes.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.gfks.ContentTypes.insert = new Lino.WindowAction({  }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.gfks.ContentTypes.insertPanel(p);
});
Lino.gfks.ContentTypes.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/gfks/ContentTypes", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.gfks.ContentTypes.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/gfks/ContentTypes", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.gfks.ContentTypes.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/gfks/ContentTypes", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.gfks.ContentTypes.detailPanel = Ext.extend(Lino.gfks.ContentTypes.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  ls_url: "/gfks/ContentTypes",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.gfks.ContentTypes.detail;
    this.ls_insert_handler = Lino.gfks.ContentTypes.insert;
    Lino.gfks.ContentTypes.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.gfks.ContentTypes.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.gfks.ContentTypes.detailPanel(p);
});
Lino.gfks.ContentTypes.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/gfks/ContentTypes", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.gfks.ContentTypes.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.gfks.ContentTypes.GridPanel(p);
});
Lino.gfks.ContentTypes.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/gfks/ContentTypes", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class gfks.HelpTexts
Lino.gfks.HelpTexts.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/gfks/HelpTexts",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/gfks/HelpTexts','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/gfks/HelpTexts','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "Help Texts",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 7,
  ls_store_fields : [ { "name": "field" }, { "name": "verbose_name" }, { "name": "help_text" }, { "name": "id", "type": "int" }, { "name": "content_type" }, 'content_typeHidden', { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 3,
  ls_grid_configs : [  ],
  content_type : 13,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    var ww = this.containing_window;
    var field1874 = new Lino.SimpleRemoteComboFieldElement({ "allowBlank": false, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/gfks/HelpTexts/field" }) }) });
    var verbose_name1875 = new Ext.form.TextField({ "disabled": true, "maxLength": 200 });
    var help_text1876 = new Ext.form.TextArea({ "growMax": 2000, "selectOnFocus": true });
    var id1877 = new Ext.form.NumberField({ "selectOnFocus": true });
    var content_type1878 = new Lino.RemoteComboFieldElement({ "allowBlank": false, "emptyText": "Select a content type...", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/gfks/HelpTexts/content_type" }) }) });
    this.before_row_edit = function(record) {
      field1874.setContextValue('content_type', record ? record.data['content_typeHidden'] : undefined);
    };
    this.onRender = function(ct, position) {
      content_type1878.on('change',Lino.chooser_handler(field1874,'content_type'));
      Lino.gfks.HelpTexts.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "field", "editable": true, "editor": field1874, "filter": { "type": "string" }, "header": "Field", "sortable": false, "tooltip": "(gfks.HelpTexts.field) ", "width": Lino.chars2width(11) }, { "colIndex": 1, "dataIndex": "verbose_name", "editable": false, "header": "Verbose name", "sortable": false, "tooltip": "(gfks.HelpTexts.verbose_name) ", "width": Lino.chars2width(22) }, { "colIndex": 2, "dataIndex": "help_text", "editable": true, "editor": help_text1876, "filter": { "type": "string" }, "header": "HelpText", "sortable": false, "tooltip": "(gfks.HelpTexts.help_text) ", "width": Lino.chars2width(61) }, { "align": "right", "colIndex": 3, "dataIndex": "id", "editable": true, "editor": id1877, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "sortable": true, "tooltip": "(gfks.HelpTexts.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 4, "dataIndex": "content_type", "editable": true, "editor": content_type1878, "filter": { "type": "string" }, "header": "Model", "renderer": Lino.fk_renderer('content_typeHidden','Lino.gfks.ContentTypes.detail'), "sortable": false, "tooltip": "(gfks.HelpTexts.content_type) ", "width": Lino.chars2width(21) } ];
    Lino.gfks.HelpTexts.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.gfks.HelpTexts.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/gfks/HelpTexts", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.gfks.HelpTexts.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/gfks/HelpTexts", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.gfks.HelpTexts.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/gfks/HelpTexts", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.gfks.HelpTexts.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/gfks/HelpTexts", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.gfks.HelpTexts.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/gfks/HelpTexts", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.gfks.HelpTexts.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/gfks/HelpTexts", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.gfks.HelpTexts.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.gfks.HelpTexts.GridPanel(p);
});

// js_render_GridPanel_class plausibility.Problems
Lino.plausibility.Problems.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true },
  ls_url : "/plausibility/Problems",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/plausibility/Problems','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/plausibility/Problems','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "update_problem", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('update_problem','GET',null), "text": "Check plausibility", "tooltip": "Check plausibility" }, { "auto_save": true, "itemId": "fix_problem", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problem','GET',null), "text": "Fix plausibility problems", "tooltip": "Fix plausibility problems" } ], "menu_item_text": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('update_problem','GET',null), "text": null, "xtype": "splitbutton" } ],
  cell_edit : false,
  title : "Plausibility problems",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disable_editing : true,
  disabled_actions_index : 15,
  ls_store_fields : [ { "name": "user" }, 'userHidden', { "name": "owner" }, { "name": "message" }, { "name": "checker" }, 'checkerHidden', { "name": "id", "type": "int" }, { "name": "owner_type" }, 'owner_typeHidden', { "name": "owner_id" }, 'owner_idHidden', { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "disabled_actions" } ],
  pk_index : 6,
  ls_grid_configs : [  ],
  content_type : 14,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.plausibility.Problems.detail;
    var ww = this.containing_window;
    var user1880 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a User...", "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/plausibility/Problems/user" }) }) });
    var owner_disp1881 = new Ext.form.DisplayField({ "disabled": true });
    var message1882 = new Ext.form.TextField({ "allowBlank": false, "maxLength": 250, "selectOnFocus": true });
    var checker1883 = new Lino.ChoicesFieldElement({ "allowBlank": false, "forceSelection": true, "selectOnFocus": true, "store": Lino.plausibility.Checkers });
    var id1884 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var owner_type1885 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a content type...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/plausibility/Problems/owner_type" }) }) });
    var owner_id1886 = new Lino.RemoteComboFieldElement({ "hidden": true, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/plausibility/Problems/owner_id" }) }) });
    var mobile_item_disp1887 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp1888 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp1889 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp1890 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
    };
    this.onRender = function(ct, position) {
      owner_type1885.on('change',Lino.chooser_handler(owner_id1886,'owner_type'));
      Lino.plausibility.Problems.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "user", "editable": true, "editor": user1880, "filter": { "type": "string" }, "header": "Responsible", "renderer": Lino.fk_renderer('userHidden','Lino.users.Users.detail'), "sortable": false, "tooltip": "(plausibility.Problems.user) The user reponsible\nfor fixing this problem.", "width": Lino.chars2width(11) }, { "colIndex": 1, "dataIndex": "owner", "editable": false, "header": "Controlled by", "sortable": false, "tooltip": "(plausibility.Problems.owner) ", "width": Lino.chars2width(11) }, { "colIndex": 2, "dataIndex": "message", "editable": true, "editor": message1882, "filter": { "type": "string" }, "header": "Message", "sortable": true, "tooltip": "(plausibility.Problems.message) The message text. This is a concatenation of all messages that\nwere yeld by the checker.", "width": Lino.chars2width(51) }, { "colIndex": 3, "dataIndex": "checker", "editable": true, "editor": checker1883, "filter": { "type": "string" }, "header": "Plausibility checker", "sortable": false, "tooltip": "(plausibility.Problems.checker) The Checker which reported\nthis problem.", "width": Lino.chars2width(11) }, { "align": "right", "colIndex": 4, "dataIndex": "id", "editable": true, "editor": id1884, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(plausibility.Problems.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 5, "dataIndex": "owner_type", "editable": true, "editor": owner_type1885, "filter": { "type": "string" }, "header": "Controlled by (type)", "hidden": true, "renderer": Lino.fk_renderer('owner_typeHidden','Lino.gfks.ContentTypes.detail'), "sortable": false, "tooltip": "(plausibility.Problems.owner_type) ", "width": Lino.chars2width(21) }, { "colIndex": 6, "dataIndex": "owner_id", "editable": true, "editor": owner_id1886, "filter": { "type": "string" }, "header": "Controlled by (object)", "hidden": true, "sortable": false, "tooltip": "(plausibility.Problems.owner_id) ", "width": Lino.chars2width(11) }, { "colIndex": 7, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(plausibility.Problems.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 8, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(plausibility.Problems.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 9, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(plausibility.Problems.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 10, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(plausibility.Problems.workflow_buttons) ", "width": Lino.chars2width(31) } ];
    Lino.plausibility.Problems.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.plausibility.Problems.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/plausibility/Problems", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.plausibility.Problems.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/plausibility/Problems", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.plausibility.Problems.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/plausibility/Problems", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.plausibility.Problems.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/plausibility/Problems", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.plausibility.Problems.detailPanel = Ext.extend(Lino.plausibility.Problems.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "update_problem", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('update_problem','GET',null), "text": "Check plausibility", "tooltip": "Check plausibility" }, { "auto_save": true, "itemId": "fix_problem", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problem','GET',null), "text": "Fix plausibility problems", "tooltip": "Fix plausibility problems" } ], "menu_item_text": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('update_problem','GET',null), "text": null, "xtype": "splitbutton" } ],
  ls_url: "/plausibility/Problems",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.plausibility.Problems.detail;
    Lino.plausibility.Problems.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.plausibility.Problems.detail = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(70) }, function(){
  var p = { "is_main_window": true };
  return new Lino.plausibility.Problems.detailPanel(p);
});
Lino.plausibility.Problems.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.plausibility.Problems.ParamsPanel({});
  return new Lino.plausibility.Problems.GridPanel(p);
});
Lino.plausibility.Problems.update_problem = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/plausibility/Problems", "GET", pk, "update_problem", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.plausibility.Problems.fix_problem = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/plausibility/Problems", "GET", pk, "fix_problem", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class plausibility.AllProblems
Lino.plausibility.AllProblems.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true },
  ls_url : "/plausibility/AllProblems",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/plausibility/AllProblems','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/plausibility/AllProblems','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "update_problem", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('update_problem','GET',null), "text": "Check plausibility", "tooltip": "Check plausibility" }, { "auto_save": true, "itemId": "fix_problem", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problem','GET',null), "text": "Fix plausibility problems", "tooltip": "Fix plausibility problems" } ], "menu_item_text": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('update_problem','GET',null), "text": null, "xtype": "splitbutton" } ],
  cell_edit : false,
  title : "Plausibility problems",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disable_editing : true,
  disabled_actions_index : 15,
  ls_store_fields : [ { "name": "user" }, 'userHidden', { "name": "owner" }, { "name": "message" }, { "name": "checker" }, 'checkerHidden', { "name": "id", "type": "int" }, { "name": "owner_type" }, 'owner_typeHidden', { "name": "owner_id" }, 'owner_idHidden', { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "disabled_actions" } ],
  pk_index : 6,
  ls_grid_configs : [  ],
  content_type : 14,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.plausibility.AllProblems.detail;
    var ww = this.containing_window;
    var user1892 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a User...", "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/plausibility/AllProblems/user" }) }) });
    var owner_disp1893 = new Ext.form.DisplayField({ "disabled": true });
    var message1894 = new Ext.form.TextField({ "allowBlank": false, "maxLength": 250, "selectOnFocus": true });
    var checker1895 = new Lino.ChoicesFieldElement({ "allowBlank": false, "forceSelection": true, "selectOnFocus": true, "store": Lino.plausibility.Checkers });
    var id1896 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var owner_type1897 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a content type...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/plausibility/AllProblems/owner_type" }) }) });
    var owner_id1898 = new Lino.RemoteComboFieldElement({ "hidden": true, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/plausibility/AllProblems/owner_id" }) }) });
    var mobile_item_disp1899 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp1900 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp1901 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp1902 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
    };
    this.onRender = function(ct, position) {
      owner_type1897.on('change',Lino.chooser_handler(owner_id1898,'owner_type'));
      Lino.plausibility.AllProblems.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "user", "editable": true, "editor": user1892, "filter": { "type": "string" }, "header": "Responsible", "renderer": Lino.fk_renderer('userHidden','Lino.users.Users.detail'), "sortable": false, "tooltip": "(plausibility.AllProblems.user) The user reponsible\nfor fixing this problem.", "width": Lino.chars2width(11) }, { "colIndex": 1, "dataIndex": "owner", "editable": false, "header": "Controlled by", "sortable": false, "tooltip": "(plausibility.AllProblems.owner) ", "width": Lino.chars2width(11) }, { "colIndex": 2, "dataIndex": "message", "editable": true, "editor": message1894, "filter": { "type": "string" }, "header": "Message", "sortable": true, "tooltip": "(plausibility.AllProblems.message) The message text. This is a concatenation of all messages that\nwere yeld by the checker.", "width": Lino.chars2width(51) }, { "colIndex": 3, "dataIndex": "checker", "editable": true, "editor": checker1895, "filter": { "type": "string" }, "header": "Plausibility checker", "sortable": false, "tooltip": "(plausibility.AllProblems.checker) The Checker which reported\nthis problem.", "width": Lino.chars2width(11) }, { "align": "right", "colIndex": 4, "dataIndex": "id", "editable": true, "editor": id1896, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(plausibility.AllProblems.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 5, "dataIndex": "owner_type", "editable": true, "editor": owner_type1897, "filter": { "type": "string" }, "header": "Controlled by (type)", "hidden": true, "renderer": Lino.fk_renderer('owner_typeHidden','Lino.gfks.ContentTypes.detail'), "sortable": false, "tooltip": "(plausibility.AllProblems.owner_type) ", "width": Lino.chars2width(21) }, { "colIndex": 6, "dataIndex": "owner_id", "editable": true, "editor": owner_id1898, "filter": { "type": "string" }, "header": "Controlled by (object)", "hidden": true, "sortable": false, "tooltip": "(plausibility.AllProblems.owner_id) ", "width": Lino.chars2width(11) }, { "colIndex": 7, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(plausibility.AllProblems.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 8, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(plausibility.AllProblems.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 9, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(plausibility.AllProblems.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 10, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(plausibility.AllProblems.workflow_buttons) ", "width": Lino.chars2width(31) } ];
    Lino.plausibility.AllProblems.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.plausibility.AllProblems.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/plausibility/AllProblems", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.plausibility.AllProblems.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/plausibility/AllProblems", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.plausibility.AllProblems.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/plausibility/AllProblems", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.plausibility.AllProblems.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/plausibility/AllProblems", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.plausibility.AllProblems.detailPanel = Ext.extend(Lino.plausibility.Problems.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "update_problem", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('update_problem','GET',null), "text": "Check plausibility", "tooltip": "Check plausibility" }, { "auto_save": true, "itemId": "fix_problem", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problem','GET',null), "text": "Fix plausibility problems", "tooltip": "Fix plausibility problems" } ], "menu_item_text": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('update_problem','GET',null), "text": null, "xtype": "splitbutton" } ],
  ls_url: "/plausibility/AllProblems",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.plausibility.AllProblems.detail;
    Lino.plausibility.AllProblems.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.plausibility.AllProblems.detail = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(70) }, function(){
  var p = { "is_main_window": true };
  return new Lino.plausibility.AllProblems.detailPanel(p);
});
Lino.plausibility.AllProblems.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.plausibility.Problems.ParamsPanel({});
  return new Lino.plausibility.AllProblems.GridPanel(p);
});
Lino.plausibility.AllProblems.update_problem = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/plausibility/AllProblems", "GET", pk, "update_problem", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.plausibility.AllProblems.fix_problem = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/plausibility/AllProblems", "GET", pk, "fix_problem", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class plausibility.MyProblems
Lino.plausibility.MyProblems.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true },
  ls_url : "/plausibility/MyProblems",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/plausibility/MyProblems','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/plausibility/MyProblems','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "update_problem", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('update_problem','GET',null), "text": "Check plausibility", "tooltip": "Check plausibility" }, { "auto_save": true, "itemId": "fix_problem", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problem','GET',null), "text": "Fix plausibility problems", "tooltip": "Fix plausibility problems" } ], "menu_item_text": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('update_problem','GET',null), "text": null, "xtype": "splitbutton" } ],
  cell_edit : false,
  title : "Plausibility problems assigned to me",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disable_editing : true,
  disabled_actions_index : 15,
  ls_store_fields : [ { "name": "user" }, 'userHidden', { "name": "owner" }, { "name": "message" }, { "name": "checker" }, 'checkerHidden', { "name": "id", "type": "int" }, { "name": "owner_type" }, 'owner_typeHidden', { "name": "owner_id" }, 'owner_idHidden', { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "disabled_actions" } ],
  pk_index : 6,
  ls_grid_configs : [  ],
  content_type : 14,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.plausibility.MyProblems.detail;
    var ww = this.containing_window;
    var user1904 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a User...", "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/plausibility/MyProblems/user" }) }) });
    var owner_disp1905 = new Ext.form.DisplayField({ "disabled": true });
    var message1906 = new Ext.form.TextField({ "allowBlank": false, "maxLength": 250, "selectOnFocus": true });
    var checker1907 = new Lino.ChoicesFieldElement({ "allowBlank": false, "forceSelection": true, "selectOnFocus": true, "store": Lino.plausibility.Checkers });
    var id1908 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var owner_type1909 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a content type...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/plausibility/MyProblems/owner_type" }) }) });
    var owner_id1910 = new Lino.RemoteComboFieldElement({ "hidden": true, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/plausibility/MyProblems/owner_id" }) }) });
    var mobile_item_disp1911 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp1912 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp1913 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp1914 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
    };
    this.onRender = function(ct, position) {
      owner_type1909.on('change',Lino.chooser_handler(owner_id1910,'owner_type'));
      Lino.plausibility.MyProblems.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "user", "editable": true, "editor": user1904, "filter": { "type": "string" }, "header": "Responsible", "renderer": Lino.fk_renderer('userHidden','Lino.users.Users.detail'), "sortable": false, "tooltip": "(plausibility.MyProblems.user) The user reponsible\nfor fixing this problem.", "width": Lino.chars2width(11) }, { "colIndex": 1, "dataIndex": "owner", "editable": false, "header": "Controlled by", "sortable": false, "tooltip": "(plausibility.MyProblems.owner) ", "width": Lino.chars2width(11) }, { "colIndex": 2, "dataIndex": "message", "editable": true, "editor": message1906, "filter": { "type": "string" }, "header": "Message", "sortable": true, "tooltip": "(plausibility.MyProblems.message) The message text. This is a concatenation of all messages that\nwere yeld by the checker.", "width": Lino.chars2width(51) }, { "colIndex": 3, "dataIndex": "checker", "editable": true, "editor": checker1907, "filter": { "type": "string" }, "header": "Plausibility checker", "sortable": false, "tooltip": "(plausibility.MyProblems.checker) The Checker which reported\nthis problem.", "width": Lino.chars2width(11) }, { "align": "right", "colIndex": 4, "dataIndex": "id", "editable": true, "editor": id1908, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(plausibility.MyProblems.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 5, "dataIndex": "owner_type", "editable": true, "editor": owner_type1909, "filter": { "type": "string" }, "header": "Controlled by (type)", "hidden": true, "renderer": Lino.fk_renderer('owner_typeHidden','Lino.gfks.ContentTypes.detail'), "sortable": false, "tooltip": "(plausibility.MyProblems.owner_type) ", "width": Lino.chars2width(21) }, { "colIndex": 6, "dataIndex": "owner_id", "editable": true, "editor": owner_id1910, "filter": { "type": "string" }, "header": "Controlled by (object)", "hidden": true, "sortable": false, "tooltip": "(plausibility.MyProblems.owner_id) ", "width": Lino.chars2width(11) }, { "colIndex": 7, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(plausibility.MyProblems.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 8, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(plausibility.MyProblems.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 9, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(plausibility.MyProblems.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 10, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(plausibility.MyProblems.workflow_buttons) ", "width": Lino.chars2width(31) } ];
    Lino.plausibility.MyProblems.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.plausibility.MyProblems.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/plausibility/MyProblems", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.plausibility.MyProblems.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/plausibility/MyProblems", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.plausibility.MyProblems.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/plausibility/MyProblems", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.plausibility.MyProblems.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/plausibility/MyProblems", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.plausibility.MyProblems.detailPanel = Ext.extend(Lino.plausibility.Problems.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "update_problem", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('update_problem','GET',null), "text": "Check plausibility", "tooltip": "Check plausibility" }, { "auto_save": true, "itemId": "fix_problem", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problem','GET',null), "text": "Fix plausibility problems", "tooltip": "Fix plausibility problems" } ], "menu_item_text": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('update_problem','GET',null), "text": null, "xtype": "splitbutton" } ],
  ls_url: "/plausibility/MyProblems",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.plausibility.MyProblems.detail;
    Lino.plausibility.MyProblems.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.plausibility.MyProblems.detail = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(70) }, function(){
  var p = { "is_main_window": true };
  return new Lino.plausibility.MyProblems.detailPanel(p);
});
Lino.plausibility.MyProblems.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.plausibility.Problems.ParamsPanel({});
  return new Lino.plausibility.MyProblems.GridPanel(p);
});
Lino.plausibility.MyProblems.update_problem = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/plausibility/MyProblems", "GET", pk, "update_problem", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.plausibility.MyProblems.fix_problem = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/plausibility/MyProblems", "GET", pk, "fix_problem", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class cal.RemoteCalendars
Lino.cal.RemoteCalendars.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/cal/RemoteCalendars",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/cal/RemoteCalendars','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/cal/RemoteCalendars','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "itemId": "duplicate", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Duplicate the selected row.") }, "menu_item_text": "\u2687", "overflowText": "\u2687", "panel_btn_handler": Lino.row_action_handler('duplicate','GET',null), "text": " <font size=\"4\">\u2687</font>" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "itemId": "move_up", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Move this row one row upwards.") }, "menu_item_text": "\u25b2", "overflowText": "\u25b2", "panel_btn_handler": Lino.row_action_handler('move_up','GET',null), "text": " <font size=\"4\">\u25b2</font>" }, { "auto_save": true, "itemId": "move_down", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Move this row one row downwards.") }, "menu_item_text": "\u25bc", "overflowText": "\u25bc", "panel_btn_handler": Lino.row_action_handler('move_down','GET',null), "text": " <font size=\"4\">\u25bc</font>" } ],
  cell_edit : true,
  title : "Remote Calendars",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 14,
  ls_store_fields : [ { "name": "id", "type": "int" }, { "name": "seqno", "type": "int", "useNull": true }, { "name": "type" }, 'typeHidden', { "name": "url_template" }, { "name": "username" }, { "name": "password" }, { "name": "readonly", "type": "boolean" }, { "name": "move_buttons" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 0,
  ls_grid_configs : [  ],
  content_type : 22,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    var ww = this.containing_window;
    var id1916 = new Ext.form.NumberField({ "selectOnFocus": true });
    var seqno1917 = new Ext.form.NumberField({ "selectOnFocus": true });
    var type1918 = new Lino.ChoicesFieldElement({ "allowBlank": false, "selectOnFocus": true, "store": [ [ "local", "Local Calendar" ], [ "google", "Google Calendar" ] ], "value": "local" });
    var url_template1919 = new Ext.form.TextField({ "maxLength": 200, "selectOnFocus": true });
    var username1920 = new Ext.form.TextField({ "maxLength": 200, "selectOnFocus": true });
    var password1921 = new Ext.form.TextField({ "inputType": "password", "maxLength": 200, "selectOnFocus": true });
    var readonly1922 = new Ext.form.Checkbox({ "checked": false, "selectOnFocus": true });
    var move_buttons_disp1923 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var mobile_item_disp1924 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp1925 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp1926 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp1927 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "align": "right", "colIndex": 0, "dataIndex": "id", "editable": true, "editor": id1916, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "sortable": true, "tooltip": "(cal.RemoteCalendars.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "align": "right", "colIndex": 1, "dataIndex": "seqno", "editable": true, "editor": seqno1917, "filter": { "type": "numeric" }, "format": "0", "header": "No.", "sortable": true, "tooltip": "(cal.RemoteCalendars.seqno) The sequence number of this item with its parent.", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 2, "dataIndex": "type", "editable": true, "editor": type1918, "filter": { "type": "string" }, "header": "Type", "sortable": false, "tooltip": "(cal.RemoteCalendars.type) ", "width": Lino.chars2width(21) }, { "colIndex": 3, "dataIndex": "url_template", "editable": true, "editor": url_template1919, "filter": { "type": "string" }, "header": "URL template", "sortable": true, "tooltip": "(cal.RemoteCalendars.url_template) ", "width": Lino.chars2width(22) }, { "colIndex": 4, "dataIndex": "username", "editable": true, "editor": username1920, "filter": { "type": "string" }, "header": "Username", "sortable": true, "tooltip": "(cal.RemoteCalendars.username) ", "width": Lino.chars2width(22) }, { "colIndex": 5, "dataIndex": "password", "editable": true, "editor": password1921, "filter": { "type": "string" }, "header": "Password", "sortable": true, "tooltip": "(cal.RemoteCalendars.password) ", "width": Lino.chars2width(22) }, { "colIndex": 6, "dataIndex": "readonly", "editable": true, "filter": { "type": "boolean" }, "header": "read-only", "sortable": false, "tooltip": "(cal.RemoteCalendars.readonly) ", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 7, "dataIndex": "move_buttons", "editable": false, "header": "Move", "hidden": true, "sortable": false, "tooltip": "(cal.RemoteCalendars.move_buttons) ", "width": Lino.chars2width(6) }, { "colIndex": 8, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.RemoteCalendars.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 9, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.RemoteCalendars.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 10, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(cal.RemoteCalendars.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 11, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(cal.RemoteCalendars.workflow_buttons) ", "width": Lino.chars2width(31) } ];
    Lino.cal.RemoteCalendars.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.RemoteCalendars.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/RemoteCalendars", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.RemoteCalendars.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/RemoteCalendars", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.RemoteCalendars.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/RemoteCalendars", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.RemoteCalendars.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/RemoteCalendars", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.RemoteCalendars.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/RemoteCalendars", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.RemoteCalendars.duplicate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/RemoteCalendars", "GET", pk, "duplicate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.RemoteCalendars.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/RemoteCalendars", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.RemoteCalendars.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.cal.RemoteCalendars.GridPanel(p);
});
Lino.cal.RemoteCalendars.move_up = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/RemoteCalendars", "GET", pk, "move_up", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.RemoteCalendars.move_down = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/RemoteCalendars", "GET", pk, "move_down", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class cal.Rooms
Lino.cal.Rooms.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/cal/Rooms",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/cal/Rooms','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/cal/Rooms','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "Rooms",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 14,
  ls_store_fields : [ { "name": "id", "type": "int" }, { "name": "name" }, { "name": "company" }, 'companyHidden', { "name": "contact_person" }, 'contact_personHidden', { "name": "contact_role" }, 'contact_roleHidden', { "name": "description" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 0,
  ls_grid_configs : [  ],
  content_type : 16,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.Rooms.detail;
    this.ls_insert_handler = Lino.cal.Rooms.insert;
    var ww = this.containing_window;
    var id1929 = new Ext.form.NumberField({ "selectOnFocus": true });
    var name1930 = new Ext.form.TextField({ "allowBlank": false, "maxLength": 200, "selectOnFocus": true });
    var company1931 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Organization...", "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/Rooms/company" }) }) });
    var contact_person1932 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Person...", "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/Rooms/contact_person" }) }) });
    var contact_role1933 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Function...", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/Rooms/contact_role" }) }) });
    var description1934 = new Lino.RichTextPanel({ "containing_panel": this, "selectOnFocus": true, "title": "Description" });
    var mobile_item_disp1935 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp1936 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp1937 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp1938 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
      contact_person1932.setContextValue('company', record ? record.data['companyHidden'] : undefined);
      description1934.refresh();
    };
    this.onRender = function(ct, position) {
      company1931.on('change',Lino.chooser_handler(contact_person1932,'company'));
      Lino.cal.Rooms.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "align": "right", "colIndex": 0, "dataIndex": "id", "editable": true, "editor": id1929, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "sortable": true, "tooltip": "(cal.Rooms.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 1, "dataIndex": "name", "editable": true, "editor": name1930, "filter": { "type": "string" }, "header": "Designation", "sortable": true, "tooltip": "(cal.Rooms.name) ", "width": Lino.chars2width(22) }, { "colIndex": 2, "dataIndex": "company", "editable": true, "editor": company1931, "filter": { "type": "string" }, "header": "Responsible", "renderer": Lino.fk_renderer('companyHidden','Lino.contacts.Companies.detail'), "sortable": false, "tooltip": "(cal.Rooms.company) Pointer to lino_xl.lib.contacts.models.Company.", "width": Lino.chars2width(21) }, { "colIndex": 3, "dataIndex": "contact_person", "editable": true, "editor": contact_person1932, "filter": { "type": "string" }, "header": "Contact person", "renderer": Lino.fk_renderer('contact_personHidden','Lino.contacts.Persons.detail'), "sortable": false, "tooltip": "(cal.Rooms.contact_person) Pointer to lino_xl.lib.contacts.models.Person.", "width": Lino.chars2width(21) }, { "colIndex": 4, "dataIndex": "contact_role", "editable": true, "editor": contact_role1933, "filter": { "type": "string" }, "header": "represented as", "sortable": false, "tooltip": "(cal.Rooms.contact_role) The optional Role\nof the contact_person within company.", "width": Lino.chars2width(21) }, { "colIndex": 5, "dataIndex": "description", "editable": true, "editor": description1934, "filter": { "type": "string" }, "header": "Description", "sortable": false, "tooltip": "(cal.Rooms.description) ", "width": Lino.chars2width(61) }, { "colIndex": 6, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.Rooms.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 7, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.Rooms.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 8, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(cal.Rooms.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 9, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(cal.Rooms.workflow_buttons) ", "width": Lino.chars2width(31) } ];
    Lino.cal.Rooms.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.Rooms.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Rooms", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.Rooms.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Rooms", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.Rooms.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Rooms", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.cal.Rooms.insertPanel = Ext.extend(Lino.cal.Rooms.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/cal/Rooms",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.Rooms.detail;
    this.ls_insert_handler = Lino.cal.Rooms.insert;
    Lino.cal.Rooms.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.Rooms.insert = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.cal.Rooms.insertPanel(p);
});
Lino.cal.Rooms.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Rooms", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.Rooms.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Rooms", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.Rooms.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Rooms", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.cal.Rooms.detailPanel = Ext.extend(Lino.cal.Rooms.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  ls_url: "/cal/Rooms",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.Rooms.detail;
    this.ls_insert_handler = Lino.cal.Rooms.insert;
    Lino.cal.Rooms.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.Rooms.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.cal.Rooms.detailPanel(p);
});
Lino.cal.Rooms.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Rooms", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.Rooms.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.cal.Rooms.GridPanel(p);
});
Lino.cal.Rooms.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Rooms", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class cal.AllRooms
Lino.cal.AllRooms.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/cal/AllRooms",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/cal/AllRooms','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/cal/AllRooms','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "Rooms",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 14,
  ls_store_fields : [ { "name": "id", "type": "int" }, { "name": "name" }, { "name": "company" }, 'companyHidden', { "name": "contact_person" }, 'contact_personHidden', { "name": "contact_role" }, 'contact_roleHidden', { "name": "description" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 0,
  ls_grid_configs : [  ],
  content_type : 16,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.AllRooms.detail;
    this.ls_insert_handler = Lino.cal.AllRooms.insert;
    var ww = this.containing_window;
    var id1940 = new Ext.form.NumberField({ "selectOnFocus": true });
    var name1941 = new Ext.form.TextField({ "allowBlank": false, "maxLength": 200, "selectOnFocus": true });
    var company1942 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Organization...", "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/AllRooms/company" }) }) });
    var contact_person1943 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Person...", "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/AllRooms/contact_person" }) }) });
    var contact_role1944 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Function...", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/AllRooms/contact_role" }) }) });
    var description1945 = new Lino.RichTextPanel({ "containing_panel": this, "selectOnFocus": true, "title": "Description" });
    var mobile_item_disp1946 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp1947 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp1948 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp1949 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
      contact_person1943.setContextValue('company', record ? record.data['companyHidden'] : undefined);
      description1945.refresh();
    };
    this.onRender = function(ct, position) {
      company1942.on('change',Lino.chooser_handler(contact_person1943,'company'));
      Lino.cal.AllRooms.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "align": "right", "colIndex": 0, "dataIndex": "id", "editable": true, "editor": id1940, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "sortable": true, "tooltip": "(cal.AllRooms.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 1, "dataIndex": "name", "editable": true, "editor": name1941, "filter": { "type": "string" }, "header": "Designation", "sortable": true, "tooltip": "(cal.AllRooms.name) ", "width": Lino.chars2width(22) }, { "colIndex": 2, "dataIndex": "company", "editable": true, "editor": company1942, "filter": { "type": "string" }, "header": "Responsible", "renderer": Lino.fk_renderer('companyHidden','Lino.contacts.Companies.detail'), "sortable": false, "tooltip": "(cal.AllRooms.company) Pointer to lino_xl.lib.contacts.models.Company.", "width": Lino.chars2width(21) }, { "colIndex": 3, "dataIndex": "contact_person", "editable": true, "editor": contact_person1943, "filter": { "type": "string" }, "header": "Contact person", "renderer": Lino.fk_renderer('contact_personHidden','Lino.contacts.Persons.detail'), "sortable": false, "tooltip": "(cal.AllRooms.contact_person) Pointer to lino_xl.lib.contacts.models.Person.", "width": Lino.chars2width(21) }, { "colIndex": 4, "dataIndex": "contact_role", "editable": true, "editor": contact_role1944, "filter": { "type": "string" }, "header": "represented as", "sortable": false, "tooltip": "(cal.AllRooms.contact_role) The optional Role\nof the contact_person within company.", "width": Lino.chars2width(21) }, { "colIndex": 5, "dataIndex": "description", "editable": true, "editor": description1945, "filter": { "type": "string" }, "header": "Description", "sortable": false, "tooltip": "(cal.AllRooms.description) ", "width": Lino.chars2width(61) }, { "colIndex": 6, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.AllRooms.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 7, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.AllRooms.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 8, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(cal.AllRooms.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 9, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(cal.AllRooms.workflow_buttons) ", "width": Lino.chars2width(31) } ];
    Lino.cal.AllRooms.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.AllRooms.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/AllRooms", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.AllRooms.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/AllRooms", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.AllRooms.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/AllRooms", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.cal.AllRooms.insertPanel = Ext.extend(Lino.cal.Rooms.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/cal/AllRooms",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.AllRooms.detail;
    this.ls_insert_handler = Lino.cal.AllRooms.insert;
    Lino.cal.AllRooms.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.AllRooms.insert = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.cal.AllRooms.insertPanel(p);
});
Lino.cal.AllRooms.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/AllRooms", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.AllRooms.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/AllRooms", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.AllRooms.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/AllRooms", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.cal.AllRooms.detailPanel = Ext.extend(Lino.cal.Rooms.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  ls_url: "/cal/AllRooms",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.AllRooms.detail;
    this.ls_insert_handler = Lino.cal.AllRooms.insert;
    Lino.cal.AllRooms.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.AllRooms.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.cal.AllRooms.detailPanel(p);
});
Lino.cal.AllRooms.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/AllRooms", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.AllRooms.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.cal.AllRooms.GridPanel(p);
});
Lino.cal.AllRooms.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/AllRooms", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class cal.Priorities
Lino.cal.Priorities.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/cal/Priorities",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/cal/Priorities','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/cal/Priorities','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "Priorities",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 8,
  ls_store_fields : [ { "name": "name" }, { "name": "id", "type": "int" }, { "name": "ref" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 1,
  ls_grid_configs : [  ],
  content_type : 20,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    var ww = this.containing_window;
    var name1951 = new Ext.form.TextField({ "allowBlank": false, "maxLength": 200, "selectOnFocus": true });
    var id1952 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var ref1953 = new Ext.form.TextField({ "allowBlank": false, "boxMinWidth": Lino.chars2width(1), "hidden": true, "maxLength": 1, "selectOnFocus": true });
    var mobile_item_disp1954 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp1955 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp1956 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp1957 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "name", "editable": true, "editor": name1951, "filter": { "type": "string" }, "header": "Designation", "sortable": true, "tooltip": "(cal.Priorities.name) ", "width": Lino.chars2width(22) }, { "align": "right", "colIndex": 1, "dataIndex": "id", "editable": true, "editor": id1952, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(cal.Priorities.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 2, "dataIndex": "ref", "editable": true, "editor": ref1953, "filter": { "type": "string" }, "header": "ref", "hidden": true, "sortable": true, "tooltip": "(cal.Priorities.ref) ", "width": Lino.chars2width(5) }, { "colIndex": 3, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.Priorities.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 4, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.Priorities.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 5, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(cal.Priorities.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 6, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(cal.Priorities.workflow_buttons) ", "width": Lino.chars2width(31) } ];
    Lino.cal.Priorities.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.Priorities.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Priorities", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.Priorities.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Priorities", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.Priorities.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Priorities", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.Priorities.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Priorities", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.Priorities.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Priorities", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.Priorities.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Priorities", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.Priorities.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.cal.Priorities.GridPanel(p);
});

// js_render_GridPanel_class cal.Calendars
Lino.cal.Calendars.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/cal/Calendars",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/cal/Calendars','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/cal/Calendars','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "Calendars",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 9,
  ls_store_fields : [ { "name": "id", "type": "int" }, { "name": "name" }, { "name": "description" }, { "name": "color", "type": "int", "useNull": true }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 0,
  ls_grid_configs : [  ],
  content_type : 24,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.Calendars.detail;
    this.ls_insert_handler = Lino.cal.Calendars.insert;
    var ww = this.containing_window;
    var id1959 = new Ext.form.NumberField({ "selectOnFocus": true });
    var name1960 = new Ext.form.TextField({ "allowBlank": false, "maxLength": 200, "selectOnFocus": true });
    var description1961 = new Lino.RichTextPanel({ "containing_panel": this, "selectOnFocus": true, "title": "Description" });
    var color1962 = new Ext.form.NumberField({ "allowBlank": false, "selectOnFocus": true });
    var mobile_item_disp1963 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp1964 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp1965 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp1966 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
      description1961.refresh();
    };
    this.ls_columns = [ { "align": "right", "colIndex": 0, "dataIndex": "id", "editable": true, "editor": id1959, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "sortable": true, "tooltip": "(cal.Calendars.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 1, "dataIndex": "name", "editable": true, "editor": name1960, "filter": { "type": "string" }, "header": "Designation", "sortable": true, "tooltip": "(cal.Calendars.name) ", "width": Lino.chars2width(22) }, { "colIndex": 2, "dataIndex": "description", "editable": true, "editor": description1961, "filter": { "type": "string" }, "header": "Description", "sortable": false, "tooltip": "(cal.Calendars.description) ", "width": Lino.chars2width(61) }, { "align": "right", "colIndex": 3, "dataIndex": "color", "editable": true, "editor": color1962, "filter": { "type": "numeric" }, "format": "0", "header": "color", "sortable": true, "tooltip": "(cal.Calendars.color) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 4, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.Calendars.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 5, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.Calendars.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 6, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(cal.Calendars.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 7, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(cal.Calendars.workflow_buttons) ", "width": Lino.chars2width(31) } ];
    Lino.cal.Calendars.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.Calendars.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Calendars", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.Calendars.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Calendars", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.Calendars.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Calendars", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.cal.Calendars.insertPanel = Ext.extend(Lino.cal.Calendars.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/cal/Calendars",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.Calendars.detail;
    this.ls_insert_handler = Lino.cal.Calendars.insert;
    Lino.cal.Calendars.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.Calendars.insert = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.cal.Calendars.insertPanel(p);
});
Lino.cal.Calendars.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Calendars", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.Calendars.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Calendars", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.Calendars.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Calendars", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.cal.Calendars.detailPanel = Ext.extend(Lino.cal.Calendars.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  ls_url: "/cal/Calendars",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.Calendars.detail;
    this.ls_insert_handler = Lino.cal.Calendars.insert;
    Lino.cal.Calendars.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.Calendars.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.cal.Calendars.detailPanel(p);
});
Lino.cal.Calendars.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Calendars", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.Calendars.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.cal.Calendars.GridPanel(p);
});
Lino.cal.Calendars.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Calendars", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class cal.Subscriptions
Lino.cal.Subscriptions.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/cal/Subscriptions",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/cal/Subscriptions','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/cal/Subscriptions','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "Subscriptions",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 11,
  ls_store_fields : [ { "name": "id", "type": "int" }, { "name": "user" }, 'userHidden', { "name": "calendar" }, 'calendarHidden', { "name": "is_hidden", "type": "boolean" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 0,
  ls_grid_configs : [  ],
  content_type : 26,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    var ww = this.containing_window;
    var id1968 = new Ext.form.NumberField({ "selectOnFocus": true });
    var user1969 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a User...", "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/Subscriptions/user" }) }) });
    var calendar1970 = new Lino.RemoteComboFieldElement({ "allowBlank": false, "emptyText": "Select a Calendar...", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/Subscriptions/calendar" }) }) });
    var is_hidden1971 = new Ext.form.Checkbox({ "checked": false, "selectOnFocus": true });
    var mobile_item_disp1972 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp1973 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp1974 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp1975 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "align": "right", "colIndex": 0, "dataIndex": "id", "editable": true, "editor": id1968, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "sortable": true, "tooltip": "(cal.Subscriptions.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 1, "dataIndex": "user", "editable": true, "editor": user1969, "filter": { "type": "string" }, "header": "Author", "renderer": Lino.fk_renderer('userHidden','Lino.users.Users.detail'), "sortable": false, "tooltip": "(cal.Subscriptions.user) ", "width": Lino.chars2width(21) }, { "colIndex": 2, "dataIndex": "calendar", "editable": true, "editor": calendar1970, "filter": { "type": "string" }, "header": "Calendar", "renderer": Lino.fk_renderer('calendarHidden','Lino.cal.Calendars.detail'), "sortable": false, "tooltip": "(cal.Subscriptions.calendar) The calendar you want to subscribe to.", "width": Lino.chars2width(21) }, { "colIndex": 3, "dataIndex": "is_hidden", "editable": true, "filter": { "type": "boolean" }, "header": "hidden", "sortable": false, "tooltip": "(cal.Subscriptions.is_hidden) Whether this subscription should \"\n        \"initially be displayed as a hidden calendar.", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 4, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.Subscriptions.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 5, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.Subscriptions.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 6, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(cal.Subscriptions.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 7, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(cal.Subscriptions.workflow_buttons) ", "width": Lino.chars2width(31) } ];
    Lino.cal.Subscriptions.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.Subscriptions.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Subscriptions", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.Subscriptions.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Subscriptions", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.Subscriptions.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Subscriptions", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.Subscriptions.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Subscriptions", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.Subscriptions.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Subscriptions", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.Subscriptions.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Subscriptions", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.Subscriptions.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.cal.Subscriptions.ParamsPanel({});
  return new Lino.cal.Subscriptions.GridPanel(p);
});

// js_render_GridPanel_class cal.Tasks
Lino.cal.Tasks.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/cal/Tasks",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/cal/Tasks','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/cal/Tasks','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "Tasks",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 29,
  ls_store_fields : [ { "dateFormat": "d.m.Y", "name": "start_date", "type": "date" }, { "name": "summary" }, { "name": "workflow_buttons" }, { "name": "id", "type": "int" }, { "name": "modified" }, { "name": "created" }, { "name": "start_time" }, { "name": "user" }, 'userHidden', { "name": "owner_type" }, 'owner_typeHidden', { "name": "owner_id" }, 'owner_idHidden', { "name": "description" }, { "name": "access_class" }, 'access_classHidden', { "name": "sequence", "type": "int", "useNull": true }, { "name": "auto_type", "type": "int", "useNull": true }, { "dateFormat": "d.m.Y", "name": "due_date", "type": "date" }, { "name": "due_time" }, { "name": "percent", "type": "int", "useNull": true }, { "name": "state" }, 'stateHidden', { "name": "owner" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "created_natural" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 3,
  ls_grid_configs : [  ],
  content_type : 15,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.Tasks.detail;
    this.ls_insert_handler = Lino.cal.Tasks.insert;
    var ww = this.containing_window;
    var start_date1977 = new Lino.DateField({ "selectOnFocus": true });
    var summary1978 = new Ext.form.TextField({ "maxLength": 200, "selectOnFocus": true });
    var workflow_buttons_disp1979 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    var id1980 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var modified1981 = new Ext.form.DisplayField({ "disabled": true, "hidden": true, "value": "<br>" });
    var created1982 = new Ext.form.DisplayField({ "disabled": true, "hidden": true, "value": "<br>" });
    var start_time1983 = new Lino.TimeField({ "hidden": true, "selectOnFocus": true });
    var user1984 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a User...", "hidden": true, "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/Tasks/user" }) }) });
    var owner_type1985 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a content type...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/Tasks/owner_type" }) }) });
    var owner_id1986 = new Lino.RemoteComboFieldElement({ "hidden": true, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/Tasks/owner_id" }) }) });
    var description1987 = new Ext.form.TextArea({ "growMax": 2000, "hidden": true, "selectOnFocus": true });
    var access_class1988 = new Lino.ChoicesFieldElement({ "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": [['','<br>']].concat(Lino.cal.AccessClasses) });
    var sequence1989 = new Ext.form.NumberField({ "allowBlank": false, "hidden": true, "selectOnFocus": true, "value": 0 });
    var auto_type1990 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var due_date1991 = new Lino.DateField({ "hidden": true, "selectOnFocus": true });
    var due_time1992 = new Lino.TimeField({ "hidden": true, "selectOnFocus": true });
    var percent1993 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var state1994 = new Lino.ChoicesFieldElement({ "allowBlank": false, "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": Lino.cal.TaskStates });
    var owner_disp1995 = new Ext.form.DisplayField({ "disabled": true, "hidden": true });
    var mobile_item_disp1996 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp1997 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp1998 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var created_natural_disp1999 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
      owner_id1986.setContextValue('owner_type', record ? record.data['owner_typeHidden'] : undefined);
    };
    this.onRender = function(ct, position) {
      owner_type1985.on('change',Lino.chooser_handler(owner_id1986,'owner_type'));
      Lino.cal.Tasks.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "start_date", "editable": true, "editor": start_date1977, "filter": { "dateFormat": "d.m.Y", "type": "date" }, "format": "d.m.Y", "header": "Start date", "sortable": true, "tooltip": "(cal.Tasks.start_date) ", "width": Lino.chars2width(14), "xtype": "datecolumn" }, { "colIndex": 1, "dataIndex": "summary", "editable": true, "editor": summary1978, "filter": { "type": "string" }, "header": "Short description", "sortable": true, "tooltip": "(cal.Tasks.summary) ", "width": Lino.chars2width(22) }, { "colIndex": 2, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "sortable": false, "tooltip": "(cal.Tasks.workflow_buttons) ", "width": Lino.chars2width(31) }, { "align": "right", "colIndex": 3, "dataIndex": "id", "editable": true, "editor": id1980, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(cal.Tasks.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 4, "dataIndex": "modified", "editable": false, "header": "Modified", "hidden": true, "sortable": true, "tooltip": "(cal.Tasks.modified) ", "width": Lino.chars2width(17) }, { "colIndex": 5, "dataIndex": "created", "editable": false, "header": "Created", "hidden": true, "sortable": true, "tooltip": "(cal.Tasks.created) The timestame when this object was created.", "width": Lino.chars2width(17) }, { "colIndex": 6, "dataIndex": "start_time", "editable": true, "editor": start_time1983, "header": "Start time", "hidden": true, "sortable": true, "tooltip": "(cal.Tasks.start_time) ", "width": Lino.chars2width(9) }, { "colIndex": 7, "dataIndex": "user", "editable": true, "editor": user1984, "filter": { "type": "string" }, "header": "Author", "hidden": true, "renderer": Lino.fk_renderer('userHidden','Lino.users.Users.detail'), "sortable": false, "tooltip": "(cal.Tasks.user) ", "width": Lino.chars2width(21) }, { "colIndex": 8, "dataIndex": "owner_type", "editable": true, "editor": owner_type1985, "filter": { "type": "string" }, "header": "Controlled by (type)", "hidden": true, "renderer": Lino.fk_renderer('owner_typeHidden','Lino.gfks.ContentTypes.detail'), "sortable": false, "tooltip": "(cal.Tasks.owner_type) ", "width": Lino.chars2width(21) }, { "colIndex": 9, "dataIndex": "owner_id", "editable": true, "editor": owner_id1986, "filter": { "type": "string" }, "header": "Controlled by (object)", "hidden": true, "sortable": false, "tooltip": "(cal.Tasks.owner_id) ", "width": Lino.chars2width(11) }, { "colIndex": 10, "dataIndex": "description", "editable": true, "editor": description1987, "filter": { "type": "string" }, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.Tasks.description) ", "width": Lino.chars2width(61) }, { "colIndex": 11, "dataIndex": "access_class", "editable": true, "editor": access_class1988, "filter": { "type": "string" }, "header": "Access Class", "hidden": true, "sortable": false, "tooltip": "(cal.Tasks.access_class) Whether this is private, public or between.", "width": Lino.chars2width(13) }, { "align": "right", "colIndex": 12, "dataIndex": "sequence", "editable": true, "editor": sequence1989, "filter": { "type": "numeric" }, "format": "0", "header": "Revision", "hidden": true, "sortable": true, "tooltip": "(cal.Tasks.sequence) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "align": "right", "colIndex": 13, "dataIndex": "auto_type", "editable": true, "editor": auto_type1990, "filter": { "type": "numeric" }, "format": "0", "header": "No.", "hidden": true, "sortable": true, "tooltip": "(cal.Tasks.auto_type) Contains the sequence number if this is an automatically\ngenerated component. Otherwise this field is empty.", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 14, "dataIndex": "due_date", "editable": true, "editor": due_date1991, "filter": { "dateFormat": "d.m.Y", "type": "date" }, "format": "d.m.Y", "header": "Due date", "hidden": true, "sortable": true, "tooltip": "(cal.Tasks.due_date) ", "width": Lino.chars2width(14), "xtype": "datecolumn" }, { "colIndex": 15, "dataIndex": "due_time", "editable": true, "editor": due_time1992, "header": "Due time", "hidden": true, "sortable": true, "tooltip": "(cal.Tasks.due_time) ", "width": Lino.chars2width(9) }, { "align": "right", "colIndex": 16, "dataIndex": "percent", "editable": true, "editor": percent1993, "filter": { "type": "numeric" }, "format": "0", "header": "Duration value", "hidden": true, "sortable": true, "tooltip": "(cal.Tasks.percent) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 17, "dataIndex": "state", "editable": true, "editor": state1994, "filter": { "type": "string" }, "header": "State", "hidden": true, "sortable": false, "tooltip": "(cal.Tasks.state) The state of this Task. one of TaskStates.", "width": Lino.chars2width(13) }, { "colIndex": 18, "dataIndex": "owner", "editable": false, "header": "Controlled by", "hidden": true, "sortable": false, "tooltip": "(cal.Tasks.owner) ", "width": Lino.chars2width(11) }, { "colIndex": 19, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.Tasks.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 20, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.Tasks.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 21, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(cal.Tasks.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 22, "dataIndex": "created_natural", "editable": false, "header": "Created", "hidden": true, "sortable": false, "tooltip": "(cal.Tasks.created_natural) ", "width": Lino.chars2width(31) } ];
    Lino.cal.Tasks.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.Tasks.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Tasks", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.Tasks.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Tasks", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.Tasks.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Tasks", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.cal.Tasks.insertPanel = Ext.extend(Lino.cal.Tasks.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/cal/Tasks",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.Tasks.detail;
    this.ls_insert_handler = Lino.cal.Tasks.insert;
    Lino.cal.Tasks.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.Tasks.insert = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(50) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.cal.Tasks.insertPanel(p);
});
Lino.cal.Tasks.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Tasks", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.Tasks.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Tasks", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.Tasks.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Tasks", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.cal.Tasks.detailPanel = Ext.extend(Lino.cal.Tasks.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  ls_url: "/cal/Tasks",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.Tasks.detail;
    this.ls_insert_handler = Lino.cal.Tasks.insert;
    Lino.cal.Tasks.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.Tasks.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.cal.Tasks.detailPanel(p);
});
Lino.cal.Tasks.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Tasks", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.Tasks.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.cal.Tasks.ParamsPanel({});
  return new Lino.cal.Tasks.GridPanel(p);
});
Lino.cal.Tasks.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Tasks", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.Tasks.wf1 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Tasks", "GET", pk, "wf1", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.Tasks.wf2 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Tasks", "GET", pk, "wf2", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.Tasks.wf3 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Tasks", "GET", pk, "wf3", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.Tasks.wf4 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Tasks", "GET", pk, "wf4", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class cal.MyTasks
Lino.cal.MyTasks.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/cal/MyTasks",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/cal/MyTasks','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/cal/MyTasks','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "My tasks",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 5,
  ls_store_fields : [ { "dateFormat": "d.m.Y", "name": "start_date", "type": "date" }, { "name": "summary" }, { "name": "workflow_buttons" }, { "name": "id", "type": "int" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 3,
  ls_grid_configs : [  ],
  content_type : 15,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.MyTasks.detail;
    this.ls_insert_handler = Lino.cal.MyTasks.insert;
    var ww = this.containing_window;
    var start_date2001 = new Lino.DateField({ "selectOnFocus": true });
    var summary2002 = new Ext.form.TextField({ "maxLength": 200, "selectOnFocus": true });
    var workflow_buttons_disp2003 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "start_date", "editable": true, "editor": start_date2001, "filter": { "dateFormat": "d.m.Y", "type": "date" }, "format": "d.m.Y", "header": "Start date", "sortable": true, "tooltip": "(cal.MyTasks.start_date) ", "width": Lino.chars2width(14), "xtype": "datecolumn" }, { "colIndex": 1, "dataIndex": "summary", "editable": true, "editor": summary2002, "filter": { "type": "string" }, "header": "Short description", "sortable": true, "tooltip": "(cal.MyTasks.summary) ", "width": Lino.chars2width(22) }, { "colIndex": 2, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "sortable": false, "tooltip": "(cal.MyTasks.workflow_buttons) ", "width": Lino.chars2width(31) } ];
    Lino.cal.MyTasks.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.MyTasks.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyTasks", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyTasks.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyTasks", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyTasks.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyTasks", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.cal.MyTasks.insertPanel = Ext.extend(Lino.cal.Tasks.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/cal/MyTasks",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.MyTasks.detail;
    this.ls_insert_handler = Lino.cal.MyTasks.insert;
    Lino.cal.MyTasks.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.MyTasks.insert = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(50) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.cal.MyTasks.insertPanel(p);
});
Lino.cal.MyTasks.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyTasks", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyTasks.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyTasks", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyTasks.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyTasks", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.cal.MyTasks.detailPanel = Ext.extend(Lino.cal.Tasks.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  ls_url: "/cal/MyTasks",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.MyTasks.detail;
    this.ls_insert_handler = Lino.cal.MyTasks.insert;
    Lino.cal.MyTasks.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.MyTasks.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.cal.MyTasks.detailPanel(p);
});
Lino.cal.MyTasks.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyTasks", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyTasks.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.cal.Tasks.ParamsPanel({});
  return new Lino.cal.MyTasks.GridPanel(p);
});
Lino.cal.MyTasks.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyTasks", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyTasks.wf1 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyTasks", "GET", pk, "wf1", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyTasks.wf2 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyTasks", "GET", pk, "wf2", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyTasks.wf3 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyTasks", "GET", pk, "wf3", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyTasks.wf4 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyTasks", "GET", pk, "wf4", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class cal.GuestRoles
Lino.cal.GuestRoles.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/cal/GuestRoles",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/cal/GuestRoles','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/cal/GuestRoles','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "Guest Roles",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 7,
  ls_store_fields : [ { "name": "id", "type": "int" }, { "name": "name" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 0,
  ls_grid_configs : [  ],
  content_type : 23,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.GuestRoles.detail;
    this.ls_insert_handler = Lino.cal.GuestRoles.insert;
    var ww = this.containing_window;
    var id2005 = new Ext.form.NumberField({ "selectOnFocus": true });
    var name2006 = new Ext.form.TextField({ "allowBlank": false, "maxLength": 200, "selectOnFocus": true });
    var mobile_item_disp2007 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp2008 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp2009 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp2010 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "align": "right", "colIndex": 0, "dataIndex": "id", "editable": true, "editor": id2005, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "sortable": true, "tooltip": "(cal.GuestRoles.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 1, "dataIndex": "name", "editable": true, "editor": name2006, "filter": { "type": "string" }, "header": "Designation", "sortable": true, "tooltip": "(cal.GuestRoles.name) ", "width": Lino.chars2width(22) }, { "colIndex": 2, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.GuestRoles.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 3, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.GuestRoles.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 4, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(cal.GuestRoles.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 5, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(cal.GuestRoles.workflow_buttons) ", "width": Lino.chars2width(31) } ];
    Lino.cal.GuestRoles.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.GuestRoles.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/GuestRoles", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.GuestRoles.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/GuestRoles", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.GuestRoles.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/GuestRoles", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.cal.GuestRoles.insertPanel = Ext.extend(Lino.cal.GuestRoles.DetailFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/cal/GuestRoles",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.GuestRoles.detail;
    this.ls_insert_handler = Lino.cal.GuestRoles.insert;
    Lino.cal.GuestRoles.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.GuestRoles.insert = new Lino.WindowAction({  }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.cal.GuestRoles.insertPanel(p);
});
Lino.cal.GuestRoles.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/GuestRoles", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.GuestRoles.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/GuestRoles", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.GuestRoles.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/GuestRoles", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.cal.GuestRoles.detailPanel = Ext.extend(Lino.cal.GuestRoles.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  ls_url: "/cal/GuestRoles",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.GuestRoles.detail;
    this.ls_insert_handler = Lino.cal.GuestRoles.insert;
    Lino.cal.GuestRoles.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.GuestRoles.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.cal.GuestRoles.detailPanel(p);
});
Lino.cal.GuestRoles.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/GuestRoles", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.GuestRoles.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.cal.GuestRoles.GridPanel(p);
});
Lino.cal.GuestRoles.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/GuestRoles", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class cal.Guests
Lino.cal.Guests.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/cal/Guests",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/cal/Guests','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/cal/Guests','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "Presences",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 16,
  ls_store_fields : [ { "name": "partner" }, 'partnerHidden', { "name": "role" }, 'roleHidden', { "name": "workflow_buttons" }, { "name": "remark" }, { "name": "event" }, 'eventHidden', { "name": "id", "type": "int" }, { "name": "state" }, 'stateHidden', { "name": "event_summary" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 8,
  ls_grid_configs : [  ],
  content_type : 21,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.Guests.detail;
    this.ls_insert_handler = Lino.cal.Guests.insert;
    var ww = this.containing_window;
    var partner2012 = new Lino.RemoteComboFieldElement({ "allowBlank": false, "emptyText": "Select a Person...", "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/Guests/partner" }) }) });
    var role2013 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Guest Role...", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/Guests/role" }) }) });
    var workflow_buttons_disp2014 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    var remark2015 = new Ext.form.TextField({ "maxLength": 200, "selectOnFocus": true });
    var event2016 = new Lino.RemoteComboFieldElement({ "allowBlank": false, "emptyText": "Select a Calendar entry...", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/Guests/event" }) }) });
    var id2017 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var state2018 = new Lino.ChoicesFieldElement({ "allowBlank": false, "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": Lino.cal.GuestStates });
    var event_summary_disp2019 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var mobile_item_disp2020 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp2021 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp2022 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "partner", "editable": true, "editor": partner2012, "filter": { "type": "string" }, "header": "Person", "renderer": Lino.fk_renderer('partnerHidden','Lino.contacts.Persons.detail'), "sortable": false, "tooltip": "(cal.Guests.partner) The partner to which this presence applies.", "width": Lino.chars2width(21) }, { "colIndex": 1, "dataIndex": "role", "editable": true, "editor": role2013, "filter": { "type": "string" }, "header": "Role", "renderer": Lino.fk_renderer('roleHidden','Lino.cal.GuestRoles.detail'), "sortable": false, "tooltip": "(cal.Guests.role) The role of this partner in this presence.", "width": Lino.chars2width(21) }, { "colIndex": 2, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "sortable": false, "tooltip": "(cal.Guests.workflow_buttons) ", "width": Lino.chars2width(31) }, { "colIndex": 3, "dataIndex": "remark", "editable": true, "editor": remark2015, "filter": { "type": "string" }, "header": "Remark", "sortable": true, "tooltip": "(cal.Guests.remark) ", "width": Lino.chars2width(22) }, { "colIndex": 4, "dataIndex": "event", "editable": true, "editor": event2016, "filter": { "type": "string" }, "header": "Calendar entry", "renderer": Lino.fk_renderer('eventHidden','Lino.cal.OneEvent.detail'), "sortable": false, "tooltip": "(cal.Guests.event) The calendar event to which this presence applies.", "width": Lino.chars2width(21) }, { "align": "right", "colIndex": 5, "dataIndex": "id", "editable": true, "editor": id2017, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(cal.Guests.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 6, "dataIndex": "state", "editable": true, "editor": state2018, "filter": { "type": "string" }, "header": "State", "hidden": true, "sortable": false, "tooltip": "(cal.Guests.state) The state of this presence.", "width": Lino.chars2width(11) }, { "colIndex": 7, "dataIndex": "event_summary", "editable": false, "header": "Event", "hidden": true, "sortable": false, "tooltip": "(cal.Guests.event_summary) ", "width": Lino.chars2width(31) }, { "colIndex": 8, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.Guests.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 9, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.Guests.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 10, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(cal.Guests.overview) ", "width": Lino.chars2width(31) } ];
    Lino.cal.Guests.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.Guests.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Guests", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.Guests.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Guests", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.Guests.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Guests", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.cal.Guests.insertPanel = Ext.extend(Lino.cal.Guests.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/cal/Guests",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.Guests.detail;
    this.ls_insert_handler = Lino.cal.Guests.insert;
    Lino.cal.Guests.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.Guests.insert = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.cal.Guests.insertPanel(p);
});
Lino.cal.Guests.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Guests", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.Guests.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Guests", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.Guests.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Guests", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.cal.Guests.detailPanel = Ext.extend(Lino.cal.Guests.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  ls_url: "/cal/Guests",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.Guests.detail;
    this.ls_insert_handler = Lino.cal.Guests.insert;
    Lino.cal.Guests.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.Guests.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.cal.Guests.detailPanel(p);
});
Lino.cal.Guests.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Guests", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.Guests.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.cal.Guests.ParamsPanel({});
  return new Lino.cal.Guests.GridPanel(p);
});
Lino.cal.Guests.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Guests", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.Guests.wf1 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Guests", "GET", pk, "wf1", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.Guests.wf2 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Guests", "GET", pk, "wf2", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.Guests.wf3 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Guests", "GET", pk, "wf3", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.Guests.wf4 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Guests", "GET", pk, "wf4", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class cal.AllGuests
Lino.cal.AllGuests.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/cal/AllGuests",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/cal/AllGuests','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/cal/AllGuests','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "Presences",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 16,
  ls_store_fields : [ { "name": "partner" }, 'partnerHidden', { "name": "role" }, 'roleHidden', { "name": "workflow_buttons" }, { "name": "remark" }, { "name": "event" }, 'eventHidden', { "name": "id", "type": "int" }, { "name": "state" }, 'stateHidden', { "name": "event_summary" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 8,
  ls_grid_configs : [  ],
  content_type : 21,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.AllGuests.detail;
    this.ls_insert_handler = Lino.cal.AllGuests.insert;
    var ww = this.containing_window;
    var partner2024 = new Lino.RemoteComboFieldElement({ "allowBlank": false, "emptyText": "Select a Person...", "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/AllGuests/partner" }) }) });
    var role2025 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Guest Role...", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/AllGuests/role" }) }) });
    var workflow_buttons_disp2026 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    var remark2027 = new Ext.form.TextField({ "maxLength": 200, "selectOnFocus": true });
    var event2028 = new Lino.RemoteComboFieldElement({ "allowBlank": false, "emptyText": "Select a Calendar entry...", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/AllGuests/event" }) }) });
    var id2029 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var state2030 = new Lino.ChoicesFieldElement({ "allowBlank": false, "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": Lino.cal.GuestStates });
    var event_summary_disp2031 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var mobile_item_disp2032 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp2033 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp2034 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "partner", "editable": true, "editor": partner2024, "filter": { "type": "string" }, "header": "Person", "renderer": Lino.fk_renderer('partnerHidden','Lino.contacts.Persons.detail'), "sortable": false, "tooltip": "(cal.AllGuests.partner) The partner to which this presence applies.", "width": Lino.chars2width(21) }, { "colIndex": 1, "dataIndex": "role", "editable": true, "editor": role2025, "filter": { "type": "string" }, "header": "Role", "renderer": Lino.fk_renderer('roleHidden','Lino.cal.GuestRoles.detail'), "sortable": false, "tooltip": "(cal.AllGuests.role) The role of this partner in this presence.", "width": Lino.chars2width(21) }, { "colIndex": 2, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "sortable": false, "tooltip": "(cal.AllGuests.workflow_buttons) ", "width": Lino.chars2width(31) }, { "colIndex": 3, "dataIndex": "remark", "editable": true, "editor": remark2027, "filter": { "type": "string" }, "header": "Remark", "sortable": true, "tooltip": "(cal.AllGuests.remark) ", "width": Lino.chars2width(22) }, { "colIndex": 4, "dataIndex": "event", "editable": true, "editor": event2028, "filter": { "type": "string" }, "header": "Calendar entry", "renderer": Lino.fk_renderer('eventHidden','Lino.cal.OneEvent.detail'), "sortable": false, "tooltip": "(cal.AllGuests.event) The calendar event to which this presence applies.", "width": Lino.chars2width(21) }, { "align": "right", "colIndex": 5, "dataIndex": "id", "editable": true, "editor": id2029, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(cal.AllGuests.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 6, "dataIndex": "state", "editable": true, "editor": state2030, "filter": { "type": "string" }, "header": "State", "hidden": true, "sortable": false, "tooltip": "(cal.AllGuests.state) The state of this presence.", "width": Lino.chars2width(11) }, { "colIndex": 7, "dataIndex": "event_summary", "editable": false, "header": "Event", "hidden": true, "sortable": false, "tooltip": "(cal.AllGuests.event_summary) ", "width": Lino.chars2width(31) }, { "colIndex": 8, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.AllGuests.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 9, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.AllGuests.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 10, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(cal.AllGuests.overview) ", "width": Lino.chars2width(31) } ];
    Lino.cal.AllGuests.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.AllGuests.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/AllGuests", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.AllGuests.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/AllGuests", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.AllGuests.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/AllGuests", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.cal.AllGuests.insertPanel = Ext.extend(Lino.cal.Guests.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/cal/AllGuests",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.AllGuests.detail;
    this.ls_insert_handler = Lino.cal.AllGuests.insert;
    Lino.cal.AllGuests.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.AllGuests.insert = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.cal.AllGuests.insertPanel(p);
});
Lino.cal.AllGuests.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/AllGuests", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.AllGuests.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/AllGuests", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.AllGuests.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/AllGuests", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.cal.AllGuests.detailPanel = Ext.extend(Lino.cal.Guests.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  ls_url: "/cal/AllGuests",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.AllGuests.detail;
    this.ls_insert_handler = Lino.cal.AllGuests.insert;
    Lino.cal.AllGuests.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.AllGuests.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.cal.AllGuests.detailPanel(p);
});
Lino.cal.AllGuests.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/AllGuests", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.AllGuests.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.cal.Guests.ParamsPanel({});
  return new Lino.cal.AllGuests.GridPanel(p);
});
Lino.cal.AllGuests.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/AllGuests", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.AllGuests.wf1 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/AllGuests", "GET", pk, "wf1", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.AllGuests.wf2 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/AllGuests", "GET", pk, "wf2", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.AllGuests.wf3 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/AllGuests", "GET", pk, "wf3", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.AllGuests.wf4 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/AllGuests", "GET", pk, "wf4", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class cal.MyPresences
Lino.cal.MyPresences.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/cal/MyPresences",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/cal/MyPresences','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/cal/MyPresences','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "My presences",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 18,
  ls_store_fields : [ { "dateFormat": "d.m.Y", "name": "event__start_date", "type": "date" }, { "name": "event__start_time" }, { "name": "event_summary" }, { "name": "role" }, 'roleHidden', { "name": "workflow_buttons" }, { "name": "remark" }, { "name": "id", "type": "int" }, { "name": "event" }, 'eventHidden', { "name": "partner" }, 'partnerHidden', { "name": "state" }, 'stateHidden', { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 7,
  ls_grid_configs : [  ],
  content_type : 21,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.MyPresences.detail;
    this.ls_insert_handler = Lino.cal.MyPresences.insert;
    var ww = this.containing_window;
    var event__start_date2036 = new Lino.DateField({ "disabled": true, "sortable": false });
    var event__start_time2037 = new Lino.TimeField({ "disabled": true, "sortable": false });
    var event_summary_disp2038 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    var role2039 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Guest Role...", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/MyPresences/role" }) }) });
    var workflow_buttons_disp2040 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    var remark2041 = new Ext.form.TextField({ "maxLength": 200, "selectOnFocus": true });
    var id2042 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var event2043 = new Lino.RemoteComboFieldElement({ "allowBlank": false, "emptyText": "Select a Calendar entry...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/MyPresences/event" }) }) });
    var partner2044 = new Lino.RemoteComboFieldElement({ "allowBlank": false, "emptyText": "Select a Person...", "hidden": true, "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/MyPresences/partner" }) }) });
    var state2045 = new Lino.ChoicesFieldElement({ "allowBlank": false, "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": Lino.cal.GuestStates });
    var mobile_item_disp2046 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp2047 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp2048 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "event__start_date", "editable": false, "filter": { "dateFormat": "d.m.Y", "type": "date" }, "format": "d.m.Y", "header": "Start date", "sortable": true, "tooltip": "(cal.MyPresences.event__start_date) ", "width": Lino.chars2width(14), "xtype": "datecolumn" }, { "colIndex": 1, "dataIndex": "event__start_time", "editable": false, "header": "Start time", "sortable": true, "tooltip": "(cal.MyPresences.event__start_time) ", "width": Lino.chars2width(9) }, { "colIndex": 2, "dataIndex": "event_summary", "editable": false, "header": "Event", "sortable": false, "tooltip": "(cal.MyPresences.event_summary) ", "width": Lino.chars2width(31) }, { "colIndex": 3, "dataIndex": "role", "editable": true, "editor": role2039, "filter": { "type": "string" }, "header": "Role", "renderer": Lino.fk_renderer('roleHidden','Lino.cal.GuestRoles.detail'), "sortable": false, "tooltip": "(cal.MyPresences.role) The role of this partner in this presence.", "width": Lino.chars2width(21) }, { "colIndex": 4, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "sortable": false, "tooltip": "(cal.MyPresences.workflow_buttons) ", "width": Lino.chars2width(31) }, { "colIndex": 5, "dataIndex": "remark", "editable": true, "editor": remark2041, "filter": { "type": "string" }, "header": "Remark", "sortable": true, "tooltip": "(cal.MyPresences.remark) ", "width": Lino.chars2width(22) }, { "align": "right", "colIndex": 6, "dataIndex": "id", "editable": true, "editor": id2042, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(cal.MyPresences.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 7, "dataIndex": "event", "editable": true, "editor": event2043, "filter": { "type": "string" }, "header": "Calendar entry", "hidden": true, "renderer": Lino.fk_renderer('eventHidden','Lino.cal.OneEvent.detail'), "sortable": false, "tooltip": "(cal.MyPresences.event) The calendar event to which this presence applies.", "width": Lino.chars2width(21) }, { "colIndex": 8, "dataIndex": "partner", "editable": true, "editor": partner2044, "filter": { "type": "string" }, "header": "Person", "hidden": true, "renderer": Lino.fk_renderer('partnerHidden','Lino.contacts.Persons.detail'), "sortable": false, "tooltip": "(cal.MyPresences.partner) The partner to which this presence applies.", "width": Lino.chars2width(21) }, { "colIndex": 9, "dataIndex": "state", "editable": true, "editor": state2045, "filter": { "type": "string" }, "header": "State", "hidden": true, "sortable": false, "tooltip": "(cal.MyPresences.state) The state of this presence.", "width": Lino.chars2width(11) }, { "colIndex": 10, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.MyPresences.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 11, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.MyPresences.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 12, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(cal.MyPresences.overview) ", "width": Lino.chars2width(31) } ];
    Lino.cal.MyPresences.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.MyPresences.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyPresences", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyPresences.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyPresences", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyPresences.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyPresences", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.cal.MyPresences.insertPanel = Ext.extend(Lino.cal.Guests.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/cal/MyPresences",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.MyPresences.detail;
    this.ls_insert_handler = Lino.cal.MyPresences.insert;
    Lino.cal.MyPresences.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.MyPresences.insert = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.cal.MyPresences.insertPanel(p);
});
Lino.cal.MyPresences.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyPresences", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyPresences.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyPresences", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyPresences.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyPresences", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.cal.MyPresences.detailPanel = Ext.extend(Lino.cal.Guests.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  ls_url: "/cal/MyPresences",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.MyPresences.detail;
    this.ls_insert_handler = Lino.cal.MyPresences.insert;
    Lino.cal.MyPresences.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.MyPresences.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.cal.MyPresences.detailPanel(p);
});
Lino.cal.MyPresences.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyPresences", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyPresences.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.cal.Guests.ParamsPanel({});
  return new Lino.cal.MyPresences.GridPanel(p);
});
Lino.cal.MyPresences.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyPresences", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyPresences.wf1 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyPresences", "GET", pk, "wf1", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyPresences.wf2 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyPresences", "GET", pk, "wf2", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyPresences.wf3 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyPresences", "GET", pk, "wf3", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyPresences.wf4 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyPresences", "GET", pk, "wf4", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class cal.MyPendingPresences
Lino.cal.MyPendingPresences.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/cal/MyPendingPresences",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/cal/MyPendingPresences','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/cal/MyPendingPresences','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "My pending invitations",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 7,
  ls_store_fields : [ { "name": "event__when_text" }, { "name": "role" }, 'roleHidden', { "name": "workflow_buttons" }, { "name": "remark" }, { "name": "id", "type": "int" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 5,
  ls_grid_configs : [  ],
  content_type : 21,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.MyPendingPresences.detail;
    this.ls_insert_handler = Lino.cal.MyPendingPresences.insert;
    var ww = this.containing_window;
    var event__when_text_disp2050 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "sortable": false, "value": "<br/>" });
    var role2051 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Guest Role...", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/MyPendingPresences/role" }) }) });
    var workflow_buttons_disp2052 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    var remark2053 = new Ext.form.TextField({ "maxLength": 200, "selectOnFocus": true });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "event__when_text", "editable": false, "header": "When", "sortable": false, "tooltip": "(cal.MyPendingPresences.event__when_text) ", "width": Lino.chars2width(31) }, { "colIndex": 1, "dataIndex": "role", "editable": true, "editor": role2051, "filter": { "type": "string" }, "header": "Role", "renderer": Lino.fk_renderer('roleHidden','Lino.cal.GuestRoles.detail'), "sortable": false, "tooltip": "(cal.MyPendingPresences.role) The role of this partner in this presence.", "width": Lino.chars2width(21) }, { "colIndex": 2, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "sortable": false, "tooltip": "(cal.MyPendingPresences.workflow_buttons) ", "width": Lino.chars2width(31) }, { "colIndex": 3, "dataIndex": "remark", "editable": true, "editor": remark2053, "filter": { "type": "string" }, "header": "Remark", "sortable": true, "tooltip": "(cal.MyPendingPresences.remark) ", "width": Lino.chars2width(22) } ];
    Lino.cal.MyPendingPresences.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.MyPendingPresences.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyPendingPresences", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyPendingPresences.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyPendingPresences", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyPendingPresences.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyPendingPresences", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.cal.MyPendingPresences.insertPanel = Ext.extend(Lino.cal.Guests.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/cal/MyPendingPresences",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.MyPendingPresences.detail;
    this.ls_insert_handler = Lino.cal.MyPendingPresences.insert;
    Lino.cal.MyPendingPresences.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.MyPendingPresences.insert = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.cal.MyPendingPresences.insertPanel(p);
});
Lino.cal.MyPendingPresences.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyPendingPresences", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyPendingPresences.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyPendingPresences", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyPendingPresences.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyPendingPresences", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.cal.MyPendingPresences.detailPanel = Ext.extend(Lino.cal.Guests.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  ls_url: "/cal/MyPendingPresences",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.MyPendingPresences.detail;
    this.ls_insert_handler = Lino.cal.MyPendingPresences.insert;
    Lino.cal.MyPendingPresences.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.MyPendingPresences.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.cal.MyPendingPresences.detailPanel(p);
});
Lino.cal.MyPendingPresences.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyPendingPresences", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyPendingPresences.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.cal.Guests.ParamsPanel({});
  return new Lino.cal.MyPendingPresences.GridPanel(p);
});
Lino.cal.MyPendingPresences.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyPendingPresences", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyPendingPresences.wf1 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyPendingPresences", "GET", pk, "wf1", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyPendingPresences.wf2 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyPendingPresences", "GET", pk, "wf2", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyPendingPresences.wf3 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyPendingPresences", "GET", pk, "wf3", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyPendingPresences.wf4 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyPendingPresences", "GET", pk, "wf4", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class cal.MyGuests
Lino.cal.MyGuests.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/cal/MyGuests",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/cal/MyGuests','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/cal/MyGuests','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "My guests",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 18,
  ls_store_fields : [ { "dateFormat": "d.m.Y", "name": "event__start_date", "type": "date" }, { "name": "event__start_time" }, { "name": "event_summary" }, { "name": "role" }, 'roleHidden', { "name": "workflow_buttons" }, { "name": "remark" }, { "name": "id", "type": "int" }, { "name": "event" }, 'eventHidden', { "name": "partner" }, 'partnerHidden', { "name": "state" }, 'stateHidden', { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 7,
  ls_grid_configs : [  ],
  content_type : 21,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.MyGuests.detail;
    this.ls_insert_handler = Lino.cal.MyGuests.insert;
    var ww = this.containing_window;
    var event__start_date2055 = new Lino.DateField({ "disabled": true, "sortable": false });
    var event__start_time2056 = new Lino.TimeField({ "disabled": true, "sortable": false });
    var event_summary_disp2057 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    var role2058 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Guest Role...", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/MyGuests/role" }) }) });
    var workflow_buttons_disp2059 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    var remark2060 = new Ext.form.TextField({ "maxLength": 200, "selectOnFocus": true });
    var id2061 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var event2062 = new Lino.RemoteComboFieldElement({ "allowBlank": false, "emptyText": "Select a Calendar entry...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/MyGuests/event" }) }) });
    var partner2063 = new Lino.RemoteComboFieldElement({ "allowBlank": false, "emptyText": "Select a Person...", "hidden": true, "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/MyGuests/partner" }) }) });
    var state2064 = new Lino.ChoicesFieldElement({ "allowBlank": false, "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": Lino.cal.GuestStates });
    var mobile_item_disp2065 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp2066 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp2067 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "event__start_date", "editable": false, "filter": { "dateFormat": "d.m.Y", "type": "date" }, "format": "d.m.Y", "header": "Start date", "sortable": true, "tooltip": "(cal.MyGuests.event__start_date) ", "width": Lino.chars2width(14), "xtype": "datecolumn" }, { "colIndex": 1, "dataIndex": "event__start_time", "editable": false, "header": "Start time", "sortable": true, "tooltip": "(cal.MyGuests.event__start_time) ", "width": Lino.chars2width(9) }, { "colIndex": 2, "dataIndex": "event_summary", "editable": false, "header": "Event", "sortable": false, "tooltip": "(cal.MyGuests.event_summary) ", "width": Lino.chars2width(31) }, { "colIndex": 3, "dataIndex": "role", "editable": true, "editor": role2058, "filter": { "type": "string" }, "header": "Role", "renderer": Lino.fk_renderer('roleHidden','Lino.cal.GuestRoles.detail'), "sortable": false, "tooltip": "(cal.MyGuests.role) The role of this partner in this presence.", "width": Lino.chars2width(21) }, { "colIndex": 4, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "sortable": false, "tooltip": "(cal.MyGuests.workflow_buttons) ", "width": Lino.chars2width(31) }, { "colIndex": 5, "dataIndex": "remark", "editable": true, "editor": remark2060, "filter": { "type": "string" }, "header": "Remark", "sortable": true, "tooltip": "(cal.MyGuests.remark) ", "width": Lino.chars2width(22) }, { "align": "right", "colIndex": 6, "dataIndex": "id", "editable": true, "editor": id2061, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(cal.MyGuests.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 7, "dataIndex": "event", "editable": true, "editor": event2062, "filter": { "type": "string" }, "header": "Calendar entry", "hidden": true, "renderer": Lino.fk_renderer('eventHidden','Lino.cal.OneEvent.detail'), "sortable": false, "tooltip": "(cal.MyGuests.event) The calendar event to which this presence applies.", "width": Lino.chars2width(21) }, { "colIndex": 8, "dataIndex": "partner", "editable": true, "editor": partner2063, "filter": { "type": "string" }, "header": "Person", "hidden": true, "renderer": Lino.fk_renderer('partnerHidden','Lino.contacts.Persons.detail'), "sortable": false, "tooltip": "(cal.MyGuests.partner) The partner to which this presence applies.", "width": Lino.chars2width(21) }, { "colIndex": 9, "dataIndex": "state", "editable": true, "editor": state2064, "filter": { "type": "string" }, "header": "State", "hidden": true, "sortable": false, "tooltip": "(cal.MyGuests.state) The state of this presence.", "width": Lino.chars2width(11) }, { "colIndex": 10, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.MyGuests.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 11, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.MyGuests.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 12, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(cal.MyGuests.overview) ", "width": Lino.chars2width(31) } ];
    Lino.cal.MyGuests.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.MyGuests.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyGuests", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyGuests.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyGuests", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyGuests.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyGuests", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.cal.MyGuests.insertPanel = Ext.extend(Lino.cal.Guests.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/cal/MyGuests",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.MyGuests.detail;
    this.ls_insert_handler = Lino.cal.MyGuests.insert;
    Lino.cal.MyGuests.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.MyGuests.insert = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.cal.MyGuests.insertPanel(p);
});
Lino.cal.MyGuests.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyGuests", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyGuests.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyGuests", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyGuests.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyGuests", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.cal.MyGuests.detailPanel = Ext.extend(Lino.cal.Guests.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  ls_url: "/cal/MyGuests",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.MyGuests.detail;
    this.ls_insert_handler = Lino.cal.MyGuests.insert;
    Lino.cal.MyGuests.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.MyGuests.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.cal.MyGuests.detailPanel(p);
});
Lino.cal.MyGuests.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyGuests", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyGuests.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.cal.Guests.ParamsPanel({});
  return new Lino.cal.MyGuests.GridPanel(p);
});
Lino.cal.MyGuests.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyGuests", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyGuests.wf1 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyGuests", "GET", pk, "wf1", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyGuests.wf2 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyGuests", "GET", pk, "wf2", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyGuests.wf3 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyGuests", "GET", pk, "wf3", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyGuests.wf4 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyGuests", "GET", pk, "wf4", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class cal.EventTypes
Lino.cal.EventTypes.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/cal/EventTypes",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/cal/EventTypes','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/cal/EventTypes','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "itemId": "duplicate", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Duplicate the selected row.") }, "menu_item_text": "\u2687", "overflowText": "\u2687", "panel_btn_handler": Lino.row_action_handler('duplicate','GET',null), "text": " <font size=\"4\">\u2687</font>" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "itemId": "move_up", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Move this row one row upwards.") }, "menu_item_text": "\u25b2", "overflowText": "\u25b2", "panel_btn_handler": Lino.row_action_handler('move_up','GET',null), "text": " <font size=\"4\">\u25b2</font>" }, { "auto_save": true, "itemId": "move_down", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Move this row one row downwards.") }, "menu_item_text": "\u25bc", "overflowText": "\u25bc", "panel_btn_handler": Lino.row_action_handler('move_down','GET',null), "text": " <font size=\"4\">\u25bc</font>" } ],
  cell_edit : true,
  title : "Calendar entry types",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 19,
  ls_store_fields : [ { "name": "name" }, { "name": "id", "type": "int" }, { "name": "seqno", "type": "int", "useNull": true }, { "name": "attach_to_email", "type": "boolean" }, { "name": "email_template" }, { "name": "description" }, { "name": "is_appointment", "type": "boolean" }, { "name": "all_rooms", "type": "boolean" }, { "name": "locks_user", "type": "boolean" }, { "dateFormat": "d.m.Y", "name": "start_date", "type": "date" }, { "name": "event_label" }, { "name": "max_conflicting", "type": "int", "useNull": true }, { "name": "max_days", "type": "int", "useNull": true }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "move_buttons" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 1,
  ls_grid_configs : [  ],
  content_type : 18,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.EventTypes.detail;
    this.ls_insert_handler = Lino.cal.EventTypes.insert;
    var ww = this.containing_window;
    var name2069 = new Ext.form.TextField({ "allowBlank": false, "maxLength": 200, "selectOnFocus": true });
    var id2070 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var seqno2071 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var attach_to_email2072 = new Ext.form.Checkbox({ "checked": false, "hidden": true, "selectOnFocus": true });
    var email_template2073 = new Lino.SimpleRemoteComboFieldElement({ "hidden": true, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/EventTypes/email_template" }) }) });
    var description2074 = new Lino.RichTextPanel({ "containing_panel": this, "hidden": true, "selectOnFocus": true, "title": "Description" });
    var is_appointment2075 = new Ext.form.Checkbox({ "checked": true, "hidden": true, "selectOnFocus": true });
    var all_rooms2076 = new Ext.form.Checkbox({ "checked": false, "hidden": true, "selectOnFocus": true });
    var locks_user2077 = new Ext.form.Checkbox({ "checked": false, "hidden": true, "selectOnFocus": true });
    var start_date2078 = new Lino.DateField({ "hidden": true, "selectOnFocus": true });
    var event_label2079 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var max_conflicting2080 = new Ext.form.NumberField({ "allowBlank": false, "hidden": true, "selectOnFocus": true, "value": 1 });
    var max_days2081 = new Ext.form.NumberField({ "allowBlank": false, "hidden": true, "selectOnFocus": true, "value": 1 });
    var mobile_item_disp2082 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp2083 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp2084 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp2085 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var move_buttons_disp2086 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
      description2074.refresh();
    };
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "name", "editable": true, "editor": name2069, "filter": { "type": "string" }, "header": "Designation", "sortable": true, "tooltip": "(cal.EventTypes.name) ", "width": Lino.chars2width(22) }, { "align": "right", "colIndex": 1, "dataIndex": "id", "editable": true, "editor": id2070, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(cal.EventTypes.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "align": "right", "colIndex": 2, "dataIndex": "seqno", "editable": true, "editor": seqno2071, "filter": { "type": "numeric" }, "format": "0", "header": "No.", "hidden": true, "sortable": true, "tooltip": "(cal.EventTypes.seqno) The sequence number of this item with its parent.", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 3, "dataIndex": "attach_to_email", "editable": true, "filter": { "type": "boolean" }, "header": "Attach to email", "hidden": true, "sortable": false, "tooltip": "(cal.EventTypes.attach_to_email) Whether the printable file should be attached to the email\nwhen creating an email from a mailable of this type.\n", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 4, "dataIndex": "email_template", "editable": true, "editor": email_template2073, "filter": { "type": "string" }, "header": "Email template", "hidden": true, "sortable": false, "tooltip": "(cal.EventTypes.email_template) The name of the file to be used as template when creating an email from a mailable of this type.", "width": Lino.chars2width(11) }, { "colIndex": 5, "dataIndex": "description", "editable": true, "editor": description2074, "filter": { "type": "string" }, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.EventTypes.description) ", "width": Lino.chars2width(61) }, { "colIndex": 6, "dataIndex": "is_appointment", "editable": true, "filter": { "type": "boolean" }, "header": "Appointment", "hidden": true, "sortable": false, "tooltip": "(cal.EventTypes.is_appointment) Whether entries of this type should be considered\n\"appointments\" (i.e. whose time and place have been agreed\nupon with other users or external parties).", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 7, "dataIndex": "all_rooms", "editable": true, "filter": { "type": "boolean" }, "header": "Locks all rooms", "hidden": true, "sortable": false, "tooltip": "(cal.EventTypes.all_rooms) ", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 8, "dataIndex": "locks_user", "editable": true, "filter": { "type": "boolean" }, "header": "Locks the user", "hidden": true, "sortable": false, "tooltip": "(cal.EventTypes.locks_user) Whether calendar entries of this type make the user\nunavailable for other locking events at the same time.", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 9, "dataIndex": "start_date", "editable": true, "editor": start_date2078, "filter": { "dateFormat": "d.m.Y", "type": "date" }, "format": "d.m.Y", "header": "Start date", "hidden": true, "sortable": true, "tooltip": "(cal.EventTypes.start_date) ", "width": Lino.chars2width(14), "xtype": "datecolumn" }, { "colIndex": 10, "dataIndex": "event_label", "editable": true, "editor": event_label2079, "filter": { "type": "string" }, "header": "Entry label", "hidden": true, "sortable": true, "tooltip": "(cal.EventTypes.event_label) Default text for summary of new entries.", "width": Lino.chars2width(22) }, { "align": "right", "colIndex": 11, "dataIndex": "max_conflicting", "editable": true, "editor": max_conflicting2080, "filter": { "type": "numeric" }, "format": "0", "header": "Simultaneous entries", "hidden": true, "sortable": true, "tooltip": "(cal.EventTypes.max_conflicting) How many conflicting events should be tolerated.", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "align": "right", "colIndex": 12, "dataIndex": "max_days", "editable": true, "editor": max_days2081, "filter": { "type": "numeric" }, "format": "0", "header": "Maximum days", "hidden": true, "sortable": true, "tooltip": "(cal.EventTypes.max_days) The maximal number of days allowed as duration.", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 13, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.EventTypes.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 14, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.EventTypes.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 15, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(cal.EventTypes.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 16, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(cal.EventTypes.workflow_buttons) ", "width": Lino.chars2width(31) }, { "colIndex": 17, "dataIndex": "move_buttons", "editable": false, "header": "Move", "hidden": true, "sortable": false, "tooltip": "(cal.EventTypes.move_buttons) ", "width": Lino.chars2width(6) } ];
    Lino.cal.EventTypes.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.EventTypes.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EventTypes", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EventTypes.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EventTypes", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EventTypes.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EventTypes", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.cal.EventTypes.insertPanel = Ext.extend(Lino.cal.EventTypes.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/cal/EventTypes",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.EventTypes.detail;
    this.ls_insert_handler = Lino.cal.EventTypes.insert;
    Lino.cal.EventTypes.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.EventTypes.insert = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.cal.EventTypes.insertPanel(p);
});
Lino.cal.EventTypes.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EventTypes", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EventTypes.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EventTypes", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EventTypes.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EventTypes", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EventTypes.duplicate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EventTypes", "GET", pk, "duplicate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.cal.EventTypes.detailPanel = Ext.extend(Lino.cal.EventTypes.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "itemId": "duplicate", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Duplicate the selected row.") }, "menu_item_text": "\u2687", "overflowText": "\u2687", "panel_btn_handler": Lino.row_action_handler('duplicate','GET',null), "text": " <font size=\"4\">\u2687</font>" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "itemId": "move_up", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Move this row one row upwards.") }, "menu_item_text": "\u25b2", "overflowText": "\u25b2", "panel_btn_handler": Lino.row_action_handler('move_up','GET',null), "text": " <font size=\"4\">\u25b2</font>" }, { "auto_save": true, "itemId": "move_down", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Move this row one row downwards.") }, "menu_item_text": "\u25bc", "overflowText": "\u25bc", "panel_btn_handler": Lino.row_action_handler('move_down','GET',null), "text": " <font size=\"4\">\u25bc</font>" } ],
  ls_url: "/cal/EventTypes",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.EventTypes.detail;
    this.ls_insert_handler = Lino.cal.EventTypes.insert;
    Lino.cal.EventTypes.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.EventTypes.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.cal.EventTypes.detailPanel(p);
});
Lino.cal.EventTypes.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EventTypes", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EventTypes.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.cal.EventTypes.GridPanel(p);
});
Lino.cal.EventTypes.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EventTypes", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EventTypes.move_up = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EventTypes", "GET", pk, "move_up", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EventTypes.move_down = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EventTypes", "GET", pk, "move_down", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class cal.RecurrentEvents
Lino.cal.RecurrentEvents.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/cal/RecurrentEvents",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/cal/RecurrentEvents','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/cal/RecurrentEvents','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "itemId": "do_update_events", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create or update the automatic events controlled by this generator.") }, "menu_item_text": "Update Events", "overflowText": "Update Events", "panel_btn_handler": Lino.row_action_handler('do_update_events','GET',null), "text": "\u00a0\u26a1\u00a0" } ],
  cell_edit : true,
  title : "Recurring events",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 31,
  ls_store_fields : [ { "dateFormat": "d.m.Y", "name": "start_date", "type": "date" }, { "dateFormat": "d.m.Y", "name": "end_date", "type": "date" }, { "name": "name" }, { "name": "every_unit" }, 'every_unitHidden', { "name": "event_type" }, 'event_typeHidden', { "name": "id", "type": "int" }, { "name": "start_time" }, { "name": "end_time" }, { "name": "user" }, 'userHidden', { "name": "every", "type": "int", "useNull": true }, { "name": "monday", "type": "boolean" }, { "name": "tuesday", "type": "boolean" }, { "name": "wednesday", "type": "boolean" }, { "name": "thursday", "type": "boolean" }, { "name": "friday", "type": "boolean" }, { "name": "saturday", "type": "boolean" }, { "name": "sunday", "type": "boolean" }, { "name": "max_events", "type": "int", "useNull": true }, { "name": "description" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "what_text" }, { "name": "weekdays_text" }, { "name": "times_text" }, { "name": "duration" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 7,
  ls_grid_configs : [  ],
  content_type : 17,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.RecurrentEvents.detail;
    this.ls_insert_handler = Lino.cal.RecurrentEvents.insert;
    var ww = this.containing_window;
    var start_date2088 = new Lino.DateField({ "selectOnFocus": true });
    var end_date2089 = new Lino.DateField({ "selectOnFocus": true });
    var name2090 = new Ext.form.TextField({ "allowBlank": false, "maxLength": 200, "selectOnFocus": true });
    var every_unit2091 = new Lino.ChoicesFieldElement({ "allowBlank": false, "forceSelection": true, "selectOnFocus": true, "store": Lino.cal.Recurrencies });
    var event_type2092 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Calendar entry type...", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/RecurrentEvents/event_type" }) }) });
    var id2093 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var start_time2094 = new Lino.TimeField({ "hidden": true, "selectOnFocus": true });
    var end_time2095 = new Lino.TimeField({ "hidden": true, "selectOnFocus": true });
    var user2096 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a User...", "hidden": true, "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/RecurrentEvents/user" }) }) });
    var every2097 = new Ext.form.NumberField({ "allowBlank": false, "hidden": true, "selectOnFocus": true, "value": 1 });
    var monday2098 = new Ext.form.Checkbox({ "checked": false, "hidden": true, "selectOnFocus": true });
    var tuesday2099 = new Ext.form.Checkbox({ "checked": false, "hidden": true, "selectOnFocus": true });
    var wednesday2100 = new Ext.form.Checkbox({ "checked": false, "hidden": true, "selectOnFocus": true });
    var thursday2101 = new Ext.form.Checkbox({ "checked": false, "hidden": true, "selectOnFocus": true });
    var friday2102 = new Ext.form.Checkbox({ "checked": false, "hidden": true, "selectOnFocus": true });
    var saturday2103 = new Ext.form.Checkbox({ "checked": false, "hidden": true, "selectOnFocus": true });
    var sunday2104 = new Ext.form.Checkbox({ "checked": false, "hidden": true, "selectOnFocus": true });
    var max_events2105 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var description2106 = new Lino.RichTextPanel({ "containing_panel": this, "hidden": true, "selectOnFocus": true, "title": "Description" });
    var mobile_item_disp2107 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp2108 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp2109 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp2110 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var what_text_disp2111 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var weekdays_text_disp2112 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var times_text_disp2113 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var duration2114 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(6), "disabled": true, "hidden": true, "maxLength": 6 });
    this.before_row_edit = function(record) {
      description2106.refresh();
    };
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "start_date", "editable": true, "editor": start_date2088, "filter": { "dateFormat": "d.m.Y", "type": "date" }, "format": "d.m.Y", "header": "Start date", "sortable": true, "tooltip": "(cal.RecurrentEvents.start_date) ", "width": Lino.chars2width(14), "xtype": "datecolumn" }, { "colIndex": 1, "dataIndex": "end_date", "editable": true, "editor": end_date2089, "filter": { "dateFormat": "d.m.Y", "type": "date" }, "format": "d.m.Y", "header": "End Date", "sortable": true, "tooltip": "(cal.RecurrentEvents.end_date) ", "width": Lino.chars2width(14), "xtype": "datecolumn" }, { "colIndex": 2, "dataIndex": "name", "editable": true, "editor": name2090, "filter": { "type": "string" }, "header": "Designation", "sortable": true, "tooltip": "(cal.RecurrentEvents.name) See lino.utils.mldbc.mixins.BabelNamed.name.", "width": Lino.chars2width(22) }, { "colIndex": 3, "dataIndex": "every_unit", "editable": true, "editor": every_unit2091, "filter": { "type": "string" }, "header": "Recurrency", "sortable": false, "tooltip": "(cal.RecurrentEvents.every_unit) Inherited from RecurrentSet.every_unit.", "width": Lino.chars2width(22) }, { "colIndex": 4, "dataIndex": "event_type", "editable": true, "editor": event_type2092, "filter": { "type": "string" }, "header": "Calendar entry type", "renderer": Lino.fk_renderer('event_typeHidden','Lino.cal.EventTypes.detail'), "sortable": false, "tooltip": "(cal.RecurrentEvents.event_type) ", "width": Lino.chars2width(21) }, { "align": "right", "colIndex": 5, "dataIndex": "id", "editable": true, "editor": id2093, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(cal.RecurrentEvents.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 6, "dataIndex": "start_time", "editable": true, "editor": start_time2094, "header": "Start time", "hidden": true, "sortable": true, "tooltip": "(cal.RecurrentEvents.start_time) ", "width": Lino.chars2width(9) }, { "colIndex": 7, "dataIndex": "end_time", "editable": true, "editor": end_time2095, "header": "End Time", "hidden": true, "sortable": true, "tooltip": "(cal.RecurrentEvents.end_time) ", "width": Lino.chars2width(9) }, { "colIndex": 8, "dataIndex": "user", "editable": true, "editor": user2096, "filter": { "type": "string" }, "header": "Author", "hidden": true, "renderer": Lino.fk_renderer('userHidden','Lino.users.Users.detail'), "sortable": false, "tooltip": "(cal.RecurrentEvents.user) ", "width": Lino.chars2width(21) }, { "align": "right", "colIndex": 9, "dataIndex": "every", "editable": true, "editor": every2097, "filter": { "type": "numeric" }, "format": "0", "header": "Repeat every", "hidden": true, "sortable": true, "tooltip": "(cal.RecurrentEvents.every) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 10, "dataIndex": "monday", "editable": true, "filter": { "type": "boolean" }, "header": "Monday", "hidden": true, "sortable": false, "tooltip": "(cal.RecurrentEvents.monday) ", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 11, "dataIndex": "tuesday", "editable": true, "filter": { "type": "boolean" }, "header": "Tuesday", "hidden": true, "sortable": false, "tooltip": "(cal.RecurrentEvents.tuesday) ", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 12, "dataIndex": "wednesday", "editable": true, "filter": { "type": "boolean" }, "header": "Wednesday", "hidden": true, "sortable": false, "tooltip": "(cal.RecurrentEvents.wednesday) ", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 13, "dataIndex": "thursday", "editable": true, "filter": { "type": "boolean" }, "header": "Thursday", "hidden": true, "sortable": false, "tooltip": "(cal.RecurrentEvents.thursday) ", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 14, "dataIndex": "friday", "editable": true, "filter": { "type": "boolean" }, "header": "Friday", "hidden": true, "sortable": false, "tooltip": "(cal.RecurrentEvents.friday) ", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 15, "dataIndex": "saturday", "editable": true, "filter": { "type": "boolean" }, "header": "Saturday", "hidden": true, "sortable": false, "tooltip": "(cal.RecurrentEvents.saturday) ", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 16, "dataIndex": "sunday", "editable": true, "filter": { "type": "boolean" }, "header": "Sunday", "hidden": true, "sortable": false, "tooltip": "(cal.RecurrentEvents.sunday) ", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "align": "right", "colIndex": 17, "dataIndex": "max_events", "editable": true, "editor": max_events2105, "filter": { "type": "numeric" }, "format": "0", "header": "Number of events", "hidden": true, "sortable": true, "tooltip": "(cal.RecurrentEvents.max_events) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 18, "dataIndex": "description", "editable": true, "editor": description2106, "filter": { "type": "string" }, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.RecurrentEvents.description) ", "width": Lino.chars2width(61) }, { "colIndex": 19, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.RecurrentEvents.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 20, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.RecurrentEvents.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 21, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(cal.RecurrentEvents.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 22, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(cal.RecurrentEvents.workflow_buttons) ", "width": Lino.chars2width(31) }, { "colIndex": 23, "dataIndex": "what_text", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.RecurrentEvents.what_text) ", "width": Lino.chars2width(31) }, { "colIndex": 24, "dataIndex": "weekdays_text", "editable": false, "header": "When", "hidden": true, "sortable": false, "tooltip": "(cal.RecurrentEvents.weekdays_text) ", "width": Lino.chars2width(31) }, { "colIndex": 25, "dataIndex": "times_text", "editable": false, "header": "Times", "hidden": true, "sortable": false, "tooltip": "(cal.RecurrentEvents.times_text) ", "width": Lino.chars2width(31) }, { "align": "right", "colIndex": 26, "dataIndex": "duration", "editable": false, "format": "", "header": "Duration", "hidden": true, "sortable": false, "tooltip": "(cal.RecurrentEvents.duration) ", "width": Lino.chars2width(8) } ];
    Lino.cal.RecurrentEvents.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.RecurrentEvents.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/RecurrentEvents", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.RecurrentEvents.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/RecurrentEvents", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.RecurrentEvents.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/RecurrentEvents", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.cal.RecurrentEvents.insertPanel = Ext.extend(Lino.cal.RecurrentEvents.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/cal/RecurrentEvents",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.RecurrentEvents.detail;
    this.ls_insert_handler = Lino.cal.RecurrentEvents.insert;
    Lino.cal.RecurrentEvents.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.RecurrentEvents.insert = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(80) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.cal.RecurrentEvents.insertPanel(p);
});
Lino.cal.RecurrentEvents.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/RecurrentEvents", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.RecurrentEvents.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/RecurrentEvents", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.RecurrentEvents.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/RecurrentEvents", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.cal.RecurrentEvents.detailPanel = Ext.extend(Lino.cal.RecurrentEvents.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "itemId": "do_update_events", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create or update the automatic events controlled by this generator.") }, "menu_item_text": "Update Events", "overflowText": "Update Events", "panel_btn_handler": Lino.row_action_handler('do_update_events','GET',null), "text": "\u00a0\u26a1\u00a0" } ],
  ls_url: "/cal/RecurrentEvents",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.RecurrentEvents.detail;
    this.ls_insert_handler = Lino.cal.RecurrentEvents.insert;
    Lino.cal.RecurrentEvents.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.RecurrentEvents.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.cal.RecurrentEvents.detailPanel(p);
});
Lino.cal.RecurrentEvents.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/RecurrentEvents", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.RecurrentEvents.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.cal.RecurrentEvents.ParamsPanel({});
  return new Lino.cal.RecurrentEvents.GridPanel(p);
});
Lino.cal.RecurrentEvents.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/RecurrentEvents", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.RecurrentEvents.do_update_events = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/RecurrentEvents", "GET", pk, "do_update_events", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class cal.Events
Lino.cal.Events.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/cal/Events",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/cal/Events','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/cal/Events','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "itemId": "duplicate", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Duplicate the selected row.") }, "menu_item_text": "\u2687", "overflowText": "\u2687", "panel_btn_handler": Lino.row_action_handler('duplicate','GET',null), "text": " <font size=\"4\">\u2687</font>" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "iconCls": "x-tbar-printer", "itemId": "do_print", "menu_item_text": "Print", "overflowText": "Print", "panel_btn_handler": Lino.row_action_handler('do_print','POST',null), "tooltip": "A print action which uses a cache for the generated printable\ndocument and builds is only when it doesn't yet exist." }, { "auto_save": true, "iconCls": "x-tbar-printer_delete", "itemId": "do_clear_cache", "menu_item_text": "Clear cache", "overflowText": "Clear cache", "panel_btn_handler": Lino.row_action_handler('do_clear_cache','GET',null), "tooltip": "Defines the Clear cache button on a Printable record." }, { "auto_save": true, "itemId": "show_conflicting", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Show events conflicting with this one.") }, "menu_item_text": "\u00a0\u2694\u00a0", "overflowText": "\u00a0\u2694\u00a0", "panel_btn_handler": Lino.row_action_handler('show_conflicting','GET',null), "text": "\u00a0\u2694\u00a0" }, { "auto_save": true, "iconCls": "x-tbar-calendar", "itemId": "show_today", "menu_item_text": "Today", "overflowText": "Today", "panel_btn_handler": Lino.row_action_handler('show_today','GET',null), "tooltip": "Show all calendar events of the same day." }, { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "check_plausibility", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": "Check plausibility", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." }, { "auto_save": true, "itemId": "fix_problems", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": "Fix plausibility problems", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." } ], "menu_item_text": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": null, "xtype": "splitbutton" }, { "auto_save": true, "itemId": "update_guests", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Populate or update the list of participants for this entry\naccording to the suggestions.") }, "menu_item_text": "Update Guests", "overflowText": "Update Guests", "panel_btn_handler": Lino.row_action_handler('update_guests','GET',null), "text": "\u00a0\u2637\u00a0" }, { "auto_save": true, "iconCls": "x-tbar-email_add", "itemId": "create_mail", "menu_item_text": "Create email", "overflowText": "Create email", "panel_btn_handler": Lino.row_action_handler('create_mail','GET',null), "tooltip": "Create an email from this" }, { "auto_save": true, "iconCls": "x-tbar-script_add", "itemId": "create_postings", "menu_item_text": "Create posting", "overflowText": "Create posting", "panel_btn_handler": Lino.row_action_handler('create_postings','GET',null), "tooltip": "Create classical mail postings from this" }, { "auto_save": true, "itemId": "update_events", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create or update the automatic events controlled by this generator.") }, "menu_item_text": "Update Events", "overflowText": "Update Events", "panel_btn_handler": Lino.row_action_handler('update_events','GET',null), "text": "\u00a0\u26a1\u00a0" } ],
  cell_edit : true,
  title : "Calendar entries",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 48,
  ls_store_fields : [ { "name": "when_text" }, { "name": "user" }, 'userHidden', { "name": "summary" }, { "name": "event_type" }, 'event_typeHidden', { "name": "id", "type": "int" }, { "name": "modified" }, { "name": "created" }, { "dateFormat": "d.m.Y", "name": "start_date", "type": "date" }, { "name": "start_time" }, { "dateFormat": "d.m.Y", "name": "end_date", "type": "date" }, { "name": "end_time" }, { "name": "build_time" }, { "name": "build_method" }, 'build_methodHidden', { "name": "assigned_to" }, 'assigned_toHidden', { "name": "owner_type" }, 'owner_typeHidden', { "name": "owner_id" }, 'owner_idHidden', { "name": "description" }, { "name": "access_class" }, 'access_classHidden', { "name": "sequence", "type": "int", "useNull": true }, { "name": "auto_type", "type": "int", "useNull": true }, { "name": "transparent", "type": "boolean" }, { "name": "room" }, 'roomHidden', { "name": "priority" }, 'priorityHidden', { "name": "state" }, 'stateHidden', { "name": "owner" }, { "name": "calendar" }, 'calendarHidden', { "name": "when_html" }, { "name": "reminder" }, { "name": "all_day", "type": "boolean" }, { "name": "url" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "created_natural" }, { "name": "duration" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 6,
  ls_grid_configs : [  ],
  content_type : 19,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.Events.detail;
    this.ls_insert_handler = Lino.cal.Events.insert;
    var ww = this.containing_window;
    var when_text_disp2116 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    var user2117 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a User...", "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/Events/user" }) }) });
    var summary2118 = new Ext.form.TextField({ "maxLength": 200, "selectOnFocus": true });
    var event_type2119 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Calendar entry type...", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/Events/event_type" }) }) });
    var id2120 = new Ext.form.NumberField({ "selectOnFocus": true });
    var modified2121 = new Ext.form.DisplayField({ "disabled": true, "hidden": true, "value": "<br>" });
    var created2122 = new Ext.form.DisplayField({ "disabled": true, "hidden": true, "value": "<br>" });
    var start_date2123 = new Lino.DateField({ "hidden": true, "selectOnFocus": true });
    var start_time2124 = new Lino.TimeField({ "hidden": true, "selectOnFocus": true });
    var end_date2125 = new Lino.DateField({ "hidden": true, "selectOnFocus": true });
    var end_time2126 = new Lino.TimeField({ "hidden": true, "selectOnFocus": true });
    var build_time2127 = new Ext.form.DisplayField({ "disabled": true, "hidden": true, "value": "<br>" });
    var build_method2128 = new Lino.ChoicesFieldElement({ "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": [['','<br>']].concat(Lino.printing.BuildMethods) });
    var assigned_to2129 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a User...", "hidden": true, "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/Events/assigned_to" }) }) });
    var owner_type2130 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a content type...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/Events/owner_type" }) }) });
    var owner_id2131 = new Lino.RemoteComboFieldElement({ "hidden": true, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/Events/owner_id" }) }) });
    var description2132 = new Ext.form.TextArea({ "growMax": 2000, "hidden": true, "selectOnFocus": true });
    var access_class2133 = new Lino.ChoicesFieldElement({ "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": [['','<br>']].concat(Lino.cal.AccessClasses) });
    var sequence2134 = new Ext.form.NumberField({ "allowBlank": false, "hidden": true, "selectOnFocus": true, "value": 0 });
    var auto_type2135 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var transparent2136 = new Ext.form.Checkbox({ "checked": false, "hidden": true, "selectOnFocus": true });
    var room2137 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Room...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/Events/room" }) }) });
    var priority2138 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Priority...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/Events/priority" }) }) });
    var state2139 = new Lino.ChoicesFieldElement({ "allowBlank": false, "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": Lino.cal.EntryStates });
    var owner_disp2140 = new Ext.form.DisplayField({ "disabled": true, "hidden": true });
    var calendar2141 = new Lino.RemoteComboFieldElement({ "disabled": true, "emptyText": "Select a Calendar...", "hidden": true, "pageSize": 20, "store": new Lino.ComplexRemoteComboStore({  }) });
    var when_html_disp2142 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var reminder_disp2143 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var all_day2144 = new Ext.form.Checkbox({ "hidden": true, "selectOnFocus": true });
    var url_disp2145 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var mobile_item_disp2146 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp2147 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp2148 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp2149 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var created_natural_disp2150 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var duration2151 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(6), "disabled": true, "hidden": true, "maxLength": 6 });
    this.before_row_edit = function(record) {
      owner_id2131.setContextValue('owner_type', record ? record.data['owner_typeHidden'] : undefined);
    };
    this.onRender = function(ct, position) {
      owner_type2130.on('change',Lino.chooser_handler(owner_id2131,'owner_type'));
      Lino.cal.Events.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "when_text", "editable": false, "header": "When", "sortable": false, "tooltip": "(cal.Events.when_text) ", "width": Lino.chars2width(21) }, { "colIndex": 1, "dataIndex": "user", "editable": true, "editor": user2117, "filter": { "type": "string" }, "header": "Responsible user", "renderer": Lino.fk_renderer('userHidden','Lino.users.Users.detail'), "sortable": false, "tooltip": "(cal.Events.user) The responsible user.", "width": Lino.chars2width(21) }, { "colIndex": 2, "dataIndex": "summary", "editable": true, "editor": summary2118, "filter": { "type": "string" }, "header": "Short description", "sortable": true, "tooltip": "(cal.Events.summary) A one-line descriptive text.", "width": Lino.chars2width(22) }, { "colIndex": 3, "dataIndex": "event_type", "editable": true, "editor": event_type2119, "filter": { "type": "string" }, "header": "Calendar entry type", "renderer": Lino.fk_renderer('event_typeHidden','Lino.cal.EventTypes.detail'), "sortable": false, "tooltip": "(cal.Events.event_type) The type of this entry. Every calendar entry should have this\nfield pointing to a given EventType, which holds\nextended configurable information about this entry.", "width": Lino.chars2width(21) }, { "align": "right", "colIndex": 4, "dataIndex": "id", "editable": true, "editor": id2120, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "sortable": true, "tooltip": "(cal.Events.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 5, "dataIndex": "modified", "editable": false, "header": "Modified", "hidden": true, "sortable": true, "tooltip": "(cal.Events.modified) ", "width": Lino.chars2width(17) }, { "colIndex": 6, "dataIndex": "created", "editable": false, "header": "Created", "hidden": true, "sortable": true, "tooltip": "(cal.Events.created) The timestame when this object was created.", "width": Lino.chars2width(17) }, { "colIndex": 7, "dataIndex": "start_date", "editable": true, "editor": start_date2123, "filter": { "dateFormat": "d.m.Y", "type": "date" }, "format": "d.m.Y", "header": "Start date", "hidden": true, "sortable": true, "tooltip": "(cal.Events.start_date) ", "width": Lino.chars2width(14), "xtype": "datecolumn" }, { "colIndex": 8, "dataIndex": "start_time", "editable": true, "editor": start_time2124, "header": "Start time", "hidden": true, "sortable": true, "tooltip": "(cal.Events.start_time) ", "width": Lino.chars2width(9) }, { "colIndex": 9, "dataIndex": "end_date", "editable": true, "editor": end_date2125, "filter": { "dateFormat": "d.m.Y", "type": "date" }, "format": "d.m.Y", "header": "End Date", "hidden": true, "sortable": true, "tooltip": "(cal.Events.end_date) ", "width": Lino.chars2width(14), "xtype": "datecolumn" }, { "colIndex": 10, "dataIndex": "end_time", "editable": true, "editor": end_time2126, "header": "End Time", "hidden": true, "sortable": true, "tooltip": "(cal.Events.end_time) These four fields define the duration of this entry.\nOnly start_date is mandatory.", "width": Lino.chars2width(9) }, { "colIndex": 11, "dataIndex": "build_time", "editable": false, "header": "build time", "hidden": true, "sortable": true, "tooltip": "(cal.Events.build_time) Timestamp of the built target file. Contains None\nif no build hasn't been called yet.", "width": Lino.chars2width(17) }, { "colIndex": 12, "dataIndex": "build_method", "editable": true, "editor": build_method2128, "filter": { "type": "string" }, "header": "Build method", "hidden": true, "sortable": false, "tooltip": "(cal.Events.build_method) ", "width": Lino.chars2width(24) }, { "colIndex": 13, "dataIndex": "assigned_to", "editable": true, "editor": assigned_to2129, "filter": { "type": "string" }, "header": "Assigned to", "hidden": true, "renderer": Lino.fk_renderer('assigned_toHidden','Lino.users.Users.detail'), "sortable": false, "tooltip": "(cal.Events.assigned_to) Another user who is expected to take responsibility for this\nentry.", "width": Lino.chars2width(21) }, { "colIndex": 14, "dataIndex": "owner_type", "editable": true, "editor": owner_type2130, "filter": { "type": "string" }, "header": "Controlled by (type)", "hidden": true, "renderer": Lino.fk_renderer('owner_typeHidden','Lino.gfks.ContentTypes.detail'), "sortable": false, "tooltip": "(cal.Events.owner_type) ", "width": Lino.chars2width(21) }, { "colIndex": 15, "dataIndex": "owner_id", "editable": true, "editor": owner_id2131, "filter": { "type": "string" }, "header": "Controlled by (object)", "hidden": true, "sortable": false, "tooltip": "(cal.Events.owner_id) ", "width": Lino.chars2width(11) }, { "colIndex": 16, "dataIndex": "description", "editable": true, "editor": description2132, "filter": { "type": "string" }, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.Events.description) A longer descriptive text.", "width": Lino.chars2width(61) }, { "colIndex": 17, "dataIndex": "access_class", "editable": true, "editor": access_class2133, "filter": { "type": "string" }, "header": "Access Class", "hidden": true, "sortable": false, "tooltip": "(cal.Events.access_class) Whether this is private, public or between.", "width": Lino.chars2width(13) }, { "align": "right", "colIndex": 18, "dataIndex": "sequence", "editable": true, "editor": sequence2134, "filter": { "type": "numeric" }, "format": "0", "header": "Revision", "hidden": true, "sortable": true, "tooltip": "(cal.Events.sequence) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "align": "right", "colIndex": 19, "dataIndex": "auto_type", "editable": true, "editor": auto_type2135, "filter": { "type": "numeric" }, "format": "0", "header": "No.", "hidden": true, "sortable": true, "tooltip": "(cal.Events.auto_type) Contains the sequence number if this is an automatically\ngenerated component. Otherwise this field is empty.", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 20, "dataIndex": "transparent", "editable": true, "filter": { "type": "boolean" }, "header": "Transparent", "hidden": true, "sortable": false, "tooltip": "(cal.Events.transparent) Indicates that this entry shouldn't prevent other entries at\nthe same time.", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 21, "dataIndex": "room", "editable": true, "editor": room2137, "filter": { "type": "string" }, "header": "Room", "hidden": true, "renderer": Lino.fk_renderer('roomHidden','Lino.cal.Rooms.detail'), "sortable": false, "tooltip": "(cal.Events.room) ", "width": Lino.chars2width(21) }, { "colIndex": 22, "dataIndex": "priority", "editable": true, "editor": priority2138, "filter": { "type": "string" }, "header": "Priority", "hidden": true, "sortable": false, "tooltip": "(cal.Events.priority) ", "width": Lino.chars2width(21) }, { "colIndex": 23, "dataIndex": "state", "editable": true, "editor": state2139, "filter": { "type": "string" }, "header": "State", "hidden": true, "sortable": false, "tooltip": "(cal.Events.state) The state of this entry. The state can change according to\nrules defined by the workflow, that's why we sometimes refer\nto it as the life cycle.", "width": Lino.chars2width(14) }, { "colIndex": 24, "dataIndex": "owner", "editable": false, "header": "Controlled by", "hidden": true, "sortable": false, "tooltip": "(cal.Events.owner) ", "width": Lino.chars2width(11) }, { "colIndex": 25, "dataIndex": "calendar", "editable": false, "header": "Calendar", "hidden": true, "renderer": Lino.fk_renderer('calendarHidden','Lino.cal.Calendars.detail'), "sortable": false, "tooltip": "(cal.Events.calendar) ", "width": Lino.chars2width(21) }, { "colIndex": 26, "dataIndex": "when_html", "editable": false, "header": "When", "hidden": true, "sortable": false, "tooltip": "(cal.Events.when_html) ", "width": Lino.chars2width(31) }, { "colIndex": 27, "dataIndex": "reminder", "editable": false, "header": "Reminder", "hidden": true, "sortable": false, "tooltip": "(cal.Events.reminder) ", "width": Lino.chars2width(31) }, { "colIndex": 28, "dataIndex": "all_day", "editable": true, "header": "all day", "hidden": true, "sortable": false, "tooltip": "(cal.Events.all_day) ", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 29, "dataIndex": "url", "editable": false, "header": "Link URL", "hidden": true, "sortable": false, "tooltip": "(cal.Events.url) ", "width": Lino.chars2width(31) }, { "colIndex": 30, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.Events.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 31, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.Events.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 32, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(cal.Events.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 33, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(cal.Events.workflow_buttons) ", "width": Lino.chars2width(31) }, { "colIndex": 34, "dataIndex": "created_natural", "editable": false, "header": "Created", "hidden": true, "sortable": false, "tooltip": "(cal.Events.created_natural) ", "width": Lino.chars2width(31) }, { "align": "right", "colIndex": 35, "dataIndex": "duration", "editable": false, "format": "", "header": "Duration", "hidden": true, "sortable": false, "tooltip": "(cal.Events.duration) ", "width": Lino.chars2width(8) } ];
    Lino.cal.Events.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.Events.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Events", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.Events.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Events", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.Events.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Events", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.cal.Events.insertPanel = Ext.extend(Lino.cal.Events.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/cal/Events",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.Events.detail;
    this.ls_insert_handler = Lino.cal.Events.insert;
    Lino.cal.Events.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.Events.insert = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.cal.Events.insertPanel(p);
});
Lino.cal.Events.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Events", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.Events.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Events", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.Events.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Events", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.Events.duplicate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Events", "GET", pk, "duplicate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.cal.Events.detailPanel = Ext.extend(Lino.cal.Events.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "itemId": "duplicate", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Duplicate the selected row.") }, "menu_item_text": "\u2687", "overflowText": "\u2687", "panel_btn_handler": Lino.row_action_handler('duplicate','GET',null), "text": " <font size=\"4\">\u2687</font>" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "iconCls": "x-tbar-printer", "itemId": "do_print", "menu_item_text": "Print", "overflowText": "Print", "panel_btn_handler": Lino.row_action_handler('do_print','POST',null), "tooltip": "A print action which uses a cache for the generated printable\ndocument and builds is only when it doesn't yet exist." }, { "auto_save": true, "iconCls": "x-tbar-printer_delete", "itemId": "do_clear_cache", "menu_item_text": "Clear cache", "overflowText": "Clear cache", "panel_btn_handler": Lino.row_action_handler('do_clear_cache','GET',null), "tooltip": "Defines the Clear cache button on a Printable record." }, { "auto_save": true, "itemId": "show_conflicting", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Show events conflicting with this one.") }, "menu_item_text": "\u00a0\u2694\u00a0", "overflowText": "\u00a0\u2694\u00a0", "panel_btn_handler": Lino.row_action_handler('show_conflicting','GET',null), "text": "\u00a0\u2694\u00a0" }, { "auto_save": true, "iconCls": "x-tbar-calendar", "itemId": "show_today", "menu_item_text": "Today", "overflowText": "Today", "panel_btn_handler": Lino.row_action_handler('show_today','GET',null), "tooltip": "Show all calendar events of the same day." }, { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "check_plausibility", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": "Check plausibility", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." }, { "auto_save": true, "itemId": "fix_problems", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": "Fix plausibility problems", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." } ], "menu_item_text": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": null, "xtype": "splitbutton" }, { "auto_save": true, "itemId": "update_guests", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Populate or update the list of participants for this entry\naccording to the suggestions.") }, "menu_item_text": "Update Guests", "overflowText": "Update Guests", "panel_btn_handler": Lino.row_action_handler('update_guests','GET',null), "text": "\u00a0\u2637\u00a0" }, { "auto_save": true, "iconCls": "x-tbar-email_add", "itemId": "create_mail", "menu_item_text": "Create email", "overflowText": "Create email", "panel_btn_handler": Lino.row_action_handler('create_mail','GET',null), "tooltip": "Create an email from this" }, { "auto_save": true, "iconCls": "x-tbar-script_add", "itemId": "create_postings", "menu_item_text": "Create posting", "overflowText": "Create posting", "panel_btn_handler": Lino.row_action_handler('create_postings','GET',null), "tooltip": "Create classical mail postings from this" }, { "auto_save": true, "itemId": "update_events", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create or update the automatic events controlled by this generator.") }, "menu_item_text": "Update Events", "overflowText": "Update Events", "panel_btn_handler": Lino.row_action_handler('update_events','GET',null), "text": "\u00a0\u26a1\u00a0" } ],
  ls_url: "/cal/Events",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.Events.detail;
    this.ls_insert_handler = Lino.cal.Events.insert;
    Lino.cal.Events.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.Events.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.cal.Events.detailPanel(p);
});
Lino.cal.Events.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Events", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.Events.do_print = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Events", "POST", pk, "do_print", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.Events.do_clear_cache = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Events", "GET", pk, "do_clear_cache", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.Events.show_conflicting = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Events", "GET", pk, "show_conflicting", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.Events.show_today = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Events", "GET", pk, "show_today", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.Events.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.cal.Events.ParamsPanel({});
  return new Lino.cal.Events.GridPanel(p);
});
Lino.cal.Events.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Events", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.Events.check_plausibility = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Events", "GET", pk, "check_plausibility", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.Events.update_guests = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Events", "GET", pk, "update_guests", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.Events.fix_problems = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Events", "GET", pk, "fix_problems", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.Events.assign_to_me = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Events", "GET", pk, "assign_to_me", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.Events.create_mail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Events", "GET", pk, "create_mail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.Events.create_postings = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Events", "GET", pk, "create_postings", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.Events.take = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Events", "GET", pk, "take", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.Events.move_next = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Events", "GET", pk, "move_next", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.Events.update_events = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Events", "GET", pk, "update_events", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.Events.reset_event = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Events", "GET", pk, "reset_event", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.Events.wf2 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Events", "GET", pk, "wf2", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.Events.wf3 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Events", "GET", pk, "wf3", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class cal.AllEntries
Lino.cal.AllEntries.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/cal/AllEntries",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/cal/AllEntries','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/cal/AllEntries','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "itemId": "duplicate", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Duplicate the selected row.") }, "menu_item_text": "\u2687", "overflowText": "\u2687", "panel_btn_handler": Lino.row_action_handler('duplicate','GET',null), "text": " <font size=\"4\">\u2687</font>" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "iconCls": "x-tbar-printer", "itemId": "do_print", "menu_item_text": "Print", "overflowText": "Print", "panel_btn_handler": Lino.row_action_handler('do_print','POST',null), "tooltip": "A print action which uses a cache for the generated printable\ndocument and builds is only when it doesn't yet exist." }, { "auto_save": true, "iconCls": "x-tbar-printer_delete", "itemId": "do_clear_cache", "menu_item_text": "Clear cache", "overflowText": "Clear cache", "panel_btn_handler": Lino.row_action_handler('do_clear_cache','GET',null), "tooltip": "Defines the Clear cache button on a Printable record." }, { "auto_save": true, "itemId": "show_conflicting", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Show events conflicting with this one.") }, "menu_item_text": "\u00a0\u2694\u00a0", "overflowText": "\u00a0\u2694\u00a0", "panel_btn_handler": Lino.row_action_handler('show_conflicting','GET',null), "text": "\u00a0\u2694\u00a0" }, { "auto_save": true, "iconCls": "x-tbar-calendar", "itemId": "show_today", "menu_item_text": "Today", "overflowText": "Today", "panel_btn_handler": Lino.row_action_handler('show_today','GET',null), "tooltip": "Show all calendar events of the same day." }, { "auto_save": true, "iconCls": "x-tbar-script_add", "itemId": "create_postings", "menu_item_text": "Create posting", "overflowText": "Create posting", "panel_btn_handler": Lino.row_action_handler('create_postings','GET',null), "tooltip": "Create classical mail postings from this" }, { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "check_plausibility", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": "Check plausibility", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." }, { "auto_save": true, "itemId": "fix_problems", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": "Fix plausibility problems", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." } ], "menu_item_text": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": null, "xtype": "splitbutton" }, { "auto_save": true, "itemId": "update_guests", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Populate or update the list of participants for this entry\naccording to the suggestions.") }, "menu_item_text": "Update Guests", "overflowText": "Update Guests", "panel_btn_handler": Lino.row_action_handler('update_guests','GET',null), "text": "\u00a0\u2637\u00a0" }, { "auto_save": true, "iconCls": "x-tbar-email_add", "itemId": "create_mail", "menu_item_text": "Create email", "overflowText": "Create email", "panel_btn_handler": Lino.row_action_handler('create_mail','GET',null), "tooltip": "Create an email from this" }, { "auto_save": true, "itemId": "update_events", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create or update the automatic events controlled by this generator.") }, "menu_item_text": "Update Events", "overflowText": "Update Events", "panel_btn_handler": Lino.row_action_handler('update_events','GET',null), "text": "\u00a0\u26a1\u00a0" } ],
  cell_edit : true,
  title : "Calendar entries",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 48,
  ls_store_fields : [ { "name": "when_text" }, { "name": "user" }, 'userHidden', { "name": "summary" }, { "name": "event_type" }, 'event_typeHidden', { "name": "id", "type": "int" }, { "name": "modified" }, { "name": "created" }, { "dateFormat": "d.m.Y", "name": "start_date", "type": "date" }, { "name": "start_time" }, { "dateFormat": "d.m.Y", "name": "end_date", "type": "date" }, { "name": "end_time" }, { "name": "build_time" }, { "name": "build_method" }, 'build_methodHidden', { "name": "assigned_to" }, 'assigned_toHidden', { "name": "owner_type" }, 'owner_typeHidden', { "name": "owner_id" }, 'owner_idHidden', { "name": "description" }, { "name": "access_class" }, 'access_classHidden', { "name": "sequence", "type": "int", "useNull": true }, { "name": "auto_type", "type": "int", "useNull": true }, { "name": "transparent", "type": "boolean" }, { "name": "room" }, 'roomHidden', { "name": "priority" }, 'priorityHidden', { "name": "state" }, 'stateHidden', { "name": "owner" }, { "name": "calendar" }, 'calendarHidden', { "name": "when_html" }, { "name": "reminder" }, { "name": "all_day", "type": "boolean" }, { "name": "url" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "created_natural" }, { "name": "duration" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 6,
  ls_grid_configs : [  ],
  content_type : 19,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.AllEntries.detail;
    this.ls_insert_handler = Lino.cal.AllEntries.insert;
    var ww = this.containing_window;
    var when_text_disp2153 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    var user2154 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a User...", "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/AllEntries/user" }) }) });
    var summary2155 = new Ext.form.TextField({ "maxLength": 200, "selectOnFocus": true });
    var event_type2156 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Calendar entry type...", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/AllEntries/event_type" }) }) });
    var id2157 = new Ext.form.NumberField({ "selectOnFocus": true });
    var modified2158 = new Ext.form.DisplayField({ "disabled": true, "hidden": true, "value": "<br>" });
    var created2159 = new Ext.form.DisplayField({ "disabled": true, "hidden": true, "value": "<br>" });
    var start_date2160 = new Lino.DateField({ "hidden": true, "selectOnFocus": true });
    var start_time2161 = new Lino.TimeField({ "hidden": true, "selectOnFocus": true });
    var end_date2162 = new Lino.DateField({ "hidden": true, "selectOnFocus": true });
    var end_time2163 = new Lino.TimeField({ "hidden": true, "selectOnFocus": true });
    var build_time2164 = new Ext.form.DisplayField({ "disabled": true, "hidden": true, "value": "<br>" });
    var build_method2165 = new Lino.ChoicesFieldElement({ "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": [['','<br>']].concat(Lino.printing.BuildMethods) });
    var assigned_to2166 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a User...", "hidden": true, "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/AllEntries/assigned_to" }) }) });
    var owner_type2167 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a content type...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/AllEntries/owner_type" }) }) });
    var owner_id2168 = new Lino.RemoteComboFieldElement({ "hidden": true, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/AllEntries/owner_id" }) }) });
    var description2169 = new Ext.form.TextArea({ "growMax": 2000, "hidden": true, "selectOnFocus": true });
    var access_class2170 = new Lino.ChoicesFieldElement({ "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": [['','<br>']].concat(Lino.cal.AccessClasses) });
    var sequence2171 = new Ext.form.NumberField({ "allowBlank": false, "hidden": true, "selectOnFocus": true, "value": 0 });
    var auto_type2172 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var transparent2173 = new Ext.form.Checkbox({ "checked": false, "hidden": true, "selectOnFocus": true });
    var room2174 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Room...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/AllEntries/room" }) }) });
    var priority2175 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Priority...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/AllEntries/priority" }) }) });
    var state2176 = new Lino.ChoicesFieldElement({ "allowBlank": false, "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": Lino.cal.EntryStates });
    var owner_disp2177 = new Ext.form.DisplayField({ "disabled": true, "hidden": true });
    var calendar2178 = new Lino.RemoteComboFieldElement({ "disabled": true, "emptyText": "Select a Calendar...", "hidden": true, "pageSize": 20, "store": new Lino.ComplexRemoteComboStore({  }) });
    var when_html_disp2179 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var reminder_disp2180 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var all_day2181 = new Ext.form.Checkbox({ "hidden": true, "selectOnFocus": true });
    var url_disp2182 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var mobile_item_disp2183 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp2184 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp2185 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp2186 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var created_natural_disp2187 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var duration2188 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(6), "disabled": true, "hidden": true, "maxLength": 6 });
    this.before_row_edit = function(record) {
      owner_id2168.setContextValue('owner_type', record ? record.data['owner_typeHidden'] : undefined);
    };
    this.onRender = function(ct, position) {
      owner_type2167.on('change',Lino.chooser_handler(owner_id2168,'owner_type'));
      Lino.cal.AllEntries.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "when_text", "editable": false, "header": "When", "sortable": false, "tooltip": "(cal.AllEntries.when_text) ", "width": Lino.chars2width(21) }, { "colIndex": 1, "dataIndex": "user", "editable": true, "editor": user2154, "filter": { "type": "string" }, "header": "Responsible user", "renderer": Lino.fk_renderer('userHidden','Lino.users.Users.detail'), "sortable": false, "tooltip": "(cal.AllEntries.user) The responsible user.", "width": Lino.chars2width(21) }, { "colIndex": 2, "dataIndex": "summary", "editable": true, "editor": summary2155, "filter": { "type": "string" }, "header": "Short description", "sortable": true, "tooltip": "(cal.AllEntries.summary) A one-line descriptive text.", "width": Lino.chars2width(22) }, { "colIndex": 3, "dataIndex": "event_type", "editable": true, "editor": event_type2156, "filter": { "type": "string" }, "header": "Calendar entry type", "renderer": Lino.fk_renderer('event_typeHidden','Lino.cal.EventTypes.detail'), "sortable": false, "tooltip": "(cal.AllEntries.event_type) The type of this entry. Every calendar entry should have this\nfield pointing to a given EventType, which holds\nextended configurable information about this entry.", "width": Lino.chars2width(21) }, { "align": "right", "colIndex": 4, "dataIndex": "id", "editable": true, "editor": id2157, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "sortable": true, "tooltip": "(cal.AllEntries.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 5, "dataIndex": "modified", "editable": false, "header": "Modified", "hidden": true, "sortable": true, "tooltip": "(cal.AllEntries.modified) ", "width": Lino.chars2width(17) }, { "colIndex": 6, "dataIndex": "created", "editable": false, "header": "Created", "hidden": true, "sortable": true, "tooltip": "(cal.AllEntries.created) The timestame when this object was created.", "width": Lino.chars2width(17) }, { "colIndex": 7, "dataIndex": "start_date", "editable": true, "editor": start_date2160, "filter": { "dateFormat": "d.m.Y", "type": "date" }, "format": "d.m.Y", "header": "Start date", "hidden": true, "sortable": true, "tooltip": "(cal.AllEntries.start_date) ", "width": Lino.chars2width(14), "xtype": "datecolumn" }, { "colIndex": 8, "dataIndex": "start_time", "editable": true, "editor": start_time2161, "header": "Start time", "hidden": true, "sortable": true, "tooltip": "(cal.AllEntries.start_time) ", "width": Lino.chars2width(9) }, { "colIndex": 9, "dataIndex": "end_date", "editable": true, "editor": end_date2162, "filter": { "dateFormat": "d.m.Y", "type": "date" }, "format": "d.m.Y", "header": "End Date", "hidden": true, "sortable": true, "tooltip": "(cal.AllEntries.end_date) ", "width": Lino.chars2width(14), "xtype": "datecolumn" }, { "colIndex": 10, "dataIndex": "end_time", "editable": true, "editor": end_time2163, "header": "End Time", "hidden": true, "sortable": true, "tooltip": "(cal.AllEntries.end_time) These four fields define the duration of this entry.\nOnly start_date is mandatory.", "width": Lino.chars2width(9) }, { "colIndex": 11, "dataIndex": "build_time", "editable": false, "header": "build time", "hidden": true, "sortable": true, "tooltip": "(cal.AllEntries.build_time) Timestamp of the built target file. Contains None\nif no build hasn't been called yet.", "width": Lino.chars2width(17) }, { "colIndex": 12, "dataIndex": "build_method", "editable": true, "editor": build_method2165, "filter": { "type": "string" }, "header": "Build method", "hidden": true, "sortable": false, "tooltip": "(cal.AllEntries.build_method) ", "width": Lino.chars2width(24) }, { "colIndex": 13, "dataIndex": "assigned_to", "editable": true, "editor": assigned_to2166, "filter": { "type": "string" }, "header": "Assigned to", "hidden": true, "renderer": Lino.fk_renderer('assigned_toHidden','Lino.users.Users.detail'), "sortable": false, "tooltip": "(cal.AllEntries.assigned_to) Another user who is expected to take responsibility for this\nentry.", "width": Lino.chars2width(21) }, { "colIndex": 14, "dataIndex": "owner_type", "editable": true, "editor": owner_type2167, "filter": { "type": "string" }, "header": "Controlled by (type)", "hidden": true, "renderer": Lino.fk_renderer('owner_typeHidden','Lino.gfks.ContentTypes.detail'), "sortable": false, "tooltip": "(cal.AllEntries.owner_type) ", "width": Lino.chars2width(21) }, { "colIndex": 15, "dataIndex": "owner_id", "editable": true, "editor": owner_id2168, "filter": { "type": "string" }, "header": "Controlled by (object)", "hidden": true, "sortable": false, "tooltip": "(cal.AllEntries.owner_id) ", "width": Lino.chars2width(11) }, { "colIndex": 16, "dataIndex": "description", "editable": true, "editor": description2169, "filter": { "type": "string" }, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.AllEntries.description) A longer descriptive text.", "width": Lino.chars2width(61) }, { "colIndex": 17, "dataIndex": "access_class", "editable": true, "editor": access_class2170, "filter": { "type": "string" }, "header": "Access Class", "hidden": true, "sortable": false, "tooltip": "(cal.AllEntries.access_class) Whether this is private, public or between.", "width": Lino.chars2width(13) }, { "align": "right", "colIndex": 18, "dataIndex": "sequence", "editable": true, "editor": sequence2171, "filter": { "type": "numeric" }, "format": "0", "header": "Revision", "hidden": true, "sortable": true, "tooltip": "(cal.AllEntries.sequence) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "align": "right", "colIndex": 19, "dataIndex": "auto_type", "editable": true, "editor": auto_type2172, "filter": { "type": "numeric" }, "format": "0", "header": "No.", "hidden": true, "sortable": true, "tooltip": "(cal.AllEntries.auto_type) Contains the sequence number if this is an automatically\ngenerated component. Otherwise this field is empty.", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 20, "dataIndex": "transparent", "editable": true, "filter": { "type": "boolean" }, "header": "Transparent", "hidden": true, "sortable": false, "tooltip": "(cal.AllEntries.transparent) Indicates that this entry shouldn't prevent other entries at\nthe same time.", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 21, "dataIndex": "room", "editable": true, "editor": room2174, "filter": { "type": "string" }, "header": "Room", "hidden": true, "renderer": Lino.fk_renderer('roomHidden','Lino.cal.Rooms.detail'), "sortable": false, "tooltip": "(cal.AllEntries.room) ", "width": Lino.chars2width(21) }, { "colIndex": 22, "dataIndex": "priority", "editable": true, "editor": priority2175, "filter": { "type": "string" }, "header": "Priority", "hidden": true, "sortable": false, "tooltip": "(cal.AllEntries.priority) ", "width": Lino.chars2width(21) }, { "colIndex": 23, "dataIndex": "state", "editable": true, "editor": state2176, "filter": { "type": "string" }, "header": "State", "hidden": true, "sortable": false, "tooltip": "(cal.AllEntries.state) The state of this entry. The state can change according to\nrules defined by the workflow, that's why we sometimes refer\nto it as the life cycle.", "width": Lino.chars2width(14) }, { "colIndex": 24, "dataIndex": "owner", "editable": false, "header": "Controlled by", "hidden": true, "sortable": false, "tooltip": "(cal.AllEntries.owner) ", "width": Lino.chars2width(11) }, { "colIndex": 25, "dataIndex": "calendar", "editable": false, "header": "Calendar", "hidden": true, "renderer": Lino.fk_renderer('calendarHidden','Lino.cal.Calendars.detail'), "sortable": false, "tooltip": "(cal.AllEntries.calendar) ", "width": Lino.chars2width(21) }, { "colIndex": 26, "dataIndex": "when_html", "editable": false, "header": "When", "hidden": true, "sortable": false, "tooltip": "(cal.AllEntries.when_html) ", "width": Lino.chars2width(31) }, { "colIndex": 27, "dataIndex": "reminder", "editable": false, "header": "Reminder", "hidden": true, "sortable": false, "tooltip": "(cal.AllEntries.reminder) ", "width": Lino.chars2width(31) }, { "colIndex": 28, "dataIndex": "all_day", "editable": true, "header": "all day", "hidden": true, "sortable": false, "tooltip": "(cal.AllEntries.all_day) ", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 29, "dataIndex": "url", "editable": false, "header": "Link URL", "hidden": true, "sortable": false, "tooltip": "(cal.AllEntries.url) ", "width": Lino.chars2width(31) }, { "colIndex": 30, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.AllEntries.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 31, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.AllEntries.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 32, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(cal.AllEntries.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 33, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(cal.AllEntries.workflow_buttons) ", "width": Lino.chars2width(31) }, { "colIndex": 34, "dataIndex": "created_natural", "editable": false, "header": "Created", "hidden": true, "sortable": false, "tooltip": "(cal.AllEntries.created_natural) ", "width": Lino.chars2width(31) }, { "align": "right", "colIndex": 35, "dataIndex": "duration", "editable": false, "format": "", "header": "Duration", "hidden": true, "sortable": false, "tooltip": "(cal.AllEntries.duration) ", "width": Lino.chars2width(8) } ];
    Lino.cal.AllEntries.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.AllEntries.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/AllEntries", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.AllEntries.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/AllEntries", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.AllEntries.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/AllEntries", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.cal.AllEntries.insertPanel = Ext.extend(Lino.cal.Events.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/cal/AllEntries",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.AllEntries.detail;
    this.ls_insert_handler = Lino.cal.AllEntries.insert;
    Lino.cal.AllEntries.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.AllEntries.insert = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.cal.AllEntries.insertPanel(p);
});
Lino.cal.AllEntries.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/AllEntries", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.AllEntries.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/AllEntries", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.AllEntries.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/AllEntries", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.AllEntries.duplicate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/AllEntries", "GET", pk, "duplicate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.cal.AllEntries.detailPanel = Ext.extend(Lino.cal.Events.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "itemId": "duplicate", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Duplicate the selected row.") }, "menu_item_text": "\u2687", "overflowText": "\u2687", "panel_btn_handler": Lino.row_action_handler('duplicate','GET',null), "text": " <font size=\"4\">\u2687</font>" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "iconCls": "x-tbar-printer", "itemId": "do_print", "menu_item_text": "Print", "overflowText": "Print", "panel_btn_handler": Lino.row_action_handler('do_print','POST',null), "tooltip": "A print action which uses a cache for the generated printable\ndocument and builds is only when it doesn't yet exist." }, { "auto_save": true, "iconCls": "x-tbar-printer_delete", "itemId": "do_clear_cache", "menu_item_text": "Clear cache", "overflowText": "Clear cache", "panel_btn_handler": Lino.row_action_handler('do_clear_cache','GET',null), "tooltip": "Defines the Clear cache button on a Printable record." }, { "auto_save": true, "itemId": "show_conflicting", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Show events conflicting with this one.") }, "menu_item_text": "\u00a0\u2694\u00a0", "overflowText": "\u00a0\u2694\u00a0", "panel_btn_handler": Lino.row_action_handler('show_conflicting','GET',null), "text": "\u00a0\u2694\u00a0" }, { "auto_save": true, "iconCls": "x-tbar-calendar", "itemId": "show_today", "menu_item_text": "Today", "overflowText": "Today", "panel_btn_handler": Lino.row_action_handler('show_today','GET',null), "tooltip": "Show all calendar events of the same day." }, { "auto_save": true, "iconCls": "x-tbar-script_add", "itemId": "create_postings", "menu_item_text": "Create posting", "overflowText": "Create posting", "panel_btn_handler": Lino.row_action_handler('create_postings','GET',null), "tooltip": "Create classical mail postings from this" }, { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "check_plausibility", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": "Check plausibility", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." }, { "auto_save": true, "itemId": "fix_problems", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": "Fix plausibility problems", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." } ], "menu_item_text": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": null, "xtype": "splitbutton" }, { "auto_save": true, "itemId": "update_guests", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Populate or update the list of participants for this entry\naccording to the suggestions.") }, "menu_item_text": "Update Guests", "overflowText": "Update Guests", "panel_btn_handler": Lino.row_action_handler('update_guests','GET',null), "text": "\u00a0\u2637\u00a0" }, { "auto_save": true, "iconCls": "x-tbar-email_add", "itemId": "create_mail", "menu_item_text": "Create email", "overflowText": "Create email", "panel_btn_handler": Lino.row_action_handler('create_mail','GET',null), "tooltip": "Create an email from this" }, { "auto_save": true, "itemId": "update_events", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create or update the automatic events controlled by this generator.") }, "menu_item_text": "Update Events", "overflowText": "Update Events", "panel_btn_handler": Lino.row_action_handler('update_events','GET',null), "text": "\u00a0\u26a1\u00a0" } ],
  ls_url: "/cal/AllEntries",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.AllEntries.detail;
    this.ls_insert_handler = Lino.cal.AllEntries.insert;
    Lino.cal.AllEntries.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.AllEntries.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.cal.AllEntries.detailPanel(p);
});
Lino.cal.AllEntries.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/AllEntries", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.AllEntries.do_print = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/AllEntries", "POST", pk, "do_print", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.AllEntries.do_clear_cache = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/AllEntries", "GET", pk, "do_clear_cache", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.AllEntries.show_conflicting = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/AllEntries", "GET", pk, "show_conflicting", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.AllEntries.show_today = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/AllEntries", "GET", pk, "show_today", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.AllEntries.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.cal.Events.ParamsPanel({});
  return new Lino.cal.AllEntries.GridPanel(p);
});
Lino.cal.AllEntries.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/AllEntries", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.AllEntries.create_postings = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/AllEntries", "GET", pk, "create_postings", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.AllEntries.check_plausibility = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/AllEntries", "GET", pk, "check_plausibility", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.AllEntries.update_guests = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/AllEntries", "GET", pk, "update_guests", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.AllEntries.fix_problems = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/AllEntries", "GET", pk, "fix_problems", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.AllEntries.take = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/AllEntries", "GET", pk, "take", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.AllEntries.assign_to_me = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/AllEntries", "GET", pk, "assign_to_me", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.AllEntries.move_next = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/AllEntries", "GET", pk, "move_next", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.AllEntries.create_mail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/AllEntries", "GET", pk, "create_mail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.AllEntries.update_events = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/AllEntries", "GET", pk, "update_events", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.AllEntries.reset_event = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/AllEntries", "GET", pk, "reset_event", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.AllEntries.wf2 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/AllEntries", "GET", pk, "wf2", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.AllEntries.wf3 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/AllEntries", "GET", pk, "wf3", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class cal.EntriesByDay
Lino.cal.EntriesByDay.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/cal/EntriesByDay",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/cal/EntriesByDay','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/cal/EntriesByDay','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "itemId": "duplicate", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Duplicate the selected row.") }, "menu_item_text": "\u2687", "overflowText": "\u2687", "panel_btn_handler": Lino.row_action_handler('duplicate','GET',null), "text": " <font size=\"4\">\u2687</font>" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "iconCls": "x-tbar-printer", "itemId": "do_print", "menu_item_text": "Print", "overflowText": "Print", "panel_btn_handler": Lino.row_action_handler('do_print','POST',null), "tooltip": "A print action which uses a cache for the generated printable\ndocument and builds is only when it doesn't yet exist." }, { "auto_save": true, "iconCls": "x-tbar-printer_delete", "itemId": "do_clear_cache", "menu_item_text": "Clear cache", "overflowText": "Clear cache", "panel_btn_handler": Lino.row_action_handler('do_clear_cache','GET',null), "tooltip": "Defines the Clear cache button on a Printable record." }, { "auto_save": true, "itemId": "show_conflicting", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Show events conflicting with this one.") }, "menu_item_text": "\u00a0\u2694\u00a0", "overflowText": "\u00a0\u2694\u00a0", "panel_btn_handler": Lino.row_action_handler('show_conflicting','GET',null), "text": "\u00a0\u2694\u00a0" }, { "auto_save": true, "iconCls": "x-tbar-calendar", "itemId": "show_today", "menu_item_text": "Today", "overflowText": "Today", "panel_btn_handler": Lino.row_action_handler('show_today','GET',null), "tooltip": "Show all calendar events of the same day." }, { "auto_save": true, "iconCls": "x-tbar-script_add", "itemId": "create_postings", "menu_item_text": "Create posting", "overflowText": "Create posting", "panel_btn_handler": Lino.row_action_handler('create_postings','GET',null), "tooltip": "Create classical mail postings from this" }, { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "check_plausibility", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": "Check plausibility", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." }, { "auto_save": true, "itemId": "fix_problems", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": "Fix plausibility problems", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." } ], "menu_item_text": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": null, "xtype": "splitbutton" }, { "auto_save": true, "itemId": "update_guests", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Populate or update the list of participants for this entry\naccording to the suggestions.") }, "menu_item_text": "Update Guests", "overflowText": "Update Guests", "panel_btn_handler": Lino.row_action_handler('update_guests','GET',null), "text": "\u00a0\u2637\u00a0" }, { "auto_save": true, "iconCls": "x-tbar-email_add", "itemId": "create_mail", "menu_item_text": "Create email", "overflowText": "Create email", "panel_btn_handler": Lino.row_action_handler('create_mail','GET',null), "tooltip": "Create an email from this" }, { "auto_save": true, "itemId": "update_events", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create or update the automatic events controlled by this generator.") }, "menu_item_text": "Update Events", "overflowText": "Update Events", "panel_btn_handler": Lino.row_action_handler('update_events','GET',null), "text": "\u00a0\u26a1\u00a0" } ],
  cell_edit : true,
  title : "Appointments today",
  page_length : 20,
  stripeRows : true,
  disabled_actions_index : 48,
  ls_store_fields : [ { "name": "start_time" }, { "name": "end_time" }, { "name": "duration" }, { "name": "room" }, 'roomHidden', { "name": "event_type" }, 'event_typeHidden', { "name": "summary" }, { "name": "owner" }, { "name": "workflow_buttons" }, { "name": "id", "type": "int" }, { "name": "modified" }, { "name": "created" }, { "dateFormat": "d.m.Y", "name": "start_date", "type": "date" }, { "dateFormat": "d.m.Y", "name": "end_date", "type": "date" }, { "name": "build_time" }, { "name": "build_method" }, 'build_methodHidden', { "name": "user" }, 'userHidden', { "name": "assigned_to" }, 'assigned_toHidden', { "name": "owner_type" }, 'owner_typeHidden', { "name": "owner_id" }, 'owner_idHidden', { "name": "description" }, { "name": "access_class" }, 'access_classHidden', { "name": "sequence", "type": "int", "useNull": true }, { "name": "auto_type", "type": "int", "useNull": true }, { "name": "transparent", "type": "boolean" }, { "name": "priority" }, 'priorityHidden', { "name": "state" }, 'stateHidden', { "name": "calendar" }, 'calendarHidden', { "name": "when_html" }, { "name": "reminder" }, { "name": "when_text" }, { "name": "all_day", "type": "boolean" }, { "name": "url" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "created_natural" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 10,
  ls_grid_configs : [  ],
  content_type : 19,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.EntriesByDay.detail;
    this.ls_insert_handler = Lino.cal.EntriesByDay.insert;
    var ww = this.containing_window;
    var start_time2190 = new Lino.TimeField({ "selectOnFocus": true });
    var end_time2191 = new Lino.TimeField({ "selectOnFocus": true });
    var duration2192 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(6), "disabled": true, "maxLength": 6 });
    var room2193 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Room...", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/EntriesByDay/room" }) }) });
    var event_type2194 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Calendar entry type...", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/EntriesByDay/event_type" }) }) });
    var summary2195 = new Ext.form.TextField({ "maxLength": 200, "selectOnFocus": true });
    var owner_disp2196 = new Ext.form.DisplayField({ "disabled": true });
    var workflow_buttons_disp2197 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    var id2198 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var modified2199 = new Ext.form.DisplayField({ "disabled": true, "hidden": true, "value": "<br>" });
    var created2200 = new Ext.form.DisplayField({ "disabled": true, "hidden": true, "value": "<br>" });
    var start_date2201 = new Lino.DateField({ "hidden": true, "selectOnFocus": true });
    var end_date2202 = new Lino.DateField({ "hidden": true, "selectOnFocus": true });
    var build_time2203 = new Ext.form.DisplayField({ "disabled": true, "hidden": true, "value": "<br>" });
    var build_method2204 = new Lino.ChoicesFieldElement({ "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": [['','<br>']].concat(Lino.printing.BuildMethods) });
    var user2205 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a User...", "hidden": true, "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/EntriesByDay/user" }) }) });
    var assigned_to2206 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a User...", "hidden": true, "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/EntriesByDay/assigned_to" }) }) });
    var owner_type2207 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a content type...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/EntriesByDay/owner_type" }) }) });
    var owner_id2208 = new Lino.RemoteComboFieldElement({ "hidden": true, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/EntriesByDay/owner_id" }) }) });
    var description2209 = new Ext.form.TextArea({ "growMax": 2000, "hidden": true, "selectOnFocus": true });
    var access_class2210 = new Lino.ChoicesFieldElement({ "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": [['','<br>']].concat(Lino.cal.AccessClasses) });
    var sequence2211 = new Ext.form.NumberField({ "allowBlank": false, "hidden": true, "selectOnFocus": true, "value": 0 });
    var auto_type2212 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var transparent2213 = new Ext.form.Checkbox({ "checked": false, "hidden": true, "selectOnFocus": true });
    var priority2214 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Priority...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/EntriesByDay/priority" }) }) });
    var state2215 = new Lino.ChoicesFieldElement({ "allowBlank": false, "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": Lino.cal.EntryStates });
    var calendar2216 = new Lino.RemoteComboFieldElement({ "disabled": true, "emptyText": "Select a Calendar...", "hidden": true, "pageSize": 20, "store": new Lino.ComplexRemoteComboStore({  }) });
    var when_html_disp2217 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var reminder_disp2218 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var when_text_disp2219 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var all_day2220 = new Ext.form.Checkbox({ "hidden": true, "selectOnFocus": true });
    var url_disp2221 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var mobile_item_disp2222 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp2223 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp2224 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var created_natural_disp2225 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
      owner_id2208.setContextValue('owner_type', record ? record.data['owner_typeHidden'] : undefined);
    };
    this.onRender = function(ct, position) {
      owner_type2207.on('change',Lino.chooser_handler(owner_id2208,'owner_type'));
      Lino.cal.EntriesByDay.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "start_time", "editable": true, "editor": start_time2190, "header": "Start time", "sortable": true, "tooltip": "(cal.EntriesByDay.start_time) ", "width": Lino.chars2width(9) }, { "colIndex": 1, "dataIndex": "end_time", "editable": true, "editor": end_time2191, "header": "End Time", "sortable": true, "tooltip": "(cal.EntriesByDay.end_time) These four fields define the duration of this entry.\nOnly start_date is mandatory.", "width": Lino.chars2width(9) }, { "align": "right", "colIndex": 2, "dataIndex": "duration", "editable": false, "format": "", "header": "Duration", "sortable": false, "tooltip": "(cal.EntriesByDay.duration) ", "width": Lino.chars2width(8) }, { "colIndex": 3, "dataIndex": "room", "editable": true, "editor": room2193, "filter": { "type": "string" }, "header": "Room", "renderer": Lino.fk_renderer('roomHidden','Lino.cal.Rooms.detail'), "sortable": false, "tooltip": "(cal.EntriesByDay.room) ", "width": Lino.chars2width(21) }, { "colIndex": 4, "dataIndex": "event_type", "editable": true, "editor": event_type2194, "filter": { "type": "string" }, "header": "Calendar entry type", "renderer": Lino.fk_renderer('event_typeHidden','Lino.cal.EventTypes.detail'), "sortable": false, "tooltip": "(cal.EntriesByDay.event_type) The type of this entry. Every calendar entry should have this\nfield pointing to a given EventType, which holds\nextended configurable information about this entry.", "width": Lino.chars2width(21) }, { "colIndex": 5, "dataIndex": "summary", "editable": true, "editor": summary2195, "filter": { "type": "string" }, "header": "Short description", "sortable": true, "tooltip": "(cal.EntriesByDay.summary) A one-line descriptive text.", "width": Lino.chars2width(22) }, { "colIndex": 6, "dataIndex": "owner", "editable": false, "header": "Controlled by", "sortable": false, "tooltip": "(cal.EntriesByDay.owner) ", "width": Lino.chars2width(11) }, { "colIndex": 7, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "sortable": false, "tooltip": "(cal.EntriesByDay.workflow_buttons) ", "width": Lino.chars2width(31) }, { "align": "right", "colIndex": 8, "dataIndex": "id", "editable": true, "editor": id2198, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(cal.EntriesByDay.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 9, "dataIndex": "modified", "editable": false, "header": "Modified", "hidden": true, "sortable": true, "tooltip": "(cal.EntriesByDay.modified) ", "width": Lino.chars2width(17) }, { "colIndex": 10, "dataIndex": "created", "editable": false, "header": "Created", "hidden": true, "sortable": true, "tooltip": "(cal.EntriesByDay.created) The timestame when this object was created.", "width": Lino.chars2width(17) }, { "colIndex": 11, "dataIndex": "start_date", "editable": true, "editor": start_date2201, "filter": { "dateFormat": "d.m.Y", "type": "date" }, "format": "d.m.Y", "header": "Start date", "hidden": true, "sortable": true, "tooltip": "(cal.EntriesByDay.start_date) ", "width": Lino.chars2width(14), "xtype": "datecolumn" }, { "colIndex": 12, "dataIndex": "end_date", "editable": true, "editor": end_date2202, "filter": { "dateFormat": "d.m.Y", "type": "date" }, "format": "d.m.Y", "header": "End Date", "hidden": true, "sortable": true, "tooltip": "(cal.EntriesByDay.end_date) ", "width": Lino.chars2width(14), "xtype": "datecolumn" }, { "colIndex": 13, "dataIndex": "build_time", "editable": false, "header": "build time", "hidden": true, "sortable": true, "tooltip": "(cal.EntriesByDay.build_time) Timestamp of the built target file. Contains None\nif no build hasn't been called yet.", "width": Lino.chars2width(17) }, { "colIndex": 14, "dataIndex": "build_method", "editable": true, "editor": build_method2204, "filter": { "type": "string" }, "header": "Build method", "hidden": true, "sortable": false, "tooltip": "(cal.EntriesByDay.build_method) ", "width": Lino.chars2width(24) }, { "colIndex": 15, "dataIndex": "user", "editable": true, "editor": user2205, "filter": { "type": "string" }, "header": "Responsible user", "hidden": true, "renderer": Lino.fk_renderer('userHidden','Lino.users.Users.detail'), "sortable": false, "tooltip": "(cal.EntriesByDay.user) The responsible user.", "width": Lino.chars2width(21) }, { "colIndex": 16, "dataIndex": "assigned_to", "editable": true, "editor": assigned_to2206, "filter": { "type": "string" }, "header": "Assigned to", "hidden": true, "renderer": Lino.fk_renderer('assigned_toHidden','Lino.users.Users.detail'), "sortable": false, "tooltip": "(cal.EntriesByDay.assigned_to) Another user who is expected to take responsibility for this\nentry.", "width": Lino.chars2width(21) }, { "colIndex": 17, "dataIndex": "owner_type", "editable": true, "editor": owner_type2207, "filter": { "type": "string" }, "header": "Controlled by (type)", "hidden": true, "renderer": Lino.fk_renderer('owner_typeHidden','Lino.gfks.ContentTypes.detail'), "sortable": false, "tooltip": "(cal.EntriesByDay.owner_type) ", "width": Lino.chars2width(21) }, { "colIndex": 18, "dataIndex": "owner_id", "editable": true, "editor": owner_id2208, "filter": { "type": "string" }, "header": "Controlled by (object)", "hidden": true, "sortable": false, "tooltip": "(cal.EntriesByDay.owner_id) ", "width": Lino.chars2width(11) }, { "colIndex": 19, "dataIndex": "description", "editable": true, "editor": description2209, "filter": { "type": "string" }, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.EntriesByDay.description) A longer descriptive text.", "width": Lino.chars2width(61) }, { "colIndex": 20, "dataIndex": "access_class", "editable": true, "editor": access_class2210, "filter": { "type": "string" }, "header": "Access Class", "hidden": true, "sortable": false, "tooltip": "(cal.EntriesByDay.access_class) Whether this is private, public or between.", "width": Lino.chars2width(13) }, { "align": "right", "colIndex": 21, "dataIndex": "sequence", "editable": true, "editor": sequence2211, "filter": { "type": "numeric" }, "format": "0", "header": "Revision", "hidden": true, "sortable": true, "tooltip": "(cal.EntriesByDay.sequence) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "align": "right", "colIndex": 22, "dataIndex": "auto_type", "editable": true, "editor": auto_type2212, "filter": { "type": "numeric" }, "format": "0", "header": "No.", "hidden": true, "sortable": true, "tooltip": "(cal.EntriesByDay.auto_type) Contains the sequence number if this is an automatically\ngenerated component. Otherwise this field is empty.", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 23, "dataIndex": "transparent", "editable": true, "filter": { "type": "boolean" }, "header": "Transparent", "hidden": true, "sortable": false, "tooltip": "(cal.EntriesByDay.transparent) Indicates that this entry shouldn't prevent other entries at\nthe same time.", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 24, "dataIndex": "priority", "editable": true, "editor": priority2214, "filter": { "type": "string" }, "header": "Priority", "hidden": true, "sortable": false, "tooltip": "(cal.EntriesByDay.priority) ", "width": Lino.chars2width(21) }, { "colIndex": 25, "dataIndex": "state", "editable": true, "editor": state2215, "filter": { "type": "string" }, "header": "State", "hidden": true, "sortable": false, "tooltip": "(cal.EntriesByDay.state) The state of this entry. The state can change according to\nrules defined by the workflow, that's why we sometimes refer\nto it as the life cycle.", "width": Lino.chars2width(14) }, { "colIndex": 26, "dataIndex": "calendar", "editable": false, "header": "Calendar", "hidden": true, "renderer": Lino.fk_renderer('calendarHidden','Lino.cal.Calendars.detail'), "sortable": false, "tooltip": "(cal.EntriesByDay.calendar) ", "width": Lino.chars2width(21) }, { "colIndex": 27, "dataIndex": "when_html", "editable": false, "header": "When", "hidden": true, "sortable": false, "tooltip": "(cal.EntriesByDay.when_html) ", "width": Lino.chars2width(31) }, { "colIndex": 28, "dataIndex": "reminder", "editable": false, "header": "Reminder", "hidden": true, "sortable": false, "tooltip": "(cal.EntriesByDay.reminder) ", "width": Lino.chars2width(31) }, { "colIndex": 29, "dataIndex": "when_text", "editable": false, "header": "When", "hidden": true, "sortable": false, "tooltip": "(cal.EntriesByDay.when_text) ", "width": Lino.chars2width(31) }, { "colIndex": 30, "dataIndex": "all_day", "editable": true, "header": "all day", "hidden": true, "sortable": false, "tooltip": "(cal.EntriesByDay.all_day) ", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 31, "dataIndex": "url", "editable": false, "header": "Link URL", "hidden": true, "sortable": false, "tooltip": "(cal.EntriesByDay.url) ", "width": Lino.chars2width(31) }, { "colIndex": 32, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.EntriesByDay.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 33, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.EntriesByDay.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 34, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(cal.EntriesByDay.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 35, "dataIndex": "created_natural", "editable": false, "header": "Created", "hidden": true, "sortable": false, "tooltip": "(cal.EntriesByDay.created_natural) ", "width": Lino.chars2width(31) } ];
    Lino.cal.EntriesByDay.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.EntriesByDay.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByDay", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByDay.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByDay", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByDay.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByDay", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.cal.EntriesByDay.insertPanel = Ext.extend(Lino.cal.Events.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/cal/EntriesByDay",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.EntriesByDay.detail;
    this.ls_insert_handler = Lino.cal.EntriesByDay.insert;
    Lino.cal.EntriesByDay.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.EntriesByDay.insert = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.cal.EntriesByDay.insertPanel(p);
});
Lino.cal.EntriesByDay.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByDay", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByDay.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByDay", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByDay.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByDay", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByDay.duplicate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByDay", "GET", pk, "duplicate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.cal.EntriesByDay.detailPanel = Ext.extend(Lino.cal.Events.DetailFormPanel,{
  empty_title: "Detail",
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "itemId": "duplicate", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Duplicate the selected row.") }, "menu_item_text": "\u2687", "overflowText": "\u2687", "panel_btn_handler": Lino.row_action_handler('duplicate','GET',null), "text": " <font size=\"4\">\u2687</font>" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "iconCls": "x-tbar-printer", "itemId": "do_print", "menu_item_text": "Print", "overflowText": "Print", "panel_btn_handler": Lino.row_action_handler('do_print','POST',null), "tooltip": "A print action which uses a cache for the generated printable\ndocument and builds is only when it doesn't yet exist." }, { "auto_save": true, "iconCls": "x-tbar-printer_delete", "itemId": "do_clear_cache", "menu_item_text": "Clear cache", "overflowText": "Clear cache", "panel_btn_handler": Lino.row_action_handler('do_clear_cache','GET',null), "tooltip": "Defines the Clear cache button on a Printable record." }, { "auto_save": true, "itemId": "show_conflicting", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Show events conflicting with this one.") }, "menu_item_text": "\u00a0\u2694\u00a0", "overflowText": "\u00a0\u2694\u00a0", "panel_btn_handler": Lino.row_action_handler('show_conflicting','GET',null), "text": "\u00a0\u2694\u00a0" }, { "auto_save": true, "iconCls": "x-tbar-calendar", "itemId": "show_today", "menu_item_text": "Today", "overflowText": "Today", "panel_btn_handler": Lino.row_action_handler('show_today','GET',null), "tooltip": "Show all calendar events of the same day." }, { "auto_save": true, "iconCls": "x-tbar-script_add", "itemId": "create_postings", "menu_item_text": "Create posting", "overflowText": "Create posting", "panel_btn_handler": Lino.row_action_handler('create_postings','GET',null), "tooltip": "Create classical mail postings from this" }, { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "check_plausibility", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": "Check plausibility", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." }, { "auto_save": true, "itemId": "fix_problems", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": "Fix plausibility problems", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." } ], "menu_item_text": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": null, "xtype": "splitbutton" }, { "auto_save": true, "itemId": "update_guests", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Populate or update the list of participants for this entry\naccording to the suggestions.") }, "menu_item_text": "Update Guests", "overflowText": "Update Guests", "panel_btn_handler": Lino.row_action_handler('update_guests','GET',null), "text": "\u00a0\u2637\u00a0" }, { "auto_save": true, "iconCls": "x-tbar-email_add", "itemId": "create_mail", "menu_item_text": "Create email", "overflowText": "Create email", "panel_btn_handler": Lino.row_action_handler('create_mail','GET',null), "tooltip": "Create an email from this" }, { "auto_save": true, "itemId": "update_events", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create or update the automatic events controlled by this generator.") }, "menu_item_text": "Update Events", "overflowText": "Update Events", "panel_btn_handler": Lino.row_action_handler('update_events','GET',null), "text": "\u00a0\u26a1\u00a0" } ],
  ls_url: "/cal/EntriesByDay",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.EntriesByDay.detail;
    this.ls_insert_handler = Lino.cal.EntriesByDay.insert;
    Lino.cal.EntriesByDay.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.EntriesByDay.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.cal.EntriesByDay.detailPanel(p);
});
Lino.cal.EntriesByDay.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByDay", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByDay.do_print = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByDay", "POST", pk, "do_print", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByDay.do_clear_cache = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByDay", "GET", pk, "do_clear_cache", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByDay.show_conflicting = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByDay", "GET", pk, "show_conflicting", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByDay.show_today = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByDay", "GET", pk, "show_today", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByDay.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.cal.Events.ParamsPanel({});
  return new Lino.cal.EntriesByDay.GridPanel(p);
});
Lino.cal.EntriesByDay.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByDay", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByDay.create_postings = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByDay", "GET", pk, "create_postings", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByDay.check_plausibility = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByDay", "GET", pk, "check_plausibility", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByDay.update_guests = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByDay", "GET", pk, "update_guests", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByDay.fix_problems = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByDay", "GET", pk, "fix_problems", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByDay.take = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByDay", "GET", pk, "take", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByDay.assign_to_me = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByDay", "GET", pk, "assign_to_me", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByDay.move_next = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByDay", "GET", pk, "move_next", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByDay.create_mail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByDay", "GET", pk, "create_mail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByDay.update_events = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByDay", "GET", pk, "update_events", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByDay.reset_event = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByDay", "GET", pk, "reset_event", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByDay.wf2 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByDay", "GET", pk, "wf2", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByDay.wf3 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByDay", "GET", pk, "wf3", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class cal.OneEvent
Lino.cal.OneEvent.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/cal/OneEvent",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/cal/OneEvent','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/cal/OneEvent','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "itemId": "duplicate", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Duplicate the selected row.") }, "menu_item_text": "\u2687", "overflowText": "\u2687", "panel_btn_handler": Lino.row_action_handler('duplicate','GET',null), "text": " <font size=\"4\">\u2687</font>" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "iconCls": "x-tbar-printer", "itemId": "do_print", "menu_item_text": "Print", "overflowText": "Print", "panel_btn_handler": Lino.row_action_handler('do_print','POST',null), "tooltip": "A print action which uses a cache for the generated printable\ndocument and builds is only when it doesn't yet exist." }, { "auto_save": true, "iconCls": "x-tbar-printer_delete", "itemId": "do_clear_cache", "menu_item_text": "Clear cache", "overflowText": "Clear cache", "panel_btn_handler": Lino.row_action_handler('do_clear_cache','GET',null), "tooltip": "Defines the Clear cache button on a Printable record." }, { "auto_save": true, "itemId": "show_conflicting", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Show events conflicting with this one.") }, "menu_item_text": "\u00a0\u2694\u00a0", "overflowText": "\u00a0\u2694\u00a0", "panel_btn_handler": Lino.row_action_handler('show_conflicting','GET',null), "text": "\u00a0\u2694\u00a0" }, { "auto_save": true, "iconCls": "x-tbar-calendar", "itemId": "show_today", "menu_item_text": "Today", "overflowText": "Today", "panel_btn_handler": Lino.row_action_handler('show_today','GET',null), "tooltip": "Show all calendar events of the same day." }, { "auto_save": true, "iconCls": "x-tbar-script_add", "itemId": "create_postings", "menu_item_text": "Create posting", "overflowText": "Create posting", "panel_btn_handler": Lino.row_action_handler('create_postings','GET',null), "tooltip": "Create classical mail postings from this" }, { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "check_plausibility", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": "Check plausibility", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." }, { "auto_save": true, "itemId": "fix_problems", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": "Fix plausibility problems", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." } ], "menu_item_text": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": null, "xtype": "splitbutton" }, { "auto_save": true, "itemId": "update_guests", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Populate or update the list of participants for this entry\naccording to the suggestions.") }, "menu_item_text": "Update Guests", "overflowText": "Update Guests", "panel_btn_handler": Lino.row_action_handler('update_guests','GET',null), "text": "\u00a0\u2637\u00a0" }, { "auto_save": true, "iconCls": "x-tbar-email_add", "itemId": "create_mail", "menu_item_text": "Create email", "overflowText": "Create email", "panel_btn_handler": Lino.row_action_handler('create_mail','GET',null), "tooltip": "Create an email from this" }, { "auto_save": true, "itemId": "update_events", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create or update the automatic events controlled by this generator.") }, "menu_item_text": "Update Events", "overflowText": "Update Events", "panel_btn_handler": Lino.row_action_handler('update_events','GET',null), "text": "\u00a0\u26a1\u00a0" } ],
  cell_edit : true,
  title : "Calendar entries",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 48,
  ls_store_fields : [ { "name": "when_text" }, { "name": "user" }, 'userHidden', { "name": "summary" }, { "name": "event_type" }, 'event_typeHidden', { "name": "id", "type": "int" }, { "name": "modified" }, { "name": "created" }, { "dateFormat": "d.m.Y", "name": "start_date", "type": "date" }, { "name": "start_time" }, { "dateFormat": "d.m.Y", "name": "end_date", "type": "date" }, { "name": "end_time" }, { "name": "build_time" }, { "name": "build_method" }, 'build_methodHidden', { "name": "assigned_to" }, 'assigned_toHidden', { "name": "owner_type" }, 'owner_typeHidden', { "name": "owner_id" }, 'owner_idHidden', { "name": "description" }, { "name": "access_class" }, 'access_classHidden', { "name": "sequence", "type": "int", "useNull": true }, { "name": "auto_type", "type": "int", "useNull": true }, { "name": "transparent", "type": "boolean" }, { "name": "room" }, 'roomHidden', { "name": "priority" }, 'priorityHidden', { "name": "state" }, 'stateHidden', { "name": "owner" }, { "name": "calendar" }, 'calendarHidden', { "name": "when_html" }, { "name": "reminder" }, { "name": "all_day", "type": "boolean" }, { "name": "url" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "created_natural" }, { "name": "duration" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 6,
  ls_grid_configs : [  ],
  content_type : 19,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.OneEvent.detail;
    this.ls_insert_handler = Lino.cal.OneEvent.insert;
    var ww = this.containing_window;
    var when_text_disp2227 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    var user2228 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a User...", "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/OneEvent/user" }) }) });
    var summary2229 = new Ext.form.TextField({ "maxLength": 200, "selectOnFocus": true });
    var event_type2230 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Calendar entry type...", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/OneEvent/event_type" }) }) });
    var id2231 = new Ext.form.NumberField({ "selectOnFocus": true });
    var modified2232 = new Ext.form.DisplayField({ "disabled": true, "hidden": true, "value": "<br>" });
    var created2233 = new Ext.form.DisplayField({ "disabled": true, "hidden": true, "value": "<br>" });
    var start_date2234 = new Lino.DateField({ "hidden": true, "selectOnFocus": true });
    var start_time2235 = new Lino.TimeField({ "hidden": true, "selectOnFocus": true });
    var end_date2236 = new Lino.DateField({ "hidden": true, "selectOnFocus": true });
    var end_time2237 = new Lino.TimeField({ "hidden": true, "selectOnFocus": true });
    var build_time2238 = new Ext.form.DisplayField({ "disabled": true, "hidden": true, "value": "<br>" });
    var build_method2239 = new Lino.ChoicesFieldElement({ "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": [['','<br>']].concat(Lino.printing.BuildMethods) });
    var assigned_to2240 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a User...", "hidden": true, "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/OneEvent/assigned_to" }) }) });
    var owner_type2241 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a content type...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/OneEvent/owner_type" }) }) });
    var owner_id2242 = new Lino.RemoteComboFieldElement({ "hidden": true, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/OneEvent/owner_id" }) }) });
    var description2243 = new Ext.form.TextArea({ "growMax": 2000, "hidden": true, "selectOnFocus": true });
    var access_class2244 = new Lino.ChoicesFieldElement({ "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": [['','<br>']].concat(Lino.cal.AccessClasses) });
    var sequence2245 = new Ext.form.NumberField({ "allowBlank": false, "hidden": true, "selectOnFocus": true, "value": 0 });
    var auto_type2246 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var transparent2247 = new Ext.form.Checkbox({ "checked": false, "hidden": true, "selectOnFocus": true });
    var room2248 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Room...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/OneEvent/room" }) }) });
    var priority2249 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Priority...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/OneEvent/priority" }) }) });
    var state2250 = new Lino.ChoicesFieldElement({ "allowBlank": false, "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": Lino.cal.EntryStates });
    var owner_disp2251 = new Ext.form.DisplayField({ "disabled": true, "hidden": true });
    var calendar2252 = new Lino.RemoteComboFieldElement({ "disabled": true, "emptyText": "Select a Calendar...", "hidden": true, "pageSize": 20, "store": new Lino.ComplexRemoteComboStore({  }) });
    var when_html_disp2253 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var reminder_disp2254 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var all_day2255 = new Ext.form.Checkbox({ "hidden": true, "selectOnFocus": true });
    var url_disp2256 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var mobile_item_disp2257 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp2258 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp2259 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp2260 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var created_natural_disp2261 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var duration2262 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(6), "disabled": true, "hidden": true, "maxLength": 6 });
    this.before_row_edit = function(record) {
      owner_id2242.setContextValue('owner_type', record ? record.data['owner_typeHidden'] : undefined);
    };
    this.onRender = function(ct, position) {
      owner_type2241.on('change',Lino.chooser_handler(owner_id2242,'owner_type'));
      Lino.cal.OneEvent.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "when_text", "editable": false, "header": "When", "sortable": false, "tooltip": "(cal.OneEvent.when_text) ", "width": Lino.chars2width(21) }, { "colIndex": 1, "dataIndex": "user", "editable": true, "editor": user2228, "filter": { "type": "string" }, "header": "Responsible user", "renderer": Lino.fk_renderer('userHidden','Lino.users.Users.detail'), "sortable": false, "tooltip": "(cal.OneEvent.user) The responsible user.", "width": Lino.chars2width(21) }, { "colIndex": 2, "dataIndex": "summary", "editable": true, "editor": summary2229, "filter": { "type": "string" }, "header": "Short description", "sortable": true, "tooltip": "(cal.OneEvent.summary) A one-line descriptive text.", "width": Lino.chars2width(22) }, { "colIndex": 3, "dataIndex": "event_type", "editable": true, "editor": event_type2230, "filter": { "type": "string" }, "header": "Calendar entry type", "renderer": Lino.fk_renderer('event_typeHidden','Lino.cal.EventTypes.detail'), "sortable": false, "tooltip": "(cal.OneEvent.event_type) The type of this entry. Every calendar entry should have this\nfield pointing to a given EventType, which holds\nextended configurable information about this entry.", "width": Lino.chars2width(21) }, { "align": "right", "colIndex": 4, "dataIndex": "id", "editable": true, "editor": id2231, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "sortable": true, "tooltip": "(cal.OneEvent.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 5, "dataIndex": "modified", "editable": false, "header": "Modified", "hidden": true, "sortable": true, "tooltip": "(cal.OneEvent.modified) ", "width": Lino.chars2width(17) }, { "colIndex": 6, "dataIndex": "created", "editable": false, "header": "Created", "hidden": true, "sortable": true, "tooltip": "(cal.OneEvent.created) The timestame when this object was created.", "width": Lino.chars2width(17) }, { "colIndex": 7, "dataIndex": "start_date", "editable": true, "editor": start_date2234, "filter": { "dateFormat": "d.m.Y", "type": "date" }, "format": "d.m.Y", "header": "Start date", "hidden": true, "sortable": true, "tooltip": "(cal.OneEvent.start_date) ", "width": Lino.chars2width(14), "xtype": "datecolumn" }, { "colIndex": 8, "dataIndex": "start_time", "editable": true, "editor": start_time2235, "header": "Start time", "hidden": true, "sortable": true, "tooltip": "(cal.OneEvent.start_time) ", "width": Lino.chars2width(9) }, { "colIndex": 9, "dataIndex": "end_date", "editable": true, "editor": end_date2236, "filter": { "dateFormat": "d.m.Y", "type": "date" }, "format": "d.m.Y", "header": "End Date", "hidden": true, "sortable": true, "tooltip": "(cal.OneEvent.end_date) ", "width": Lino.chars2width(14), "xtype": "datecolumn" }, { "colIndex": 10, "dataIndex": "end_time", "editable": true, "editor": end_time2237, "header": "End Time", "hidden": true, "sortable": true, "tooltip": "(cal.OneEvent.end_time) These four fields define the duration of this entry.\nOnly start_date is mandatory.", "width": Lino.chars2width(9) }, { "colIndex": 11, "dataIndex": "build_time", "editable": false, "header": "build time", "hidden": true, "sortable": true, "tooltip": "(cal.OneEvent.build_time) Timestamp of the built target file. Contains None\nif no build hasn't been called yet.", "width": Lino.chars2width(17) }, { "colIndex": 12, "dataIndex": "build_method", "editable": true, "editor": build_method2239, "filter": { "type": "string" }, "header": "Build method", "hidden": true, "sortable": false, "tooltip": "(cal.OneEvent.build_method) ", "width": Lino.chars2width(24) }, { "colIndex": 13, "dataIndex": "assigned_to", "editable": true, "editor": assigned_to2240, "filter": { "type": "string" }, "header": "Assigned to", "hidden": true, "renderer": Lino.fk_renderer('assigned_toHidden','Lino.users.Users.detail'), "sortable": false, "tooltip": "(cal.OneEvent.assigned_to) Another user who is expected to take responsibility for this\nentry.", "width": Lino.chars2width(21) }, { "colIndex": 14, "dataIndex": "owner_type", "editable": true, "editor": owner_type2241, "filter": { "type": "string" }, "header": "Controlled by (type)", "hidden": true, "renderer": Lino.fk_renderer('owner_typeHidden','Lino.gfks.ContentTypes.detail'), "sortable": false, "tooltip": "(cal.OneEvent.owner_type) ", "width": Lino.chars2width(21) }, { "colIndex": 15, "dataIndex": "owner_id", "editable": true, "editor": owner_id2242, "filter": { "type": "string" }, "header": "Controlled by (object)", "hidden": true, "sortable": false, "tooltip": "(cal.OneEvent.owner_id) ", "width": Lino.chars2width(11) }, { "colIndex": 16, "dataIndex": "description", "editable": true, "editor": description2243, "filter": { "type": "string" }, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.OneEvent.description) A longer descriptive text.", "width": Lino.chars2width(61) }, { "colIndex": 17, "dataIndex": "access_class", "editable": true, "editor": access_class2244, "filter": { "type": "string" }, "header": "Access Class", "hidden": true, "sortable": false, "tooltip": "(cal.OneEvent.access_class) Whether this is private, public or between.", "width": Lino.chars2width(13) }, { "align": "right", "colIndex": 18, "dataIndex": "sequence", "editable": true, "editor": sequence2245, "filter": { "type": "numeric" }, "format": "0", "header": "Revision", "hidden": true, "sortable": true, "tooltip": "(cal.OneEvent.sequence) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "align": "right", "colIndex": 19, "dataIndex": "auto_type", "editable": true, "editor": auto_type2246, "filter": { "type": "numeric" }, "format": "0", "header": "No.", "hidden": true, "sortable": true, "tooltip": "(cal.OneEvent.auto_type) Contains the sequence number if this is an automatically\ngenerated component. Otherwise this field is empty.", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 20, "dataIndex": "transparent", "editable": true, "filter": { "type": "boolean" }, "header": "Transparent", "hidden": true, "sortable": false, "tooltip": "(cal.OneEvent.transparent) Indicates that this entry shouldn't prevent other entries at\nthe same time.", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 21, "dataIndex": "room", "editable": true, "editor": room2248, "filter": { "type": "string" }, "header": "Room", "hidden": true, "renderer": Lino.fk_renderer('roomHidden','Lino.cal.Rooms.detail'), "sortable": false, "tooltip": "(cal.OneEvent.room) ", "width": Lino.chars2width(21) }, { "colIndex": 22, "dataIndex": "priority", "editable": true, "editor": priority2249, "filter": { "type": "string" }, "header": "Priority", "hidden": true, "sortable": false, "tooltip": "(cal.OneEvent.priority) ", "width": Lino.chars2width(21) }, { "colIndex": 23, "dataIndex": "state", "editable": true, "editor": state2250, "filter": { "type": "string" }, "header": "State", "hidden": true, "sortable": false, "tooltip": "(cal.OneEvent.state) The state of this entry. The state can change according to\nrules defined by the workflow, that's why we sometimes refer\nto it as the life cycle.", "width": Lino.chars2width(14) }, { "colIndex": 24, "dataIndex": "owner", "editable": false, "header": "Controlled by", "hidden": true, "sortable": false, "tooltip": "(cal.OneEvent.owner) ", "width": Lino.chars2width(11) }, { "colIndex": 25, "dataIndex": "calendar", "editable": false, "header": "Calendar", "hidden": true, "renderer": Lino.fk_renderer('calendarHidden','Lino.cal.Calendars.detail'), "sortable": false, "tooltip": "(cal.OneEvent.calendar) ", "width": Lino.chars2width(21) }, { "colIndex": 26, "dataIndex": "when_html", "editable": false, "header": "When", "hidden": true, "sortable": false, "tooltip": "(cal.OneEvent.when_html) ", "width": Lino.chars2width(31) }, { "colIndex": 27, "dataIndex": "reminder", "editable": false, "header": "Reminder", "hidden": true, "sortable": false, "tooltip": "(cal.OneEvent.reminder) ", "width": Lino.chars2width(31) }, { "colIndex": 28, "dataIndex": "all_day", "editable": true, "header": "all day", "hidden": true, "sortable": false, "tooltip": "(cal.OneEvent.all_day) ", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 29, "dataIndex": "url", "editable": false, "header": "Link URL", "hidden": true, "sortable": false, "tooltip": "(cal.OneEvent.url) ", "width": Lino.chars2width(31) }, { "colIndex": 30, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.OneEvent.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 31, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.OneEvent.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 32, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(cal.OneEvent.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 33, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(cal.OneEvent.workflow_buttons) ", "width": Lino.chars2width(31) }, { "colIndex": 34, "dataIndex": "created_natural", "editable": false, "header": "Created", "hidden": true, "sortable": false, "tooltip": "(cal.OneEvent.created_natural) ", "width": Lino.chars2width(31) }, { "align": "right", "colIndex": 35, "dataIndex": "duration", "editable": false, "format": "", "header": "Duration", "hidden": true, "sortable": false, "tooltip": "(cal.OneEvent.duration) ", "width": Lino.chars2width(8) } ];
    Lino.cal.OneEvent.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.OneEvent.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/OneEvent", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.OneEvent.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/OneEvent", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.OneEvent.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/OneEvent", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.cal.OneEvent.insertPanel = Ext.extend(Lino.cal.Events.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/cal/OneEvent",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.OneEvent.detail;
    this.ls_insert_handler = Lino.cal.OneEvent.insert;
    Lino.cal.OneEvent.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.OneEvent.insert = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.cal.OneEvent.insertPanel(p);
});
Lino.cal.OneEvent.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/OneEvent", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.OneEvent.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/OneEvent", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.OneEvent.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/OneEvent", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.OneEvent.duplicate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/OneEvent", "GET", pk, "duplicate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.cal.OneEvent.detailPanel = Ext.extend(Lino.cal.Events.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "itemId": "duplicate", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Duplicate the selected row.") }, "menu_item_text": "\u2687", "overflowText": "\u2687", "panel_btn_handler": Lino.row_action_handler('duplicate','GET',null), "text": " <font size=\"4\">\u2687</font>" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "iconCls": "x-tbar-printer", "itemId": "do_print", "menu_item_text": "Print", "overflowText": "Print", "panel_btn_handler": Lino.row_action_handler('do_print','POST',null), "tooltip": "A print action which uses a cache for the generated printable\ndocument and builds is only when it doesn't yet exist." }, { "auto_save": true, "iconCls": "x-tbar-printer_delete", "itemId": "do_clear_cache", "menu_item_text": "Clear cache", "overflowText": "Clear cache", "panel_btn_handler": Lino.row_action_handler('do_clear_cache','GET',null), "tooltip": "Defines the Clear cache button on a Printable record." }, { "auto_save": true, "itemId": "show_conflicting", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Show events conflicting with this one.") }, "menu_item_text": "\u00a0\u2694\u00a0", "overflowText": "\u00a0\u2694\u00a0", "panel_btn_handler": Lino.row_action_handler('show_conflicting','GET',null), "text": "\u00a0\u2694\u00a0" }, { "auto_save": true, "iconCls": "x-tbar-calendar", "itemId": "show_today", "menu_item_text": "Today", "overflowText": "Today", "panel_btn_handler": Lino.row_action_handler('show_today','GET',null), "tooltip": "Show all calendar events of the same day." }, { "auto_save": true, "iconCls": "x-tbar-script_add", "itemId": "create_postings", "menu_item_text": "Create posting", "overflowText": "Create posting", "panel_btn_handler": Lino.row_action_handler('create_postings','GET',null), "tooltip": "Create classical mail postings from this" }, { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "check_plausibility", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": "Check plausibility", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." }, { "auto_save": true, "itemId": "fix_problems", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": "Fix plausibility problems", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." } ], "menu_item_text": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": null, "xtype": "splitbutton" }, { "auto_save": true, "itemId": "update_guests", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Populate or update the list of participants for this entry\naccording to the suggestions.") }, "menu_item_text": "Update Guests", "overflowText": "Update Guests", "panel_btn_handler": Lino.row_action_handler('update_guests','GET',null), "text": "\u00a0\u2637\u00a0" }, { "auto_save": true, "iconCls": "x-tbar-email_add", "itemId": "create_mail", "menu_item_text": "Create email", "overflowText": "Create email", "panel_btn_handler": Lino.row_action_handler('create_mail','GET',null), "tooltip": "Create an email from this" }, { "auto_save": true, "itemId": "update_events", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create or update the automatic events controlled by this generator.") }, "menu_item_text": "Update Events", "overflowText": "Update Events", "panel_btn_handler": Lino.row_action_handler('update_events','GET',null), "text": "\u00a0\u26a1\u00a0" } ],
  ls_url: "/cal/OneEvent",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.OneEvent.detail;
    this.ls_insert_handler = Lino.cal.OneEvent.insert;
    Lino.cal.OneEvent.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.OneEvent.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.cal.OneEvent.detailPanel(p);
});
Lino.cal.OneEvent.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/OneEvent", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.OneEvent.do_print = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/OneEvent", "POST", pk, "do_print", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.OneEvent.do_clear_cache = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/OneEvent", "GET", pk, "do_clear_cache", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.OneEvent.show_conflicting = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/OneEvent", "GET", pk, "show_conflicting", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.OneEvent.show_today = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/OneEvent", "GET", pk, "show_today", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.OneEvent.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.cal.OneEvent.ParamsPanel({});
  return new Lino.cal.OneEvent.GridPanel(p);
});
Lino.cal.OneEvent.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/OneEvent", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.OneEvent.create_postings = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/OneEvent", "GET", pk, "create_postings", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.OneEvent.check_plausibility = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/OneEvent", "GET", pk, "check_plausibility", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.OneEvent.update_guests = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/OneEvent", "GET", pk, "update_guests", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.OneEvent.fix_problems = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/OneEvent", "GET", pk, "fix_problems", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.OneEvent.take = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/OneEvent", "GET", pk, "take", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.OneEvent.assign_to_me = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/OneEvent", "GET", pk, "assign_to_me", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.OneEvent.move_next = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/OneEvent", "GET", pk, "move_next", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.OneEvent.create_mail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/OneEvent", "GET", pk, "create_mail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.OneEvent.update_events = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/OneEvent", "GET", pk, "update_events", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.OneEvent.reset_event = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/OneEvent", "GET", pk, "reset_event", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.OneEvent.wf2 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/OneEvent", "GET", pk, "wf2", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.OneEvent.wf3 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/OneEvent", "GET", pk, "wf3", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class cal.MyEntries
Lino.cal.MyEntries.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/cal/MyEntries",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/cal/MyEntries','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/cal/MyEntries','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "itemId": "duplicate", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Duplicate the selected row.") }, "menu_item_text": "\u2687", "overflowText": "\u2687", "panel_btn_handler": Lino.row_action_handler('duplicate','GET',null), "text": " <font size=\"4\">\u2687</font>" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "iconCls": "x-tbar-printer", "itemId": "do_print", "menu_item_text": "Print", "overflowText": "Print", "panel_btn_handler": Lino.row_action_handler('do_print','POST',null), "tooltip": "A print action which uses a cache for the generated printable\ndocument and builds is only when it doesn't yet exist." }, { "auto_save": true, "iconCls": "x-tbar-printer_delete", "itemId": "do_clear_cache", "menu_item_text": "Clear cache", "overflowText": "Clear cache", "panel_btn_handler": Lino.row_action_handler('do_clear_cache','GET',null), "tooltip": "Defines the Clear cache button on a Printable record." }, { "auto_save": true, "itemId": "show_conflicting", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Show events conflicting with this one.") }, "menu_item_text": "\u00a0\u2694\u00a0", "overflowText": "\u00a0\u2694\u00a0", "panel_btn_handler": Lino.row_action_handler('show_conflicting','GET',null), "text": "\u00a0\u2694\u00a0" }, { "auto_save": true, "iconCls": "x-tbar-calendar", "itemId": "show_today", "menu_item_text": "Today", "overflowText": "Today", "panel_btn_handler": Lino.row_action_handler('show_today','GET',null), "tooltip": "Show all calendar events of the same day." }, { "auto_save": true, "iconCls": "x-tbar-script_add", "itemId": "create_postings", "menu_item_text": "Create posting", "overflowText": "Create posting", "panel_btn_handler": Lino.row_action_handler('create_postings','GET',null), "tooltip": "Create classical mail postings from this" }, { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "check_plausibility", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": "Check plausibility", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." }, { "auto_save": true, "itemId": "fix_problems", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": "Fix plausibility problems", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." } ], "menu_item_text": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": null, "xtype": "splitbutton" }, { "auto_save": true, "itemId": "update_guests", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Populate or update the list of participants for this entry\naccording to the suggestions.") }, "menu_item_text": "Update Guests", "overflowText": "Update Guests", "panel_btn_handler": Lino.row_action_handler('update_guests','GET',null), "text": "\u00a0\u2637\u00a0" }, { "auto_save": true, "iconCls": "x-tbar-email_add", "itemId": "create_mail", "menu_item_text": "Create email", "overflowText": "Create email", "panel_btn_handler": Lino.row_action_handler('create_mail','GET',null), "tooltip": "Create an email from this" }, { "auto_save": true, "itemId": "update_events", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create or update the automatic events controlled by this generator.") }, "menu_item_text": "Update Events", "overflowText": "Update Events", "panel_btn_handler": Lino.row_action_handler('update_events','GET',null), "text": "\u00a0\u26a1\u00a0" } ],
  cell_edit : true,
  title : "My appointments",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 48,
  ls_store_fields : [ { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "id", "type": "int" }, { "name": "modified" }, { "name": "created" }, { "dateFormat": "d.m.Y", "name": "start_date", "type": "date" }, { "name": "start_time" }, { "dateFormat": "d.m.Y", "name": "end_date", "type": "date" }, { "name": "end_time" }, { "name": "build_time" }, { "name": "build_method" }, 'build_methodHidden', { "name": "user" }, 'userHidden', { "name": "assigned_to" }, 'assigned_toHidden', { "name": "owner_type" }, 'owner_typeHidden', { "name": "owner_id" }, 'owner_idHidden', { "name": "summary" }, { "name": "description" }, { "name": "access_class" }, 'access_classHidden', { "name": "sequence", "type": "int", "useNull": true }, { "name": "auto_type", "type": "int", "useNull": true }, { "name": "event_type" }, 'event_typeHidden', { "name": "transparent", "type": "boolean" }, { "name": "room" }, 'roomHidden', { "name": "priority" }, 'priorityHidden', { "name": "state" }, 'stateHidden', { "name": "owner" }, { "name": "calendar" }, 'calendarHidden', { "name": "when_html" }, { "name": "reminder" }, { "name": "when_text" }, { "name": "all_day", "type": "boolean" }, { "name": "url" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "created_natural" }, { "name": "duration" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 2,
  ls_grid_configs : [  ],
  content_type : 19,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.MyEntries.detail;
    this.ls_insert_handler = Lino.cal.MyEntries.insert;
    var ww = this.containing_window;
    var overview_disp2264 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    var workflow_buttons_disp2265 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    var id2266 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var modified2267 = new Ext.form.DisplayField({ "disabled": true, "hidden": true, "value": "<br>" });
    var created2268 = new Ext.form.DisplayField({ "disabled": true, "hidden": true, "value": "<br>" });
    var start_date2269 = new Lino.DateField({ "hidden": true, "selectOnFocus": true });
    var start_time2270 = new Lino.TimeField({ "hidden": true, "selectOnFocus": true });
    var end_date2271 = new Lino.DateField({ "hidden": true, "selectOnFocus": true });
    var end_time2272 = new Lino.TimeField({ "hidden": true, "selectOnFocus": true });
    var build_time2273 = new Ext.form.DisplayField({ "disabled": true, "hidden": true, "value": "<br>" });
    var build_method2274 = new Lino.ChoicesFieldElement({ "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": [['','<br>']].concat(Lino.printing.BuildMethods) });
    var user2275 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a User...", "hidden": true, "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/MyEntries/user" }) }) });
    var assigned_to2276 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a User...", "hidden": true, "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/MyEntries/assigned_to" }) }) });
    var owner_type2277 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a content type...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/MyEntries/owner_type" }) }) });
    var owner_id2278 = new Lino.RemoteComboFieldElement({ "hidden": true, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/MyEntries/owner_id" }) }) });
    var summary2279 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var description2280 = new Ext.form.TextArea({ "growMax": 2000, "hidden": true, "selectOnFocus": true });
    var access_class2281 = new Lino.ChoicesFieldElement({ "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": [['','<br>']].concat(Lino.cal.AccessClasses) });
    var sequence2282 = new Ext.form.NumberField({ "allowBlank": false, "hidden": true, "selectOnFocus": true, "value": 0 });
    var auto_type2283 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var event_type2284 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Calendar entry type...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/MyEntries/event_type" }) }) });
    var transparent2285 = new Ext.form.Checkbox({ "checked": false, "hidden": true, "selectOnFocus": true });
    var room2286 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Room...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/MyEntries/room" }) }) });
    var priority2287 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Priority...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/MyEntries/priority" }) }) });
    var state2288 = new Lino.ChoicesFieldElement({ "allowBlank": false, "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": Lino.cal.EntryStates });
    var owner_disp2289 = new Ext.form.DisplayField({ "disabled": true, "hidden": true });
    var calendar2290 = new Lino.RemoteComboFieldElement({ "disabled": true, "emptyText": "Select a Calendar...", "hidden": true, "pageSize": 20, "store": new Lino.ComplexRemoteComboStore({  }) });
    var when_html_disp2291 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var reminder_disp2292 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var when_text_disp2293 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var all_day2294 = new Ext.form.Checkbox({ "hidden": true, "selectOnFocus": true });
    var url_disp2295 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var mobile_item_disp2296 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp2297 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var created_natural_disp2298 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var duration2299 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(6), "disabled": true, "hidden": true, "maxLength": 6 });
    this.before_row_edit = function(record) {
      owner_id2278.setContextValue('owner_type', record ? record.data['owner_typeHidden'] : undefined);
    };
    this.onRender = function(ct, position) {
      owner_type2277.on('change',Lino.chooser_handler(owner_id2278,'owner_type'));
      Lino.cal.MyEntries.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "overview", "editable": false, "header": "overview", "sortable": false, "tooltip": "(cal.MyEntries.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 1, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "sortable": false, "tooltip": "(cal.MyEntries.workflow_buttons) ", "width": Lino.chars2width(31) }, { "align": "right", "colIndex": 2, "dataIndex": "id", "editable": true, "editor": id2266, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(cal.MyEntries.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 3, "dataIndex": "modified", "editable": false, "header": "Modified", "hidden": true, "sortable": true, "tooltip": "(cal.MyEntries.modified) ", "width": Lino.chars2width(17) }, { "colIndex": 4, "dataIndex": "created", "editable": false, "header": "Created", "hidden": true, "sortable": true, "tooltip": "(cal.MyEntries.created) The timestame when this object was created.", "width": Lino.chars2width(17) }, { "colIndex": 5, "dataIndex": "start_date", "editable": true, "editor": start_date2269, "filter": { "dateFormat": "d.m.Y", "type": "date" }, "format": "d.m.Y", "header": "Start date", "hidden": true, "sortable": true, "tooltip": "(cal.MyEntries.start_date) ", "width": Lino.chars2width(14), "xtype": "datecolumn" }, { "colIndex": 6, "dataIndex": "start_time", "editable": true, "editor": start_time2270, "header": "Start time", "hidden": true, "sortable": true, "tooltip": "(cal.MyEntries.start_time) ", "width": Lino.chars2width(9) }, { "colIndex": 7, "dataIndex": "end_date", "editable": true, "editor": end_date2271, "filter": { "dateFormat": "d.m.Y", "type": "date" }, "format": "d.m.Y", "header": "End Date", "hidden": true, "sortable": true, "tooltip": "(cal.MyEntries.end_date) ", "width": Lino.chars2width(14), "xtype": "datecolumn" }, { "colIndex": 8, "dataIndex": "end_time", "editable": true, "editor": end_time2272, "header": "End Time", "hidden": true, "sortable": true, "tooltip": "(cal.MyEntries.end_time) These four fields define the duration of this entry.\nOnly start_date is mandatory.", "width": Lino.chars2width(9) }, { "colIndex": 9, "dataIndex": "build_time", "editable": false, "header": "build time", "hidden": true, "sortable": true, "tooltip": "(cal.MyEntries.build_time) Timestamp of the built target file. Contains None\nif no build hasn't been called yet.", "width": Lino.chars2width(17) }, { "colIndex": 10, "dataIndex": "build_method", "editable": true, "editor": build_method2274, "filter": { "type": "string" }, "header": "Build method", "hidden": true, "sortable": false, "tooltip": "(cal.MyEntries.build_method) ", "width": Lino.chars2width(24) }, { "colIndex": 11, "dataIndex": "user", "editable": true, "editor": user2275, "filter": { "type": "string" }, "header": "Responsible user", "hidden": true, "renderer": Lino.fk_renderer('userHidden','Lino.users.Users.detail'), "sortable": false, "tooltip": "(cal.MyEntries.user) The responsible user.", "width": Lino.chars2width(21) }, { "colIndex": 12, "dataIndex": "assigned_to", "editable": true, "editor": assigned_to2276, "filter": { "type": "string" }, "header": "Assigned to", "hidden": true, "renderer": Lino.fk_renderer('assigned_toHidden','Lino.users.Users.detail'), "sortable": false, "tooltip": "(cal.MyEntries.assigned_to) Another user who is expected to take responsibility for this\nentry.", "width": Lino.chars2width(21) }, { "colIndex": 13, "dataIndex": "owner_type", "editable": true, "editor": owner_type2277, "filter": { "type": "string" }, "header": "Controlled by (type)", "hidden": true, "renderer": Lino.fk_renderer('owner_typeHidden','Lino.gfks.ContentTypes.detail'), "sortable": false, "tooltip": "(cal.MyEntries.owner_type) ", "width": Lino.chars2width(21) }, { "colIndex": 14, "dataIndex": "owner_id", "editable": true, "editor": owner_id2278, "filter": { "type": "string" }, "header": "Controlled by (object)", "hidden": true, "sortable": false, "tooltip": "(cal.MyEntries.owner_id) ", "width": Lino.chars2width(11) }, { "colIndex": 15, "dataIndex": "summary", "editable": true, "editor": summary2279, "filter": { "type": "string" }, "header": "Short description", "hidden": true, "sortable": true, "tooltip": "(cal.MyEntries.summary) A one-line descriptive text.", "width": Lino.chars2width(22) }, { "colIndex": 16, "dataIndex": "description", "editable": true, "editor": description2280, "filter": { "type": "string" }, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.MyEntries.description) A longer descriptive text.", "width": Lino.chars2width(61) }, { "colIndex": 17, "dataIndex": "access_class", "editable": true, "editor": access_class2281, "filter": { "type": "string" }, "header": "Access Class", "hidden": true, "sortable": false, "tooltip": "(cal.MyEntries.access_class) Whether this is private, public or between.", "width": Lino.chars2width(13) }, { "align": "right", "colIndex": 18, "dataIndex": "sequence", "editable": true, "editor": sequence2282, "filter": { "type": "numeric" }, "format": "0", "header": "Revision", "hidden": true, "sortable": true, "tooltip": "(cal.MyEntries.sequence) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "align": "right", "colIndex": 19, "dataIndex": "auto_type", "editable": true, "editor": auto_type2283, "filter": { "type": "numeric" }, "format": "0", "header": "No.", "hidden": true, "sortable": true, "tooltip": "(cal.MyEntries.auto_type) Contains the sequence number if this is an automatically\ngenerated component. Otherwise this field is empty.", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 20, "dataIndex": "event_type", "editable": true, "editor": event_type2284, "filter": { "type": "string" }, "header": "Calendar entry type", "hidden": true, "renderer": Lino.fk_renderer('event_typeHidden','Lino.cal.EventTypes.detail'), "sortable": false, "tooltip": "(cal.MyEntries.event_type) The type of this entry. Every calendar entry should have this\nfield pointing to a given EventType, which holds\nextended configurable information about this entry.", "width": Lino.chars2width(21) }, { "colIndex": 21, "dataIndex": "transparent", "editable": true, "filter": { "type": "boolean" }, "header": "Transparent", "hidden": true, "sortable": false, "tooltip": "(cal.MyEntries.transparent) Indicates that this entry shouldn't prevent other entries at\nthe same time.", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 22, "dataIndex": "room", "editable": true, "editor": room2286, "filter": { "type": "string" }, "header": "Room", "hidden": true, "renderer": Lino.fk_renderer('roomHidden','Lino.cal.Rooms.detail'), "sortable": false, "tooltip": "(cal.MyEntries.room) ", "width": Lino.chars2width(21) }, { "colIndex": 23, "dataIndex": "priority", "editable": true, "editor": priority2287, "filter": { "type": "string" }, "header": "Priority", "hidden": true, "sortable": false, "tooltip": "(cal.MyEntries.priority) ", "width": Lino.chars2width(21) }, { "colIndex": 24, "dataIndex": "state", "editable": true, "editor": state2288, "filter": { "type": "string" }, "header": "State", "hidden": true, "sortable": false, "tooltip": "(cal.MyEntries.state) The state of this entry. The state can change according to\nrules defined by the workflow, that's why we sometimes refer\nto it as the life cycle.", "width": Lino.chars2width(14) }, { "colIndex": 25, "dataIndex": "owner", "editable": false, "header": "Controlled by", "hidden": true, "sortable": false, "tooltip": "(cal.MyEntries.owner) ", "width": Lino.chars2width(11) }, { "colIndex": 26, "dataIndex": "calendar", "editable": false, "header": "Calendar", "hidden": true, "renderer": Lino.fk_renderer('calendarHidden','Lino.cal.Calendars.detail'), "sortable": false, "tooltip": "(cal.MyEntries.calendar) ", "width": Lino.chars2width(21) }, { "colIndex": 27, "dataIndex": "when_html", "editable": false, "header": "When", "hidden": true, "sortable": false, "tooltip": "(cal.MyEntries.when_html) ", "width": Lino.chars2width(31) }, { "colIndex": 28, "dataIndex": "reminder", "editable": false, "header": "Reminder", "hidden": true, "sortable": false, "tooltip": "(cal.MyEntries.reminder) ", "width": Lino.chars2width(31) }, { "colIndex": 29, "dataIndex": "when_text", "editable": false, "header": "When", "hidden": true, "sortable": false, "tooltip": "(cal.MyEntries.when_text) ", "width": Lino.chars2width(31) }, { "colIndex": 30, "dataIndex": "all_day", "editable": true, "header": "all day", "hidden": true, "sortable": false, "tooltip": "(cal.MyEntries.all_day) ", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 31, "dataIndex": "url", "editable": false, "header": "Link URL", "hidden": true, "sortable": false, "tooltip": "(cal.MyEntries.url) ", "width": Lino.chars2width(31) }, { "colIndex": 32, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.MyEntries.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 33, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.MyEntries.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 34, "dataIndex": "created_natural", "editable": false, "header": "Created", "hidden": true, "sortable": false, "tooltip": "(cal.MyEntries.created_natural) ", "width": Lino.chars2width(31) }, { "align": "right", "colIndex": 35, "dataIndex": "duration", "editable": false, "format": "", "header": "Duration", "hidden": true, "sortable": false, "tooltip": "(cal.MyEntries.duration) ", "width": Lino.chars2width(8) } ];
    Lino.cal.MyEntries.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.MyEntries.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyEntries", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyEntries.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyEntries", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyEntries.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyEntries", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.cal.MyEntries.insertPanel = Ext.extend(Lino.cal.Events.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/cal/MyEntries",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.MyEntries.detail;
    this.ls_insert_handler = Lino.cal.MyEntries.insert;
    Lino.cal.MyEntries.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.MyEntries.insert = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.cal.MyEntries.insertPanel(p);
});
Lino.cal.MyEntries.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyEntries", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyEntries.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyEntries", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyEntries.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyEntries", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyEntries.duplicate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyEntries", "GET", pk, "duplicate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.cal.MyEntries.detailPanel = Ext.extend(Lino.cal.Events.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "itemId": "duplicate", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Duplicate the selected row.") }, "menu_item_text": "\u2687", "overflowText": "\u2687", "panel_btn_handler": Lino.row_action_handler('duplicate','GET',null), "text": " <font size=\"4\">\u2687</font>" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "iconCls": "x-tbar-printer", "itemId": "do_print", "menu_item_text": "Print", "overflowText": "Print", "panel_btn_handler": Lino.row_action_handler('do_print','POST',null), "tooltip": "A print action which uses a cache for the generated printable\ndocument and builds is only when it doesn't yet exist." }, { "auto_save": true, "iconCls": "x-tbar-printer_delete", "itemId": "do_clear_cache", "menu_item_text": "Clear cache", "overflowText": "Clear cache", "panel_btn_handler": Lino.row_action_handler('do_clear_cache','GET',null), "tooltip": "Defines the Clear cache button on a Printable record." }, { "auto_save": true, "itemId": "show_conflicting", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Show events conflicting with this one.") }, "menu_item_text": "\u00a0\u2694\u00a0", "overflowText": "\u00a0\u2694\u00a0", "panel_btn_handler": Lino.row_action_handler('show_conflicting','GET',null), "text": "\u00a0\u2694\u00a0" }, { "auto_save": true, "iconCls": "x-tbar-calendar", "itemId": "show_today", "menu_item_text": "Today", "overflowText": "Today", "panel_btn_handler": Lino.row_action_handler('show_today','GET',null), "tooltip": "Show all calendar events of the same day." }, { "auto_save": true, "iconCls": "x-tbar-script_add", "itemId": "create_postings", "menu_item_text": "Create posting", "overflowText": "Create posting", "panel_btn_handler": Lino.row_action_handler('create_postings','GET',null), "tooltip": "Create classical mail postings from this" }, { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "check_plausibility", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": "Check plausibility", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." }, { "auto_save": true, "itemId": "fix_problems", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": "Fix plausibility problems", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." } ], "menu_item_text": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": null, "xtype": "splitbutton" }, { "auto_save": true, "itemId": "update_guests", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Populate or update the list of participants for this entry\naccording to the suggestions.") }, "menu_item_text": "Update Guests", "overflowText": "Update Guests", "panel_btn_handler": Lino.row_action_handler('update_guests','GET',null), "text": "\u00a0\u2637\u00a0" }, { "auto_save": true, "iconCls": "x-tbar-email_add", "itemId": "create_mail", "menu_item_text": "Create email", "overflowText": "Create email", "panel_btn_handler": Lino.row_action_handler('create_mail','GET',null), "tooltip": "Create an email from this" }, { "auto_save": true, "itemId": "update_events", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create or update the automatic events controlled by this generator.") }, "menu_item_text": "Update Events", "overflowText": "Update Events", "panel_btn_handler": Lino.row_action_handler('update_events','GET',null), "text": "\u00a0\u26a1\u00a0" } ],
  ls_url: "/cal/MyEntries",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.MyEntries.detail;
    this.ls_insert_handler = Lino.cal.MyEntries.insert;
    Lino.cal.MyEntries.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.MyEntries.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.cal.MyEntries.detailPanel(p);
});
Lino.cal.MyEntries.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyEntries", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyEntries.do_print = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyEntries", "POST", pk, "do_print", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyEntries.do_clear_cache = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyEntries", "GET", pk, "do_clear_cache", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyEntries.show_conflicting = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyEntries", "GET", pk, "show_conflicting", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyEntries.show_today = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyEntries", "GET", pk, "show_today", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyEntries.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.cal.Events.ParamsPanel({});
  return new Lino.cal.MyEntries.GridPanel(p);
});
Lino.cal.MyEntries.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyEntries", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyEntries.create_postings = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyEntries", "GET", pk, "create_postings", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyEntries.check_plausibility = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyEntries", "GET", pk, "check_plausibility", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyEntries.update_guests = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyEntries", "GET", pk, "update_guests", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyEntries.fix_problems = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyEntries", "GET", pk, "fix_problems", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyEntries.take = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyEntries", "GET", pk, "take", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyEntries.assign_to_me = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyEntries", "GET", pk, "assign_to_me", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyEntries.move_next = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyEntries", "GET", pk, "move_next", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyEntries.create_mail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyEntries", "GET", pk, "create_mail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyEntries.update_events = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyEntries", "GET", pk, "update_events", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyEntries.reset_event = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyEntries", "GET", pk, "reset_event", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyEntries.wf2 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyEntries", "GET", pk, "wf2", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyEntries.wf3 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyEntries", "GET", pk, "wf3", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class cal.MyEntriesToday
Lino.cal.MyEntriesToday.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/cal/MyEntriesToday",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/cal/MyEntriesToday','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/cal/MyEntriesToday','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "itemId": "duplicate", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Duplicate the selected row.") }, "menu_item_text": "\u2687", "overflowText": "\u2687", "panel_btn_handler": Lino.row_action_handler('duplicate','GET',null), "text": " <font size=\"4\">\u2687</font>" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "iconCls": "x-tbar-printer", "itemId": "do_print", "menu_item_text": "Print", "overflowText": "Print", "panel_btn_handler": Lino.row_action_handler('do_print','POST',null), "tooltip": "A print action which uses a cache for the generated printable\ndocument and builds is only when it doesn't yet exist." }, { "auto_save": true, "iconCls": "x-tbar-printer_delete", "itemId": "do_clear_cache", "menu_item_text": "Clear cache", "overflowText": "Clear cache", "panel_btn_handler": Lino.row_action_handler('do_clear_cache','GET',null), "tooltip": "Defines the Clear cache button on a Printable record." }, { "auto_save": true, "itemId": "show_conflicting", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Show events conflicting with this one.") }, "menu_item_text": "\u00a0\u2694\u00a0", "overflowText": "\u00a0\u2694\u00a0", "panel_btn_handler": Lino.row_action_handler('show_conflicting','GET',null), "text": "\u00a0\u2694\u00a0" }, { "auto_save": true, "iconCls": "x-tbar-calendar", "itemId": "show_today", "menu_item_text": "Today", "overflowText": "Today", "panel_btn_handler": Lino.row_action_handler('show_today','GET',null), "tooltip": "Show all calendar events of the same day." }, { "auto_save": true, "iconCls": "x-tbar-script_add", "itemId": "create_postings", "menu_item_text": "Create posting", "overflowText": "Create posting", "panel_btn_handler": Lino.row_action_handler('create_postings','GET',null), "tooltip": "Create classical mail postings from this" }, { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "check_plausibility", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": "Check plausibility", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." }, { "auto_save": true, "itemId": "fix_problems", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": "Fix plausibility problems", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." } ], "menu_item_text": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": null, "xtype": "splitbutton" }, { "auto_save": true, "itemId": "update_guests", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Populate or update the list of participants for this entry\naccording to the suggestions.") }, "menu_item_text": "Update Guests", "overflowText": "Update Guests", "panel_btn_handler": Lino.row_action_handler('update_guests','GET',null), "text": "\u00a0\u2637\u00a0" }, { "auto_save": true, "iconCls": "x-tbar-email_add", "itemId": "create_mail", "menu_item_text": "Create email", "overflowText": "Create email", "panel_btn_handler": Lino.row_action_handler('create_mail','GET',null), "tooltip": "Create an email from this" }, { "auto_save": true, "itemId": "update_events", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create or update the automatic events controlled by this generator.") }, "menu_item_text": "Update Events", "overflowText": "Update Events", "panel_btn_handler": Lino.row_action_handler('update_events','GET',null), "text": "\u00a0\u26a1\u00a0" } ],
  cell_edit : true,
  title : "My appointments today",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 48,
  ls_store_fields : [ { "name": "start_time" }, { "name": "end_time" }, { "name": "event_type" }, 'event_typeHidden', { "name": "summary" }, { "name": "workflow_buttons" }, { "name": "id", "type": "int" }, { "name": "modified" }, { "name": "created" }, { "dateFormat": "d.m.Y", "name": "start_date", "type": "date" }, { "dateFormat": "d.m.Y", "name": "end_date", "type": "date" }, { "name": "build_time" }, { "name": "build_method" }, 'build_methodHidden', { "name": "user" }, 'userHidden', { "name": "assigned_to" }, 'assigned_toHidden', { "name": "owner_type" }, 'owner_typeHidden', { "name": "owner_id" }, 'owner_idHidden', { "name": "description" }, { "name": "access_class" }, 'access_classHidden', { "name": "sequence", "type": "int", "useNull": true }, { "name": "auto_type", "type": "int", "useNull": true }, { "name": "transparent", "type": "boolean" }, { "name": "room" }, 'roomHidden', { "name": "priority" }, 'priorityHidden', { "name": "state" }, 'stateHidden', { "name": "owner" }, { "name": "calendar" }, 'calendarHidden', { "name": "when_html" }, { "name": "reminder" }, { "name": "when_text" }, { "name": "all_day", "type": "boolean" }, { "name": "url" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "created_natural" }, { "name": "duration" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 6,
  ls_grid_configs : [  ],
  content_type : 19,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.MyEntriesToday.detail;
    this.ls_insert_handler = Lino.cal.MyEntriesToday.insert;
    var ww = this.containing_window;
    var start_time2301 = new Lino.TimeField({ "selectOnFocus": true });
    var end_time2302 = new Lino.TimeField({ "selectOnFocus": true });
    var event_type2303 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Calendar entry type...", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/MyEntriesToday/event_type" }) }) });
    var summary2304 = new Ext.form.TextField({ "maxLength": 200, "selectOnFocus": true });
    var workflow_buttons_disp2305 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    var id2306 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var modified2307 = new Ext.form.DisplayField({ "disabled": true, "hidden": true, "value": "<br>" });
    var created2308 = new Ext.form.DisplayField({ "disabled": true, "hidden": true, "value": "<br>" });
    var start_date2309 = new Lino.DateField({ "hidden": true, "selectOnFocus": true });
    var end_date2310 = new Lino.DateField({ "hidden": true, "selectOnFocus": true });
    var build_time2311 = new Ext.form.DisplayField({ "disabled": true, "hidden": true, "value": "<br>" });
    var build_method2312 = new Lino.ChoicesFieldElement({ "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": [['','<br>']].concat(Lino.printing.BuildMethods) });
    var user2313 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a User...", "hidden": true, "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/MyEntriesToday/user" }) }) });
    var assigned_to2314 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a User...", "hidden": true, "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/MyEntriesToday/assigned_to" }) }) });
    var owner_type2315 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a content type...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/MyEntriesToday/owner_type" }) }) });
    var owner_id2316 = new Lino.RemoteComboFieldElement({ "hidden": true, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/MyEntriesToday/owner_id" }) }) });
    var description2317 = new Ext.form.TextArea({ "growMax": 2000, "hidden": true, "selectOnFocus": true });
    var access_class2318 = new Lino.ChoicesFieldElement({ "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": [['','<br>']].concat(Lino.cal.AccessClasses) });
    var sequence2319 = new Ext.form.NumberField({ "allowBlank": false, "hidden": true, "selectOnFocus": true, "value": 0 });
    var auto_type2320 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var transparent2321 = new Ext.form.Checkbox({ "checked": false, "hidden": true, "selectOnFocus": true });
    var room2322 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Room...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/MyEntriesToday/room" }) }) });
    var priority2323 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Priority...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/MyEntriesToday/priority" }) }) });
    var state2324 = new Lino.ChoicesFieldElement({ "allowBlank": false, "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": Lino.cal.EntryStates });
    var owner_disp2325 = new Ext.form.DisplayField({ "disabled": true, "hidden": true });
    var calendar2326 = new Lino.RemoteComboFieldElement({ "disabled": true, "emptyText": "Select a Calendar...", "hidden": true, "pageSize": 20, "store": new Lino.ComplexRemoteComboStore({  }) });
    var when_html_disp2327 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var reminder_disp2328 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var when_text_disp2329 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var all_day2330 = new Ext.form.Checkbox({ "hidden": true, "selectOnFocus": true });
    var url_disp2331 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var mobile_item_disp2332 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp2333 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp2334 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var created_natural_disp2335 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var duration2336 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(6), "disabled": true, "hidden": true, "maxLength": 6 });
    this.before_row_edit = function(record) {
      owner_id2316.setContextValue('owner_type', record ? record.data['owner_typeHidden'] : undefined);
    };
    this.onRender = function(ct, position) {
      owner_type2315.on('change',Lino.chooser_handler(owner_id2316,'owner_type'));
      Lino.cal.MyEntriesToday.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "start_time", "editable": true, "editor": start_time2301, "header": "Start time", "sortable": true, "tooltip": "(cal.MyEntriesToday.start_time) ", "width": Lino.chars2width(9) }, { "colIndex": 1, "dataIndex": "end_time", "editable": true, "editor": end_time2302, "header": "End Time", "sortable": true, "tooltip": "(cal.MyEntriesToday.end_time) These four fields define the duration of this entry.\nOnly start_date is mandatory.", "width": Lino.chars2width(9) }, { "colIndex": 2, "dataIndex": "event_type", "editable": true, "editor": event_type2303, "filter": { "type": "string" }, "header": "Calendar entry type", "renderer": Lino.fk_renderer('event_typeHidden','Lino.cal.EventTypes.detail'), "sortable": false, "tooltip": "(cal.MyEntriesToday.event_type) The type of this entry. Every calendar entry should have this\nfield pointing to a given EventType, which holds\nextended configurable information about this entry.", "width": Lino.chars2width(21) }, { "colIndex": 3, "dataIndex": "summary", "editable": true, "editor": summary2304, "filter": { "type": "string" }, "header": "Short description", "sortable": true, "tooltip": "(cal.MyEntriesToday.summary) A one-line descriptive text.", "width": Lino.chars2width(22) }, { "colIndex": 4, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "sortable": false, "tooltip": "(cal.MyEntriesToday.workflow_buttons) ", "width": Lino.chars2width(31) }, { "align": "right", "colIndex": 5, "dataIndex": "id", "editable": true, "editor": id2306, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(cal.MyEntriesToday.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 6, "dataIndex": "modified", "editable": false, "header": "Modified", "hidden": true, "sortable": true, "tooltip": "(cal.MyEntriesToday.modified) ", "width": Lino.chars2width(17) }, { "colIndex": 7, "dataIndex": "created", "editable": false, "header": "Created", "hidden": true, "sortable": true, "tooltip": "(cal.MyEntriesToday.created) The timestame when this object was created.", "width": Lino.chars2width(17) }, { "colIndex": 8, "dataIndex": "start_date", "editable": true, "editor": start_date2309, "filter": { "dateFormat": "d.m.Y", "type": "date" }, "format": "d.m.Y", "header": "Start date", "hidden": true, "sortable": true, "tooltip": "(cal.MyEntriesToday.start_date) ", "width": Lino.chars2width(14), "xtype": "datecolumn" }, { "colIndex": 9, "dataIndex": "end_date", "editable": true, "editor": end_date2310, "filter": { "dateFormat": "d.m.Y", "type": "date" }, "format": "d.m.Y", "header": "End Date", "hidden": true, "sortable": true, "tooltip": "(cal.MyEntriesToday.end_date) ", "width": Lino.chars2width(14), "xtype": "datecolumn" }, { "colIndex": 10, "dataIndex": "build_time", "editable": false, "header": "build time", "hidden": true, "sortable": true, "tooltip": "(cal.MyEntriesToday.build_time) Timestamp of the built target file. Contains None\nif no build hasn't been called yet.", "width": Lino.chars2width(17) }, { "colIndex": 11, "dataIndex": "build_method", "editable": true, "editor": build_method2312, "filter": { "type": "string" }, "header": "Build method", "hidden": true, "sortable": false, "tooltip": "(cal.MyEntriesToday.build_method) ", "width": Lino.chars2width(24) }, { "colIndex": 12, "dataIndex": "user", "editable": true, "editor": user2313, "filter": { "type": "string" }, "header": "Responsible user", "hidden": true, "renderer": Lino.fk_renderer('userHidden','Lino.users.Users.detail'), "sortable": false, "tooltip": "(cal.MyEntriesToday.user) The responsible user.", "width": Lino.chars2width(21) }, { "colIndex": 13, "dataIndex": "assigned_to", "editable": true, "editor": assigned_to2314, "filter": { "type": "string" }, "header": "Assigned to", "hidden": true, "renderer": Lino.fk_renderer('assigned_toHidden','Lino.users.Users.detail'), "sortable": false, "tooltip": "(cal.MyEntriesToday.assigned_to) Another user who is expected to take responsibility for this\nentry.", "width": Lino.chars2width(21) }, { "colIndex": 14, "dataIndex": "owner_type", "editable": true, "editor": owner_type2315, "filter": { "type": "string" }, "header": "Controlled by (type)", "hidden": true, "renderer": Lino.fk_renderer('owner_typeHidden','Lino.gfks.ContentTypes.detail'), "sortable": false, "tooltip": "(cal.MyEntriesToday.owner_type) ", "width": Lino.chars2width(21) }, { "colIndex": 15, "dataIndex": "owner_id", "editable": true, "editor": owner_id2316, "filter": { "type": "string" }, "header": "Controlled by (object)", "hidden": true, "sortable": false, "tooltip": "(cal.MyEntriesToday.owner_id) ", "width": Lino.chars2width(11) }, { "colIndex": 16, "dataIndex": "description", "editable": true, "editor": description2317, "filter": { "type": "string" }, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.MyEntriesToday.description) A longer descriptive text.", "width": Lino.chars2width(61) }, { "colIndex": 17, "dataIndex": "access_class", "editable": true, "editor": access_class2318, "filter": { "type": "string" }, "header": "Access Class", "hidden": true, "sortable": false, "tooltip": "(cal.MyEntriesToday.access_class) Whether this is private, public or between.", "width": Lino.chars2width(13) }, { "align": "right", "colIndex": 18, "dataIndex": "sequence", "editable": true, "editor": sequence2319, "filter": { "type": "numeric" }, "format": "0", "header": "Revision", "hidden": true, "sortable": true, "tooltip": "(cal.MyEntriesToday.sequence) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "align": "right", "colIndex": 19, "dataIndex": "auto_type", "editable": true, "editor": auto_type2320, "filter": { "type": "numeric" }, "format": "0", "header": "No.", "hidden": true, "sortable": true, "tooltip": "(cal.MyEntriesToday.auto_type) Contains the sequence number if this is an automatically\ngenerated component. Otherwise this field is empty.", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 20, "dataIndex": "transparent", "editable": true, "filter": { "type": "boolean" }, "header": "Transparent", "hidden": true, "sortable": false, "tooltip": "(cal.MyEntriesToday.transparent) Indicates that this entry shouldn't prevent other entries at\nthe same time.", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 21, "dataIndex": "room", "editable": true, "editor": room2322, "filter": { "type": "string" }, "header": "Room", "hidden": true, "renderer": Lino.fk_renderer('roomHidden','Lino.cal.Rooms.detail'), "sortable": false, "tooltip": "(cal.MyEntriesToday.room) ", "width": Lino.chars2width(21) }, { "colIndex": 22, "dataIndex": "priority", "editable": true, "editor": priority2323, "filter": { "type": "string" }, "header": "Priority", "hidden": true, "sortable": false, "tooltip": "(cal.MyEntriesToday.priority) ", "width": Lino.chars2width(21) }, { "colIndex": 23, "dataIndex": "state", "editable": true, "editor": state2324, "filter": { "type": "string" }, "header": "State", "hidden": true, "sortable": false, "tooltip": "(cal.MyEntriesToday.state) The state of this entry. The state can change according to\nrules defined by the workflow, that's why we sometimes refer\nto it as the life cycle.", "width": Lino.chars2width(14) }, { "colIndex": 24, "dataIndex": "owner", "editable": false, "header": "Controlled by", "hidden": true, "sortable": false, "tooltip": "(cal.MyEntriesToday.owner) ", "width": Lino.chars2width(11) }, { "colIndex": 25, "dataIndex": "calendar", "editable": false, "header": "Calendar", "hidden": true, "renderer": Lino.fk_renderer('calendarHidden','Lino.cal.Calendars.detail'), "sortable": false, "tooltip": "(cal.MyEntriesToday.calendar) ", "width": Lino.chars2width(21) }, { "colIndex": 26, "dataIndex": "when_html", "editable": false, "header": "When", "hidden": true, "sortable": false, "tooltip": "(cal.MyEntriesToday.when_html) ", "width": Lino.chars2width(31) }, { "colIndex": 27, "dataIndex": "reminder", "editable": false, "header": "Reminder", "hidden": true, "sortable": false, "tooltip": "(cal.MyEntriesToday.reminder) ", "width": Lino.chars2width(31) }, { "colIndex": 28, "dataIndex": "when_text", "editable": false, "header": "When", "hidden": true, "sortable": false, "tooltip": "(cal.MyEntriesToday.when_text) ", "width": Lino.chars2width(31) }, { "colIndex": 29, "dataIndex": "all_day", "editable": true, "header": "all day", "hidden": true, "sortable": false, "tooltip": "(cal.MyEntriesToday.all_day) ", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 30, "dataIndex": "url", "editable": false, "header": "Link URL", "hidden": true, "sortable": false, "tooltip": "(cal.MyEntriesToday.url) ", "width": Lino.chars2width(31) }, { "colIndex": 31, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.MyEntriesToday.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 32, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.MyEntriesToday.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 33, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(cal.MyEntriesToday.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 34, "dataIndex": "created_natural", "editable": false, "header": "Created", "hidden": true, "sortable": false, "tooltip": "(cal.MyEntriesToday.created_natural) ", "width": Lino.chars2width(31) }, { "align": "right", "colIndex": 35, "dataIndex": "duration", "editable": false, "format": "", "header": "Duration", "hidden": true, "sortable": false, "tooltip": "(cal.MyEntriesToday.duration) ", "width": Lino.chars2width(8) } ];
    Lino.cal.MyEntriesToday.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.MyEntriesToday.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyEntriesToday", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyEntriesToday.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyEntriesToday", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyEntriesToday.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyEntriesToday", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.cal.MyEntriesToday.insertPanel = Ext.extend(Lino.cal.Events.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/cal/MyEntriesToday",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.MyEntriesToday.detail;
    this.ls_insert_handler = Lino.cal.MyEntriesToday.insert;
    Lino.cal.MyEntriesToday.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.MyEntriesToday.insert = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.cal.MyEntriesToday.insertPanel(p);
});
Lino.cal.MyEntriesToday.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyEntriesToday", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyEntriesToday.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyEntriesToday", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyEntriesToday.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyEntriesToday", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyEntriesToday.duplicate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyEntriesToday", "GET", pk, "duplicate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.cal.MyEntriesToday.detailPanel = Ext.extend(Lino.cal.Events.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "itemId": "duplicate", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Duplicate the selected row.") }, "menu_item_text": "\u2687", "overflowText": "\u2687", "panel_btn_handler": Lino.row_action_handler('duplicate','GET',null), "text": " <font size=\"4\">\u2687</font>" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "iconCls": "x-tbar-printer", "itemId": "do_print", "menu_item_text": "Print", "overflowText": "Print", "panel_btn_handler": Lino.row_action_handler('do_print','POST',null), "tooltip": "A print action which uses a cache for the generated printable\ndocument and builds is only when it doesn't yet exist." }, { "auto_save": true, "iconCls": "x-tbar-printer_delete", "itemId": "do_clear_cache", "menu_item_text": "Clear cache", "overflowText": "Clear cache", "panel_btn_handler": Lino.row_action_handler('do_clear_cache','GET',null), "tooltip": "Defines the Clear cache button on a Printable record." }, { "auto_save": true, "itemId": "show_conflicting", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Show events conflicting with this one.") }, "menu_item_text": "\u00a0\u2694\u00a0", "overflowText": "\u00a0\u2694\u00a0", "panel_btn_handler": Lino.row_action_handler('show_conflicting','GET',null), "text": "\u00a0\u2694\u00a0" }, { "auto_save": true, "iconCls": "x-tbar-calendar", "itemId": "show_today", "menu_item_text": "Today", "overflowText": "Today", "panel_btn_handler": Lino.row_action_handler('show_today','GET',null), "tooltip": "Show all calendar events of the same day." }, { "auto_save": true, "iconCls": "x-tbar-script_add", "itemId": "create_postings", "menu_item_text": "Create posting", "overflowText": "Create posting", "panel_btn_handler": Lino.row_action_handler('create_postings','GET',null), "tooltip": "Create classical mail postings from this" }, { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "check_plausibility", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": "Check plausibility", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." }, { "auto_save": true, "itemId": "fix_problems", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": "Fix plausibility problems", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." } ], "menu_item_text": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": null, "xtype": "splitbutton" }, { "auto_save": true, "itemId": "update_guests", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Populate or update the list of participants for this entry\naccording to the suggestions.") }, "menu_item_text": "Update Guests", "overflowText": "Update Guests", "panel_btn_handler": Lino.row_action_handler('update_guests','GET',null), "text": "\u00a0\u2637\u00a0" }, { "auto_save": true, "iconCls": "x-tbar-email_add", "itemId": "create_mail", "menu_item_text": "Create email", "overflowText": "Create email", "panel_btn_handler": Lino.row_action_handler('create_mail','GET',null), "tooltip": "Create an email from this" }, { "auto_save": true, "itemId": "update_events", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create or update the automatic events controlled by this generator.") }, "menu_item_text": "Update Events", "overflowText": "Update Events", "panel_btn_handler": Lino.row_action_handler('update_events','GET',null), "text": "\u00a0\u26a1\u00a0" } ],
  ls_url: "/cal/MyEntriesToday",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.MyEntriesToday.detail;
    this.ls_insert_handler = Lino.cal.MyEntriesToday.insert;
    Lino.cal.MyEntriesToday.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.MyEntriesToday.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.cal.MyEntriesToday.detailPanel(p);
});
Lino.cal.MyEntriesToday.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyEntriesToday", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyEntriesToday.do_print = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyEntriesToday", "POST", pk, "do_print", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyEntriesToday.do_clear_cache = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyEntriesToday", "GET", pk, "do_clear_cache", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyEntriesToday.show_conflicting = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyEntriesToday", "GET", pk, "show_conflicting", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyEntriesToday.show_today = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyEntriesToday", "GET", pk, "show_today", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyEntriesToday.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.cal.Events.ParamsPanel({});
  return new Lino.cal.MyEntriesToday.GridPanel(p);
});
Lino.cal.MyEntriesToday.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyEntriesToday", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyEntriesToday.create_postings = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyEntriesToday", "GET", pk, "create_postings", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyEntriesToday.check_plausibility = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyEntriesToday", "GET", pk, "check_plausibility", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyEntriesToday.update_guests = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyEntriesToday", "GET", pk, "update_guests", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyEntriesToday.fix_problems = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyEntriesToday", "GET", pk, "fix_problems", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyEntriesToday.take = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyEntriesToday", "GET", pk, "take", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyEntriesToday.assign_to_me = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyEntriesToday", "GET", pk, "assign_to_me", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyEntriesToday.move_next = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyEntriesToday", "GET", pk, "move_next", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyEntriesToday.create_mail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyEntriesToday", "GET", pk, "create_mail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyEntriesToday.update_events = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyEntriesToday", "GET", pk, "update_events", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyEntriesToday.reset_event = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyEntriesToday", "GET", pk, "reset_event", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyEntriesToday.wf2 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyEntriesToday", "GET", pk, "wf2", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyEntriesToday.wf3 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyEntriesToday", "GET", pk, "wf3", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class cal.MyAssignedEvents
Lino.cal.MyAssignedEvents.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/cal/MyAssignedEvents",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/cal/MyAssignedEvents','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/cal/MyAssignedEvents','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "itemId": "duplicate", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Duplicate the selected row.") }, "menu_item_text": "\u2687", "overflowText": "\u2687", "panel_btn_handler": Lino.row_action_handler('duplicate','GET',null), "text": " <font size=\"4\">\u2687</font>" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "iconCls": "x-tbar-printer", "itemId": "do_print", "menu_item_text": "Print", "overflowText": "Print", "panel_btn_handler": Lino.row_action_handler('do_print','POST',null), "tooltip": "A print action which uses a cache for the generated printable\ndocument and builds is only when it doesn't yet exist." }, { "auto_save": true, "iconCls": "x-tbar-printer_delete", "itemId": "do_clear_cache", "menu_item_text": "Clear cache", "overflowText": "Clear cache", "panel_btn_handler": Lino.row_action_handler('do_clear_cache','GET',null), "tooltip": "Defines the Clear cache button on a Printable record." }, { "auto_save": true, "itemId": "show_conflicting", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Show events conflicting with this one.") }, "menu_item_text": "\u00a0\u2694\u00a0", "overflowText": "\u00a0\u2694\u00a0", "panel_btn_handler": Lino.row_action_handler('show_conflicting','GET',null), "text": "\u00a0\u2694\u00a0" }, { "auto_save": true, "iconCls": "x-tbar-calendar", "itemId": "show_today", "menu_item_text": "Today", "overflowText": "Today", "panel_btn_handler": Lino.row_action_handler('show_today','GET',null), "tooltip": "Show all calendar events of the same day." }, { "auto_save": true, "iconCls": "x-tbar-script_add", "itemId": "create_postings", "menu_item_text": "Create posting", "overflowText": "Create posting", "panel_btn_handler": Lino.row_action_handler('create_postings','GET',null), "tooltip": "Create classical mail postings from this" }, { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "check_plausibility", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": "Check plausibility", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." }, { "auto_save": true, "itemId": "fix_problems", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": "Fix plausibility problems", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." } ], "menu_item_text": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": null, "xtype": "splitbutton" }, { "auto_save": true, "itemId": "update_guests", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Populate or update the list of participants for this entry\naccording to the suggestions.") }, "menu_item_text": "Update Guests", "overflowText": "Update Guests", "panel_btn_handler": Lino.row_action_handler('update_guests','GET',null), "text": "\u00a0\u2637\u00a0" }, { "auto_save": true, "iconCls": "x-tbar-email_add", "itemId": "create_mail", "menu_item_text": "Create email", "overflowText": "Create email", "panel_btn_handler": Lino.row_action_handler('create_mail','GET',null), "tooltip": "Create an email from this" }, { "auto_save": true, "itemId": "update_events", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create or update the automatic events controlled by this generator.") }, "menu_item_text": "Update Events", "overflowText": "Update Events", "panel_btn_handler": Lino.row_action_handler('update_events','GET',null), "text": "\u00a0\u26a1\u00a0" } ],
  cell_edit : true,
  title : "Events assigned to me",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 48,
  ls_store_fields : [ { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "id", "type": "int" }, { "name": "modified" }, { "name": "created" }, { "dateFormat": "d.m.Y", "name": "start_date", "type": "date" }, { "name": "start_time" }, { "dateFormat": "d.m.Y", "name": "end_date", "type": "date" }, { "name": "end_time" }, { "name": "build_time" }, { "name": "build_method" }, 'build_methodHidden', { "name": "user" }, 'userHidden', { "name": "assigned_to" }, 'assigned_toHidden', { "name": "owner_type" }, 'owner_typeHidden', { "name": "owner_id" }, 'owner_idHidden', { "name": "summary" }, { "name": "description" }, { "name": "access_class" }, 'access_classHidden', { "name": "sequence", "type": "int", "useNull": true }, { "name": "auto_type", "type": "int", "useNull": true }, { "name": "event_type" }, 'event_typeHidden', { "name": "transparent", "type": "boolean" }, { "name": "room" }, 'roomHidden', { "name": "priority" }, 'priorityHidden', { "name": "state" }, 'stateHidden', { "name": "owner" }, { "name": "calendar" }, 'calendarHidden', { "name": "when_html" }, { "name": "reminder" }, { "name": "when_text" }, { "name": "all_day", "type": "boolean" }, { "name": "url" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "created_natural" }, { "name": "duration" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 2,
  ls_grid_configs : [  ],
  content_type : 19,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.MyAssignedEvents.detail;
    this.ls_insert_handler = Lino.cal.MyAssignedEvents.insert;
    var ww = this.containing_window;
    var overview_disp2338 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    var workflow_buttons_disp2339 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    var id2340 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var modified2341 = new Ext.form.DisplayField({ "disabled": true, "hidden": true, "value": "<br>" });
    var created2342 = new Ext.form.DisplayField({ "disabled": true, "hidden": true, "value": "<br>" });
    var start_date2343 = new Lino.DateField({ "hidden": true, "selectOnFocus": true });
    var start_time2344 = new Lino.TimeField({ "hidden": true, "selectOnFocus": true });
    var end_date2345 = new Lino.DateField({ "hidden": true, "selectOnFocus": true });
    var end_time2346 = new Lino.TimeField({ "hidden": true, "selectOnFocus": true });
    var build_time2347 = new Ext.form.DisplayField({ "disabled": true, "hidden": true, "value": "<br>" });
    var build_method2348 = new Lino.ChoicesFieldElement({ "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": [['','<br>']].concat(Lino.printing.BuildMethods) });
    var user2349 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a User...", "hidden": true, "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/MyAssignedEvents/user" }) }) });
    var assigned_to2350 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a User...", "hidden": true, "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/MyAssignedEvents/assigned_to" }) }) });
    var owner_type2351 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a content type...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/MyAssignedEvents/owner_type" }) }) });
    var owner_id2352 = new Lino.RemoteComboFieldElement({ "hidden": true, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/MyAssignedEvents/owner_id" }) }) });
    var summary2353 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var description2354 = new Ext.form.TextArea({ "growMax": 2000, "hidden": true, "selectOnFocus": true });
    var access_class2355 = new Lino.ChoicesFieldElement({ "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": [['','<br>']].concat(Lino.cal.AccessClasses) });
    var sequence2356 = new Ext.form.NumberField({ "allowBlank": false, "hidden": true, "selectOnFocus": true, "value": 0 });
    var auto_type2357 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var event_type2358 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Calendar entry type...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/MyAssignedEvents/event_type" }) }) });
    var transparent2359 = new Ext.form.Checkbox({ "checked": false, "hidden": true, "selectOnFocus": true });
    var room2360 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Room...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/MyAssignedEvents/room" }) }) });
    var priority2361 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Priority...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/MyAssignedEvents/priority" }) }) });
    var state2362 = new Lino.ChoicesFieldElement({ "allowBlank": false, "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": Lino.cal.EntryStates });
    var owner_disp2363 = new Ext.form.DisplayField({ "disabled": true, "hidden": true });
    var calendar2364 = new Lino.RemoteComboFieldElement({ "disabled": true, "emptyText": "Select a Calendar...", "hidden": true, "pageSize": 20, "store": new Lino.ComplexRemoteComboStore({  }) });
    var when_html_disp2365 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var reminder_disp2366 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var when_text_disp2367 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var all_day2368 = new Ext.form.Checkbox({ "hidden": true, "selectOnFocus": true });
    var url_disp2369 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var mobile_item_disp2370 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp2371 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var created_natural_disp2372 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var duration2373 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(6), "disabled": true, "hidden": true, "maxLength": 6 });
    this.before_row_edit = function(record) {
      owner_id2352.setContextValue('owner_type', record ? record.data['owner_typeHidden'] : undefined);
    };
    this.onRender = function(ct, position) {
      owner_type2351.on('change',Lino.chooser_handler(owner_id2352,'owner_type'));
      Lino.cal.MyAssignedEvents.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "overview", "editable": false, "header": "overview", "sortable": false, "tooltip": "(cal.MyAssignedEvents.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 1, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "sortable": false, "tooltip": "(cal.MyAssignedEvents.workflow_buttons) ", "width": Lino.chars2width(31) }, { "align": "right", "colIndex": 2, "dataIndex": "id", "editable": true, "editor": id2340, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(cal.MyAssignedEvents.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 3, "dataIndex": "modified", "editable": false, "header": "Modified", "hidden": true, "sortable": true, "tooltip": "(cal.MyAssignedEvents.modified) ", "width": Lino.chars2width(17) }, { "colIndex": 4, "dataIndex": "created", "editable": false, "header": "Created", "hidden": true, "sortable": true, "tooltip": "(cal.MyAssignedEvents.created) The timestame when this object was created.", "width": Lino.chars2width(17) }, { "colIndex": 5, "dataIndex": "start_date", "editable": true, "editor": start_date2343, "filter": { "dateFormat": "d.m.Y", "type": "date" }, "format": "d.m.Y", "header": "Start date", "hidden": true, "sortable": true, "tooltip": "(cal.MyAssignedEvents.start_date) ", "width": Lino.chars2width(14), "xtype": "datecolumn" }, { "colIndex": 6, "dataIndex": "start_time", "editable": true, "editor": start_time2344, "header": "Start time", "hidden": true, "sortable": true, "tooltip": "(cal.MyAssignedEvents.start_time) ", "width": Lino.chars2width(9) }, { "colIndex": 7, "dataIndex": "end_date", "editable": true, "editor": end_date2345, "filter": { "dateFormat": "d.m.Y", "type": "date" }, "format": "d.m.Y", "header": "End Date", "hidden": true, "sortable": true, "tooltip": "(cal.MyAssignedEvents.end_date) ", "width": Lino.chars2width(14), "xtype": "datecolumn" }, { "colIndex": 8, "dataIndex": "end_time", "editable": true, "editor": end_time2346, "header": "End Time", "hidden": true, "sortable": true, "tooltip": "(cal.MyAssignedEvents.end_time) These four fields define the duration of this entry.\nOnly start_date is mandatory.", "width": Lino.chars2width(9) }, { "colIndex": 9, "dataIndex": "build_time", "editable": false, "header": "build time", "hidden": true, "sortable": true, "tooltip": "(cal.MyAssignedEvents.build_time) Timestamp of the built target file. Contains None\nif no build hasn't been called yet.", "width": Lino.chars2width(17) }, { "colIndex": 10, "dataIndex": "build_method", "editable": true, "editor": build_method2348, "filter": { "type": "string" }, "header": "Build method", "hidden": true, "sortable": false, "tooltip": "(cal.MyAssignedEvents.build_method) ", "width": Lino.chars2width(24) }, { "colIndex": 11, "dataIndex": "user", "editable": true, "editor": user2349, "filter": { "type": "string" }, "header": "Responsible user", "hidden": true, "renderer": Lino.fk_renderer('userHidden','Lino.users.Users.detail'), "sortable": false, "tooltip": "(cal.MyAssignedEvents.user) The responsible user.", "width": Lino.chars2width(21) }, { "colIndex": 12, "dataIndex": "assigned_to", "editable": true, "editor": assigned_to2350, "filter": { "type": "string" }, "header": "Assigned to", "hidden": true, "renderer": Lino.fk_renderer('assigned_toHidden','Lino.users.Users.detail'), "sortable": false, "tooltip": "(cal.MyAssignedEvents.assigned_to) Another user who is expected to take responsibility for this\nentry.", "width": Lino.chars2width(21) }, { "colIndex": 13, "dataIndex": "owner_type", "editable": true, "editor": owner_type2351, "filter": { "type": "string" }, "header": "Controlled by (type)", "hidden": true, "renderer": Lino.fk_renderer('owner_typeHidden','Lino.gfks.ContentTypes.detail'), "sortable": false, "tooltip": "(cal.MyAssignedEvents.owner_type) ", "width": Lino.chars2width(21) }, { "colIndex": 14, "dataIndex": "owner_id", "editable": true, "editor": owner_id2352, "filter": { "type": "string" }, "header": "Controlled by (object)", "hidden": true, "sortable": false, "tooltip": "(cal.MyAssignedEvents.owner_id) ", "width": Lino.chars2width(11) }, { "colIndex": 15, "dataIndex": "summary", "editable": true, "editor": summary2353, "filter": { "type": "string" }, "header": "Short description", "hidden": true, "sortable": true, "tooltip": "(cal.MyAssignedEvents.summary) A one-line descriptive text.", "width": Lino.chars2width(22) }, { "colIndex": 16, "dataIndex": "description", "editable": true, "editor": description2354, "filter": { "type": "string" }, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.MyAssignedEvents.description) A longer descriptive text.", "width": Lino.chars2width(61) }, { "colIndex": 17, "dataIndex": "access_class", "editable": true, "editor": access_class2355, "filter": { "type": "string" }, "header": "Access Class", "hidden": true, "sortable": false, "tooltip": "(cal.MyAssignedEvents.access_class) Whether this is private, public or between.", "width": Lino.chars2width(13) }, { "align": "right", "colIndex": 18, "dataIndex": "sequence", "editable": true, "editor": sequence2356, "filter": { "type": "numeric" }, "format": "0", "header": "Revision", "hidden": true, "sortable": true, "tooltip": "(cal.MyAssignedEvents.sequence) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "align": "right", "colIndex": 19, "dataIndex": "auto_type", "editable": true, "editor": auto_type2357, "filter": { "type": "numeric" }, "format": "0", "header": "No.", "hidden": true, "sortable": true, "tooltip": "(cal.MyAssignedEvents.auto_type) Contains the sequence number if this is an automatically\ngenerated component. Otherwise this field is empty.", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 20, "dataIndex": "event_type", "editable": true, "editor": event_type2358, "filter": { "type": "string" }, "header": "Calendar entry type", "hidden": true, "renderer": Lino.fk_renderer('event_typeHidden','Lino.cal.EventTypes.detail'), "sortable": false, "tooltip": "(cal.MyAssignedEvents.event_type) The type of this entry. Every calendar entry should have this\nfield pointing to a given EventType, which holds\nextended configurable information about this entry.", "width": Lino.chars2width(21) }, { "colIndex": 21, "dataIndex": "transparent", "editable": true, "filter": { "type": "boolean" }, "header": "Transparent", "hidden": true, "sortable": false, "tooltip": "(cal.MyAssignedEvents.transparent) Indicates that this entry shouldn't prevent other entries at\nthe same time.", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 22, "dataIndex": "room", "editable": true, "editor": room2360, "filter": { "type": "string" }, "header": "Room", "hidden": true, "renderer": Lino.fk_renderer('roomHidden','Lino.cal.Rooms.detail'), "sortable": false, "tooltip": "(cal.MyAssignedEvents.room) ", "width": Lino.chars2width(21) }, { "colIndex": 23, "dataIndex": "priority", "editable": true, "editor": priority2361, "filter": { "type": "string" }, "header": "Priority", "hidden": true, "sortable": false, "tooltip": "(cal.MyAssignedEvents.priority) ", "width": Lino.chars2width(21) }, { "colIndex": 24, "dataIndex": "state", "editable": true, "editor": state2362, "filter": { "type": "string" }, "header": "State", "hidden": true, "sortable": false, "tooltip": "(cal.MyAssignedEvents.state) The state of this entry. The state can change according to\nrules defined by the workflow, that's why we sometimes refer\nto it as the life cycle.", "width": Lino.chars2width(14) }, { "colIndex": 25, "dataIndex": "owner", "editable": false, "header": "Controlled by", "hidden": true, "sortable": false, "tooltip": "(cal.MyAssignedEvents.owner) ", "width": Lino.chars2width(11) }, { "colIndex": 26, "dataIndex": "calendar", "editable": false, "header": "Calendar", "hidden": true, "renderer": Lino.fk_renderer('calendarHidden','Lino.cal.Calendars.detail'), "sortable": false, "tooltip": "(cal.MyAssignedEvents.calendar) ", "width": Lino.chars2width(21) }, { "colIndex": 27, "dataIndex": "when_html", "editable": false, "header": "When", "hidden": true, "sortable": false, "tooltip": "(cal.MyAssignedEvents.when_html) ", "width": Lino.chars2width(31) }, { "colIndex": 28, "dataIndex": "reminder", "editable": false, "header": "Reminder", "hidden": true, "sortable": false, "tooltip": "(cal.MyAssignedEvents.reminder) ", "width": Lino.chars2width(31) }, { "colIndex": 29, "dataIndex": "when_text", "editable": false, "header": "When", "hidden": true, "sortable": false, "tooltip": "(cal.MyAssignedEvents.when_text) ", "width": Lino.chars2width(31) }, { "colIndex": 30, "dataIndex": "all_day", "editable": true, "header": "all day", "hidden": true, "sortable": false, "tooltip": "(cal.MyAssignedEvents.all_day) ", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 31, "dataIndex": "url", "editable": false, "header": "Link URL", "hidden": true, "sortable": false, "tooltip": "(cal.MyAssignedEvents.url) ", "width": Lino.chars2width(31) }, { "colIndex": 32, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.MyAssignedEvents.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 33, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.MyAssignedEvents.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 34, "dataIndex": "created_natural", "editable": false, "header": "Created", "hidden": true, "sortable": false, "tooltip": "(cal.MyAssignedEvents.created_natural) ", "width": Lino.chars2width(31) }, { "align": "right", "colIndex": 35, "dataIndex": "duration", "editable": false, "format": "", "header": "Duration", "hidden": true, "sortable": false, "tooltip": "(cal.MyAssignedEvents.duration) ", "width": Lino.chars2width(8) } ];
    Lino.cal.MyAssignedEvents.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.MyAssignedEvents.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyAssignedEvents", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyAssignedEvents.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyAssignedEvents", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyAssignedEvents.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyAssignedEvents", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.cal.MyAssignedEvents.insertPanel = Ext.extend(Lino.cal.Events.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/cal/MyAssignedEvents",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.MyAssignedEvents.detail;
    this.ls_insert_handler = Lino.cal.MyAssignedEvents.insert;
    Lino.cal.MyAssignedEvents.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.MyAssignedEvents.insert = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.cal.MyAssignedEvents.insertPanel(p);
});
Lino.cal.MyAssignedEvents.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyAssignedEvents", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyAssignedEvents.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyAssignedEvents", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyAssignedEvents.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyAssignedEvents", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyAssignedEvents.duplicate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyAssignedEvents", "GET", pk, "duplicate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.cal.MyAssignedEvents.detailPanel = Ext.extend(Lino.cal.Events.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "itemId": "duplicate", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Duplicate the selected row.") }, "menu_item_text": "\u2687", "overflowText": "\u2687", "panel_btn_handler": Lino.row_action_handler('duplicate','GET',null), "text": " <font size=\"4\">\u2687</font>" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "iconCls": "x-tbar-printer", "itemId": "do_print", "menu_item_text": "Print", "overflowText": "Print", "panel_btn_handler": Lino.row_action_handler('do_print','POST',null), "tooltip": "A print action which uses a cache for the generated printable\ndocument and builds is only when it doesn't yet exist." }, { "auto_save": true, "iconCls": "x-tbar-printer_delete", "itemId": "do_clear_cache", "menu_item_text": "Clear cache", "overflowText": "Clear cache", "panel_btn_handler": Lino.row_action_handler('do_clear_cache','GET',null), "tooltip": "Defines the Clear cache button on a Printable record." }, { "auto_save": true, "itemId": "show_conflicting", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Show events conflicting with this one.") }, "menu_item_text": "\u00a0\u2694\u00a0", "overflowText": "\u00a0\u2694\u00a0", "panel_btn_handler": Lino.row_action_handler('show_conflicting','GET',null), "text": "\u00a0\u2694\u00a0" }, { "auto_save": true, "iconCls": "x-tbar-calendar", "itemId": "show_today", "menu_item_text": "Today", "overflowText": "Today", "panel_btn_handler": Lino.row_action_handler('show_today','GET',null), "tooltip": "Show all calendar events of the same day." }, { "auto_save": true, "iconCls": "x-tbar-script_add", "itemId": "create_postings", "menu_item_text": "Create posting", "overflowText": "Create posting", "panel_btn_handler": Lino.row_action_handler('create_postings','GET',null), "tooltip": "Create classical mail postings from this" }, { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "check_plausibility", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": "Check plausibility", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." }, { "auto_save": true, "itemId": "fix_problems", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": "Fix plausibility problems", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." } ], "menu_item_text": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": null, "xtype": "splitbutton" }, { "auto_save": true, "itemId": "update_guests", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Populate or update the list of participants for this entry\naccording to the suggestions.") }, "menu_item_text": "Update Guests", "overflowText": "Update Guests", "panel_btn_handler": Lino.row_action_handler('update_guests','GET',null), "text": "\u00a0\u2637\u00a0" }, { "auto_save": true, "iconCls": "x-tbar-email_add", "itemId": "create_mail", "menu_item_text": "Create email", "overflowText": "Create email", "panel_btn_handler": Lino.row_action_handler('create_mail','GET',null), "tooltip": "Create an email from this" }, { "auto_save": true, "itemId": "update_events", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create or update the automatic events controlled by this generator.") }, "menu_item_text": "Update Events", "overflowText": "Update Events", "panel_btn_handler": Lino.row_action_handler('update_events','GET',null), "text": "\u00a0\u26a1\u00a0" } ],
  ls_url: "/cal/MyAssignedEvents",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.MyAssignedEvents.detail;
    this.ls_insert_handler = Lino.cal.MyAssignedEvents.insert;
    Lino.cal.MyAssignedEvents.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.MyAssignedEvents.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.cal.MyAssignedEvents.detailPanel(p);
});
Lino.cal.MyAssignedEvents.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyAssignedEvents", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyAssignedEvents.do_print = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyAssignedEvents", "POST", pk, "do_print", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyAssignedEvents.do_clear_cache = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyAssignedEvents", "GET", pk, "do_clear_cache", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyAssignedEvents.show_conflicting = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyAssignedEvents", "GET", pk, "show_conflicting", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyAssignedEvents.show_today = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyAssignedEvents", "GET", pk, "show_today", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyAssignedEvents.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.cal.Events.ParamsPanel({});
  return new Lino.cal.MyAssignedEvents.GridPanel(p);
});
Lino.cal.MyAssignedEvents.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyAssignedEvents", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyAssignedEvents.create_postings = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyAssignedEvents", "GET", pk, "create_postings", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyAssignedEvents.check_plausibility = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyAssignedEvents", "GET", pk, "check_plausibility", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyAssignedEvents.update_guests = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyAssignedEvents", "GET", pk, "update_guests", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyAssignedEvents.fix_problems = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyAssignedEvents", "GET", pk, "fix_problems", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyAssignedEvents.take = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyAssignedEvents", "GET", pk, "take", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyAssignedEvents.assign_to_me = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyAssignedEvents", "GET", pk, "assign_to_me", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyAssignedEvents.move_next = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyAssignedEvents", "GET", pk, "move_next", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyAssignedEvents.create_mail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyAssignedEvents", "GET", pk, "create_mail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyAssignedEvents.update_events = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyAssignedEvents", "GET", pk, "update_events", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyAssignedEvents.reset_event = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyAssignedEvents", "GET", pk, "reset_event", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyAssignedEvents.wf2 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyAssignedEvents", "GET", pk, "wf2", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyAssignedEvents.wf3 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyAssignedEvents", "GET", pk, "wf3", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class cal.OverdueAppointments
Lino.cal.OverdueAppointments.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/cal/OverdueAppointments",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/cal/OverdueAppointments','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/cal/OverdueAppointments','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "itemId": "duplicate", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Duplicate the selected row.") }, "menu_item_text": "\u2687", "overflowText": "\u2687", "panel_btn_handler": Lino.row_action_handler('duplicate','GET',null), "text": " <font size=\"4\">\u2687</font>" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "iconCls": "x-tbar-printer", "itemId": "do_print", "menu_item_text": "Print", "overflowText": "Print", "panel_btn_handler": Lino.row_action_handler('do_print','POST',null), "tooltip": "A print action which uses a cache for the generated printable\ndocument and builds is only when it doesn't yet exist." }, { "auto_save": true, "iconCls": "x-tbar-printer_delete", "itemId": "do_clear_cache", "menu_item_text": "Clear cache", "overflowText": "Clear cache", "panel_btn_handler": Lino.row_action_handler('do_clear_cache','GET',null), "tooltip": "Defines the Clear cache button on a Printable record." }, { "auto_save": true, "itemId": "show_conflicting", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Show events conflicting with this one.") }, "menu_item_text": "\u00a0\u2694\u00a0", "overflowText": "\u00a0\u2694\u00a0", "panel_btn_handler": Lino.row_action_handler('show_conflicting','GET',null), "text": "\u00a0\u2694\u00a0" }, { "auto_save": true, "iconCls": "x-tbar-calendar", "itemId": "show_today", "menu_item_text": "Today", "overflowText": "Today", "panel_btn_handler": Lino.row_action_handler('show_today','GET',null), "tooltip": "Show all calendar events of the same day." }, { "auto_save": true, "iconCls": "x-tbar-script_add", "itemId": "create_postings", "menu_item_text": "Create posting", "overflowText": "Create posting", "panel_btn_handler": Lino.row_action_handler('create_postings','GET',null), "tooltip": "Create classical mail postings from this" }, { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "check_plausibility", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": "Check plausibility", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." }, { "auto_save": true, "itemId": "fix_problems", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": "Fix plausibility problems", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." } ], "menu_item_text": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": null, "xtype": "splitbutton" }, { "auto_save": true, "itemId": "update_guests", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Populate or update the list of participants for this entry\naccording to the suggestions.") }, "menu_item_text": "Update Guests", "overflowText": "Update Guests", "panel_btn_handler": Lino.row_action_handler('update_guests','GET',null), "text": "\u00a0\u2637\u00a0" }, { "auto_save": true, "iconCls": "x-tbar-email_add", "itemId": "create_mail", "menu_item_text": "Create email", "overflowText": "Create email", "panel_btn_handler": Lino.row_action_handler('create_mail','GET',null), "tooltip": "Create an email from this" }, { "auto_save": true, "itemId": "update_events", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create or update the automatic events controlled by this generator.") }, "menu_item_text": "Update Events", "overflowText": "Update Events", "panel_btn_handler": Lino.row_action_handler('update_events','GET',null), "text": "\u00a0\u26a1\u00a0" } ],
  cell_edit : true,
  title : "Overdue appointments",
  page_length : 20,
  stripeRows : true,
  disabled_actions_index : 48,
  ls_store_fields : [ { "name": "when_text" }, { "name": "user" }, 'userHidden', { "name": "owner" }, { "name": "event_type" }, 'event_typeHidden', { "name": "summary" }, { "name": "workflow_buttons" }, { "name": "id", "type": "int" }, { "name": "modified" }, { "name": "created" }, { "dateFormat": "d.m.Y", "name": "start_date", "type": "date" }, { "name": "start_time" }, { "dateFormat": "d.m.Y", "name": "end_date", "type": "date" }, { "name": "end_time" }, { "name": "build_time" }, { "name": "build_method" }, 'build_methodHidden', { "name": "assigned_to" }, 'assigned_toHidden', { "name": "owner_type" }, 'owner_typeHidden', { "name": "owner_id" }, 'owner_idHidden', { "name": "description" }, { "name": "access_class" }, 'access_classHidden', { "name": "sequence", "type": "int", "useNull": true }, { "name": "auto_type", "type": "int", "useNull": true }, { "name": "transparent", "type": "boolean" }, { "name": "room" }, 'roomHidden', { "name": "priority" }, 'priorityHidden', { "name": "state" }, 'stateHidden', { "name": "calendar" }, 'calendarHidden', { "name": "when_html" }, { "name": "reminder" }, { "name": "all_day", "type": "boolean" }, { "name": "url" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "created_natural" }, { "name": "duration" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 8,
  ls_grid_configs : [  ],
  content_type : 19,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.OverdueAppointments.detail;
    this.ls_insert_handler = Lino.cal.OverdueAppointments.insert;
    var ww = this.containing_window;
    var when_text_disp2375 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    var user2376 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a User...", "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/OverdueAppointments/user" }) }) });
    var owner_disp2377 = new Ext.form.DisplayField({ "disabled": true });
    var event_type2378 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Calendar entry type...", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/OverdueAppointments/event_type" }) }) });
    var summary2379 = new Ext.form.TextField({ "maxLength": 200, "selectOnFocus": true });
    var workflow_buttons_disp2380 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    var id2381 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var modified2382 = new Ext.form.DisplayField({ "disabled": true, "hidden": true, "value": "<br>" });
    var created2383 = new Ext.form.DisplayField({ "disabled": true, "hidden": true, "value": "<br>" });
    var start_date2384 = new Lino.DateField({ "hidden": true, "selectOnFocus": true });
    var start_time2385 = new Lino.TimeField({ "hidden": true, "selectOnFocus": true });
    var end_date2386 = new Lino.DateField({ "hidden": true, "selectOnFocus": true });
    var end_time2387 = new Lino.TimeField({ "hidden": true, "selectOnFocus": true });
    var build_time2388 = new Ext.form.DisplayField({ "disabled": true, "hidden": true, "value": "<br>" });
    var build_method2389 = new Lino.ChoicesFieldElement({ "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": [['','<br>']].concat(Lino.printing.BuildMethods) });
    var assigned_to2390 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a User...", "hidden": true, "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/OverdueAppointments/assigned_to" }) }) });
    var owner_type2391 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a content type...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/OverdueAppointments/owner_type" }) }) });
    var owner_id2392 = new Lino.RemoteComboFieldElement({ "hidden": true, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/OverdueAppointments/owner_id" }) }) });
    var description2393 = new Ext.form.TextArea({ "growMax": 2000, "hidden": true, "selectOnFocus": true });
    var access_class2394 = new Lino.ChoicesFieldElement({ "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": [['','<br>']].concat(Lino.cal.AccessClasses) });
    var sequence2395 = new Ext.form.NumberField({ "allowBlank": false, "hidden": true, "selectOnFocus": true, "value": 0 });
    var auto_type2396 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var transparent2397 = new Ext.form.Checkbox({ "checked": false, "hidden": true, "selectOnFocus": true });
    var room2398 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Room...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/OverdueAppointments/room" }) }) });
    var priority2399 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Priority...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/OverdueAppointments/priority" }) }) });
    var state2400 = new Lino.ChoicesFieldElement({ "allowBlank": false, "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": Lino.cal.EntryStates });
    var calendar2401 = new Lino.RemoteComboFieldElement({ "disabled": true, "emptyText": "Select a Calendar...", "hidden": true, "pageSize": 20, "store": new Lino.ComplexRemoteComboStore({  }) });
    var when_html_disp2402 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var reminder_disp2403 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var all_day2404 = new Ext.form.Checkbox({ "hidden": true, "selectOnFocus": true });
    var url_disp2405 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var mobile_item_disp2406 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp2407 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp2408 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var created_natural_disp2409 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var duration2410 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(6), "disabled": true, "hidden": true, "maxLength": 6 });
    this.before_row_edit = function(record) {
      owner_id2392.setContextValue('owner_type', record ? record.data['owner_typeHidden'] : undefined);
    };
    this.onRender = function(ct, position) {
      owner_type2391.on('change',Lino.chooser_handler(owner_id2392,'owner_type'));
      Lino.cal.OverdueAppointments.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "when_text", "editable": false, "header": "When", "sortable": false, "tooltip": "(cal.OverdueAppointments.when_text) ", "width": Lino.chars2width(31) }, { "colIndex": 1, "dataIndex": "user", "editable": true, "editor": user2376, "filter": { "type": "string" }, "header": "Responsible user", "renderer": Lino.fk_renderer('userHidden','Lino.users.Users.detail'), "sortable": false, "tooltip": "(cal.OverdueAppointments.user) The responsible user.", "width": Lino.chars2width(21) }, { "colIndex": 2, "dataIndex": "owner", "editable": false, "header": "Controlled by", "sortable": false, "tooltip": "(cal.OverdueAppointments.owner) ", "width": Lino.chars2width(11) }, { "colIndex": 3, "dataIndex": "event_type", "editable": true, "editor": event_type2378, "filter": { "type": "string" }, "header": "Calendar entry type", "renderer": Lino.fk_renderer('event_typeHidden','Lino.cal.EventTypes.detail'), "sortable": false, "tooltip": "(cal.OverdueAppointments.event_type) The type of this entry. Every calendar entry should have this\nfield pointing to a given EventType, which holds\nextended configurable information about this entry.", "width": Lino.chars2width(21) }, { "colIndex": 4, "dataIndex": "summary", "editable": true, "editor": summary2379, "filter": { "type": "string" }, "header": "Short description", "sortable": true, "tooltip": "(cal.OverdueAppointments.summary) A one-line descriptive text.", "width": Lino.chars2width(22) }, { "colIndex": 5, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "sortable": false, "tooltip": "(cal.OverdueAppointments.workflow_buttons) ", "width": Lino.chars2width(31) }, { "align": "right", "colIndex": 6, "dataIndex": "id", "editable": true, "editor": id2381, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(cal.OverdueAppointments.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 7, "dataIndex": "modified", "editable": false, "header": "Modified", "hidden": true, "sortable": true, "tooltip": "(cal.OverdueAppointments.modified) ", "width": Lino.chars2width(17) }, { "colIndex": 8, "dataIndex": "created", "editable": false, "header": "Created", "hidden": true, "sortable": true, "tooltip": "(cal.OverdueAppointments.created) The timestame when this object was created.", "width": Lino.chars2width(17) }, { "colIndex": 9, "dataIndex": "start_date", "editable": true, "editor": start_date2384, "filter": { "dateFormat": "d.m.Y", "type": "date" }, "format": "d.m.Y", "header": "Start date", "hidden": true, "sortable": true, "tooltip": "(cal.OverdueAppointments.start_date) ", "width": Lino.chars2width(14), "xtype": "datecolumn" }, { "colIndex": 10, "dataIndex": "start_time", "editable": true, "editor": start_time2385, "header": "Start time", "hidden": true, "sortable": true, "tooltip": "(cal.OverdueAppointments.start_time) ", "width": Lino.chars2width(9) }, { "colIndex": 11, "dataIndex": "end_date", "editable": true, "editor": end_date2386, "filter": { "dateFormat": "d.m.Y", "type": "date" }, "format": "d.m.Y", "header": "End Date", "hidden": true, "sortable": true, "tooltip": "(cal.OverdueAppointments.end_date) ", "width": Lino.chars2width(14), "xtype": "datecolumn" }, { "colIndex": 12, "dataIndex": "end_time", "editable": true, "editor": end_time2387, "header": "End Time", "hidden": true, "sortable": true, "tooltip": "(cal.OverdueAppointments.end_time) These four fields define the duration of this entry.\nOnly start_date is mandatory.", "width": Lino.chars2width(9) }, { "colIndex": 13, "dataIndex": "build_time", "editable": false, "header": "build time", "hidden": true, "sortable": true, "tooltip": "(cal.OverdueAppointments.build_time) Timestamp of the built target file. Contains None\nif no build hasn't been called yet.", "width": Lino.chars2width(17) }, { "colIndex": 14, "dataIndex": "build_method", "editable": true, "editor": build_method2389, "filter": { "type": "string" }, "header": "Build method", "hidden": true, "sortable": false, "tooltip": "(cal.OverdueAppointments.build_method) ", "width": Lino.chars2width(24) }, { "colIndex": 15, "dataIndex": "assigned_to", "editable": true, "editor": assigned_to2390, "filter": { "type": "string" }, "header": "Assigned to", "hidden": true, "renderer": Lino.fk_renderer('assigned_toHidden','Lino.users.Users.detail'), "sortable": false, "tooltip": "(cal.OverdueAppointments.assigned_to) Another user who is expected to take responsibility for this\nentry.", "width": Lino.chars2width(21) }, { "colIndex": 16, "dataIndex": "owner_type", "editable": true, "editor": owner_type2391, "filter": { "type": "string" }, "header": "Controlled by (type)", "hidden": true, "renderer": Lino.fk_renderer('owner_typeHidden','Lino.gfks.ContentTypes.detail'), "sortable": false, "tooltip": "(cal.OverdueAppointments.owner_type) ", "width": Lino.chars2width(21) }, { "colIndex": 17, "dataIndex": "owner_id", "editable": true, "editor": owner_id2392, "filter": { "type": "string" }, "header": "Controlled by (object)", "hidden": true, "sortable": false, "tooltip": "(cal.OverdueAppointments.owner_id) ", "width": Lino.chars2width(11) }, { "colIndex": 18, "dataIndex": "description", "editable": true, "editor": description2393, "filter": { "type": "string" }, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.OverdueAppointments.description) A longer descriptive text.", "width": Lino.chars2width(61) }, { "colIndex": 19, "dataIndex": "access_class", "editable": true, "editor": access_class2394, "filter": { "type": "string" }, "header": "Access Class", "hidden": true, "sortable": false, "tooltip": "(cal.OverdueAppointments.access_class) Whether this is private, public or between.", "width": Lino.chars2width(13) }, { "align": "right", "colIndex": 20, "dataIndex": "sequence", "editable": true, "editor": sequence2395, "filter": { "type": "numeric" }, "format": "0", "header": "Revision", "hidden": true, "sortable": true, "tooltip": "(cal.OverdueAppointments.sequence) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "align": "right", "colIndex": 21, "dataIndex": "auto_type", "editable": true, "editor": auto_type2396, "filter": { "type": "numeric" }, "format": "0", "header": "No.", "hidden": true, "sortable": true, "tooltip": "(cal.OverdueAppointments.auto_type) Contains the sequence number if this is an automatically\ngenerated component. Otherwise this field is empty.", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 22, "dataIndex": "transparent", "editable": true, "filter": { "type": "boolean" }, "header": "Transparent", "hidden": true, "sortable": false, "tooltip": "(cal.OverdueAppointments.transparent) Indicates that this entry shouldn't prevent other entries at\nthe same time.", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 23, "dataIndex": "room", "editable": true, "editor": room2398, "filter": { "type": "string" }, "header": "Room", "hidden": true, "renderer": Lino.fk_renderer('roomHidden','Lino.cal.Rooms.detail'), "sortable": false, "tooltip": "(cal.OverdueAppointments.room) ", "width": Lino.chars2width(21) }, { "colIndex": 24, "dataIndex": "priority", "editable": true, "editor": priority2399, "filter": { "type": "string" }, "header": "Priority", "hidden": true, "sortable": false, "tooltip": "(cal.OverdueAppointments.priority) ", "width": Lino.chars2width(21) }, { "colIndex": 25, "dataIndex": "state", "editable": true, "editor": state2400, "filter": { "type": "string" }, "header": "State", "hidden": true, "sortable": false, "tooltip": "(cal.OverdueAppointments.state) The state of this entry. The state can change according to\nrules defined by the workflow, that's why we sometimes refer\nto it as the life cycle.", "width": Lino.chars2width(14) }, { "colIndex": 26, "dataIndex": "calendar", "editable": false, "header": "Calendar", "hidden": true, "renderer": Lino.fk_renderer('calendarHidden','Lino.cal.Calendars.detail'), "sortable": false, "tooltip": "(cal.OverdueAppointments.calendar) ", "width": Lino.chars2width(21) }, { "colIndex": 27, "dataIndex": "when_html", "editable": false, "header": "When", "hidden": true, "sortable": false, "tooltip": "(cal.OverdueAppointments.when_html) ", "width": Lino.chars2width(31) }, { "colIndex": 28, "dataIndex": "reminder", "editable": false, "header": "Reminder", "hidden": true, "sortable": false, "tooltip": "(cal.OverdueAppointments.reminder) ", "width": Lino.chars2width(31) }, { "colIndex": 29, "dataIndex": "all_day", "editable": true, "header": "all day", "hidden": true, "sortable": false, "tooltip": "(cal.OverdueAppointments.all_day) ", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 30, "dataIndex": "url", "editable": false, "header": "Link URL", "hidden": true, "sortable": false, "tooltip": "(cal.OverdueAppointments.url) ", "width": Lino.chars2width(31) }, { "colIndex": 31, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.OverdueAppointments.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 32, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.OverdueAppointments.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 33, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(cal.OverdueAppointments.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 34, "dataIndex": "created_natural", "editable": false, "header": "Created", "hidden": true, "sortable": false, "tooltip": "(cal.OverdueAppointments.created_natural) ", "width": Lino.chars2width(31) }, { "align": "right", "colIndex": 35, "dataIndex": "duration", "editable": false, "format": "", "header": "Duration", "hidden": true, "sortable": false, "tooltip": "(cal.OverdueAppointments.duration) ", "width": Lino.chars2width(8) } ];
    Lino.cal.OverdueAppointments.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.OverdueAppointments.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/OverdueAppointments", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.OverdueAppointments.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/OverdueAppointments", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.OverdueAppointments.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/OverdueAppointments", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.cal.OverdueAppointments.insertPanel = Ext.extend(Lino.cal.Events.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/cal/OverdueAppointments",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.OverdueAppointments.detail;
    this.ls_insert_handler = Lino.cal.OverdueAppointments.insert;
    Lino.cal.OverdueAppointments.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.OverdueAppointments.insert = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.cal.OverdueAppointments.insertPanel(p);
});
Lino.cal.OverdueAppointments.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/OverdueAppointments", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.OverdueAppointments.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/OverdueAppointments", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.OverdueAppointments.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/OverdueAppointments", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.OverdueAppointments.duplicate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/OverdueAppointments", "GET", pk, "duplicate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.cal.OverdueAppointments.detailPanel = Ext.extend(Lino.cal.Events.DetailFormPanel,{
  empty_title: "Detail",
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "itemId": "duplicate", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Duplicate the selected row.") }, "menu_item_text": "\u2687", "overflowText": "\u2687", "panel_btn_handler": Lino.row_action_handler('duplicate','GET',null), "text": " <font size=\"4\">\u2687</font>" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "iconCls": "x-tbar-printer", "itemId": "do_print", "menu_item_text": "Print", "overflowText": "Print", "panel_btn_handler": Lino.row_action_handler('do_print','POST',null), "tooltip": "A print action which uses a cache for the generated printable\ndocument and builds is only when it doesn't yet exist." }, { "auto_save": true, "iconCls": "x-tbar-printer_delete", "itemId": "do_clear_cache", "menu_item_text": "Clear cache", "overflowText": "Clear cache", "panel_btn_handler": Lino.row_action_handler('do_clear_cache','GET',null), "tooltip": "Defines the Clear cache button on a Printable record." }, { "auto_save": true, "itemId": "show_conflicting", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Show events conflicting with this one.") }, "menu_item_text": "\u00a0\u2694\u00a0", "overflowText": "\u00a0\u2694\u00a0", "panel_btn_handler": Lino.row_action_handler('show_conflicting','GET',null), "text": "\u00a0\u2694\u00a0" }, { "auto_save": true, "iconCls": "x-tbar-calendar", "itemId": "show_today", "menu_item_text": "Today", "overflowText": "Today", "panel_btn_handler": Lino.row_action_handler('show_today','GET',null), "tooltip": "Show all calendar events of the same day." }, { "auto_save": true, "iconCls": "x-tbar-script_add", "itemId": "create_postings", "menu_item_text": "Create posting", "overflowText": "Create posting", "panel_btn_handler": Lino.row_action_handler('create_postings','GET',null), "tooltip": "Create classical mail postings from this" }, { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "check_plausibility", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": "Check plausibility", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." }, { "auto_save": true, "itemId": "fix_problems", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": "Fix plausibility problems", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." } ], "menu_item_text": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": null, "xtype": "splitbutton" }, { "auto_save": true, "itemId": "update_guests", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Populate or update the list of participants for this entry\naccording to the suggestions.") }, "menu_item_text": "Update Guests", "overflowText": "Update Guests", "panel_btn_handler": Lino.row_action_handler('update_guests','GET',null), "text": "\u00a0\u2637\u00a0" }, { "auto_save": true, "iconCls": "x-tbar-email_add", "itemId": "create_mail", "menu_item_text": "Create email", "overflowText": "Create email", "panel_btn_handler": Lino.row_action_handler('create_mail','GET',null), "tooltip": "Create an email from this" }, { "auto_save": true, "itemId": "update_events", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create or update the automatic events controlled by this generator.") }, "menu_item_text": "Update Events", "overflowText": "Update Events", "panel_btn_handler": Lino.row_action_handler('update_events','GET',null), "text": "\u00a0\u26a1\u00a0" } ],
  ls_url: "/cal/OverdueAppointments",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.OverdueAppointments.detail;
    this.ls_insert_handler = Lino.cal.OverdueAppointments.insert;
    Lino.cal.OverdueAppointments.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.OverdueAppointments.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.cal.OverdueAppointments.detailPanel(p);
});
Lino.cal.OverdueAppointments.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/OverdueAppointments", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.OverdueAppointments.do_print = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/OverdueAppointments", "POST", pk, "do_print", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.OverdueAppointments.do_clear_cache = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/OverdueAppointments", "GET", pk, "do_clear_cache", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.OverdueAppointments.show_conflicting = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/OverdueAppointments", "GET", pk, "show_conflicting", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.OverdueAppointments.show_today = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/OverdueAppointments", "GET", pk, "show_today", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.OverdueAppointments.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.cal.Events.ParamsPanel({});
  return new Lino.cal.OverdueAppointments.GridPanel(p);
});
Lino.cal.OverdueAppointments.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/OverdueAppointments", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.OverdueAppointments.create_postings = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/OverdueAppointments", "GET", pk, "create_postings", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.OverdueAppointments.check_plausibility = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/OverdueAppointments", "GET", pk, "check_plausibility", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.OverdueAppointments.update_guests = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/OverdueAppointments", "GET", pk, "update_guests", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.OverdueAppointments.fix_problems = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/OverdueAppointments", "GET", pk, "fix_problems", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.OverdueAppointments.take = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/OverdueAppointments", "GET", pk, "take", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.OverdueAppointments.assign_to_me = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/OverdueAppointments", "GET", pk, "assign_to_me", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.OverdueAppointments.move_next = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/OverdueAppointments", "GET", pk, "move_next", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.OverdueAppointments.create_mail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/OverdueAppointments", "GET", pk, "create_mail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.OverdueAppointments.update_events = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/OverdueAppointments", "GET", pk, "update_events", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.OverdueAppointments.reset_event = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/OverdueAppointments", "GET", pk, "reset_event", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.OverdueAppointments.wf2 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/OverdueAppointments", "GET", pk, "wf2", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.OverdueAppointments.wf3 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/OverdueAppointments", "GET", pk, "wf3", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class cal.MyOverdueAppointments
Lino.cal.MyOverdueAppointments.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/cal/MyOverdueAppointments",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/cal/MyOverdueAppointments','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/cal/MyOverdueAppointments','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "itemId": "duplicate", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Duplicate the selected row.") }, "menu_item_text": "\u2687", "overflowText": "\u2687", "panel_btn_handler": Lino.row_action_handler('duplicate','GET',null), "text": " <font size=\"4\">\u2687</font>" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "iconCls": "x-tbar-printer", "itemId": "do_print", "menu_item_text": "Print", "overflowText": "Print", "panel_btn_handler": Lino.row_action_handler('do_print','POST',null), "tooltip": "A print action which uses a cache for the generated printable\ndocument and builds is only when it doesn't yet exist." }, { "auto_save": true, "iconCls": "x-tbar-printer_delete", "itemId": "do_clear_cache", "menu_item_text": "Clear cache", "overflowText": "Clear cache", "panel_btn_handler": Lino.row_action_handler('do_clear_cache','GET',null), "tooltip": "Defines the Clear cache button on a Printable record." }, { "auto_save": true, "itemId": "show_conflicting", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Show events conflicting with this one.") }, "menu_item_text": "\u00a0\u2694\u00a0", "overflowText": "\u00a0\u2694\u00a0", "panel_btn_handler": Lino.row_action_handler('show_conflicting','GET',null), "text": "\u00a0\u2694\u00a0" }, { "auto_save": true, "iconCls": "x-tbar-calendar", "itemId": "show_today", "menu_item_text": "Today", "overflowText": "Today", "panel_btn_handler": Lino.row_action_handler('show_today','GET',null), "tooltip": "Show all calendar events of the same day." }, { "auto_save": true, "iconCls": "x-tbar-script_add", "itemId": "create_postings", "menu_item_text": "Create posting", "overflowText": "Create posting", "panel_btn_handler": Lino.row_action_handler('create_postings','GET',null), "tooltip": "Create classical mail postings from this" }, { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "check_plausibility", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": "Check plausibility", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." }, { "auto_save": true, "itemId": "fix_problems", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": "Fix plausibility problems", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." } ], "menu_item_text": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": null, "xtype": "splitbutton" }, { "auto_save": true, "itemId": "update_guests", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Populate or update the list of participants for this entry\naccording to the suggestions.") }, "menu_item_text": "Update Guests", "overflowText": "Update Guests", "panel_btn_handler": Lino.row_action_handler('update_guests','GET',null), "text": "\u00a0\u2637\u00a0" }, { "auto_save": true, "iconCls": "x-tbar-email_add", "itemId": "create_mail", "menu_item_text": "Create email", "overflowText": "Create email", "panel_btn_handler": Lino.row_action_handler('create_mail','GET',null), "tooltip": "Create an email from this" }, { "auto_save": true, "itemId": "update_events", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create or update the automatic events controlled by this generator.") }, "menu_item_text": "Update Events", "overflowText": "Update Events", "panel_btn_handler": Lino.row_action_handler('update_events','GET',null), "text": "\u00a0\u26a1\u00a0" } ],
  cell_edit : true,
  title : "My overdue appointments",
  page_length : 20,
  stripeRows : true,
  disabled_actions_index : 48,
  ls_store_fields : [ { "name": "overview" }, { "name": "owner" }, { "name": "event_type" }, 'event_typeHidden', { "name": "workflow_buttons" }, { "name": "id", "type": "int" }, { "name": "modified" }, { "name": "created" }, { "dateFormat": "d.m.Y", "name": "start_date", "type": "date" }, { "name": "start_time" }, { "dateFormat": "d.m.Y", "name": "end_date", "type": "date" }, { "name": "end_time" }, { "name": "build_time" }, { "name": "build_method" }, 'build_methodHidden', { "name": "user" }, 'userHidden', { "name": "assigned_to" }, 'assigned_toHidden', { "name": "owner_type" }, 'owner_typeHidden', { "name": "owner_id" }, 'owner_idHidden', { "name": "summary" }, { "name": "description" }, { "name": "access_class" }, 'access_classHidden', { "name": "sequence", "type": "int", "useNull": true }, { "name": "auto_type", "type": "int", "useNull": true }, { "name": "transparent", "type": "boolean" }, { "name": "room" }, 'roomHidden', { "name": "priority" }, 'priorityHidden', { "name": "state" }, 'stateHidden', { "name": "calendar" }, 'calendarHidden', { "name": "when_html" }, { "name": "reminder" }, { "name": "when_text" }, { "name": "all_day", "type": "boolean" }, { "name": "url" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "created_natural" }, { "name": "duration" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 5,
  ls_grid_configs : [  ],
  content_type : 19,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.MyOverdueAppointments.detail;
    this.ls_insert_handler = Lino.cal.MyOverdueAppointments.insert;
    var ww = this.containing_window;
    var overview_disp2412 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    var owner_disp2413 = new Ext.form.DisplayField({ "disabled": true });
    var event_type2414 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Calendar entry type...", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/MyOverdueAppointments/event_type" }) }) });
    var workflow_buttons_disp2415 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    var id2416 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var modified2417 = new Ext.form.DisplayField({ "disabled": true, "hidden": true, "value": "<br>" });
    var created2418 = new Ext.form.DisplayField({ "disabled": true, "hidden": true, "value": "<br>" });
    var start_date2419 = new Lino.DateField({ "hidden": true, "selectOnFocus": true });
    var start_time2420 = new Lino.TimeField({ "hidden": true, "selectOnFocus": true });
    var end_date2421 = new Lino.DateField({ "hidden": true, "selectOnFocus": true });
    var end_time2422 = new Lino.TimeField({ "hidden": true, "selectOnFocus": true });
    var build_time2423 = new Ext.form.DisplayField({ "disabled": true, "hidden": true, "value": "<br>" });
    var build_method2424 = new Lino.ChoicesFieldElement({ "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": [['','<br>']].concat(Lino.printing.BuildMethods) });
    var user2425 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a User...", "hidden": true, "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/MyOverdueAppointments/user" }) }) });
    var assigned_to2426 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a User...", "hidden": true, "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/MyOverdueAppointments/assigned_to" }) }) });
    var owner_type2427 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a content type...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/MyOverdueAppointments/owner_type" }) }) });
    var owner_id2428 = new Lino.RemoteComboFieldElement({ "hidden": true, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/MyOverdueAppointments/owner_id" }) }) });
    var summary2429 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var description2430 = new Ext.form.TextArea({ "growMax": 2000, "hidden": true, "selectOnFocus": true });
    var access_class2431 = new Lino.ChoicesFieldElement({ "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": [['','<br>']].concat(Lino.cal.AccessClasses) });
    var sequence2432 = new Ext.form.NumberField({ "allowBlank": false, "hidden": true, "selectOnFocus": true, "value": 0 });
    var auto_type2433 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var transparent2434 = new Ext.form.Checkbox({ "checked": false, "hidden": true, "selectOnFocus": true });
    var room2435 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Room...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/MyOverdueAppointments/room" }) }) });
    var priority2436 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Priority...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/MyOverdueAppointments/priority" }) }) });
    var state2437 = new Lino.ChoicesFieldElement({ "allowBlank": false, "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": Lino.cal.EntryStates });
    var calendar2438 = new Lino.RemoteComboFieldElement({ "disabled": true, "emptyText": "Select a Calendar...", "hidden": true, "pageSize": 20, "store": new Lino.ComplexRemoteComboStore({  }) });
    var when_html_disp2439 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var reminder_disp2440 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var when_text_disp2441 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var all_day2442 = new Ext.form.Checkbox({ "hidden": true, "selectOnFocus": true });
    var url_disp2443 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var mobile_item_disp2444 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp2445 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var created_natural_disp2446 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var duration2447 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(6), "disabled": true, "hidden": true, "maxLength": 6 });
    this.before_row_edit = function(record) {
      owner_id2428.setContextValue('owner_type', record ? record.data['owner_typeHidden'] : undefined);
    };
    this.onRender = function(ct, position) {
      owner_type2427.on('change',Lino.chooser_handler(owner_id2428,'owner_type'));
      Lino.cal.MyOverdueAppointments.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "overview", "editable": false, "header": "overview", "sortable": false, "tooltip": "(cal.MyOverdueAppointments.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 1, "dataIndex": "owner", "editable": false, "header": "Controlled by", "sortable": false, "tooltip": "(cal.MyOverdueAppointments.owner) ", "width": Lino.chars2width(11) }, { "colIndex": 2, "dataIndex": "event_type", "editable": true, "editor": event_type2414, "filter": { "type": "string" }, "header": "Calendar entry type", "renderer": Lino.fk_renderer('event_typeHidden','Lino.cal.EventTypes.detail'), "sortable": false, "tooltip": "(cal.MyOverdueAppointments.event_type) The type of this entry. Every calendar entry should have this\nfield pointing to a given EventType, which holds\nextended configurable information about this entry.", "width": Lino.chars2width(21) }, { "colIndex": 3, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "sortable": false, "tooltip": "(cal.MyOverdueAppointments.workflow_buttons) ", "width": Lino.chars2width(31) }, { "align": "right", "colIndex": 4, "dataIndex": "id", "editable": true, "editor": id2416, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(cal.MyOverdueAppointments.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 5, "dataIndex": "modified", "editable": false, "header": "Modified", "hidden": true, "sortable": true, "tooltip": "(cal.MyOverdueAppointments.modified) ", "width": Lino.chars2width(17) }, { "colIndex": 6, "dataIndex": "created", "editable": false, "header": "Created", "hidden": true, "sortable": true, "tooltip": "(cal.MyOverdueAppointments.created) The timestame when this object was created.", "width": Lino.chars2width(17) }, { "colIndex": 7, "dataIndex": "start_date", "editable": true, "editor": start_date2419, "filter": { "dateFormat": "d.m.Y", "type": "date" }, "format": "d.m.Y", "header": "Start date", "hidden": true, "sortable": true, "tooltip": "(cal.MyOverdueAppointments.start_date) ", "width": Lino.chars2width(14), "xtype": "datecolumn" }, { "colIndex": 8, "dataIndex": "start_time", "editable": true, "editor": start_time2420, "header": "Start time", "hidden": true, "sortable": true, "tooltip": "(cal.MyOverdueAppointments.start_time) ", "width": Lino.chars2width(9) }, { "colIndex": 9, "dataIndex": "end_date", "editable": true, "editor": end_date2421, "filter": { "dateFormat": "d.m.Y", "type": "date" }, "format": "d.m.Y", "header": "End Date", "hidden": true, "sortable": true, "tooltip": "(cal.MyOverdueAppointments.end_date) ", "width": Lino.chars2width(14), "xtype": "datecolumn" }, { "colIndex": 10, "dataIndex": "end_time", "editable": true, "editor": end_time2422, "header": "End Time", "hidden": true, "sortable": true, "tooltip": "(cal.MyOverdueAppointments.end_time) These four fields define the duration of this entry.\nOnly start_date is mandatory.", "width": Lino.chars2width(9) }, { "colIndex": 11, "dataIndex": "build_time", "editable": false, "header": "build time", "hidden": true, "sortable": true, "tooltip": "(cal.MyOverdueAppointments.build_time) Timestamp of the built target file. Contains None\nif no build hasn't been called yet.", "width": Lino.chars2width(17) }, { "colIndex": 12, "dataIndex": "build_method", "editable": true, "editor": build_method2424, "filter": { "type": "string" }, "header": "Build method", "hidden": true, "sortable": false, "tooltip": "(cal.MyOverdueAppointments.build_method) ", "width": Lino.chars2width(24) }, { "colIndex": 13, "dataIndex": "user", "editable": true, "editor": user2425, "filter": { "type": "string" }, "header": "Responsible user", "hidden": true, "renderer": Lino.fk_renderer('userHidden','Lino.users.Users.detail'), "sortable": false, "tooltip": "(cal.MyOverdueAppointments.user) The responsible user.", "width": Lino.chars2width(21) }, { "colIndex": 14, "dataIndex": "assigned_to", "editable": true, "editor": assigned_to2426, "filter": { "type": "string" }, "header": "Assigned to", "hidden": true, "renderer": Lino.fk_renderer('assigned_toHidden','Lino.users.Users.detail'), "sortable": false, "tooltip": "(cal.MyOverdueAppointments.assigned_to) Another user who is expected to take responsibility for this\nentry.", "width": Lino.chars2width(21) }, { "colIndex": 15, "dataIndex": "owner_type", "editable": true, "editor": owner_type2427, "filter": { "type": "string" }, "header": "Controlled by (type)", "hidden": true, "renderer": Lino.fk_renderer('owner_typeHidden','Lino.gfks.ContentTypes.detail'), "sortable": false, "tooltip": "(cal.MyOverdueAppointments.owner_type) ", "width": Lino.chars2width(21) }, { "colIndex": 16, "dataIndex": "owner_id", "editable": true, "editor": owner_id2428, "filter": { "type": "string" }, "header": "Controlled by (object)", "hidden": true, "sortable": false, "tooltip": "(cal.MyOverdueAppointments.owner_id) ", "width": Lino.chars2width(11) }, { "colIndex": 17, "dataIndex": "summary", "editable": true, "editor": summary2429, "filter": { "type": "string" }, "header": "Short description", "hidden": true, "sortable": true, "tooltip": "(cal.MyOverdueAppointments.summary) A one-line descriptive text.", "width": Lino.chars2width(22) }, { "colIndex": 18, "dataIndex": "description", "editable": true, "editor": description2430, "filter": { "type": "string" }, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.MyOverdueAppointments.description) A longer descriptive text.", "width": Lino.chars2width(61) }, { "colIndex": 19, "dataIndex": "access_class", "editable": true, "editor": access_class2431, "filter": { "type": "string" }, "header": "Access Class", "hidden": true, "sortable": false, "tooltip": "(cal.MyOverdueAppointments.access_class) Whether this is private, public or between.", "width": Lino.chars2width(13) }, { "align": "right", "colIndex": 20, "dataIndex": "sequence", "editable": true, "editor": sequence2432, "filter": { "type": "numeric" }, "format": "0", "header": "Revision", "hidden": true, "sortable": true, "tooltip": "(cal.MyOverdueAppointments.sequence) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "align": "right", "colIndex": 21, "dataIndex": "auto_type", "editable": true, "editor": auto_type2433, "filter": { "type": "numeric" }, "format": "0", "header": "No.", "hidden": true, "sortable": true, "tooltip": "(cal.MyOverdueAppointments.auto_type) Contains the sequence number if this is an automatically\ngenerated component. Otherwise this field is empty.", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 22, "dataIndex": "transparent", "editable": true, "filter": { "type": "boolean" }, "header": "Transparent", "hidden": true, "sortable": false, "tooltip": "(cal.MyOverdueAppointments.transparent) Indicates that this entry shouldn't prevent other entries at\nthe same time.", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 23, "dataIndex": "room", "editable": true, "editor": room2435, "filter": { "type": "string" }, "header": "Room", "hidden": true, "renderer": Lino.fk_renderer('roomHidden','Lino.cal.Rooms.detail'), "sortable": false, "tooltip": "(cal.MyOverdueAppointments.room) ", "width": Lino.chars2width(21) }, { "colIndex": 24, "dataIndex": "priority", "editable": true, "editor": priority2436, "filter": { "type": "string" }, "header": "Priority", "hidden": true, "sortable": false, "tooltip": "(cal.MyOverdueAppointments.priority) ", "width": Lino.chars2width(21) }, { "colIndex": 25, "dataIndex": "state", "editable": true, "editor": state2437, "filter": { "type": "string" }, "header": "State", "hidden": true, "sortable": false, "tooltip": "(cal.MyOverdueAppointments.state) The state of this entry. The state can change according to\nrules defined by the workflow, that's why we sometimes refer\nto it as the life cycle.", "width": Lino.chars2width(14) }, { "colIndex": 26, "dataIndex": "calendar", "editable": false, "header": "Calendar", "hidden": true, "renderer": Lino.fk_renderer('calendarHidden','Lino.cal.Calendars.detail'), "sortable": false, "tooltip": "(cal.MyOverdueAppointments.calendar) ", "width": Lino.chars2width(21) }, { "colIndex": 27, "dataIndex": "when_html", "editable": false, "header": "When", "hidden": true, "sortable": false, "tooltip": "(cal.MyOverdueAppointments.when_html) ", "width": Lino.chars2width(31) }, { "colIndex": 28, "dataIndex": "reminder", "editable": false, "header": "Reminder", "hidden": true, "sortable": false, "tooltip": "(cal.MyOverdueAppointments.reminder) ", "width": Lino.chars2width(31) }, { "colIndex": 29, "dataIndex": "when_text", "editable": false, "header": "When", "hidden": true, "sortable": false, "tooltip": "(cal.MyOverdueAppointments.when_text) ", "width": Lino.chars2width(31) }, { "colIndex": 30, "dataIndex": "all_day", "editable": true, "header": "all day", "hidden": true, "sortable": false, "tooltip": "(cal.MyOverdueAppointments.all_day) ", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 31, "dataIndex": "url", "editable": false, "header": "Link URL", "hidden": true, "sortable": false, "tooltip": "(cal.MyOverdueAppointments.url) ", "width": Lino.chars2width(31) }, { "colIndex": 32, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.MyOverdueAppointments.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 33, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.MyOverdueAppointments.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 34, "dataIndex": "created_natural", "editable": false, "header": "Created", "hidden": true, "sortable": false, "tooltip": "(cal.MyOverdueAppointments.created_natural) ", "width": Lino.chars2width(31) }, { "align": "right", "colIndex": 35, "dataIndex": "duration", "editable": false, "format": "", "header": "Duration", "hidden": true, "sortable": false, "tooltip": "(cal.MyOverdueAppointments.duration) ", "width": Lino.chars2width(8) } ];
    Lino.cal.MyOverdueAppointments.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.MyOverdueAppointments.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyOverdueAppointments", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyOverdueAppointments.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyOverdueAppointments", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyOverdueAppointments.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyOverdueAppointments", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.cal.MyOverdueAppointments.insertPanel = Ext.extend(Lino.cal.Events.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/cal/MyOverdueAppointments",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.MyOverdueAppointments.detail;
    this.ls_insert_handler = Lino.cal.MyOverdueAppointments.insert;
    Lino.cal.MyOverdueAppointments.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.MyOverdueAppointments.insert = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.cal.MyOverdueAppointments.insertPanel(p);
});
Lino.cal.MyOverdueAppointments.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyOverdueAppointments", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyOverdueAppointments.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyOverdueAppointments", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyOverdueAppointments.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyOverdueAppointments", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyOverdueAppointments.duplicate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyOverdueAppointments", "GET", pk, "duplicate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.cal.MyOverdueAppointments.detailPanel = Ext.extend(Lino.cal.Events.DetailFormPanel,{
  empty_title: "Detail",
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "itemId": "duplicate", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Duplicate the selected row.") }, "menu_item_text": "\u2687", "overflowText": "\u2687", "panel_btn_handler": Lino.row_action_handler('duplicate','GET',null), "text": " <font size=\"4\">\u2687</font>" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "iconCls": "x-tbar-printer", "itemId": "do_print", "menu_item_text": "Print", "overflowText": "Print", "panel_btn_handler": Lino.row_action_handler('do_print','POST',null), "tooltip": "A print action which uses a cache for the generated printable\ndocument and builds is only when it doesn't yet exist." }, { "auto_save": true, "iconCls": "x-tbar-printer_delete", "itemId": "do_clear_cache", "menu_item_text": "Clear cache", "overflowText": "Clear cache", "panel_btn_handler": Lino.row_action_handler('do_clear_cache','GET',null), "tooltip": "Defines the Clear cache button on a Printable record." }, { "auto_save": true, "itemId": "show_conflicting", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Show events conflicting with this one.") }, "menu_item_text": "\u00a0\u2694\u00a0", "overflowText": "\u00a0\u2694\u00a0", "panel_btn_handler": Lino.row_action_handler('show_conflicting','GET',null), "text": "\u00a0\u2694\u00a0" }, { "auto_save": true, "iconCls": "x-tbar-calendar", "itemId": "show_today", "menu_item_text": "Today", "overflowText": "Today", "panel_btn_handler": Lino.row_action_handler('show_today','GET',null), "tooltip": "Show all calendar events of the same day." }, { "auto_save": true, "iconCls": "x-tbar-script_add", "itemId": "create_postings", "menu_item_text": "Create posting", "overflowText": "Create posting", "panel_btn_handler": Lino.row_action_handler('create_postings','GET',null), "tooltip": "Create classical mail postings from this" }, { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "check_plausibility", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": "Check plausibility", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." }, { "auto_save": true, "itemId": "fix_problems", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": "Fix plausibility problems", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." } ], "menu_item_text": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": null, "xtype": "splitbutton" }, { "auto_save": true, "itemId": "update_guests", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Populate or update the list of participants for this entry\naccording to the suggestions.") }, "menu_item_text": "Update Guests", "overflowText": "Update Guests", "panel_btn_handler": Lino.row_action_handler('update_guests','GET',null), "text": "\u00a0\u2637\u00a0" }, { "auto_save": true, "iconCls": "x-tbar-email_add", "itemId": "create_mail", "menu_item_text": "Create email", "overflowText": "Create email", "panel_btn_handler": Lino.row_action_handler('create_mail','GET',null), "tooltip": "Create an email from this" }, { "auto_save": true, "itemId": "update_events", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create or update the automatic events controlled by this generator.") }, "menu_item_text": "Update Events", "overflowText": "Update Events", "panel_btn_handler": Lino.row_action_handler('update_events','GET',null), "text": "\u00a0\u26a1\u00a0" } ],
  ls_url: "/cal/MyOverdueAppointments",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.MyOverdueAppointments.detail;
    this.ls_insert_handler = Lino.cal.MyOverdueAppointments.insert;
    Lino.cal.MyOverdueAppointments.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.MyOverdueAppointments.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.cal.MyOverdueAppointments.detailPanel(p);
});
Lino.cal.MyOverdueAppointments.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyOverdueAppointments", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyOverdueAppointments.do_print = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyOverdueAppointments", "POST", pk, "do_print", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyOverdueAppointments.do_clear_cache = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyOverdueAppointments", "GET", pk, "do_clear_cache", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyOverdueAppointments.show_conflicting = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyOverdueAppointments", "GET", pk, "show_conflicting", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyOverdueAppointments.show_today = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyOverdueAppointments", "GET", pk, "show_today", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyOverdueAppointments.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.cal.Events.ParamsPanel({});
  return new Lino.cal.MyOverdueAppointments.GridPanel(p);
});
Lino.cal.MyOverdueAppointments.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyOverdueAppointments", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyOverdueAppointments.create_postings = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyOverdueAppointments", "GET", pk, "create_postings", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyOverdueAppointments.check_plausibility = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyOverdueAppointments", "GET", pk, "check_plausibility", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyOverdueAppointments.update_guests = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyOverdueAppointments", "GET", pk, "update_guests", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyOverdueAppointments.fix_problems = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyOverdueAppointments", "GET", pk, "fix_problems", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyOverdueAppointments.take = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyOverdueAppointments", "GET", pk, "take", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyOverdueAppointments.assign_to_me = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyOverdueAppointments", "GET", pk, "assign_to_me", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyOverdueAppointments.move_next = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyOverdueAppointments", "GET", pk, "move_next", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyOverdueAppointments.create_mail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyOverdueAppointments", "GET", pk, "create_mail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyOverdueAppointments.update_events = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyOverdueAppointments", "GET", pk, "update_events", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyOverdueAppointments.reset_event = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyOverdueAppointments", "GET", pk, "reset_event", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyOverdueAppointments.wf2 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyOverdueAppointments", "GET", pk, "wf2", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyOverdueAppointments.wf3 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyOverdueAppointments", "GET", pk, "wf3", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class cal.MyUnconfirmedAppointments
Lino.cal.MyUnconfirmedAppointments.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/cal/MyUnconfirmedAppointments",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/cal/MyUnconfirmedAppointments','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/cal/MyUnconfirmedAppointments','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "itemId": "duplicate", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Duplicate the selected row.") }, "menu_item_text": "\u2687", "overflowText": "\u2687", "panel_btn_handler": Lino.row_action_handler('duplicate','GET',null), "text": " <font size=\"4\">\u2687</font>" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "iconCls": "x-tbar-printer", "itemId": "do_print", "menu_item_text": "Print", "overflowText": "Print", "panel_btn_handler": Lino.row_action_handler('do_print','POST',null), "tooltip": "A print action which uses a cache for the generated printable\ndocument and builds is only when it doesn't yet exist." }, { "auto_save": true, "iconCls": "x-tbar-printer_delete", "itemId": "do_clear_cache", "menu_item_text": "Clear cache", "overflowText": "Clear cache", "panel_btn_handler": Lino.row_action_handler('do_clear_cache','GET',null), "tooltip": "Defines the Clear cache button on a Printable record." }, { "auto_save": true, "itemId": "show_conflicting", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Show events conflicting with this one.") }, "menu_item_text": "\u00a0\u2694\u00a0", "overflowText": "\u00a0\u2694\u00a0", "panel_btn_handler": Lino.row_action_handler('show_conflicting','GET',null), "text": "\u00a0\u2694\u00a0" }, { "auto_save": true, "iconCls": "x-tbar-calendar", "itemId": "show_today", "menu_item_text": "Today", "overflowText": "Today", "panel_btn_handler": Lino.row_action_handler('show_today','GET',null), "tooltip": "Show all calendar events of the same day." }, { "auto_save": true, "iconCls": "x-tbar-script_add", "itemId": "create_postings", "menu_item_text": "Create posting", "overflowText": "Create posting", "panel_btn_handler": Lino.row_action_handler('create_postings','GET',null), "tooltip": "Create classical mail postings from this" }, { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "check_plausibility", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": "Check plausibility", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." }, { "auto_save": true, "itemId": "fix_problems", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": "Fix plausibility problems", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." } ], "menu_item_text": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": null, "xtype": "splitbutton" }, { "auto_save": true, "itemId": "update_guests", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Populate or update the list of participants for this entry\naccording to the suggestions.") }, "menu_item_text": "Update Guests", "overflowText": "Update Guests", "panel_btn_handler": Lino.row_action_handler('update_guests','GET',null), "text": "\u00a0\u2637\u00a0" }, { "auto_save": true, "iconCls": "x-tbar-email_add", "itemId": "create_mail", "menu_item_text": "Create email", "overflowText": "Create email", "panel_btn_handler": Lino.row_action_handler('create_mail','GET',null), "tooltip": "Create an email from this" }, { "auto_save": true, "itemId": "update_events", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create or update the automatic events controlled by this generator.") }, "menu_item_text": "Update Events", "overflowText": "Update Events", "panel_btn_handler": Lino.row_action_handler('update_events','GET',null), "text": "\u00a0\u26a1\u00a0" } ],
  cell_edit : true,
  title : "Unconfirmed appointments",
  page_length : 20,
  stripeRows : true,
  disabled_actions_index : 48,
  ls_store_fields : [ { "name": "when_text" }, { "name": "summary" }, { "name": "workflow_buttons" }, { "name": "id", "type": "int" }, { "name": "modified" }, { "name": "created" }, { "dateFormat": "d.m.Y", "name": "start_date", "type": "date" }, { "name": "start_time" }, { "dateFormat": "d.m.Y", "name": "end_date", "type": "date" }, { "name": "end_time" }, { "name": "build_time" }, { "name": "build_method" }, 'build_methodHidden', { "name": "user" }, 'userHidden', { "name": "assigned_to" }, 'assigned_toHidden', { "name": "owner_type" }, 'owner_typeHidden', { "name": "owner_id" }, 'owner_idHidden', { "name": "description" }, { "name": "access_class" }, 'access_classHidden', { "name": "sequence", "type": "int", "useNull": true }, { "name": "auto_type", "type": "int", "useNull": true }, { "name": "event_type" }, 'event_typeHidden', { "name": "transparent", "type": "boolean" }, { "name": "room" }, 'roomHidden', { "name": "priority" }, 'priorityHidden', { "name": "state" }, 'stateHidden', { "name": "owner" }, { "name": "calendar" }, 'calendarHidden', { "name": "when_html" }, { "name": "reminder" }, { "name": "all_day", "type": "boolean" }, { "name": "url" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "created_natural" }, { "name": "duration" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 3,
  ls_grid_configs : [  ],
  content_type : 19,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.MyUnconfirmedAppointments.detail;
    this.ls_insert_handler = Lino.cal.MyUnconfirmedAppointments.insert;
    var ww = this.containing_window;
    var when_text_disp2449 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    var summary2450 = new Ext.form.TextField({ "maxLength": 200, "selectOnFocus": true });
    var workflow_buttons_disp2451 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    var id2452 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var modified2453 = new Ext.form.DisplayField({ "disabled": true, "hidden": true, "value": "<br>" });
    var created2454 = new Ext.form.DisplayField({ "disabled": true, "hidden": true, "value": "<br>" });
    var start_date2455 = new Lino.DateField({ "hidden": true, "selectOnFocus": true });
    var start_time2456 = new Lino.TimeField({ "hidden": true, "selectOnFocus": true });
    var end_date2457 = new Lino.DateField({ "hidden": true, "selectOnFocus": true });
    var end_time2458 = new Lino.TimeField({ "hidden": true, "selectOnFocus": true });
    var build_time2459 = new Ext.form.DisplayField({ "disabled": true, "hidden": true, "value": "<br>" });
    var build_method2460 = new Lino.ChoicesFieldElement({ "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": [['','<br>']].concat(Lino.printing.BuildMethods) });
    var user2461 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a User...", "hidden": true, "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/MyUnconfirmedAppointments/user" }) }) });
    var assigned_to2462 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a User...", "hidden": true, "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/MyUnconfirmedAppointments/assigned_to" }) }) });
    var owner_type2463 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a content type...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/MyUnconfirmedAppointments/owner_type" }) }) });
    var owner_id2464 = new Lino.RemoteComboFieldElement({ "hidden": true, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/MyUnconfirmedAppointments/owner_id" }) }) });
    var description2465 = new Ext.form.TextArea({ "growMax": 2000, "hidden": true, "selectOnFocus": true });
    var access_class2466 = new Lino.ChoicesFieldElement({ "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": [['','<br>']].concat(Lino.cal.AccessClasses) });
    var sequence2467 = new Ext.form.NumberField({ "allowBlank": false, "hidden": true, "selectOnFocus": true, "value": 0 });
    var auto_type2468 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var event_type2469 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Calendar entry type...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/MyUnconfirmedAppointments/event_type" }) }) });
    var transparent2470 = new Ext.form.Checkbox({ "checked": false, "hidden": true, "selectOnFocus": true });
    var room2471 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Room...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/MyUnconfirmedAppointments/room" }) }) });
    var priority2472 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Priority...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/MyUnconfirmedAppointments/priority" }) }) });
    var state2473 = new Lino.ChoicesFieldElement({ "allowBlank": false, "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": Lino.cal.EntryStates });
    var owner_disp2474 = new Ext.form.DisplayField({ "disabled": true, "hidden": true });
    var calendar2475 = new Lino.RemoteComboFieldElement({ "disabled": true, "emptyText": "Select a Calendar...", "hidden": true, "pageSize": 20, "store": new Lino.ComplexRemoteComboStore({  }) });
    var when_html_disp2476 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var reminder_disp2477 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var all_day2478 = new Ext.form.Checkbox({ "hidden": true, "selectOnFocus": true });
    var url_disp2479 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var mobile_item_disp2480 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp2481 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp2482 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var created_natural_disp2483 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var duration2484 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(6), "disabled": true, "hidden": true, "maxLength": 6 });
    this.before_row_edit = function(record) {
      owner_id2464.setContextValue('owner_type', record ? record.data['owner_typeHidden'] : undefined);
    };
    this.onRender = function(ct, position) {
      owner_type2463.on('change',Lino.chooser_handler(owner_id2464,'owner_type'));
      Lino.cal.MyUnconfirmedAppointments.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "when_text", "editable": false, "header": "When", "sortable": false, "tooltip": "(cal.MyUnconfirmedAppointments.when_text) ", "width": Lino.chars2width(31) }, { "colIndex": 1, "dataIndex": "summary", "editable": true, "editor": summary2450, "filter": { "type": "string" }, "header": "Short description", "sortable": true, "tooltip": "(cal.MyUnconfirmedAppointments.summary) A one-line descriptive text.", "width": Lino.chars2width(22) }, { "colIndex": 2, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "sortable": false, "tooltip": "(cal.MyUnconfirmedAppointments.workflow_buttons) ", "width": Lino.chars2width(31) }, { "align": "right", "colIndex": 3, "dataIndex": "id", "editable": true, "editor": id2452, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(cal.MyUnconfirmedAppointments.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 4, "dataIndex": "modified", "editable": false, "header": "Modified", "hidden": true, "sortable": true, "tooltip": "(cal.MyUnconfirmedAppointments.modified) ", "width": Lino.chars2width(17) }, { "colIndex": 5, "dataIndex": "created", "editable": false, "header": "Created", "hidden": true, "sortable": true, "tooltip": "(cal.MyUnconfirmedAppointments.created) The timestame when this object was created.", "width": Lino.chars2width(17) }, { "colIndex": 6, "dataIndex": "start_date", "editable": true, "editor": start_date2455, "filter": { "dateFormat": "d.m.Y", "type": "date" }, "format": "d.m.Y", "header": "Start date", "hidden": true, "sortable": true, "tooltip": "(cal.MyUnconfirmedAppointments.start_date) ", "width": Lino.chars2width(14), "xtype": "datecolumn" }, { "colIndex": 7, "dataIndex": "start_time", "editable": true, "editor": start_time2456, "header": "Start time", "hidden": true, "sortable": true, "tooltip": "(cal.MyUnconfirmedAppointments.start_time) ", "width": Lino.chars2width(9) }, { "colIndex": 8, "dataIndex": "end_date", "editable": true, "editor": end_date2457, "filter": { "dateFormat": "d.m.Y", "type": "date" }, "format": "d.m.Y", "header": "End Date", "hidden": true, "sortable": true, "tooltip": "(cal.MyUnconfirmedAppointments.end_date) ", "width": Lino.chars2width(14), "xtype": "datecolumn" }, { "colIndex": 9, "dataIndex": "end_time", "editable": true, "editor": end_time2458, "header": "End Time", "hidden": true, "sortable": true, "tooltip": "(cal.MyUnconfirmedAppointments.end_time) These four fields define the duration of this entry.\nOnly start_date is mandatory.", "width": Lino.chars2width(9) }, { "colIndex": 10, "dataIndex": "build_time", "editable": false, "header": "build time", "hidden": true, "sortable": true, "tooltip": "(cal.MyUnconfirmedAppointments.build_time) Timestamp of the built target file. Contains None\nif no build hasn't been called yet.", "width": Lino.chars2width(17) }, { "colIndex": 11, "dataIndex": "build_method", "editable": true, "editor": build_method2460, "filter": { "type": "string" }, "header": "Build method", "hidden": true, "sortable": false, "tooltip": "(cal.MyUnconfirmedAppointments.build_method) ", "width": Lino.chars2width(24) }, { "colIndex": 12, "dataIndex": "user", "editable": true, "editor": user2461, "filter": { "type": "string" }, "header": "Responsible user", "hidden": true, "renderer": Lino.fk_renderer('userHidden','Lino.users.Users.detail'), "sortable": false, "tooltip": "(cal.MyUnconfirmedAppointments.user) The responsible user.", "width": Lino.chars2width(21) }, { "colIndex": 13, "dataIndex": "assigned_to", "editable": true, "editor": assigned_to2462, "filter": { "type": "string" }, "header": "Assigned to", "hidden": true, "renderer": Lino.fk_renderer('assigned_toHidden','Lino.users.Users.detail'), "sortable": false, "tooltip": "(cal.MyUnconfirmedAppointments.assigned_to) Another user who is expected to take responsibility for this\nentry.", "width": Lino.chars2width(21) }, { "colIndex": 14, "dataIndex": "owner_type", "editable": true, "editor": owner_type2463, "filter": { "type": "string" }, "header": "Controlled by (type)", "hidden": true, "renderer": Lino.fk_renderer('owner_typeHidden','Lino.gfks.ContentTypes.detail'), "sortable": false, "tooltip": "(cal.MyUnconfirmedAppointments.owner_type) ", "width": Lino.chars2width(21) }, { "colIndex": 15, "dataIndex": "owner_id", "editable": true, "editor": owner_id2464, "filter": { "type": "string" }, "header": "Controlled by (object)", "hidden": true, "sortable": false, "tooltip": "(cal.MyUnconfirmedAppointments.owner_id) ", "width": Lino.chars2width(11) }, { "colIndex": 16, "dataIndex": "description", "editable": true, "editor": description2465, "filter": { "type": "string" }, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.MyUnconfirmedAppointments.description) A longer descriptive text.", "width": Lino.chars2width(61) }, { "colIndex": 17, "dataIndex": "access_class", "editable": true, "editor": access_class2466, "filter": { "type": "string" }, "header": "Access Class", "hidden": true, "sortable": false, "tooltip": "(cal.MyUnconfirmedAppointments.access_class) Whether this is private, public or between.", "width": Lino.chars2width(13) }, { "align": "right", "colIndex": 18, "dataIndex": "sequence", "editable": true, "editor": sequence2467, "filter": { "type": "numeric" }, "format": "0", "header": "Revision", "hidden": true, "sortable": true, "tooltip": "(cal.MyUnconfirmedAppointments.sequence) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "align": "right", "colIndex": 19, "dataIndex": "auto_type", "editable": true, "editor": auto_type2468, "filter": { "type": "numeric" }, "format": "0", "header": "No.", "hidden": true, "sortable": true, "tooltip": "(cal.MyUnconfirmedAppointments.auto_type) Contains the sequence number if this is an automatically\ngenerated component. Otherwise this field is empty.", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 20, "dataIndex": "event_type", "editable": true, "editor": event_type2469, "filter": { "type": "string" }, "header": "Calendar entry type", "hidden": true, "renderer": Lino.fk_renderer('event_typeHidden','Lino.cal.EventTypes.detail'), "sortable": false, "tooltip": "(cal.MyUnconfirmedAppointments.event_type) The type of this entry. Every calendar entry should have this\nfield pointing to a given EventType, which holds\nextended configurable information about this entry.", "width": Lino.chars2width(21) }, { "colIndex": 21, "dataIndex": "transparent", "editable": true, "filter": { "type": "boolean" }, "header": "Transparent", "hidden": true, "sortable": false, "tooltip": "(cal.MyUnconfirmedAppointments.transparent) Indicates that this entry shouldn't prevent other entries at\nthe same time.", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 22, "dataIndex": "room", "editable": true, "editor": room2471, "filter": { "type": "string" }, "header": "Room", "hidden": true, "renderer": Lino.fk_renderer('roomHidden','Lino.cal.Rooms.detail'), "sortable": false, "tooltip": "(cal.MyUnconfirmedAppointments.room) ", "width": Lino.chars2width(21) }, { "colIndex": 23, "dataIndex": "priority", "editable": true, "editor": priority2472, "filter": { "type": "string" }, "header": "Priority", "hidden": true, "sortable": false, "tooltip": "(cal.MyUnconfirmedAppointments.priority) ", "width": Lino.chars2width(21) }, { "colIndex": 24, "dataIndex": "state", "editable": true, "editor": state2473, "filter": { "type": "string" }, "header": "State", "hidden": true, "sortable": false, "tooltip": "(cal.MyUnconfirmedAppointments.state) The state of this entry. The state can change according to\nrules defined by the workflow, that's why we sometimes refer\nto it as the life cycle.", "width": Lino.chars2width(14) }, { "colIndex": 25, "dataIndex": "owner", "editable": false, "header": "Controlled by", "hidden": true, "sortable": false, "tooltip": "(cal.MyUnconfirmedAppointments.owner) ", "width": Lino.chars2width(11) }, { "colIndex": 26, "dataIndex": "calendar", "editable": false, "header": "Calendar", "hidden": true, "renderer": Lino.fk_renderer('calendarHidden','Lino.cal.Calendars.detail'), "sortable": false, "tooltip": "(cal.MyUnconfirmedAppointments.calendar) ", "width": Lino.chars2width(21) }, { "colIndex": 27, "dataIndex": "when_html", "editable": false, "header": "When", "hidden": true, "sortable": false, "tooltip": "(cal.MyUnconfirmedAppointments.when_html) ", "width": Lino.chars2width(31) }, { "colIndex": 28, "dataIndex": "reminder", "editable": false, "header": "Reminder", "hidden": true, "sortable": false, "tooltip": "(cal.MyUnconfirmedAppointments.reminder) ", "width": Lino.chars2width(31) }, { "colIndex": 29, "dataIndex": "all_day", "editable": true, "header": "all day", "hidden": true, "sortable": false, "tooltip": "(cal.MyUnconfirmedAppointments.all_day) ", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 30, "dataIndex": "url", "editable": false, "header": "Link URL", "hidden": true, "sortable": false, "tooltip": "(cal.MyUnconfirmedAppointments.url) ", "width": Lino.chars2width(31) }, { "colIndex": 31, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.MyUnconfirmedAppointments.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 32, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.MyUnconfirmedAppointments.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 33, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(cal.MyUnconfirmedAppointments.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 34, "dataIndex": "created_natural", "editable": false, "header": "Created", "hidden": true, "sortable": false, "tooltip": "(cal.MyUnconfirmedAppointments.created_natural) ", "width": Lino.chars2width(31) }, { "align": "right", "colIndex": 35, "dataIndex": "duration", "editable": false, "format": "", "header": "Duration", "hidden": true, "sortable": false, "tooltip": "(cal.MyUnconfirmedAppointments.duration) ", "width": Lino.chars2width(8) } ];
    Lino.cal.MyUnconfirmedAppointments.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.MyUnconfirmedAppointments.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyUnconfirmedAppointments", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyUnconfirmedAppointments.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyUnconfirmedAppointments", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyUnconfirmedAppointments.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyUnconfirmedAppointments", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.cal.MyUnconfirmedAppointments.insertPanel = Ext.extend(Lino.cal.Events.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/cal/MyUnconfirmedAppointments",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.MyUnconfirmedAppointments.detail;
    this.ls_insert_handler = Lino.cal.MyUnconfirmedAppointments.insert;
    Lino.cal.MyUnconfirmedAppointments.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.MyUnconfirmedAppointments.insert = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.cal.MyUnconfirmedAppointments.insertPanel(p);
});
Lino.cal.MyUnconfirmedAppointments.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyUnconfirmedAppointments", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyUnconfirmedAppointments.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyUnconfirmedAppointments", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyUnconfirmedAppointments.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyUnconfirmedAppointments", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyUnconfirmedAppointments.duplicate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyUnconfirmedAppointments", "GET", pk, "duplicate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.cal.MyUnconfirmedAppointments.detailPanel = Ext.extend(Lino.cal.Events.DetailFormPanel,{
  empty_title: "Detail",
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "itemId": "duplicate", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Duplicate the selected row.") }, "menu_item_text": "\u2687", "overflowText": "\u2687", "panel_btn_handler": Lino.row_action_handler('duplicate','GET',null), "text": " <font size=\"4\">\u2687</font>" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "iconCls": "x-tbar-printer", "itemId": "do_print", "menu_item_text": "Print", "overflowText": "Print", "panel_btn_handler": Lino.row_action_handler('do_print','POST',null), "tooltip": "A print action which uses a cache for the generated printable\ndocument and builds is only when it doesn't yet exist." }, { "auto_save": true, "iconCls": "x-tbar-printer_delete", "itemId": "do_clear_cache", "menu_item_text": "Clear cache", "overflowText": "Clear cache", "panel_btn_handler": Lino.row_action_handler('do_clear_cache','GET',null), "tooltip": "Defines the Clear cache button on a Printable record." }, { "auto_save": true, "itemId": "show_conflicting", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Show events conflicting with this one.") }, "menu_item_text": "\u00a0\u2694\u00a0", "overflowText": "\u00a0\u2694\u00a0", "panel_btn_handler": Lino.row_action_handler('show_conflicting','GET',null), "text": "\u00a0\u2694\u00a0" }, { "auto_save": true, "iconCls": "x-tbar-calendar", "itemId": "show_today", "menu_item_text": "Today", "overflowText": "Today", "panel_btn_handler": Lino.row_action_handler('show_today','GET',null), "tooltip": "Show all calendar events of the same day." }, { "auto_save": true, "iconCls": "x-tbar-script_add", "itemId": "create_postings", "menu_item_text": "Create posting", "overflowText": "Create posting", "panel_btn_handler": Lino.row_action_handler('create_postings','GET',null), "tooltip": "Create classical mail postings from this" }, { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "check_plausibility", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": "Check plausibility", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." }, { "auto_save": true, "itemId": "fix_problems", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": "Fix plausibility problems", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." } ], "menu_item_text": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": null, "xtype": "splitbutton" }, { "auto_save": true, "itemId": "update_guests", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Populate or update the list of participants for this entry\naccording to the suggestions.") }, "menu_item_text": "Update Guests", "overflowText": "Update Guests", "panel_btn_handler": Lino.row_action_handler('update_guests','GET',null), "text": "\u00a0\u2637\u00a0" }, { "auto_save": true, "iconCls": "x-tbar-email_add", "itemId": "create_mail", "menu_item_text": "Create email", "overflowText": "Create email", "panel_btn_handler": Lino.row_action_handler('create_mail','GET',null), "tooltip": "Create an email from this" }, { "auto_save": true, "itemId": "update_events", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create or update the automatic events controlled by this generator.") }, "menu_item_text": "Update Events", "overflowText": "Update Events", "panel_btn_handler": Lino.row_action_handler('update_events','GET',null), "text": "\u00a0\u26a1\u00a0" } ],
  ls_url: "/cal/MyUnconfirmedAppointments",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.MyUnconfirmedAppointments.detail;
    this.ls_insert_handler = Lino.cal.MyUnconfirmedAppointments.insert;
    Lino.cal.MyUnconfirmedAppointments.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.MyUnconfirmedAppointments.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.cal.MyUnconfirmedAppointments.detailPanel(p);
});
Lino.cal.MyUnconfirmedAppointments.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyUnconfirmedAppointments", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyUnconfirmedAppointments.do_print = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyUnconfirmedAppointments", "POST", pk, "do_print", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyUnconfirmedAppointments.do_clear_cache = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyUnconfirmedAppointments", "GET", pk, "do_clear_cache", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyUnconfirmedAppointments.show_conflicting = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyUnconfirmedAppointments", "GET", pk, "show_conflicting", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyUnconfirmedAppointments.show_today = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyUnconfirmedAppointments", "GET", pk, "show_today", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyUnconfirmedAppointments.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.cal.Events.ParamsPanel({});
  return new Lino.cal.MyUnconfirmedAppointments.GridPanel(p);
});
Lino.cal.MyUnconfirmedAppointments.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyUnconfirmedAppointments", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyUnconfirmedAppointments.create_postings = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyUnconfirmedAppointments", "GET", pk, "create_postings", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyUnconfirmedAppointments.check_plausibility = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyUnconfirmedAppointments", "GET", pk, "check_plausibility", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyUnconfirmedAppointments.update_guests = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyUnconfirmedAppointments", "GET", pk, "update_guests", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyUnconfirmedAppointments.fix_problems = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyUnconfirmedAppointments", "GET", pk, "fix_problems", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyUnconfirmedAppointments.take = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyUnconfirmedAppointments", "GET", pk, "take", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyUnconfirmedAppointments.assign_to_me = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyUnconfirmedAppointments", "GET", pk, "assign_to_me", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyUnconfirmedAppointments.move_next = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyUnconfirmedAppointments", "GET", pk, "move_next", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyUnconfirmedAppointments.create_mail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyUnconfirmedAppointments", "GET", pk, "create_mail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyUnconfirmedAppointments.update_events = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyUnconfirmedAppointments", "GET", pk, "update_events", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyUnconfirmedAppointments.reset_event = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyUnconfirmedAppointments", "GET", pk, "reset_event", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyUnconfirmedAppointments.wf2 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyUnconfirmedAppointments", "GET", pk, "wf2", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.MyUnconfirmedAppointments.wf3 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/MyUnconfirmedAppointments", "GET", pk, "wf3", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class cal.EventPolicies
Lino.cal.EventPolicies.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/cal/EventPolicies",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/cal/EventPolicies','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/cal/EventPolicies','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "Recurrency policies",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 28,
  ls_store_fields : [ { "name": "name" }, { "name": "event_type" }, 'event_typeHidden', { "name": "max_events", "type": "int", "useNull": true }, { "name": "every", "type": "int", "useNull": true }, { "name": "every_unit" }, 'every_unitHidden', { "name": "monday", "type": "boolean" }, { "name": "tuesday", "type": "boolean" }, { "name": "wednesday", "type": "boolean" }, { "name": "thursday", "type": "boolean" }, { "name": "friday", "type": "boolean" }, { "name": "saturday", "type": "boolean" }, { "name": "sunday", "type": "boolean" }, { "name": "id", "type": "int" }, { "dateFormat": "d.m.Y", "name": "start_date", "type": "date" }, { "name": "start_time" }, { "dateFormat": "d.m.Y", "name": "end_date", "type": "date" }, { "name": "end_time" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "what_text" }, { "name": "weekdays_text" }, { "name": "times_text" }, { "name": "duration" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 14,
  ls_grid_configs : [  ],
  content_type : 25,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    var ww = this.containing_window;
    var name2486 = new Ext.form.TextField({ "allowBlank": false, "maxLength": 200, "selectOnFocus": true });
    var event_type2487 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Calendar entry type...", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/EventPolicies/event_type" }) }) });
    var max_events2488 = new Ext.form.NumberField({ "selectOnFocus": true });
    var every2489 = new Ext.form.NumberField({ "allowBlank": false, "selectOnFocus": true, "value": 1 });
    var every_unit2490 = new Lino.ChoicesFieldElement({ "forceSelection": true, "selectOnFocus": true, "store": [['','<br>']].concat(Lino.cal.Recurrencies) });
    var monday2491 = new Ext.form.Checkbox({ "checked": false, "selectOnFocus": true });
    var tuesday2492 = new Ext.form.Checkbox({ "checked": false, "selectOnFocus": true });
    var wednesday2493 = new Ext.form.Checkbox({ "checked": false, "selectOnFocus": true });
    var thursday2494 = new Ext.form.Checkbox({ "checked": false, "selectOnFocus": true });
    var friday2495 = new Ext.form.Checkbox({ "checked": false, "selectOnFocus": true });
    var saturday2496 = new Ext.form.Checkbox({ "checked": false, "selectOnFocus": true });
    var sunday2497 = new Ext.form.Checkbox({ "checked": false, "selectOnFocus": true });
    var id2498 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var start_date2499 = new Lino.DateField({ "hidden": true, "selectOnFocus": true });
    var start_time2500 = new Lino.TimeField({ "hidden": true, "selectOnFocus": true });
    var end_date2501 = new Lino.DateField({ "hidden": true, "selectOnFocus": true });
    var end_time2502 = new Lino.TimeField({ "hidden": true, "selectOnFocus": true });
    var mobile_item_disp2503 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp2504 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp2505 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp2506 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var what_text_disp2507 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var weekdays_text_disp2508 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var times_text_disp2509 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var duration2510 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(6), "disabled": true, "hidden": true, "maxLength": 6 });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "name", "editable": true, "editor": name2486, "filter": { "type": "string" }, "header": "Designation", "sortable": true, "tooltip": "(cal.EventPolicies.name) ", "width": Lino.chars2width(22) }, { "colIndex": 1, "dataIndex": "event_type", "editable": true, "editor": event_type2487, "filter": { "type": "string" }, "header": "Calendar entry type", "renderer": Lino.fk_renderer('event_typeHidden','Lino.cal.EventTypes.detail'), "sortable": false, "tooltip": "(cal.EventPolicies.event_type) Generated calendar entries will have this type.", "width": Lino.chars2width(21) }, { "align": "right", "colIndex": 2, "dataIndex": "max_events", "editable": true, "editor": max_events2488, "filter": { "type": "numeric" }, "format": "0", "header": "Number of events", "sortable": true, "tooltip": "(cal.EventPolicies.max_events) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "align": "right", "colIndex": 3, "dataIndex": "every", "editable": true, "editor": every2489, "filter": { "type": "numeric" }, "format": "0", "header": "Repeat every", "sortable": true, "tooltip": "(cal.EventPolicies.every) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 4, "dataIndex": "every_unit", "editable": true, "editor": every_unit2490, "filter": { "type": "string" }, "header": "Recurrency", "sortable": false, "tooltip": "(cal.EventPolicies.every_unit) ", "width": Lino.chars2width(22) }, { "colIndex": 5, "dataIndex": "monday", "editable": true, "filter": { "type": "boolean" }, "header": "Monday", "sortable": false, "tooltip": "(cal.EventPolicies.monday) ", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 6, "dataIndex": "tuesday", "editable": true, "filter": { "type": "boolean" }, "header": "Tuesday", "sortable": false, "tooltip": "(cal.EventPolicies.tuesday) ", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 7, "dataIndex": "wednesday", "editable": true, "filter": { "type": "boolean" }, "header": "Wednesday", "sortable": false, "tooltip": "(cal.EventPolicies.wednesday) ", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 8, "dataIndex": "thursday", "editable": true, "filter": { "type": "boolean" }, "header": "Thursday", "sortable": false, "tooltip": "(cal.EventPolicies.thursday) ", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 9, "dataIndex": "friday", "editable": true, "filter": { "type": "boolean" }, "header": "Friday", "sortable": false, "tooltip": "(cal.EventPolicies.friday) ", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 10, "dataIndex": "saturday", "editable": true, "filter": { "type": "boolean" }, "header": "Saturday", "sortable": false, "tooltip": "(cal.EventPolicies.saturday) ", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 11, "dataIndex": "sunday", "editable": true, "filter": { "type": "boolean" }, "header": "Sunday", "sortable": false, "tooltip": "(cal.EventPolicies.sunday) ", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "align": "right", "colIndex": 12, "dataIndex": "id", "editable": true, "editor": id2498, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(cal.EventPolicies.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 13, "dataIndex": "start_date", "editable": true, "editor": start_date2499, "filter": { "dateFormat": "d.m.Y", "type": "date" }, "format": "d.m.Y", "header": "Start date", "hidden": true, "sortable": true, "tooltip": "(cal.EventPolicies.start_date) ", "width": Lino.chars2width(14), "xtype": "datecolumn" }, { "colIndex": 14, "dataIndex": "start_time", "editable": true, "editor": start_time2500, "header": "Start time", "hidden": true, "sortable": true, "tooltip": "(cal.EventPolicies.start_time) ", "width": Lino.chars2width(9) }, { "colIndex": 15, "dataIndex": "end_date", "editable": true, "editor": end_date2501, "filter": { "dateFormat": "d.m.Y", "type": "date" }, "format": "d.m.Y", "header": "End Date", "hidden": true, "sortable": true, "tooltip": "(cal.EventPolicies.end_date) ", "width": Lino.chars2width(14), "xtype": "datecolumn" }, { "colIndex": 16, "dataIndex": "end_time", "editable": true, "editor": end_time2502, "header": "End Time", "hidden": true, "sortable": true, "tooltip": "(cal.EventPolicies.end_time) ", "width": Lino.chars2width(9) }, { "colIndex": 17, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.EventPolicies.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 18, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.EventPolicies.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 19, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(cal.EventPolicies.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 20, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(cal.EventPolicies.workflow_buttons) ", "width": Lino.chars2width(31) }, { "colIndex": 21, "dataIndex": "what_text", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.EventPolicies.what_text) ", "width": Lino.chars2width(31) }, { "colIndex": 22, "dataIndex": "weekdays_text", "editable": false, "header": "When", "hidden": true, "sortable": false, "tooltip": "(cal.EventPolicies.weekdays_text) ", "width": Lino.chars2width(31) }, { "colIndex": 23, "dataIndex": "times_text", "editable": false, "header": "Times", "hidden": true, "sortable": false, "tooltip": "(cal.EventPolicies.times_text) ", "width": Lino.chars2width(31) }, { "align": "right", "colIndex": 24, "dataIndex": "duration", "editable": false, "format": "", "header": "Duration", "hidden": true, "sortable": false, "tooltip": "(cal.EventPolicies.duration) ", "width": Lino.chars2width(8) } ];
    Lino.cal.EventPolicies.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.EventPolicies.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EventPolicies", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EventPolicies.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EventPolicies", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EventPolicies.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EventPolicies", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EventPolicies.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EventPolicies", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EventPolicies.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EventPolicies", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EventPolicies.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EventPolicies", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EventPolicies.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.cal.EventPolicies.GridPanel(p);
});

// js_render_GridPanel_class extensible.PanelCalendars
Lino.extensible.PanelCalendars.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/extensible/PanelCalendars",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/extensible/PanelCalendars','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/extensible/PanelCalendars','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "Calendars",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 6,
  ls_store_fields : [ { "name": "id", "type": "int" }, { "name": "summary" }, { "name": "description" }, { "name": "color", "type": "int", "useNull": true }, { "name": "is_hidden", "type": "boolean" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 0,
  ls_grid_configs : [  ],
  content_type : 24,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.extensible.PanelCalendars.detail;
    this.ls_insert_handler = Lino.extensible.PanelCalendars.insert;
    var ww = this.containing_window;
    var id2512 = new Ext.form.NumberField({ "selectOnFocus": true });
    var summary_disp2513 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    var description2514 = new Lino.RichTextPanel({ "containing_panel": this, "selectOnFocus": true, "title": "Description" });
    var color2515 = new Ext.form.NumberField({ "allowBlank": false, "selectOnFocus": true });
    var is_hidden_disp2516 = new Ext.form.DisplayField({ "disabled": true });
    this.before_row_edit = function(record) {
      description2514.refresh();
    };
    this.ls_columns = [ { "align": "right", "colIndex": 0, "dataIndex": "id", "editable": true, "editor": id2512, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "sortable": true, "tooltip": "(extensible.PanelCalendars.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 1, "dataIndex": "summary", "editable": false, "header": "summary", "sortable": false, "tooltip": "(extensible.PanelCalendars.summary) ", "width": Lino.chars2width(31) }, { "colIndex": 2, "dataIndex": "description", "editable": true, "editor": description2514, "filter": { "type": "string" }, "header": "Description", "sortable": false, "tooltip": "(extensible.PanelCalendars.description) ", "width": Lino.chars2width(61) }, { "align": "right", "colIndex": 3, "dataIndex": "color", "editable": true, "editor": color2515, "filter": { "type": "numeric" }, "format": "0", "header": "color", "sortable": true, "tooltip": "(extensible.PanelCalendars.color) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 4, "dataIndex": "is_hidden", "editable": false, "header": "Hidden", "sortable": false, "tooltip": "(extensible.PanelCalendars.is_hidden) ", "width": Lino.chars2width(21) } ];
    Lino.extensible.PanelCalendars.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.extensible.PanelCalendars.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/extensible/PanelCalendars", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.extensible.PanelCalendars.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/extensible/PanelCalendars", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.extensible.PanelCalendars.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/extensible/PanelCalendars", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.extensible.PanelCalendars.insertPanel = Ext.extend(Lino.cal.Calendars.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/extensible/PanelCalendars",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.extensible.PanelCalendars.detail;
    this.ls_insert_handler = Lino.extensible.PanelCalendars.insert;
    Lino.extensible.PanelCalendars.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.extensible.PanelCalendars.insert = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.extensible.PanelCalendars.insertPanel(p);
});
Lino.extensible.PanelCalendars.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/extensible/PanelCalendars", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.extensible.PanelCalendars.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/extensible/PanelCalendars", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.extensible.PanelCalendars.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/extensible/PanelCalendars", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.extensible.PanelCalendars.detailPanel = Ext.extend(Lino.cal.Calendars.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  ls_url: "/extensible/PanelCalendars",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.extensible.PanelCalendars.detail;
    this.ls_insert_handler = Lino.extensible.PanelCalendars.insert;
    Lino.extensible.PanelCalendars.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.extensible.PanelCalendars.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.extensible.PanelCalendars.detailPanel(p);
});
Lino.extensible.PanelCalendars.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/extensible/PanelCalendars", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.extensible.PanelCalendars.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.extensible.PanelCalendars.GridPanel(p);
});
Lino.extensible.PanelCalendars.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/extensible/PanelCalendars", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class extensible.PanelEvents
Lino.extensible.PanelEvents.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/extensible/PanelEvents",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/extensible/PanelEvents','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/extensible/PanelEvents','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "itemId": "duplicate", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Duplicate the selected row.") }, "menu_item_text": "\u2687", "overflowText": "\u2687", "panel_btn_handler": Lino.row_action_handler('duplicate','GET',null), "text": " <font size=\"4\">\u2687</font>" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "iconCls": "x-tbar-printer", "itemId": "do_print", "menu_item_text": "Print", "overflowText": "Print", "panel_btn_handler": Lino.row_action_handler('do_print','POST',null), "tooltip": "A print action which uses a cache for the generated printable\ndocument and builds is only when it doesn't yet exist." }, { "auto_save": true, "iconCls": "x-tbar-printer_delete", "itemId": "do_clear_cache", "menu_item_text": "Clear cache", "overflowText": "Clear cache", "panel_btn_handler": Lino.row_action_handler('do_clear_cache','GET',null), "tooltip": "Defines the Clear cache button on a Printable record." }, { "auto_save": true, "itemId": "show_conflicting", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Show events conflicting with this one.") }, "menu_item_text": "\u00a0\u2694\u00a0", "overflowText": "\u00a0\u2694\u00a0", "panel_btn_handler": Lino.row_action_handler('show_conflicting','GET',null), "text": "\u00a0\u2694\u00a0" }, { "auto_save": true, "iconCls": "x-tbar-calendar", "itemId": "show_today", "menu_item_text": "Today", "overflowText": "Today", "panel_btn_handler": Lino.row_action_handler('show_today','GET',null), "tooltip": "Show all calendar events of the same day." }, { "auto_save": true, "iconCls": "x-tbar-script_add", "itemId": "create_postings", "menu_item_text": "Create posting", "overflowText": "Create posting", "panel_btn_handler": Lino.row_action_handler('create_postings','GET',null), "tooltip": "Create classical mail postings from this" }, { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "check_plausibility", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": "Check plausibility", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." }, { "auto_save": true, "itemId": "fix_problems", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": "Fix plausibility problems", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." } ], "menu_item_text": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": null, "xtype": "splitbutton" }, { "auto_save": true, "itemId": "update_guests", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Populate or update the list of participants for this entry\naccording to the suggestions.") }, "menu_item_text": "Update Guests", "overflowText": "Update Guests", "panel_btn_handler": Lino.row_action_handler('update_guests','GET',null), "text": "\u00a0\u2637\u00a0" }, { "auto_save": true, "iconCls": "x-tbar-email_add", "itemId": "create_mail", "menu_item_text": "Create email", "overflowText": "Create email", "panel_btn_handler": Lino.row_action_handler('create_mail','GET',null), "tooltip": "Create an email from this" }, { "auto_save": true, "itemId": "update_events", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create or update the automatic events controlled by this generator.") }, "menu_item_text": "Update Events", "overflowText": "Update Events", "panel_btn_handler": Lino.row_action_handler('update_events','GET',null), "text": "\u00a0\u26a1\u00a0" } ],
  cell_edit : true,
  title : "Calendar entries",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 15,
  ls_store_fields : [ { "name": "id", "type": "int" }, { "name": "start_dt" }, { "name": "end_dt" }, { "name": "summary" }, { "name": "description" }, { "name": "user" }, 'userHidden', { "name": "room" }, 'roomHidden', { "name": "calendar" }, 'calendarHidden', { "name": "url" }, { "name": "all_day", "type": "boolean" }, { "name": "reminder" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 0,
  ls_grid_configs : [  ],
  content_type : 19,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.extensible.PanelEvents.detail;
    this.ls_insert_handler = Lino.extensible.PanelEvents.insert;
    var ww = this.containing_window;
    var id2518 = new Ext.form.NumberField({ "selectOnFocus": true });
    var start_dt2519 = new Ext.form.DisplayField({ "allowBlank": false, "selectOnFocus": true, "value": "<br>" });
    var end_dt2520 = new Ext.form.DisplayField({ "allowBlank": false, "selectOnFocus": true, "value": "<br>" });
    var summary2521 = new Ext.form.TextField({ "maxLength": 200, "selectOnFocus": true });
    var description2522 = new Ext.form.TextArea({ "growMax": 2000, "selectOnFocus": true });
    var user2523 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a User...", "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/extensible/PanelEvents/user" }) }) });
    var room2524 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Room...", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/extensible/PanelEvents/room" }) }) });
    var calendar2525 = new Lino.RemoteComboFieldElement({ "disabled": true, "emptyText": "Select a Calendar...", "pageSize": 20, "store": new Lino.ComplexRemoteComboStore({  }) });
    var url_disp2526 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    var all_day2527 = new Ext.form.Checkbox({ "selectOnFocus": true });
    var reminder_disp2528 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "align": "right", "colIndex": 0, "dataIndex": "id", "editable": true, "editor": id2518, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "sortable": true, "tooltip": "(extensible.PanelEvents.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 1, "dataIndex": "start_dt", "editable": true, "editor": start_dt2519, "header": "Start", "sortable": false, "tooltip": "(extensible.PanelEvents.start_dt) ", "width": Lino.chars2width(17) }, { "colIndex": 2, "dataIndex": "end_dt", "editable": true, "editor": end_dt2520, "header": "End", "sortable": false, "tooltip": "(extensible.PanelEvents.end_dt) ", "width": Lino.chars2width(17) }, { "colIndex": 3, "dataIndex": "summary", "editable": true, "editor": summary2521, "filter": { "type": "string" }, "header": "Short description", "sortable": true, "tooltip": "(extensible.PanelEvents.summary) A one-line descriptive text.", "width": Lino.chars2width(22) }, { "colIndex": 4, "dataIndex": "description", "editable": true, "editor": description2522, "filter": { "type": "string" }, "header": "Description", "sortable": false, "tooltip": "(extensible.PanelEvents.description) A longer descriptive text.", "width": Lino.chars2width(61) }, { "colIndex": 5, "dataIndex": "user", "editable": true, "editor": user2523, "filter": { "type": "string" }, "header": "Responsible user", "renderer": Lino.fk_renderer('userHidden','Lino.users.Users.detail'), "sortable": false, "tooltip": "(extensible.PanelEvents.user) The responsible user.", "width": Lino.chars2width(21) }, { "colIndex": 6, "dataIndex": "room", "editable": true, "editor": room2524, "filter": { "type": "string" }, "header": "Room", "renderer": Lino.fk_renderer('roomHidden','Lino.cal.Rooms.detail'), "sortable": false, "tooltip": "(extensible.PanelEvents.room) ", "width": Lino.chars2width(21) }, { "colIndex": 7, "dataIndex": "calendar", "editable": false, "header": "Calendar", "renderer": Lino.fk_renderer('calendarHidden','Lino.cal.Calendars.detail'), "sortable": false, "tooltip": "(extensible.PanelEvents.calendar) ", "width": Lino.chars2width(21) }, { "colIndex": 8, "dataIndex": "url", "editable": false, "header": "Link URL", "sortable": false, "tooltip": "(extensible.PanelEvents.url) ", "width": Lino.chars2width(31) }, { "colIndex": 9, "dataIndex": "all_day", "editable": true, "header": "all day", "sortable": false, "tooltip": "(extensible.PanelEvents.all_day) ", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 10, "dataIndex": "reminder", "editable": false, "header": "Reminder", "sortable": false, "tooltip": "(extensible.PanelEvents.reminder) ", "width": Lino.chars2width(31) } ];
    Lino.extensible.PanelEvents.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.extensible.PanelEvents.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/extensible/PanelEvents", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.extensible.PanelEvents.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/extensible/PanelEvents", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.extensible.PanelEvents.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/extensible/PanelEvents", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.extensible.PanelEvents.insertPanel = Ext.extend(Lino.cal.Events.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/extensible/PanelEvents",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.extensible.PanelEvents.detail;
    this.ls_insert_handler = Lino.extensible.PanelEvents.insert;
    Lino.extensible.PanelEvents.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.extensible.PanelEvents.insert = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.extensible.PanelEvents.insertPanel(p);
});
Lino.extensible.PanelEvents.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/extensible/PanelEvents", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.extensible.PanelEvents.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/extensible/PanelEvents", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.extensible.PanelEvents.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/extensible/PanelEvents", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.extensible.PanelEvents.duplicate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/extensible/PanelEvents", "GET", pk, "duplicate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.extensible.PanelEvents.detailPanel = Ext.extend(Lino.cal.Events.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "itemId": "duplicate", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Duplicate the selected row.") }, "menu_item_text": "\u2687", "overflowText": "\u2687", "panel_btn_handler": Lino.row_action_handler('duplicate','GET',null), "text": " <font size=\"4\">\u2687</font>" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "iconCls": "x-tbar-printer", "itemId": "do_print", "menu_item_text": "Print", "overflowText": "Print", "panel_btn_handler": Lino.row_action_handler('do_print','POST',null), "tooltip": "A print action which uses a cache for the generated printable\ndocument and builds is only when it doesn't yet exist." }, { "auto_save": true, "iconCls": "x-tbar-printer_delete", "itemId": "do_clear_cache", "menu_item_text": "Clear cache", "overflowText": "Clear cache", "panel_btn_handler": Lino.row_action_handler('do_clear_cache','GET',null), "tooltip": "Defines the Clear cache button on a Printable record." }, { "auto_save": true, "itemId": "show_conflicting", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Show events conflicting with this one.") }, "menu_item_text": "\u00a0\u2694\u00a0", "overflowText": "\u00a0\u2694\u00a0", "panel_btn_handler": Lino.row_action_handler('show_conflicting','GET',null), "text": "\u00a0\u2694\u00a0" }, { "auto_save": true, "iconCls": "x-tbar-calendar", "itemId": "show_today", "menu_item_text": "Today", "overflowText": "Today", "panel_btn_handler": Lino.row_action_handler('show_today','GET',null), "tooltip": "Show all calendar events of the same day." }, { "auto_save": true, "iconCls": "x-tbar-script_add", "itemId": "create_postings", "menu_item_text": "Create posting", "overflowText": "Create posting", "panel_btn_handler": Lino.row_action_handler('create_postings','GET',null), "tooltip": "Create classical mail postings from this" }, { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "check_plausibility", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": "Check plausibility", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." }, { "auto_save": true, "itemId": "fix_problems", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": "Fix plausibility problems", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." } ], "menu_item_text": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": null, "xtype": "splitbutton" }, { "auto_save": true, "itemId": "update_guests", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Populate or update the list of participants for this entry\naccording to the suggestions.") }, "menu_item_text": "Update Guests", "overflowText": "Update Guests", "panel_btn_handler": Lino.row_action_handler('update_guests','GET',null), "text": "\u00a0\u2637\u00a0" }, { "auto_save": true, "iconCls": "x-tbar-email_add", "itemId": "create_mail", "menu_item_text": "Create email", "overflowText": "Create email", "panel_btn_handler": Lino.row_action_handler('create_mail','GET',null), "tooltip": "Create an email from this" }, { "auto_save": true, "itemId": "update_events", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create or update the automatic events controlled by this generator.") }, "menu_item_text": "Update Events", "overflowText": "Update Events", "panel_btn_handler": Lino.row_action_handler('update_events','GET',null), "text": "\u00a0\u26a1\u00a0" } ],
  ls_url: "/extensible/PanelEvents",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.extensible.PanelEvents.detail;
    this.ls_insert_handler = Lino.extensible.PanelEvents.insert;
    Lino.extensible.PanelEvents.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.extensible.PanelEvents.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.extensible.PanelEvents.detailPanel(p);
});
Lino.extensible.PanelEvents.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/extensible/PanelEvents", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.extensible.PanelEvents.do_print = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/extensible/PanelEvents", "POST", pk, "do_print", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.extensible.PanelEvents.do_clear_cache = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/extensible/PanelEvents", "GET", pk, "do_clear_cache", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.extensible.PanelEvents.show_conflicting = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/extensible/PanelEvents", "GET", pk, "show_conflicting", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.extensible.PanelEvents.show_today = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/extensible/PanelEvents", "GET", pk, "show_today", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.extensible.PanelEvents.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.cal.Events.ParamsPanel({});
  return new Lino.extensible.PanelEvents.GridPanel(p);
});
Lino.extensible.PanelEvents.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/extensible/PanelEvents", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.extensible.PanelEvents.create_postings = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/extensible/PanelEvents", "GET", pk, "create_postings", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.extensible.PanelEvents.check_plausibility = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/extensible/PanelEvents", "GET", pk, "check_plausibility", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.extensible.PanelEvents.update_guests = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/extensible/PanelEvents", "GET", pk, "update_guests", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.extensible.PanelEvents.fix_problems = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/extensible/PanelEvents", "GET", pk, "fix_problems", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.extensible.PanelEvents.take = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/extensible/PanelEvents", "GET", pk, "take", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.extensible.PanelEvents.assign_to_me = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/extensible/PanelEvents", "GET", pk, "assign_to_me", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.extensible.PanelEvents.move_next = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/extensible/PanelEvents", "GET", pk, "move_next", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.extensible.PanelEvents.create_mail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/extensible/PanelEvents", "GET", pk, "create_mail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.extensible.PanelEvents.update_events = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/extensible/PanelEvents", "GET", pk, "update_events", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.extensible.PanelEvents.reset_event = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/extensible/PanelEvents", "GET", pk, "reset_event", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.extensible.PanelEvents.wf2 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/extensible/PanelEvents", "GET", pk, "wf2", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.extensible.PanelEvents.wf3 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/extensible/PanelEvents", "GET", pk, "wf3", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class addresses.Addresses
Lino.addresses.Addresses.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/addresses/Addresses",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/addresses/Addresses','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/addresses/Addresses','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "Addresses",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 28,
  ls_store_fields : [ { "name": "partner" }, 'partnerHidden', { "name": "address_type" }, 'address_typeHidden', { "name": "remark" }, { "name": "address_column" }, { "name": "primary", "type": "boolean" }, { "name": "data_source" }, 'data_sourceHidden', { "name": "id", "type": "int" }, { "name": "country" }, 'countryHidden', { "name": "city" }, 'cityHidden', { "name": "zip_code" }, { "name": "region" }, 'regionHidden', { "name": "addr1" }, { "name": "street_prefix" }, { "name": "street" }, { "name": "street_no" }, { "name": "street_box" }, { "name": "addr2" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 9,
  ls_grid_configs : [  ],
  content_type : 27,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.addresses.Addresses.detail;
    this.ls_insert_handler = Lino.addresses.Addresses.insert;
    var ww = this.containing_window;
    var partner2530 = new Lino.RemoteComboFieldElement({ "allowBlank": false, "emptyText": "Select a Person...", "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/addresses/Addresses/partner" }) }) });
    var address_type2531 = new Lino.ChoicesFieldElement({ "allowBlank": false, "forceSelection": true, "selectOnFocus": true, "store": Lino.addresses.AddressTypes });
    var remark2532 = new Ext.form.TextField({ "maxLength": 50, "selectOnFocus": true });
    var address_column_disp2533 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    var primary2534 = new Ext.form.Checkbox({ "checked": false, "selectOnFocus": true });
    var data_source2535 = new Lino.ChoicesFieldElement({ "disabled": true, "forceSelection": true, "store": Lino.addresses.DataSources });
    var id2536 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var country2537 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Country...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/addresses/Addresses/country" }) }) });
    var city2538 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Place...", "forceSelection": false, "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/addresses/Addresses/city" }) }) });
    var zip_code2539 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(10), "hidden": true, "maxLength": 10, "selectOnFocus": true });
    var region2540 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Place...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/addresses/Addresses/region" }) }) });
    var addr12541 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var street_prefix2542 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var street2543 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var street_no2544 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(10), "hidden": true, "maxLength": 10, "selectOnFocus": true });
    var street_box2545 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(10), "hidden": true, "maxLength": 10, "selectOnFocus": true });
    var addr22546 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var mobile_item_disp2547 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp2548 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp2549 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp2550 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
      city2538.setContextValue('country', record ? record.data['countryHidden'] : undefined);
      city2538.setContextValue('region', record ? record.data['regionHidden'] : undefined);
      region2540.setContextValue('country', record ? record.data['countryHidden'] : undefined);
    };
    this.onRender = function(ct, position) {
      country2537.on('change',Lino.chooser_handler(city2538,'country'));
      region2540.on('change',Lino.chooser_handler(city2538,'region'));
      country2537.on('change',Lino.chooser_handler(region2540,'country'));
      Lino.addresses.Addresses.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "partner", "editable": true, "editor": partner2530, "filter": { "type": "string" }, "header": "Person", "renderer": Lino.fk_renderer('partnerHidden','Lino.contacts.Persons.detail'), "sortable": false, "tooltip": "(addresses.Addresses.partner) ", "width": Lino.chars2width(21) }, { "colIndex": 1, "dataIndex": "address_type", "editable": true, "editor": address_type2531, "filter": { "type": "string" }, "header": "Address type", "sortable": false, "tooltip": "(addresses.Addresses.address_type) ", "width": Lino.chars2width(11) }, { "colIndex": 2, "dataIndex": "remark", "editable": true, "editor": remark2532, "filter": { "type": "string" }, "header": "Remark", "sortable": true, "tooltip": "(addresses.Addresses.remark) ", "width": Lino.chars2width(11) }, { "colIndex": 3, "dataIndex": "address_column", "editable": false, "header": "Address", "sortable": false, "tooltip": "(addresses.Addresses.address_column) ", "width": Lino.chars2width(31) }, { "colIndex": 4, "dataIndex": "primary", "editable": true, "filter": { "type": "boolean" }, "header": "Primary", "sortable": false, "tooltip": "(addresses.Addresses.primary) Checking this field will automatically uncheck any previous primary addresses and update the partner's address data fields.", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 5, "dataIndex": "data_source", "editable": false, "filter": { "type": "string" }, "header": "Data source", "sortable": false, "tooltip": "(addresses.Addresses.data_source) Pointer to choicelists.DataSources.", "width": Lino.chars2width(20) }, { "align": "right", "colIndex": 6, "dataIndex": "id", "editable": true, "editor": id2536, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(addresses.Addresses.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 7, "dataIndex": "country", "editable": true, "editor": country2537, "filter": { "type": "string" }, "header": "Country", "hidden": true, "renderer": Lino.fk_renderer('countryHidden','Lino.countries.Countries.detail'), "sortable": false, "tooltip": "(addresses.Addresses.country) ", "width": Lino.chars2width(21) }, { "colIndex": 8, "dataIndex": "city", "editable": true, "editor": city2538, "filter": { "type": "string" }, "header": "City", "hidden": true, "renderer": Lino.fk_renderer('cityHidden','Lino.countries.Places.detail'), "sortable": false, "tooltip": "(addresses.Addresses.city) A pointer to the Place which is used as city.", "width": Lino.chars2width(21) }, { "colIndex": 9, "dataIndex": "zip_code", "editable": true, "editor": zip_code2539, "filter": { "type": "string" }, "header": "Zip code", "hidden": true, "sortable": true, "tooltip": "(addresses.Addresses.zip_code) ", "width": Lino.chars2width(12) }, { "colIndex": 10, "dataIndex": "region", "editable": true, "editor": region2540, "filter": { "type": "string" }, "header": "County", "hidden": true, "renderer": Lino.fk_renderer('regionHidden','Lino.countries.Places.detail'), "sortable": false, "tooltip": "(addresses.Addresses.region) ", "width": Lino.chars2width(21) }, { "colIndex": 11, "dataIndex": "addr1", "editable": true, "editor": addr12541, "filter": { "type": "string" }, "header": "Address line before street", "hidden": true, "sortable": true, "tooltip": "(addresses.Addresses.addr1) Address line before street", "width": Lino.chars2width(22) }, { "colIndex": 12, "dataIndex": "street_prefix", "editable": true, "editor": street_prefix2542, "filter": { "type": "string" }, "header": "Street prefix", "hidden": true, "sortable": true, "tooltip": "(addresses.Addresses.street_prefix) Text to print before name of street, but to ignore for sorting.", "width": Lino.chars2width(22) }, { "colIndex": 13, "dataIndex": "street", "editable": true, "editor": street2543, "filter": { "type": "string" }, "header": "Street", "hidden": true, "sortable": true, "tooltip": "(addresses.Addresses.street) Name of street, without house number.", "width": Lino.chars2width(22) }, { "colIndex": 14, "dataIndex": "street_no", "editable": true, "editor": street_no2544, "filter": { "type": "string" }, "header": "No.", "hidden": true, "sortable": true, "tooltip": "(addresses.Addresses.street_no) House number.", "width": Lino.chars2width(12) }, { "colIndex": 15, "dataIndex": "street_box", "editable": true, "editor": street_box2545, "filter": { "type": "string" }, "header": "Box", "hidden": true, "sortable": true, "tooltip": "(addresses.Addresses.street_box) Text to print after street nuber on the same line.", "width": Lino.chars2width(12) }, { "colIndex": 16, "dataIndex": "addr2", "editable": true, "editor": addr22546, "filter": { "type": "string" }, "header": "Address line after street", "hidden": true, "sortable": true, "tooltip": "(addresses.Addresses.addr2) Address line to print below street line.", "width": Lino.chars2width(22) }, { "colIndex": 17, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(addresses.Addresses.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 18, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(addresses.Addresses.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 19, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(addresses.Addresses.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 20, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(addresses.Addresses.workflow_buttons) ", "width": Lino.chars2width(31) } ];
    Lino.addresses.Addresses.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.addresses.Addresses.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/addresses/Addresses", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.addresses.Addresses.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/addresses/Addresses", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.addresses.Addresses.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/addresses/Addresses", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.addresses.Addresses.insertPanel = Ext.extend(Lino.addresses.Addresses.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/addresses/Addresses",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.addresses.Addresses.detail;
    this.ls_insert_handler = Lino.addresses.Addresses.insert;
    Lino.addresses.Addresses.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.addresses.Addresses.insert = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.addresses.Addresses.insertPanel(p);
});
Lino.addresses.Addresses.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/addresses/Addresses", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.addresses.Addresses.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/addresses/Addresses", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.addresses.Addresses.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/addresses/Addresses", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.addresses.Addresses.detailPanel = Ext.extend(Lino.addresses.Addresses.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  ls_url: "/addresses/Addresses",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.addresses.Addresses.detail;
    this.ls_insert_handler = Lino.addresses.Addresses.insert;
    Lino.addresses.Addresses.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.addresses.Addresses.detail = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "is_main_window": true };
  return new Lino.addresses.Addresses.detailPanel(p);
});
Lino.addresses.Addresses.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/addresses/Addresses", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.addresses.Addresses.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.addresses.Addresses.GridPanel(p);
});
Lino.addresses.Addresses.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/addresses/Addresses", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class phones.ContactDetails
Lino.phones.ContactDetails.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/phones/ContactDetails",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/phones/ContactDetails','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/phones/ContactDetails','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "Contact Details",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 20,
  ls_store_fields : [ { "name": "partner" }, 'partnerHidden', { "name": "detail_type" }, 'detail_typeHidden', { "name": "remark" }, { "name": "overview" }, { "name": "primary", "type": "boolean" }, { "name": "id", "type": "int" }, { "name": "email" }, { "name": "language" }, 'languageHidden', { "name": "url" }, { "name": "phone" }, { "name": "gsm" }, { "name": "fax" }, { "name": "value" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "workflow_buttons" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 7,
  ls_grid_configs : [  ],
  content_type : 28,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.phones.ContactDetails.detail;
    this.ls_insert_handler = Lino.phones.ContactDetails.insert;
    var ww = this.containing_window;
    var partner2552 = new Lino.RemoteComboFieldElement({ "allowBlank": false, "emptyText": "Select a Partner...", "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/phones/ContactDetails/partner" }) }) });
    var detail_type2553 = new Lino.ChoicesFieldElement({ "allowBlank": false, "forceSelection": true, "selectOnFocus": true, "store": Lino.phones.ContactDetailTypes });
    var remark2554 = new Ext.form.TextField({ "maxLength": 200, "selectOnFocus": true });
    var overview_disp2555 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    var primary2556 = new Ext.form.Checkbox({ "checked": false, "selectOnFocus": true });
    var id2557 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var email2558 = new Ext.form.TextField({ "hidden": true, "maxLength": 254, "selectOnFocus": true });
    var language2559 = new Lino.ChoicesFieldElement({ "hidden": true, "selectOnFocus": true, "store": [ [ "en-us", "American English" ] ] });
    var url2560 = new Lino.URLField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var phone2561 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var gsm2562 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var fax2563 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var value2564 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var mobile_item_disp2565 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp2566 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp2567 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "partner", "editable": true, "editor": partner2552, "filter": { "type": "string" }, "header": "Partner", "renderer": Lino.fk_renderer('partnerHidden','Lino.contacts.Partners.detail'), "sortable": false, "tooltip": "(phones.ContactDetails.partner) ", "width": Lino.chars2width(21) }, { "colIndex": 1, "dataIndex": "detail_type", "editable": true, "editor": detail_type2553, "filter": { "type": "string" }, "header": "Contact Detail Type", "sortable": false, "tooltip": "(phones.ContactDetails.detail_type) ", "width": Lino.chars2width(11) }, { "colIndex": 2, "dataIndex": "remark", "editable": true, "editor": remark2554, "filter": { "type": "string" }, "header": "Remark", "sortable": true, "tooltip": "(phones.ContactDetails.remark) ", "width": Lino.chars2width(11) }, { "colIndex": 3, "dataIndex": "overview", "editable": false, "header": "overview", "sortable": false, "tooltip": "(phones.ContactDetails.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 4, "dataIndex": "primary", "editable": true, "filter": { "type": "boolean" }, "header": "Primary", "sortable": false, "tooltip": "(phones.ContactDetails.primary) ", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "align": "right", "colIndex": 5, "dataIndex": "id", "editable": true, "editor": id2557, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(phones.ContactDetails.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 6, "dataIndex": "email", "editable": true, "editor": email2558, "filter": { "type": "string" }, "header": "e-mail address", "hidden": true, "sortable": true, "tooltip": "(phones.ContactDetails.email) ", "width": Lino.chars2width(22) }, { "colIndex": 7, "dataIndex": "language", "editable": true, "editor": language2559, "filter": { "type": "string" }, "header": "Language", "hidden": true, "sortable": false, "tooltip": "(phones.ContactDetails.language) ", "width": Lino.chars2width(21) }, { "colIndex": 8, "dataIndex": "url", "editable": true, "editor": url2560, "filter": { "type": "string" }, "header": "URL", "hidden": true, "sortable": true, "tooltip": "(phones.ContactDetails.url) ", "width": Lino.chars2width(22) }, { "colIndex": 9, "dataIndex": "phone", "editable": true, "editor": phone2561, "filter": { "type": "string" }, "header": "Phone", "hidden": true, "sortable": true, "tooltip": "(phones.ContactDetails.phone) ", "width": Lino.chars2width(22) }, { "colIndex": 10, "dataIndex": "gsm", "editable": true, "editor": gsm2562, "filter": { "type": "string" }, "header": "GSM", "hidden": true, "sortable": true, "tooltip": "(phones.ContactDetails.gsm) ", "width": Lino.chars2width(22) }, { "colIndex": 11, "dataIndex": "fax", "editable": true, "editor": fax2563, "filter": { "type": "string" }, "header": "Fax", "hidden": true, "sortable": true, "tooltip": "(phones.ContactDetails.fax) ", "width": Lino.chars2width(22) }, { "colIndex": 12, "dataIndex": "value", "editable": true, "editor": value2564, "filter": { "type": "string" }, "header": "Value", "hidden": true, "sortable": true, "tooltip": "(phones.ContactDetails.value) ", "width": Lino.chars2width(22) }, { "colIndex": 13, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(phones.ContactDetails.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 14, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(phones.ContactDetails.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 15, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(phones.ContactDetails.workflow_buttons) ", "width": Lino.chars2width(31) } ];
    Lino.phones.ContactDetails.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.phones.ContactDetails.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/phones/ContactDetails", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.phones.ContactDetails.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/phones/ContactDetails", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.phones.ContactDetails.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/phones/ContactDetails", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.phones.ContactDetails.insertPanel = Ext.extend(Lino.phones.ContactDetails.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/phones/ContactDetails",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.phones.ContactDetails.detail;
    this.ls_insert_handler = Lino.phones.ContactDetails.insert;
    Lino.phones.ContactDetails.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.phones.ContactDetails.insert = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.phones.ContactDetails.insertPanel(p);
});
Lino.phones.ContactDetails.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/phones/ContactDetails", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.phones.ContactDetails.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/phones/ContactDetails", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.phones.ContactDetails.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/phones/ContactDetails", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.phones.ContactDetails.detailPanel = Ext.extend(Lino.phones.ContactDetails.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  ls_url: "/phones/ContactDetails",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.phones.ContactDetails.detail;
    this.ls_insert_handler = Lino.phones.ContactDetails.insert;
    Lino.phones.ContactDetails.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.phones.ContactDetails.detail = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "is_main_window": true };
  return new Lino.phones.ContactDetails.detailPanel(p);
});
Lino.phones.ContactDetails.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/phones/ContactDetails", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.phones.ContactDetails.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.phones.ContactDetails.GridPanel(p);
});
Lino.phones.ContactDetails.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/phones/ContactDetails", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class households.Types
Lino.households.Types.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/households/Types",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/households/Types','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/households/Types','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "Household Types",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 7,
  ls_store_fields : [ { "name": "id", "type": "int" }, { "name": "name" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 0,
  ls_grid_configs : [  ],
  content_type : 31,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.households.Types.detail;
    this.ls_insert_handler = Lino.households.Types.insert;
    var ww = this.containing_window;
    var id2569 = new Ext.form.NumberField({ "selectOnFocus": true });
    var name2570 = new Ext.form.TextField({ "allowBlank": false, "maxLength": 200, "selectOnFocus": true });
    var mobile_item_disp2571 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp2572 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp2573 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp2574 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "align": "right", "colIndex": 0, "dataIndex": "id", "editable": true, "editor": id2569, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "sortable": true, "tooltip": "(households.Types.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 1, "dataIndex": "name", "editable": true, "editor": name2570, "filter": { "type": "string" }, "header": "Designation", "sortable": true, "tooltip": "(households.Types.name) ", "width": Lino.chars2width(22) }, { "colIndex": 2, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(households.Types.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 3, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(households.Types.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 4, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(households.Types.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 5, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(households.Types.workflow_buttons) ", "width": Lino.chars2width(31) } ];
    Lino.households.Types.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.households.Types.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/Types", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.households.Types.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/Types", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.households.Types.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/Types", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.households.Types.insertPanel = Ext.extend(Lino.households.Types.DetailFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/households/Types",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.households.Types.detail;
    this.ls_insert_handler = Lino.households.Types.insert;
    Lino.households.Types.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.households.Types.insert = new Lino.WindowAction({  }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.households.Types.insertPanel(p);
});
Lino.households.Types.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/Types", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.households.Types.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/Types", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.households.Types.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/Types", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.households.Types.detailPanel = Ext.extend(Lino.households.Types.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  ls_url: "/households/Types",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.households.Types.detail;
    this.ls_insert_handler = Lino.households.Types.insert;
    Lino.households.Types.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.households.Types.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.households.Types.detailPanel(p);
});
Lino.households.Types.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/Types", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.households.Types.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.households.Types.GridPanel(p);
});
Lino.households.Types.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/Types", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class households.Households
Lino.households.Households.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/households/Households",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/households/Households','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/households/Households','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "iconCls": "x-tbar-lightning", "itemId": "populate_members", "menu_item_text": "Populate", "overflowText": "Populate", "panel_btn_handler": Lino.row_action_handler('populate_members','GET',null), "tooltip": "Populate" } ],
  cell_edit : true,
  title : "Households",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 34,
  ls_store_fields : [ { "name": "name" }, { "name": "email" }, { "name": "language" }, 'languageHidden', { "name": "url" }, { "name": "phone" }, { "name": "gsm" }, { "name": "fax" }, { "name": "country" }, 'countryHidden', { "name": "city" }, 'cityHidden', { "name": "zip_code" }, { "name": "region" }, 'regionHidden', { "name": "addr1" }, { "name": "street_prefix" }, { "name": "street" }, { "name": "street_no" }, { "name": "street_box" }, { "name": "addr2" }, { "name": "prefix" }, { "name": "remarks" }, { "name": "type" }, 'typeHidden', { "name": "name_column" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "mti_navigator" }, { "name": "address_column" }, { "name": "id", "type": "int" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 32,
  ls_grid_configs : [  ],
  content_type : 8,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.households.Households.detail;
    this.ls_insert_handler = Lino.households.Households.insert;
    var ww = this.containing_window;
    var name2576 = new Ext.form.TextField({ "allowBlank": false, "maxLength": 200, "selectOnFocus": true });
    var email2577 = new Ext.form.TextField({ "maxLength": 254, "selectOnFocus": true });
    var language2578 = new Lino.ChoicesFieldElement({ "hidden": true, "selectOnFocus": true, "store": [ [ "en-us", "American English" ] ] });
    var url2579 = new Lino.URLField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var phone2580 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var gsm2581 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var fax2582 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var country2583 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Country...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/households/Households/country" }) }) });
    var city2584 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Place...", "forceSelection": false, "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/households/Households/city" }) }) });
    var zip_code2585 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(10), "hidden": true, "maxLength": 10, "selectOnFocus": true });
    var region2586 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Place...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/households/Households/region" }) }) });
    var addr12587 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var street_prefix2588 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var street2589 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var street_no2590 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(10), "hidden": true, "maxLength": 10, "selectOnFocus": true });
    var street_box2591 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(10), "hidden": true, "maxLength": 10, "selectOnFocus": true });
    var addr22592 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var prefix2593 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var remarks2594 = new Lino.RichTextPanel({ "containing_panel": this, "hidden": true, "selectOnFocus": true, "title": "About me" });
    var type2595 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Household Type...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/households/Households/type" }) }) });
    var name_column_disp2596 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var mobile_item_disp2597 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp2598 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp2599 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp2600 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var mti_navigator_disp2601 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var address_column_disp2602 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var id2603 = new Ext.form.NumberField({ "selectOnFocus": true });
    this.before_row_edit = function(record) {
      city2584.setContextValue('country', record ? record.data['countryHidden'] : undefined);
      city2584.setContextValue('region', record ? record.data['regionHidden'] : undefined);
      region2586.setContextValue('country', record ? record.data['countryHidden'] : undefined);
      remarks2594.refresh();
    };
    this.onRender = function(ct, position) {
      country2583.on('change',Lino.chooser_handler(city2584,'country'));
      region2586.on('change',Lino.chooser_handler(city2584,'region'));
      country2583.on('change',Lino.chooser_handler(region2586,'country'));
      Lino.households.Households.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "name", "editable": true, "editor": name2576, "filter": { "type": "string" }, "header": "Name", "sortable": true, "tooltip": "(households.Households.name) The full name of this partner. Used for alphabetic sorting.\nSubclasses may hide this field and fill it automatically,\ne.g. saving a Person will automatically set her\nname field to \"last_name, first_name\".", "width": Lino.chars2width(22) }, { "colIndex": 1, "dataIndex": "email", "editable": true, "editor": email2577, "filter": { "type": "string" }, "header": "e-mail address", "sortable": true, "tooltip": "(households.Households.email) The primary email address.", "width": Lino.chars2width(22) }, { "colIndex": 2, "dataIndex": "language", "editable": true, "editor": language2578, "filter": { "type": "string" }, "header": "Language", "hidden": true, "sortable": false, "tooltip": "(households.Households.language) The language to use when communicating with this partner.", "width": Lino.chars2width(21) }, { "colIndex": 3, "dataIndex": "url", "editable": true, "editor": url2579, "filter": { "type": "string" }, "header": "URL", "hidden": true, "sortable": true, "tooltip": "(households.Households.url) ", "width": Lino.chars2width(22) }, { "colIndex": 4, "dataIndex": "phone", "editable": true, "editor": phone2580, "filter": { "type": "string" }, "header": "Phone", "hidden": true, "sortable": true, "tooltip": "(households.Households.phone) The primary phone number.  Note that Lino does not ignore\nformatting characters in phone numbers when searching.  For\nexample, if you enter \"087/12.34.56\" as a phone number, then a\nsearch for phone number containing \"1234\" will not find it.", "width": Lino.chars2width(22) }, { "colIndex": 5, "dataIndex": "gsm", "editable": true, "editor": gsm2581, "filter": { "type": "string" }, "header": "GSM", "hidden": true, "sortable": true, "tooltip": "(households.Households.gsm) The primary mobile phone number.", "width": Lino.chars2width(22) }, { "colIndex": 6, "dataIndex": "fax", "editable": true, "editor": fax2582, "filter": { "type": "string" }, "header": "Fax", "hidden": true, "sortable": true, "tooltip": "(households.Households.fax) ", "width": Lino.chars2width(22) }, { "colIndex": 7, "dataIndex": "country", "editable": true, "editor": country2583, "filter": { "type": "string" }, "header": "Country", "hidden": true, "renderer": Lino.fk_renderer('countryHidden','Lino.countries.Countries.detail'), "sortable": false, "tooltip": "(households.Households.country) ", "width": Lino.chars2width(21) }, { "colIndex": 8, "dataIndex": "city", "editable": true, "editor": city2584, "filter": { "type": "string" }, "header": "City", "hidden": true, "renderer": Lino.fk_renderer('cityHidden','Lino.countries.Places.detail'), "sortable": false, "tooltip": "(households.Households.city) A pointer to the Place which is used as city.", "width": Lino.chars2width(21) }, { "colIndex": 9, "dataIndex": "zip_code", "editable": true, "editor": zip_code2585, "filter": { "type": "string" }, "header": "Zip code", "hidden": true, "sortable": true, "tooltip": "(households.Households.zip_code) ", "width": Lino.chars2width(12) }, { "colIndex": 10, "dataIndex": "region", "editable": true, "editor": region2586, "filter": { "type": "string" }, "header": "County", "hidden": true, "renderer": Lino.fk_renderer('regionHidden','Lino.countries.Places.detail'), "sortable": false, "tooltip": "(households.Households.region) ", "width": Lino.chars2width(21) }, { "colIndex": 11, "dataIndex": "addr1", "editable": true, "editor": addr12587, "filter": { "type": "string" }, "header": "Address line before street", "hidden": true, "sortable": true, "tooltip": "(households.Households.addr1) Address line before street", "width": Lino.chars2width(22) }, { "colIndex": 12, "dataIndex": "street_prefix", "editable": true, "editor": street_prefix2588, "filter": { "type": "string" }, "header": "Street prefix", "hidden": true, "sortable": true, "tooltip": "(households.Households.street_prefix) Text to print before name of street, but to ignore for sorting.", "width": Lino.chars2width(22) }, { "colIndex": 13, "dataIndex": "street", "editable": true, "editor": street2589, "filter": { "type": "string" }, "header": "Street", "hidden": true, "sortable": true, "tooltip": "(households.Households.street) Name of street, without house number.", "width": Lino.chars2width(22) }, { "colIndex": 14, "dataIndex": "street_no", "editable": true, "editor": street_no2590, "filter": { "type": "string" }, "header": "No.", "hidden": true, "sortable": true, "tooltip": "(households.Households.street_no) House number.", "width": Lino.chars2width(12) }, { "colIndex": 15, "dataIndex": "street_box", "editable": true, "editor": street_box2591, "filter": { "type": "string" }, "header": "Box", "hidden": true, "sortable": true, "tooltip": "(households.Households.street_box) Text to print after street nuber on the same line.", "width": Lino.chars2width(12) }, { "colIndex": 16, "dataIndex": "addr2", "editable": true, "editor": addr22592, "filter": { "type": "string" }, "header": "Address line after street", "hidden": true, "sortable": true, "tooltip": "(households.Households.addr2) Address line to print below street line.", "width": Lino.chars2width(22) }, { "colIndex": 17, "dataIndex": "prefix", "editable": true, "editor": prefix2593, "filter": { "type": "string" }, "header": "Name prefix", "hidden": true, "sortable": true, "tooltip": "(households.Households.prefix) An optional name prefix. For organisations this is inserted\nbefore the name, for persons this is inserted between first\nname and last name (see\nlino.mixins.human.Human.get_last_name_prefix()).", "width": Lino.chars2width(22) }, { "colIndex": 18, "dataIndex": "remarks", "editable": true, "editor": remarks2594, "filter": { "type": "string" }, "header": "About me", "hidden": true, "sortable": false, "tooltip": "(households.Households.remarks) ", "width": Lino.chars2width(61) }, { "colIndex": 19, "dataIndex": "type", "editable": true, "editor": type2595, "filter": { "type": "string" }, "header": "Household Type", "hidden": true, "renderer": Lino.fk_renderer('typeHidden','Lino.households.Types.detail'), "sortable": false, "tooltip": "(households.Households.type) ", "width": Lino.chars2width(21) }, { "colIndex": 20, "dataIndex": "name_column", "editable": false, "header": "Name", "hidden": true, "sortable": false, "tooltip": "(households.Households.name_column) ", "width": Lino.chars2width(31) }, { "colIndex": 21, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(households.Households.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 22, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(households.Households.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 23, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(households.Households.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 24, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(households.Households.workflow_buttons) ", "width": Lino.chars2width(31) }, { "colIndex": 25, "dataIndex": "mti_navigator", "editable": false, "header": "See as ", "hidden": true, "sortable": false, "tooltip": "(households.Households.mti_navigator) ", "width": Lino.chars2width(31) }, { "colIndex": 26, "dataIndex": "address_column", "editable": false, "header": "Address", "hidden": true, "sortable": false, "tooltip": "(households.Households.address_column) ", "width": Lino.chars2width(31) }, { "align": "right", "colIndex": 27, "dataIndex": "id", "editable": true, "editor": id2603, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "sortable": true, "tooltip": "(households.Households.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" } ];
    Lino.households.Households.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.households.Households.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/Households", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.households.Households.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/Households", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.households.Households.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/Households", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.households.Households.insertPanel = Ext.extend(Lino.contacts.Partners.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/households/Households",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.households.Households.detail;
    this.ls_insert_handler = Lino.households.Households.insert;
    Lino.households.Households.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.households.Households.insert = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.households.Households.insertPanel(p);
});
Lino.households.Households.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/Households", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.households.Households.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/Households", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.households.Households.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/Households", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.households.Households.detailPanel = Ext.extend(Lino.households.Households.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "iconCls": "x-tbar-lightning", "itemId": "populate_members", "menu_item_text": "Populate", "overflowText": "Populate", "panel_btn_handler": Lino.row_action_handler('populate_members','GET',null), "tooltip": "Populate" } ],
  ls_url: "/households/Households",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.households.Households.detail;
    this.ls_insert_handler = Lino.households.Households.insert;
    Lino.households.Households.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.households.Households.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.households.Households.detailPanel(p);
});
Lino.households.Households.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/Households", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.households.Households.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.contacts.Partners.ParamsPanel({});
  return new Lino.households.Households.GridPanel(p);
});
Lino.households.Households.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/Households", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.households.Households.del_company = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/Households", "GET", pk, "del_company", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.households.Households.populate_members = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/Households", "GET", pk, "populate_members", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.households.Households.ins_company = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/Households", "GET", pk, "ins_company", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.households.Households.ins_partner = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/Households", "GET", pk, "ins_partner", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.households.Households.ins_user = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/Households", "GET", pk, "ins_user", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.households.Households.del_partner = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/Households", "GET", pk, "del_partner", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.households.Households.ins_person = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/Households", "GET", pk, "ins_person", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.households.Households.del_household = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/Households", "GET", pk, "del_household", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.households.Households.ins_household = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/Households", "GET", pk, "ins_household", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.households.Households.del_person = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/Households", "GET", pk, "del_person", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.households.Households.del_user = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/Households", "GET", pk, "del_user", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class households.Members
Lino.households.Members.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/households/Members",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/households/Members','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/households/Members','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "itemId": "set_primary", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Make this the primary household.") }, "menu_item_text": "set_primary", "overflowText": "set_primary", "panel_btn_handler": Lino.row_action_handler('set_primary','GET',null), "text": "set_primary" } ],
  cell_edit : true,
  title : "Household Members",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 25,
  ls_store_fields : [ { "name": "id", "type": "int" }, { "dateFormat": "d.m.Y", "name": "start_date", "type": "date" }, { "dateFormat": "d.m.Y", "name": "end_date", "type": "date" }, { "name": "title" }, { "name": "first_name" }, { "name": "middle_name" }, { "name": "last_name" }, { "name": "gender" }, 'genderHidden', { "name": "birth_date" }, { "name": "role" }, 'roleHidden', { "name": "person" }, 'personHidden', { "name": "household" }, 'householdHidden', { "name": "dependency" }, 'dependencyHidden', { "name": "primary", "type": "boolean" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "age" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 0,
  ls_grid_configs : [  ],
  content_type : 29,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    var ww = this.containing_window;
    var id2605 = new Ext.form.NumberField({ "selectOnFocus": true });
    var start_date2606 = new Lino.DateField({ "selectOnFocus": true });
    var end_date2607 = new Lino.DateField({ "selectOnFocus": true });
    var title2608 = new Ext.form.TextField({ "maxLength": 200, "selectOnFocus": true });
    var first_name2609 = new Ext.form.TextField({ "maxLength": 200, "selectOnFocus": true });
    var middle_name2610 = new Ext.form.TextField({ "maxLength": 200, "selectOnFocus": true });
    var last_name2611 = new Ext.form.TextField({ "maxLength": 200, "selectOnFocus": true });
    var gender2612 = new Lino.ChoicesFieldElement({ "forceSelection": true, "selectOnFocus": true, "store": [['','<br>']].concat(Lino.system.Genders) });
    var birth_date2613 = new Lino.IncompleteDateField({ "selectOnFocus": true });
    var role2614 = new Lino.ChoicesFieldElement({ "forceSelection": true, "selectOnFocus": true, "store": [['','<br>']].concat(Lino.households.MemberRoles) });
    var person2615 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Person...", "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/households/Members/person" }) }) });
    var household2616 = new Lino.RemoteComboFieldElement({ "allowBlank": false, "emptyText": "Select a Household...", "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/households/Members/household" }) }) });
    var dependency2617 = new Lino.ChoicesFieldElement({ "allowBlank": false, "forceSelection": true, "selectOnFocus": true, "store": Lino.households.MemberDependencies });
    var primary2618 = new Ext.form.Checkbox({ "checked": false, "selectOnFocus": true });
    var mobile_item_disp2619 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp2620 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp2621 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp2622 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var age_disp2623 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "align": "right", "colIndex": 0, "dataIndex": "id", "editable": true, "editor": id2605, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "sortable": true, "tooltip": "(households.Members.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 1, "dataIndex": "start_date", "editable": true, "editor": start_date2606, "filter": { "dateFormat": "d.m.Y", "type": "date" }, "format": "d.m.Y", "header": "Start date", "sortable": true, "tooltip": "(households.Members.start_date) Since when this membership exists. This is usually empty.", "width": Lino.chars2width(14), "xtype": "datecolumn" }, { "colIndex": 2, "dataIndex": "end_date", "editable": true, "editor": end_date2607, "filter": { "dateFormat": "d.m.Y", "type": "date" }, "format": "d.m.Y", "header": "End date", "sortable": true, "tooltip": "(households.Members.end_date) Until when this membership exists.", "width": Lino.chars2width(14), "xtype": "datecolumn" }, { "colIndex": 3, "dataIndex": "title", "editable": true, "editor": title2608, "filter": { "type": "string" }, "header": "Title", "sortable": true, "tooltip": "(households.Members.title) Used to specify a professional position or academic\nqualification like \"Dr.\" or \"PhD\".", "width": Lino.chars2width(22) }, { "colIndex": 4, "dataIndex": "first_name", "editable": true, "editor": first_name2609, "filter": { "type": "string" }, "header": "First name", "sortable": true, "tooltip": "(households.Members.first_name) The first name, also known as given name.", "width": Lino.chars2width(22) }, { "colIndex": 5, "dataIndex": "middle_name", "editable": true, "editor": middle_name2610, "filter": { "type": "string" }, "header": "Middle name", "sortable": true, "tooltip": "(households.Members.middle_name) A space-separated list of all middle names.", "width": Lino.chars2width(22) }, { "colIndex": 6, "dataIndex": "last_name", "editable": true, "editor": last_name2611, "filter": { "type": "string" }, "header": "Last name", "sortable": true, "tooltip": "(households.Members.last_name) The last name, also known as family name.", "width": Lino.chars2width(22) }, { "colIndex": 7, "dataIndex": "gender", "editable": true, "editor": gender2612, "filter": { "type": "string" }, "header": "Gender", "sortable": false, "tooltip": "(households.Members.gender) The sex of this person (male or female).", "width": Lino.chars2width(10) }, { "colIndex": 8, "dataIndex": "birth_date", "editable": true, "editor": birth_date2613, "filter": { "type": "string" }, "header": "Birth date", "sortable": true, "tooltip": "(households.Members.birth_date) Uncomplete dates are allowed, e.g. \n\"00.00.1980\" means \"some day in 1980\", \n\"00.07.1980\" means \"in July 1980\"\nor \"23.07.0000\" means \"on a 23th of July\".", "width": Lino.chars2width(13) }, { "colIndex": 9, "dataIndex": "role", "editable": true, "editor": role2614, "filter": { "type": "string" }, "header": "Role", "sortable": false, "tooltip": "(households.Members.role) ", "width": Lino.chars2width(21) }, { "colIndex": 10, "dataIndex": "person", "editable": true, "editor": person2615, "filter": { "type": "string" }, "header": "Person", "renderer": Lino.fk_renderer('personHidden','Lino.contacts.Persons.detail'), "sortable": false, "tooltip": "(households.Members.person) ", "width": Lino.chars2width(21) }, { "colIndex": 11, "dataIndex": "household", "editable": true, "editor": household2616, "filter": { "type": "string" }, "header": "Household", "renderer": Lino.fk_renderer('householdHidden','Lino.households.Households.detail'), "sortable": false, "tooltip": "(households.Members.household) ", "width": Lino.chars2width(21) }, { "colIndex": 12, "dataIndex": "dependency", "editable": true, "editor": dependency2617, "filter": { "type": "string" }, "header": "Dependency", "sortable": false, "tooltip": "(households.Members.dependency) ", "width": Lino.chars2width(20) }, { "colIndex": 13, "dataIndex": "primary", "editable": true, "filter": { "type": "boolean" }, "header": "Primary", "sortable": false, "tooltip": "(households.Members.primary) Whether this is the primary household of this person. Checking this field will automatically disable any other primary memberships.", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 14, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(households.Members.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 15, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(households.Members.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 16, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(households.Members.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 17, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(households.Members.workflow_buttons) ", "width": Lino.chars2width(31) }, { "colIndex": 18, "dataIndex": "age", "editable": false, "header": "Age", "hidden": true, "sortable": false, "tooltip": "(households.Members.age) ", "width": Lino.chars2width(31) } ];
    Lino.households.Members.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.households.Members.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/Members", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.households.Members.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/Members", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.households.Members.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/Members", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.households.Members.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/Members", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.households.Members.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/Members", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.households.Members.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/Members", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.households.Members.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.households.Members.ParamsPanel({});
  return new Lino.households.Members.GridPanel(p);
});
Lino.households.Members.set_primary = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/Members", "GET", pk, "set_primary", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class humanlinks.Links
Lino.humanlinks.Links.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/humanlinks/Links",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/humanlinks/Links','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/humanlinks/Links','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "Personal Links",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 14,
  ls_store_fields : [ { "name": "id", "type": "int" }, { "name": "type" }, 'typeHidden', { "name": "parent" }, 'parentHidden', { "name": "child" }, 'childHidden', { "name": "type_as_child" }, { "name": "type_as_parent" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 0,
  ls_grid_configs : [  ],
  content_type : 32,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.humanlinks.Links.detail;
    this.ls_insert_handler = Lino.humanlinks.Links.insert;
    var ww = this.containing_window;
    var id2625 = new Ext.form.NumberField({ "selectOnFocus": true });
    var type2626 = new Lino.ChoicesFieldElement({ "allowBlank": false, "forceSelection": true, "selectOnFocus": true, "store": Lino.humanlinks.LinkTypes });
    var parent2627 = new Lino.RemoteComboFieldElement({ "allowBlank": false, "emptyText": "Select a Person...", "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/humanlinks/Links/parent" }) }) });
    var child2628 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Person...", "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/humanlinks/Links/child" }) }) });
    var type_as_child_disp2629 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var type_as_parent_disp2630 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var mobile_item_disp2631 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp2632 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp2633 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp2634 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "align": "right", "colIndex": 0, "dataIndex": "id", "editable": true, "editor": id2625, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "sortable": true, "tooltip": "(humanlinks.Links.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 1, "dataIndex": "type", "editable": true, "editor": type2626, "filter": { "type": "string" }, "header": "Parency type", "sortable": false, "tooltip": "(humanlinks.Links.type) The type of link.  Pointer to LinkTypes.", "width": Lino.chars2width(37) }, { "colIndex": 2, "dataIndex": "parent", "editable": true, "editor": parent2627, "filter": { "type": "string" }, "header": "Who is...", "renderer": Lino.fk_renderer('parentHidden','Lino.contacts.Persons.detail'), "sortable": false, "tooltip": "(humanlinks.Links.parent) Pointer to the person who is \"parent\".", "width": Lino.chars2width(21) }, { "colIndex": 3, "dataIndex": "child", "editable": true, "editor": child2628, "filter": { "type": "string" }, "header": "To whom...", "renderer": Lino.fk_renderer('childHidden','Lino.contacts.Persons.detail'), "sortable": false, "tooltip": "(humanlinks.Links.child) Pointer to the person who is \"child\".", "width": Lino.chars2width(21) }, { "colIndex": 4, "dataIndex": "type_as_child", "editable": false, "header": "Type", "hidden": true, "sortable": false, "tooltip": "(humanlinks.Links.type_as_child) ", "width": Lino.chars2width(31) }, { "colIndex": 5, "dataIndex": "type_as_parent", "editable": false, "header": "Type", "hidden": true, "sortable": false, "tooltip": "(humanlinks.Links.type_as_parent) ", "width": Lino.chars2width(31) }, { "colIndex": 6, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(humanlinks.Links.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 7, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(humanlinks.Links.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 8, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(humanlinks.Links.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 9, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(humanlinks.Links.workflow_buttons) ", "width": Lino.chars2width(31) } ];
    Lino.humanlinks.Links.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.humanlinks.Links.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/humanlinks/Links", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.humanlinks.Links.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/humanlinks/Links", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.humanlinks.Links.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/humanlinks/Links", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.humanlinks.Links.insertPanel = Ext.extend(Lino.humanlinks.Links.DetailFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/humanlinks/Links",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.humanlinks.Links.detail;
    this.ls_insert_handler = Lino.humanlinks.Links.insert;
    Lino.humanlinks.Links.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.humanlinks.Links.insert = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(40) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.humanlinks.Links.insertPanel(p);
});
Lino.humanlinks.Links.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/humanlinks/Links", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.humanlinks.Links.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/humanlinks/Links", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.humanlinks.Links.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/humanlinks/Links", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.humanlinks.Links.detailPanel = Ext.extend(Lino.humanlinks.Links.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  ls_url: "/humanlinks/Links",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.humanlinks.Links.detail;
    this.ls_insert_handler = Lino.humanlinks.Links.insert;
    Lino.humanlinks.Links.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.humanlinks.Links.detail = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(40) }, function(){
  var p = { "is_main_window": true };
  return new Lino.humanlinks.Links.detailPanel(p);
});
Lino.humanlinks.Links.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/humanlinks/Links", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.humanlinks.Links.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.humanlinks.Links.GridPanel(p);
});
Lino.humanlinks.Links.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/humanlinks/Links", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class topics.TopicGroups
Lino.topics.TopicGroups.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/topics/TopicGroups",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/topics/TopicGroups','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/topics/TopicGroups','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "Topic groups",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 8,
  ls_store_fields : [ { "name": "id", "type": "int" }, { "name": "name" }, { "name": "description" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 0,
  ls_grid_configs : [  ],
  content_type : 33,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.topics.TopicGroups.detail;
    this.ls_insert_handler = Lino.topics.TopicGroups.insert;
    var ww = this.containing_window;
    var id2636 = new Ext.form.NumberField({ "selectOnFocus": true });
    var name2637 = new Ext.form.TextField({ "allowBlank": false, "maxLength": 200, "selectOnFocus": true });
    var description2638 = new Lino.RichTextPanel({ "containing_panel": this, "selectOnFocus": true, "title": "Description" });
    var mobile_item_disp2639 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp2640 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp2641 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp2642 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
      description2638.refresh();
    };
    this.ls_columns = [ { "align": "right", "colIndex": 0, "dataIndex": "id", "editable": true, "editor": id2636, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "sortable": true, "tooltip": "(topics.TopicGroups.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 1, "dataIndex": "name", "editable": true, "editor": name2637, "filter": { "type": "string" }, "header": "Designation", "sortable": true, "tooltip": "(topics.TopicGroups.name) ", "width": Lino.chars2width(22) }, { "colIndex": 2, "dataIndex": "description", "editable": true, "editor": description2638, "filter": { "type": "string" }, "header": "Description", "sortable": false, "tooltip": "(topics.TopicGroups.description) ", "width": Lino.chars2width(61) }, { "colIndex": 3, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(topics.TopicGroups.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 4, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(topics.TopicGroups.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 5, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(topics.TopicGroups.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 6, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(topics.TopicGroups.workflow_buttons) ", "width": Lino.chars2width(31) } ];
    Lino.topics.TopicGroups.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.topics.TopicGroups.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/topics/TopicGroups", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.topics.TopicGroups.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/topics/TopicGroups", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.topics.TopicGroups.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/topics/TopicGroups", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.topics.TopicGroups.insertPanel = Ext.extend(Lino.topics.TopicGroups.DetailFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/topics/TopicGroups",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.topics.TopicGroups.detail;
    this.ls_insert_handler = Lino.topics.TopicGroups.insert;
    Lino.topics.TopicGroups.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.topics.TopicGroups.insert = new Lino.WindowAction({  }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.topics.TopicGroups.insertPanel(p);
});
Lino.topics.TopicGroups.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/topics/TopicGroups", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.topics.TopicGroups.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/topics/TopicGroups", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.topics.TopicGroups.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/topics/TopicGroups", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.topics.TopicGroups.detailPanel = Ext.extend(Lino.topics.TopicGroups.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  ls_url: "/topics/TopicGroups",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.topics.TopicGroups.detail;
    this.ls_insert_handler = Lino.topics.TopicGroups.insert;
    Lino.topics.TopicGroups.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.topics.TopicGroups.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.topics.TopicGroups.detailPanel(p);
});
Lino.topics.TopicGroups.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/topics/TopicGroups", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.topics.TopicGroups.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.topics.TopicGroups.GridPanel(p);
});
Lino.topics.TopicGroups.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/topics/TopicGroups", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class topics.Topics
Lino.topics.Topics.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/topics/Topics",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/topics/Topics','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/topics/Topics','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "Topics",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 11,
  ls_store_fields : [ { "name": "ref" }, { "name": "name" }, { "name": "topic_group" }, 'topic_groupHidden', { "name": "id", "type": "int" }, { "name": "description" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 4,
  ls_grid_configs : [  ],
  content_type : 34,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.topics.Topics.detail;
    this.ls_insert_handler = Lino.topics.Topics.insert;
    var ww = this.containing_window;
    var ref2644 = new Ext.form.TextField({ "maxLength": 40, "selectOnFocus": true });
    var name2645 = new Ext.form.TextField({ "allowBlank": false, "maxLength": 200, "selectOnFocus": true });
    var topic_group2646 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Topic group...", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/topics/Topics/topic_group" }) }) });
    var id2647 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var description2648 = new Lino.RichTextPanel({ "containing_panel": this, "hidden": true, "selectOnFocus": true, "title": "Long description" });
    var mobile_item_disp2649 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp2650 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp2651 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp2652 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
      description2648.refresh();
    };
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "ref", "editable": true, "editor": ref2644, "filter": { "type": "string" }, "header": "Reference", "sortable": true, "tooltip": "(topics.Topics.ref) The reference. This must be either empty or unique.", "width": Lino.chars2width(22) }, { "colIndex": 1, "dataIndex": "name", "editable": true, "editor": name2645, "filter": { "type": "string" }, "header": "Designation", "sortable": true, "tooltip": "(topics.Topics.name) ", "width": Lino.chars2width(22) }, { "colIndex": 2, "dataIndex": "topic_group", "editable": true, "editor": topic_group2646, "filter": { "type": "string" }, "header": "Topic group", "renderer": Lino.fk_renderer('topic_groupHidden','Lino.topics.TopicGroups.detail'), "sortable": false, "tooltip": "(topics.Topics.topic_group) ", "width": Lino.chars2width(21) }, { "align": "right", "colIndex": 3, "dataIndex": "id", "editable": true, "editor": id2647, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(topics.Topics.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 4, "dataIndex": "description", "editable": true, "editor": description2648, "filter": { "type": "string" }, "header": "Long description", "hidden": true, "sortable": false, "tooltip": "(topics.Topics.description) ", "width": Lino.chars2width(61) }, { "colIndex": 5, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(topics.Topics.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 6, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(topics.Topics.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 7, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(topics.Topics.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 8, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(topics.Topics.workflow_buttons) ", "width": Lino.chars2width(31) } ];
    Lino.topics.Topics.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.topics.Topics.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/topics/Topics", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.topics.Topics.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/topics/Topics", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.topics.Topics.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/topics/Topics", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.topics.Topics.insertPanel = Ext.extend(Lino.topics.Topics.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/topics/Topics",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.topics.Topics.detail;
    this.ls_insert_handler = Lino.topics.Topics.insert;
    Lino.topics.Topics.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.topics.Topics.insert = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.topics.Topics.insertPanel(p);
});
Lino.topics.Topics.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/topics/Topics", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.topics.Topics.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/topics/Topics", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.topics.Topics.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/topics/Topics", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.topics.Topics.detailPanel = Ext.extend(Lino.topics.Topics.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  ls_url: "/topics/Topics",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.topics.Topics.detail;
    this.ls_insert_handler = Lino.topics.Topics.insert;
    Lino.topics.Topics.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.topics.Topics.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.topics.Topics.detailPanel(p);
});
Lino.topics.Topics.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/topics/Topics", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.topics.Topics.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.topics.Topics.GridPanel(p);
});
Lino.topics.Topics.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/topics/Topics", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class topics.AllTopics
Lino.topics.AllTopics.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/topics/AllTopics",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/topics/AllTopics','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/topics/AllTopics','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "Topics",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 11,
  ls_store_fields : [ { "name": "ref" }, { "name": "name" }, { "name": "topic_group" }, 'topic_groupHidden', { "name": "id", "type": "int" }, { "name": "description" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 4,
  ls_grid_configs : [  ],
  content_type : 34,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.topics.AllTopics.detail;
    this.ls_insert_handler = Lino.topics.AllTopics.insert;
    var ww = this.containing_window;
    var ref2654 = new Ext.form.TextField({ "maxLength": 40, "selectOnFocus": true });
    var name2655 = new Ext.form.TextField({ "allowBlank": false, "maxLength": 200, "selectOnFocus": true });
    var topic_group2656 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Topic group...", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/topics/AllTopics/topic_group" }) }) });
    var id2657 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var description2658 = new Lino.RichTextPanel({ "containing_panel": this, "hidden": true, "selectOnFocus": true, "title": "Long description" });
    var mobile_item_disp2659 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp2660 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp2661 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp2662 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
      description2658.refresh();
    };
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "ref", "editable": true, "editor": ref2654, "filter": { "type": "string" }, "header": "Reference", "sortable": true, "tooltip": "(topics.AllTopics.ref) The reference. This must be either empty or unique.", "width": Lino.chars2width(22) }, { "colIndex": 1, "dataIndex": "name", "editable": true, "editor": name2655, "filter": { "type": "string" }, "header": "Designation", "sortable": true, "tooltip": "(topics.AllTopics.name) ", "width": Lino.chars2width(22) }, { "colIndex": 2, "dataIndex": "topic_group", "editable": true, "editor": topic_group2656, "filter": { "type": "string" }, "header": "Topic group", "renderer": Lino.fk_renderer('topic_groupHidden','Lino.topics.TopicGroups.detail'), "sortable": false, "tooltip": "(topics.AllTopics.topic_group) ", "width": Lino.chars2width(21) }, { "align": "right", "colIndex": 3, "dataIndex": "id", "editable": true, "editor": id2657, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(topics.AllTopics.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 4, "dataIndex": "description", "editable": true, "editor": description2658, "filter": { "type": "string" }, "header": "Long description", "hidden": true, "sortable": false, "tooltip": "(topics.AllTopics.description) ", "width": Lino.chars2width(61) }, { "colIndex": 5, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(topics.AllTopics.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 6, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(topics.AllTopics.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 7, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(topics.AllTopics.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 8, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(topics.AllTopics.workflow_buttons) ", "width": Lino.chars2width(31) } ];
    Lino.topics.AllTopics.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.topics.AllTopics.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/topics/AllTopics", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.topics.AllTopics.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/topics/AllTopics", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.topics.AllTopics.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/topics/AllTopics", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.topics.AllTopics.insertPanel = Ext.extend(Lino.topics.Topics.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/topics/AllTopics",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.topics.AllTopics.detail;
    this.ls_insert_handler = Lino.topics.AllTopics.insert;
    Lino.topics.AllTopics.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.topics.AllTopics.insert = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.topics.AllTopics.insertPanel(p);
});
Lino.topics.AllTopics.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/topics/AllTopics", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.topics.AllTopics.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/topics/AllTopics", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.topics.AllTopics.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/topics/AllTopics", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.topics.AllTopics.detailPanel = Ext.extend(Lino.topics.Topics.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  ls_url: "/topics/AllTopics",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.topics.AllTopics.detail;
    this.ls_insert_handler = Lino.topics.AllTopics.insert;
    Lino.topics.AllTopics.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.topics.AllTopics.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.topics.AllTopics.detailPanel(p);
});
Lino.topics.AllTopics.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/topics/AllTopics", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.topics.AllTopics.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.topics.AllTopics.GridPanel(p);
});
Lino.topics.AllTopics.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/topics/AllTopics", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class topics.Interests
Lino.topics.Interests.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/topics/Interests",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/topics/Interests','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/topics/Interests','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "Interests",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 16,
  ls_store_fields : [ { "name": "partner" }, 'partnerHidden', { "name": "topic" }, 'topicHidden', { "name": "id", "type": "int" }, { "name": "owner_type" }, 'owner_typeHidden', { "name": "owner_id" }, 'owner_idHidden', { "name": "remark" }, { "name": "owner" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 4,
  ls_grid_configs : [  ],
  content_type : 35,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    var ww = this.containing_window;
    var partner2664 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Partner...", "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/topics/Interests/partner" }) }) });
    var topic2665 = new Lino.RemoteComboFieldElement({ "allowBlank": false, "emptyText": "Select a Topic...", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/topics/Interests/topic" }) }) });
    var id2666 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var owner_type2667 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a content type...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/topics/Interests/owner_type" }) }) });
    var owner_id2668 = new Lino.RemoteComboFieldElement({ "hidden": true, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/topics/Interests/owner_id" }) }) });
    var remark2669 = new Ext.form.TextArea({ "growMax": 2000, "hidden": true, "selectOnFocus": true });
    var owner_disp2670 = new Ext.form.DisplayField({ "disabled": true, "hidden": true });
    var mobile_item_disp2671 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp2672 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp2673 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp2674 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
      owner_id2668.setContextValue('owner_type', record ? record.data['owner_typeHidden'] : undefined);
    };
    this.onRender = function(ct, position) {
      owner_type2667.on('change',Lino.chooser_handler(owner_id2668,'owner_type'));
      Lino.topics.Interests.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "partner", "editable": true, "editor": partner2664, "filter": { "type": "string" }, "header": "Partner", "renderer": Lino.fk_renderer('partnerHidden','Lino.contacts.Partners.detail'), "sortable": false, "tooltip": "(topics.Interests.partner) ", "width": Lino.chars2width(21) }, { "colIndex": 1, "dataIndex": "topic", "editable": true, "editor": topic2665, "filter": { "type": "string" }, "header": "Topic", "renderer": Lino.fk_renderer('topicHidden','Lino.topics.Topics.detail'), "sortable": false, "tooltip": "(topics.Interests.topic) ", "width": Lino.chars2width(21) }, { "align": "right", "colIndex": 2, "dataIndex": "id", "editable": true, "editor": id2666, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(topics.Interests.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 3, "dataIndex": "owner_type", "editable": true, "editor": owner_type2667, "filter": { "type": "string" }, "header": "Controlled by (type)", "hidden": true, "renderer": Lino.fk_renderer('owner_typeHidden','Lino.gfks.ContentTypes.detail'), "sortable": false, "tooltip": "(topics.Interests.owner_type) ", "width": Lino.chars2width(21) }, { "colIndex": 4, "dataIndex": "owner_id", "editable": true, "editor": owner_id2668, "filter": { "type": "string" }, "header": "Controlled by (object)", "hidden": true, "sortable": false, "tooltip": "(topics.Interests.owner_id) ", "width": Lino.chars2width(11) }, { "colIndex": 5, "dataIndex": "remark", "editable": true, "editor": remark2669, "filter": { "type": "string" }, "header": "Remark", "hidden": true, "sortable": false, "tooltip": "(topics.Interests.remark) ", "width": Lino.chars2width(61) }, { "colIndex": 6, "dataIndex": "owner", "editable": false, "header": "Controlled by", "hidden": true, "sortable": false, "tooltip": "(topics.Interests.owner) ", "width": Lino.chars2width(11) }, { "colIndex": 7, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(topics.Interests.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 8, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(topics.Interests.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 9, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(topics.Interests.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 10, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(topics.Interests.workflow_buttons) ", "width": Lino.chars2width(31) } ];
    Lino.topics.Interests.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.topics.Interests.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/topics/Interests", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.topics.Interests.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/topics/Interests", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.topics.Interests.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/topics/Interests", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.topics.Interests.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/topics/Interests", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.topics.Interests.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/topics/Interests", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.topics.Interests.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/topics/Interests", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.topics.Interests.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.topics.Interests.GridPanel(p);
});

// js_render_GridPanel_class topics.AllInterests
Lino.topics.AllInterests.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/topics/AllInterests",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/topics/AllInterests','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/topics/AllInterests','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "Interests",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 16,
  ls_store_fields : [ { "name": "partner" }, 'partnerHidden', { "name": "topic" }, 'topicHidden', { "name": "id", "type": "int" }, { "name": "owner_type" }, 'owner_typeHidden', { "name": "owner_id" }, 'owner_idHidden', { "name": "remark" }, { "name": "owner" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 4,
  ls_grid_configs : [  ],
  content_type : 35,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    var ww = this.containing_window;
    var partner2676 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Partner...", "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/topics/AllInterests/partner" }) }) });
    var topic2677 = new Lino.RemoteComboFieldElement({ "allowBlank": false, "emptyText": "Select a Topic...", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/topics/AllInterests/topic" }) }) });
    var id2678 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var owner_type2679 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a content type...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/topics/AllInterests/owner_type" }) }) });
    var owner_id2680 = new Lino.RemoteComboFieldElement({ "hidden": true, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/topics/AllInterests/owner_id" }) }) });
    var remark2681 = new Ext.form.TextArea({ "growMax": 2000, "hidden": true, "selectOnFocus": true });
    var owner_disp2682 = new Ext.form.DisplayField({ "disabled": true, "hidden": true });
    var mobile_item_disp2683 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp2684 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp2685 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp2686 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
      owner_id2680.setContextValue('owner_type', record ? record.data['owner_typeHidden'] : undefined);
    };
    this.onRender = function(ct, position) {
      owner_type2679.on('change',Lino.chooser_handler(owner_id2680,'owner_type'));
      Lino.topics.AllInterests.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "partner", "editable": true, "editor": partner2676, "filter": { "type": "string" }, "header": "Partner", "renderer": Lino.fk_renderer('partnerHidden','Lino.contacts.Partners.detail'), "sortable": false, "tooltip": "(topics.AllInterests.partner) ", "width": Lino.chars2width(21) }, { "colIndex": 1, "dataIndex": "topic", "editable": true, "editor": topic2677, "filter": { "type": "string" }, "header": "Topic", "renderer": Lino.fk_renderer('topicHidden','Lino.topics.Topics.detail'), "sortable": false, "tooltip": "(topics.AllInterests.topic) ", "width": Lino.chars2width(21) }, { "align": "right", "colIndex": 2, "dataIndex": "id", "editable": true, "editor": id2678, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(topics.AllInterests.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 3, "dataIndex": "owner_type", "editable": true, "editor": owner_type2679, "filter": { "type": "string" }, "header": "Controlled by (type)", "hidden": true, "renderer": Lino.fk_renderer('owner_typeHidden','Lino.gfks.ContentTypes.detail'), "sortable": false, "tooltip": "(topics.AllInterests.owner_type) ", "width": Lino.chars2width(21) }, { "colIndex": 4, "dataIndex": "owner_id", "editable": true, "editor": owner_id2680, "filter": { "type": "string" }, "header": "Controlled by (object)", "hidden": true, "sortable": false, "tooltip": "(topics.AllInterests.owner_id) ", "width": Lino.chars2width(11) }, { "colIndex": 5, "dataIndex": "remark", "editable": true, "editor": remark2681, "filter": { "type": "string" }, "header": "Remark", "hidden": true, "sortable": false, "tooltip": "(topics.AllInterests.remark) ", "width": Lino.chars2width(61) }, { "colIndex": 6, "dataIndex": "owner", "editable": false, "header": "Controlled by", "hidden": true, "sortable": false, "tooltip": "(topics.AllInterests.owner) ", "width": Lino.chars2width(11) }, { "colIndex": 7, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(topics.AllInterests.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 8, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(topics.AllInterests.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 9, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(topics.AllInterests.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 10, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(topics.AllInterests.workflow_buttons) ", "width": Lino.chars2width(31) } ];
    Lino.topics.AllInterests.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.topics.AllInterests.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/topics/AllInterests", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.topics.AllInterests.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/topics/AllInterests", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.topics.AllInterests.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/topics/AllInterests", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.topics.AllInterests.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/topics/AllInterests", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.topics.AllInterests.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/topics/AllInterests", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.topics.AllInterests.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/topics/AllInterests", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.topics.AllInterests.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.topics.AllInterests.GridPanel(p);
});

// js_render_GridPanel_class lists.ListTypes
Lino.lists.ListTypes.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/lists/ListTypes",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/lists/ListTypes','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/lists/ListTypes','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "List Types",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 7,
  ls_store_fields : [ { "name": "designation" }, { "name": "id", "type": "int" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 1,
  ls_grid_configs : [  ],
  content_type : 36,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    var ww = this.containing_window;
    var designation2688 = new Ext.form.TextField({ "allowBlank": false, "maxLength": 200, "selectOnFocus": true });
    var id2689 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var mobile_item_disp2690 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp2691 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp2692 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp2693 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "designation", "editable": true, "editor": designation2688, "filter": { "type": "string" }, "header": "Designation", "sortable": true, "tooltip": "(lists.ListTypes.designation) ", "width": Lino.chars2width(22) }, { "align": "right", "colIndex": 1, "dataIndex": "id", "editable": true, "editor": id2689, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(lists.ListTypes.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 2, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(lists.ListTypes.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 3, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(lists.ListTypes.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 4, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(lists.ListTypes.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 5, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(lists.ListTypes.workflow_buttons) ", "width": Lino.chars2width(31) } ];
    Lino.lists.ListTypes.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.lists.ListTypes.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/lists/ListTypes", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.lists.ListTypes.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/lists/ListTypes", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.lists.ListTypes.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/lists/ListTypes", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.lists.ListTypes.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/lists/ListTypes", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.lists.ListTypes.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/lists/ListTypes", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.lists.ListTypes.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/lists/ListTypes", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.lists.ListTypes.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.lists.ListTypes.GridPanel(p);
});

// js_render_GridPanel_class lists.Lists
Lino.lists.Lists.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/lists/Lists",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/lists/Lists','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_white_acrobat", "itemId": "print_labels", "menu_item_text": "Labels", "overflowText": "Labels", "panel_btn_handler": Lino.list_action_handler('/lists/Lists','print_labels','GET',Lino.get_current_grid_config), "tooltip": "Generate mailing labels for these recipients" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/lists/Lists','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "Partner Lists",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 11,
  ls_store_fields : [ { "name": "ref" }, { "name": "overview" }, { "name": "list_type" }, 'list_typeHidden', { "name": "id", "type": "int" }, { "name": "designation" }, { "name": "remarks" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "workflow_buttons" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 4,
  ls_grid_configs : [  ],
  content_type : 38,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.lists.Lists.detail;
    this.ls_insert_handler = Lino.lists.Lists.insert;
    var ww = this.containing_window;
    var ref2695 = new Ext.form.TextField({ "maxLength": 40, "selectOnFocus": true });
    var overview_disp2696 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    var list_type2697 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a List Type...", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/lists/Lists/list_type" }) }) });
    var id2698 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var designation2699 = new Ext.form.TextField({ "allowBlank": false, "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var remarks2700 = new Lino.RichTextPanel({ "containing_panel": this, "hidden": true, "selectOnFocus": true, "title": "Remarks" });
    var mobile_item_disp2701 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp2702 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp2703 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
      remarks2700.refresh();
    };
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "ref", "editable": true, "editor": ref2695, "filter": { "type": "string" }, "header": "Reference", "sortable": true, "tooltip": "(lists.Lists.ref) The reference. This must be either empty or unique.", "width": Lino.chars2width(22) }, { "colIndex": 1, "dataIndex": "overview", "editable": false, "header": "overview", "sortable": false, "tooltip": "(lists.Lists.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 2, "dataIndex": "list_type", "editable": true, "editor": list_type2697, "filter": { "type": "string" }, "header": "List Type", "sortable": false, "tooltip": "(lists.Lists.list_type) ", "width": Lino.chars2width(21) }, { "align": "right", "colIndex": 3, "dataIndex": "id", "editable": true, "editor": id2698, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(lists.Lists.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 4, "dataIndex": "designation", "editable": true, "editor": designation2699, "filter": { "type": "string" }, "header": "Designation", "hidden": true, "sortable": true, "tooltip": "(lists.Lists.designation) ", "width": Lino.chars2width(22) }, { "colIndex": 5, "dataIndex": "remarks", "editable": true, "editor": remarks2700, "filter": { "type": "string" }, "header": "Remarks", "hidden": true, "sortable": false, "tooltip": "(lists.Lists.remarks) ", "width": Lino.chars2width(61) }, { "colIndex": 6, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(lists.Lists.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 7, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(lists.Lists.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 8, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(lists.Lists.workflow_buttons) ", "width": Lino.chars2width(31) } ];
    Lino.lists.Lists.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.lists.Lists.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/lists/Lists", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.lists.Lists.print_labels = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/lists/Lists", "GET", pk, "print_labels", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.lists.Lists.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/lists/Lists", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.lists.Lists.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/lists/Lists", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.lists.Lists.insertPanel = Ext.extend(Lino.lists.Lists.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/lists/Lists",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.lists.Lists.detail;
    this.ls_insert_handler = Lino.lists.Lists.insert;
    Lino.lists.Lists.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.lists.Lists.insert = new Lino.WindowAction({ "draggable": true, "height": Lino.rows2height(12), "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.lists.Lists.insertPanel(p);
});
Lino.lists.Lists.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/lists/Lists", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.lists.Lists.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/lists/Lists", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.lists.Lists.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/lists/Lists", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.lists.Lists.detailPanel = Ext.extend(Lino.lists.Lists.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  ls_url: "/lists/Lists",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.lists.Lists.detail;
    this.ls_insert_handler = Lino.lists.Lists.insert;
    Lino.lists.Lists.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.lists.Lists.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.lists.Lists.detailPanel(p);
});
Lino.lists.Lists.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/lists/Lists", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.lists.Lists.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.lists.Lists.GridPanel(p);
});
Lino.lists.Lists.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/lists/Lists", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class lists.Members
Lino.lists.Members.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/lists/Members",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/lists/Members','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/lists/Members','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "itemId": "duplicate", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Duplicate the selected row.") }, "menu_item_text": "\u2687", "overflowText": "\u2687", "panel_btn_handler": Lino.row_action_handler('duplicate','GET',null), "text": " <font size=\"4\">\u2687</font>" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "itemId": "move_up", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Move this row one row upwards.") }, "menu_item_text": "\u25b2", "overflowText": "\u25b2", "panel_btn_handler": Lino.row_action_handler('move_up','GET',null), "text": " <font size=\"4\">\u25b2</font>" }, { "auto_save": true, "itemId": "move_down", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Move this row one row downwards.") }, "menu_item_text": "\u25bc", "overflowText": "\u25bc", "panel_btn_handler": Lino.row_action_handler('move_down','GET',null), "text": " <font size=\"4\">\u25bc</font>" } ],
  cell_edit : true,
  title : "List memberships",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 13,
  ls_store_fields : [ { "name": "id", "type": "int" }, { "name": "seqno", "type": "int", "useNull": true }, { "name": "list" }, 'listHidden', { "name": "partner" }, 'partnerHidden', { "name": "remark" }, { "name": "move_buttons" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 0,
  ls_grid_configs : [  ],
  content_type : 37,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    var ww = this.containing_window;
    var id2705 = new Ext.form.NumberField({ "selectOnFocus": true });
    var seqno2706 = new Ext.form.NumberField({ "selectOnFocus": true });
    var list2707 = new Lino.RemoteComboFieldElement({ "allowBlank": false, "emptyText": "Select a Partner List...", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/lists/Members/list" }) }) });
    var partner2708 = new Lino.RemoteComboFieldElement({ "allowBlank": false, "emptyText": "Select a Partner...", "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/lists/Members/partner" }) }) });
    var remark2709 = new Ext.form.TextField({ "maxLength": 200, "selectOnFocus": true });
    var move_buttons_disp2710 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var mobile_item_disp2711 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp2712 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp2713 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp2714 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "align": "right", "colIndex": 0, "dataIndex": "id", "editable": true, "editor": id2705, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "sortable": true, "tooltip": "(lists.Members.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "align": "right", "colIndex": 1, "dataIndex": "seqno", "editable": true, "editor": seqno2706, "filter": { "type": "numeric" }, "format": "0", "header": "No.", "sortable": true, "tooltip": "(lists.Members.seqno) The sequence number of this item with its parent.", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 2, "dataIndex": "list", "editable": true, "editor": list2707, "filter": { "type": "string" }, "header": "Partner List", "renderer": Lino.fk_renderer('listHidden','Lino.lists.Lists.detail'), "sortable": false, "tooltip": "(lists.Members.list) ", "width": Lino.chars2width(21) }, { "colIndex": 3, "dataIndex": "partner", "editable": true, "editor": partner2708, "filter": { "type": "string" }, "header": "Partner", "renderer": Lino.fk_renderer('partnerHidden','Lino.contacts.Partners.detail'), "sortable": false, "tooltip": "(lists.Members.partner) ", "width": Lino.chars2width(21) }, { "colIndex": 4, "dataIndex": "remark", "editable": true, "editor": remark2709, "filter": { "type": "string" }, "header": "Remark", "sortable": true, "tooltip": "(lists.Members.remark) ", "width": Lino.chars2width(22) }, { "colIndex": 5, "dataIndex": "move_buttons", "editable": false, "header": "Move", "hidden": true, "sortable": false, "tooltip": "(lists.Members.move_buttons) ", "width": Lino.chars2width(6) }, { "colIndex": 6, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(lists.Members.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 7, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(lists.Members.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 8, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(lists.Members.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 9, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(lists.Members.workflow_buttons) ", "width": Lino.chars2width(31) } ];
    Lino.lists.Members.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.lists.Members.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/lists/Members", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.lists.Members.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/lists/Members", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.lists.Members.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/lists/Members", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.lists.Members.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/lists/Members", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.lists.Members.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/lists/Members", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.lists.Members.duplicate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/lists/Members", "GET", pk, "duplicate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.lists.Members.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/lists/Members", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.lists.Members.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.lists.Members.GridPanel(p);
});
Lino.lists.Members.move_up = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/lists/Members", "GET", pk, "move_up", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.lists.Members.move_down = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/lists/Members", "GET", pk, "move_down", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class lists.AllMembers
Lino.lists.AllMembers.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/lists/AllMembers",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/lists/AllMembers','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/lists/AllMembers','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "itemId": "duplicate", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Duplicate the selected row.") }, "menu_item_text": "\u2687", "overflowText": "\u2687", "panel_btn_handler": Lino.row_action_handler('duplicate','GET',null), "text": " <font size=\"4\">\u2687</font>" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "itemId": "move_up", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Move this row one row upwards.") }, "menu_item_text": "\u25b2", "overflowText": "\u25b2", "panel_btn_handler": Lino.row_action_handler('move_up','GET',null), "text": " <font size=\"4\">\u25b2</font>" }, { "auto_save": true, "itemId": "move_down", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Move this row one row downwards.") }, "menu_item_text": "\u25bc", "overflowText": "\u25bc", "panel_btn_handler": Lino.row_action_handler('move_down','GET',null), "text": " <font size=\"4\">\u25bc</font>" } ],
  cell_edit : true,
  title : "List memberships",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 13,
  ls_store_fields : [ { "name": "id", "type": "int" }, { "name": "seqno", "type": "int", "useNull": true }, { "name": "list" }, 'listHidden', { "name": "partner" }, 'partnerHidden', { "name": "remark" }, { "name": "move_buttons" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 0,
  ls_grid_configs : [  ],
  content_type : 37,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    var ww = this.containing_window;
    var id2716 = new Ext.form.NumberField({ "selectOnFocus": true });
    var seqno2717 = new Ext.form.NumberField({ "selectOnFocus": true });
    var list2718 = new Lino.RemoteComboFieldElement({ "allowBlank": false, "emptyText": "Select a Partner List...", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/lists/AllMembers/list" }) }) });
    var partner2719 = new Lino.RemoteComboFieldElement({ "allowBlank": false, "emptyText": "Select a Partner...", "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/lists/AllMembers/partner" }) }) });
    var remark2720 = new Ext.form.TextField({ "maxLength": 200, "selectOnFocus": true });
    var move_buttons_disp2721 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var mobile_item_disp2722 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp2723 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp2724 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp2725 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "align": "right", "colIndex": 0, "dataIndex": "id", "editable": true, "editor": id2716, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "sortable": true, "tooltip": "(lists.AllMembers.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "align": "right", "colIndex": 1, "dataIndex": "seqno", "editable": true, "editor": seqno2717, "filter": { "type": "numeric" }, "format": "0", "header": "No.", "sortable": true, "tooltip": "(lists.AllMembers.seqno) The sequence number of this item with its parent.", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 2, "dataIndex": "list", "editable": true, "editor": list2718, "filter": { "type": "string" }, "header": "Partner List", "renderer": Lino.fk_renderer('listHidden','Lino.lists.Lists.detail'), "sortable": false, "tooltip": "(lists.AllMembers.list) ", "width": Lino.chars2width(21) }, { "colIndex": 3, "dataIndex": "partner", "editable": true, "editor": partner2719, "filter": { "type": "string" }, "header": "Partner", "renderer": Lino.fk_renderer('partnerHidden','Lino.contacts.Partners.detail'), "sortable": false, "tooltip": "(lists.AllMembers.partner) ", "width": Lino.chars2width(21) }, { "colIndex": 4, "dataIndex": "remark", "editable": true, "editor": remark2720, "filter": { "type": "string" }, "header": "Remark", "sortable": true, "tooltip": "(lists.AllMembers.remark) ", "width": Lino.chars2width(22) }, { "colIndex": 5, "dataIndex": "move_buttons", "editable": false, "header": "Move", "hidden": true, "sortable": false, "tooltip": "(lists.AllMembers.move_buttons) ", "width": Lino.chars2width(6) }, { "colIndex": 6, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(lists.AllMembers.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 7, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(lists.AllMembers.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 8, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(lists.AllMembers.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 9, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(lists.AllMembers.workflow_buttons) ", "width": Lino.chars2width(31) } ];
    Lino.lists.AllMembers.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.lists.AllMembers.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/lists/AllMembers", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.lists.AllMembers.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/lists/AllMembers", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.lists.AllMembers.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/lists/AllMembers", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.lists.AllMembers.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/lists/AllMembers", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.lists.AllMembers.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/lists/AllMembers", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.lists.AllMembers.duplicate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/lists/AllMembers", "GET", pk, "duplicate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.lists.AllMembers.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/lists/AllMembers", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.lists.AllMembers.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.lists.AllMembers.GridPanel(p);
});
Lino.lists.AllMembers.move_up = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/lists/AllMembers", "GET", pk, "move_up", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.lists.AllMembers.move_down = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/lists/AllMembers", "GET", pk, "move_down", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class blogs.EntryTypes
Lino.blogs.EntryTypes.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/blogs/EntryTypes",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/blogs/EntryTypes','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/blogs/EntryTypes','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "Blog Entry Types",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 9,
  ls_store_fields : [ { "name": "id", "type": "int" }, { "name": "name" }, { "name": "important", "type": "boolean" }, { "name": "remark" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 0,
  ls_grid_configs : [  ],
  content_type : 40,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.blogs.EntryTypes.detail;
    this.ls_insert_handler = Lino.blogs.EntryTypes.insert;
    var ww = this.containing_window;
    var id2727 = new Ext.form.NumberField({ "selectOnFocus": true });
    var name2728 = new Ext.form.TextField({ "allowBlank": false, "maxLength": 200, "selectOnFocus": true });
    var important2729 = new Ext.form.Checkbox({ "checked": false, "selectOnFocus": true });
    var remark2730 = new Lino.RichTextPanel({ "containing_panel": this, "selectOnFocus": true, "title": "Remark" });
    var mobile_item_disp2731 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp2732 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp2733 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp2734 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
      remark2730.refresh();
    };
    this.ls_columns = [ { "align": "right", "colIndex": 0, "dataIndex": "id", "editable": true, "editor": id2727, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "sortable": true, "tooltip": "(blogs.EntryTypes.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 1, "dataIndex": "name", "editable": true, "editor": name2728, "filter": { "type": "string" }, "header": "Designation", "sortable": true, "tooltip": "(blogs.EntryTypes.name) ", "width": Lino.chars2width(22) }, { "colIndex": 2, "dataIndex": "important", "editable": true, "filter": { "type": "boolean" }, "header": "important", "sortable": false, "tooltip": "(blogs.EntryTypes.important) ", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 3, "dataIndex": "remark", "editable": true, "editor": remark2730, "filter": { "type": "string" }, "header": "Remark", "sortable": false, "tooltip": "(blogs.EntryTypes.remark) ", "width": Lino.chars2width(61) }, { "colIndex": 4, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(blogs.EntryTypes.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 5, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(blogs.EntryTypes.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 6, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(blogs.EntryTypes.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 7, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(blogs.EntryTypes.workflow_buttons) ", "width": Lino.chars2width(31) } ];
    Lino.blogs.EntryTypes.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.blogs.EntryTypes.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/blogs/EntryTypes", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.blogs.EntryTypes.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/blogs/EntryTypes", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.blogs.EntryTypes.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/blogs/EntryTypes", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.blogs.EntryTypes.insertPanel = Ext.extend(Lino.blogs.EntryTypes.DetailFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/blogs/EntryTypes",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.blogs.EntryTypes.detail;
    this.ls_insert_handler = Lino.blogs.EntryTypes.insert;
    Lino.blogs.EntryTypes.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.blogs.EntryTypes.insert = new Lino.WindowAction({  }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.blogs.EntryTypes.insertPanel(p);
});
Lino.blogs.EntryTypes.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/blogs/EntryTypes", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.blogs.EntryTypes.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/blogs/EntryTypes", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.blogs.EntryTypes.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/blogs/EntryTypes", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.blogs.EntryTypes.detailPanel = Ext.extend(Lino.blogs.EntryTypes.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  ls_url: "/blogs/EntryTypes",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.blogs.EntryTypes.detail;
    this.ls_insert_handler = Lino.blogs.EntryTypes.insert;
    Lino.blogs.EntryTypes.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.blogs.EntryTypes.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.blogs.EntryTypes.detailPanel(p);
});
Lino.blogs.EntryTypes.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/blogs/EntryTypes", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.blogs.EntryTypes.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.blogs.EntryTypes.GridPanel(p);
});
Lino.blogs.EntryTypes.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/blogs/EntryTypes", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class blogs.Entries
Lino.blogs.Entries.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/blogs/Entries",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/blogs/Entries','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/blogs/Entries','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "Blog Entries",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 24,
  ls_store_fields : [ { "name": "id", "type": "int" }, { "dateFormat": "d.m.Y", "name": "pub_date", "type": "date" }, { "name": "user" }, 'userHidden', { "name": "entry_type" }, 'entry_typeHidden', { "name": "title" }, { "name": "owner_type" }, 'owner_typeHidden', { "name": "owner_id" }, 'owner_idHidden', { "name": "body_preview" }, { "name": "pub_time" }, { "name": "language" }, 'languageHidden', { "name": "owner" }, { "name": "add_interest" }, 'add_interestHidden', { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "body" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 0,
  ls_grid_configs : [  ],
  content_type : 39,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.blogs.Entries.detail;
    this.ls_insert_handler = Lino.blogs.Entries.insert;
    var ww = this.containing_window;
    var id2736 = new Ext.form.NumberField({ "selectOnFocus": true });
    var pub_date2737 = new Lino.DateField({ "selectOnFocus": true });
    var user2738 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a User...", "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/blogs/Entries/user" }) }) });
    var entry_type2739 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Blog Entry Type...", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/blogs/Entries/entry_type" }) }) });
    var title2740 = new Ext.form.TextField({ "maxLength": 200, "selectOnFocus": true });
    var owner_type2741 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a content type...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/blogs/Entries/owner_type" }) }) });
    var owner_id2742 = new Lino.RemoteComboFieldElement({ "hidden": true, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/blogs/Entries/owner_id" }) }) });
    var body_preview2743 = new Lino.RichTextPanel({ "containing_panel": this, "disabled": true, "hidden": true, "title": "Preview" });
    var pub_time2744 = new Lino.TimeField({ "hidden": true, "selectOnFocus": true });
    var language2745 = new Lino.ChoicesFieldElement({ "hidden": true, "selectOnFocus": true, "store": [ [ "en-us", "American English" ] ] });
    var owner_disp2746 = new Ext.form.DisplayField({ "disabled": true, "hidden": true });
    var add_interest2747 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Topic...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/blogs/Entries/add_interest" }) }) });
    var mobile_item_disp2748 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp2749 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp2750 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp2751 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var body2752 = new Lino.RichTextPanel({ "containing_panel": this, "selectOnFocus": true, "title": "Body" });
    this.before_row_edit = function(record) {
      owner_id2742.setContextValue('owner_type', record ? record.data['owner_typeHidden'] : undefined);
      body_preview2743.refresh();
      body2752.refresh();
    };
    this.onRender = function(ct, position) {
      owner_type2741.on('change',Lino.chooser_handler(owner_id2742,'owner_type'));
      Lino.blogs.Entries.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "align": "right", "colIndex": 0, "dataIndex": "id", "editable": true, "editor": id2736, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "sortable": true, "tooltip": "(blogs.Entries.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 1, "dataIndex": "pub_date", "editable": true, "editor": pub_date2737, "filter": { "dateFormat": "d.m.Y", "type": "date" }, "format": "d.m.Y", "header": "Publication date", "sortable": true, "tooltip": "(blogs.Entries.pub_date) ", "width": Lino.chars2width(14), "xtype": "datecolumn" }, { "colIndex": 2, "dataIndex": "user", "editable": true, "editor": user2738, "filter": { "type": "string" }, "header": "Author", "renderer": Lino.fk_renderer('userHidden','Lino.users.Users.detail'), "sortable": false, "tooltip": "(blogs.Entries.user) ", "width": Lino.chars2width(21) }, { "colIndex": 3, "dataIndex": "entry_type", "editable": true, "editor": entry_type2739, "filter": { "type": "string" }, "header": "Blog Entry Type", "renderer": Lino.fk_renderer('entry_typeHidden','Lino.blogs.EntryTypes.detail'), "sortable": false, "tooltip": "(blogs.Entries.entry_type) ", "width": Lino.chars2width(21) }, { "colIndex": 4, "dataIndex": "title", "editable": true, "editor": title2740, "filter": { "type": "string" }, "header": "Heading", "sortable": true, "tooltip": "(blogs.Entries.title) ", "width": Lino.chars2width(22) }, { "colIndex": 5, "dataIndex": "owner_type", "editable": true, "editor": owner_type2741, "filter": { "type": "string" }, "header": "Controlled by (type)", "hidden": true, "renderer": Lino.fk_renderer('owner_typeHidden','Lino.gfks.ContentTypes.detail'), "sortable": false, "tooltip": "(blogs.Entries.owner_type) ", "width": Lino.chars2width(21) }, { "colIndex": 6, "dataIndex": "owner_id", "editable": true, "editor": owner_id2742, "filter": { "type": "string" }, "header": "Controlled by (object)", "hidden": true, "sortable": false, "tooltip": "(blogs.Entries.owner_id) ", "width": Lino.chars2width(11) }, { "colIndex": 7, "dataIndex": "body_preview", "editable": false, "filter": { "type": "string" }, "header": "Preview", "hidden": true, "sortable": false, "tooltip": "(blogs.Entries.body_preview) ", "width": Lino.chars2width(61) }, { "colIndex": 8, "dataIndex": "pub_time", "editable": true, "editor": pub_time2744, "header": "Publication time", "hidden": true, "sortable": true, "tooltip": "(blogs.Entries.pub_time) ", "width": Lino.chars2width(9) }, { "colIndex": 9, "dataIndex": "language", "editable": true, "editor": language2745, "filter": { "type": "string" }, "header": "Language", "hidden": true, "sortable": false, "tooltip": "(blogs.Entries.language) ", "width": Lino.chars2width(21) }, { "colIndex": 10, "dataIndex": "owner", "editable": false, "header": "Controlled by", "hidden": true, "sortable": false, "tooltip": "(blogs.Entries.owner) ", "width": Lino.chars2width(11) }, { "colIndex": 11, "dataIndex": "add_interest", "editable": true, "editor": add_interest2747, "header": "Add interest", "hidden": true, "renderer": Lino.fk_renderer('add_interestHidden','Lino.topics.Topics.detail'), "sortable": false, "tooltip": "(blogs.Entries.add_interest) ", "width": Lino.chars2width(21) }, { "colIndex": 12, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(blogs.Entries.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 13, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(blogs.Entries.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 14, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(blogs.Entries.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 15, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(blogs.Entries.workflow_buttons) ", "width": Lino.chars2width(31) }, { "colIndex": 16, "dataIndex": "body", "editable": true, "editor": body2752, "filter": { "type": "string" }, "header": "Body", "sortable": false, "tooltip": "(blogs.Entries.body) ", "width": Lino.chars2width(61) } ];
    Lino.blogs.Entries.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.blogs.Entries.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/blogs/Entries", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.blogs.Entries.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/blogs/Entries", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.blogs.Entries.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/blogs/Entries", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.blogs.Entries.insertPanel = Ext.extend(Lino.blogs.Entries.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/blogs/Entries",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.blogs.Entries.detail;
    this.ls_insert_handler = Lino.blogs.Entries.insert;
    Lino.blogs.Entries.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.blogs.Entries.insert = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.blogs.Entries.insertPanel(p);
});
Lino.blogs.Entries.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/blogs/Entries", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.blogs.Entries.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/blogs/Entries", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.blogs.Entries.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/blogs/Entries", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.blogs.Entries.detailPanel = Ext.extend(Lino.blogs.Entries.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  ls_url: "/blogs/Entries",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.blogs.Entries.detail;
    this.ls_insert_handler = Lino.blogs.Entries.insert;
    Lino.blogs.Entries.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.blogs.Entries.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.blogs.Entries.detailPanel(p);
});
Lino.blogs.Entries.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/blogs/Entries", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.blogs.Entries.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.blogs.Entries.ParamsPanel({});
  return new Lino.blogs.Entries.GridPanel(p);
});
Lino.blogs.Entries.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/blogs/Entries", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class blogs.MyEntries
Lino.blogs.MyEntries.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/blogs/MyEntries",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/blogs/MyEntries','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/blogs/MyEntries','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "My Blog Entries",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 24,
  ls_store_fields : [ { "name": "id", "type": "int" }, { "dateFormat": "d.m.Y", "name": "pub_date", "type": "date" }, { "name": "entry_type" }, 'entry_typeHidden', { "name": "title" }, { "name": "body" }, { "name": "user" }, 'userHidden', { "name": "owner_type" }, 'owner_typeHidden', { "name": "owner_id" }, 'owner_idHidden', { "name": "body_preview" }, { "name": "pub_time" }, { "name": "language" }, 'languageHidden', { "name": "owner" }, { "name": "add_interest" }, 'add_interestHidden', { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 0,
  ls_grid_configs : [  ],
  content_type : 39,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.blogs.MyEntries.detail;
    this.ls_insert_handler = Lino.blogs.MyEntries.insert;
    var ww = this.containing_window;
    var id2754 = new Ext.form.NumberField({ "selectOnFocus": true });
    var pub_date2755 = new Lino.DateField({ "selectOnFocus": true });
    var entry_type2756 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Blog Entry Type...", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/blogs/MyEntries/entry_type" }) }) });
    var title2757 = new Ext.form.TextField({ "maxLength": 200, "selectOnFocus": true });
    var body2758 = new Lino.RichTextPanel({ "containing_panel": this, "selectOnFocus": true, "title": "Body" });
    var user2759 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a User...", "hidden": true, "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/blogs/MyEntries/user" }) }) });
    var owner_type2760 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a content type...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/blogs/MyEntries/owner_type" }) }) });
    var owner_id2761 = new Lino.RemoteComboFieldElement({ "hidden": true, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/blogs/MyEntries/owner_id" }) }) });
    var body_preview2762 = new Lino.RichTextPanel({ "containing_panel": this, "disabled": true, "hidden": true, "title": "Preview" });
    var pub_time2763 = new Lino.TimeField({ "hidden": true, "selectOnFocus": true });
    var language2764 = new Lino.ChoicesFieldElement({ "hidden": true, "selectOnFocus": true, "store": [ [ "en-us", "American English" ] ] });
    var owner_disp2765 = new Ext.form.DisplayField({ "disabled": true, "hidden": true });
    var add_interest2766 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Topic...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/blogs/MyEntries/add_interest" }) }) });
    var mobile_item_disp2767 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp2768 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp2769 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp2770 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
      body2758.refresh();
      owner_id2761.setContextValue('owner_type', record ? record.data['owner_typeHidden'] : undefined);
      body_preview2762.refresh();
    };
    this.onRender = function(ct, position) {
      owner_type2760.on('change',Lino.chooser_handler(owner_id2761,'owner_type'));
      Lino.blogs.MyEntries.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "align": "right", "colIndex": 0, "dataIndex": "id", "editable": true, "editor": id2754, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "sortable": true, "tooltip": "(blogs.MyEntries.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 1, "dataIndex": "pub_date", "editable": true, "editor": pub_date2755, "filter": { "dateFormat": "d.m.Y", "type": "date" }, "format": "d.m.Y", "header": "Publication date", "sortable": true, "tooltip": "(blogs.MyEntries.pub_date) ", "width": Lino.chars2width(14), "xtype": "datecolumn" }, { "colIndex": 2, "dataIndex": "entry_type", "editable": true, "editor": entry_type2756, "filter": { "type": "string" }, "header": "Blog Entry Type", "renderer": Lino.fk_renderer('entry_typeHidden','Lino.blogs.EntryTypes.detail'), "sortable": false, "tooltip": "(blogs.MyEntries.entry_type) ", "width": Lino.chars2width(21) }, { "colIndex": 3, "dataIndex": "title", "editable": true, "editor": title2757, "filter": { "type": "string" }, "header": "Heading", "sortable": true, "tooltip": "(blogs.MyEntries.title) ", "width": Lino.chars2width(22) }, { "colIndex": 4, "dataIndex": "body", "editable": true, "editor": body2758, "filter": { "type": "string" }, "header": "Body", "sortable": false, "tooltip": "(blogs.MyEntries.body) ", "width": Lino.chars2width(61) }, { "colIndex": 5, "dataIndex": "user", "editable": true, "editor": user2759, "filter": { "type": "string" }, "header": "Author", "hidden": true, "renderer": Lino.fk_renderer('userHidden','Lino.users.Users.detail'), "sortable": false, "tooltip": "(blogs.MyEntries.user) ", "width": Lino.chars2width(21) }, { "colIndex": 6, "dataIndex": "owner_type", "editable": true, "editor": owner_type2760, "filter": { "type": "string" }, "header": "Controlled by (type)", "hidden": true, "renderer": Lino.fk_renderer('owner_typeHidden','Lino.gfks.ContentTypes.detail'), "sortable": false, "tooltip": "(blogs.MyEntries.owner_type) ", "width": Lino.chars2width(21) }, { "colIndex": 7, "dataIndex": "owner_id", "editable": true, "editor": owner_id2761, "filter": { "type": "string" }, "header": "Controlled by (object)", "hidden": true, "sortable": false, "tooltip": "(blogs.MyEntries.owner_id) ", "width": Lino.chars2width(11) }, { "colIndex": 8, "dataIndex": "body_preview", "editable": false, "filter": { "type": "string" }, "header": "Preview", "hidden": true, "sortable": false, "tooltip": "(blogs.MyEntries.body_preview) ", "width": Lino.chars2width(61) }, { "colIndex": 9, "dataIndex": "pub_time", "editable": true, "editor": pub_time2763, "header": "Publication time", "hidden": true, "sortable": true, "tooltip": "(blogs.MyEntries.pub_time) ", "width": Lino.chars2width(9) }, { "colIndex": 10, "dataIndex": "language", "editable": true, "editor": language2764, "filter": { "type": "string" }, "header": "Language", "hidden": true, "sortable": false, "tooltip": "(blogs.MyEntries.language) ", "width": Lino.chars2width(21) }, { "colIndex": 11, "dataIndex": "owner", "editable": false, "header": "Controlled by", "hidden": true, "sortable": false, "tooltip": "(blogs.MyEntries.owner) ", "width": Lino.chars2width(11) }, { "colIndex": 12, "dataIndex": "add_interest", "editable": true, "editor": add_interest2766, "header": "Add interest", "hidden": true, "renderer": Lino.fk_renderer('add_interestHidden','Lino.topics.Topics.detail'), "sortable": false, "tooltip": "(blogs.MyEntries.add_interest) ", "width": Lino.chars2width(21) }, { "colIndex": 13, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(blogs.MyEntries.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 14, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(blogs.MyEntries.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 15, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(blogs.MyEntries.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 16, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(blogs.MyEntries.workflow_buttons) ", "width": Lino.chars2width(31) } ];
    Lino.blogs.MyEntries.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.blogs.MyEntries.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/blogs/MyEntries", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.blogs.MyEntries.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/blogs/MyEntries", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.blogs.MyEntries.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/blogs/MyEntries", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.blogs.MyEntries.insertPanel = Ext.extend(Lino.blogs.Entries.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/blogs/MyEntries",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.blogs.MyEntries.detail;
    this.ls_insert_handler = Lino.blogs.MyEntries.insert;
    Lino.blogs.MyEntries.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.blogs.MyEntries.insert = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.blogs.MyEntries.insertPanel(p);
});
Lino.blogs.MyEntries.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/blogs/MyEntries", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.blogs.MyEntries.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/blogs/MyEntries", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.blogs.MyEntries.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/blogs/MyEntries", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.blogs.MyEntries.detailPanel = Ext.extend(Lino.blogs.Entries.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  ls_url: "/blogs/MyEntries",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.blogs.MyEntries.detail;
    this.ls_insert_handler = Lino.blogs.MyEntries.insert;
    Lino.blogs.MyEntries.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.blogs.MyEntries.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.blogs.MyEntries.detailPanel(p);
});
Lino.blogs.MyEntries.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/blogs/MyEntries", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.blogs.MyEntries.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.blogs.Entries.ParamsPanel({});
  return new Lino.blogs.MyEntries.GridPanel(p);
});
Lino.blogs.MyEntries.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/blogs/MyEntries", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class blogs.AllEntries
Lino.blogs.AllEntries.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/blogs/AllEntries",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/blogs/AllEntries','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/blogs/AllEntries','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "Blog Entries",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 24,
  ls_store_fields : [ { "name": "id", "type": "int" }, { "dateFormat": "d.m.Y", "name": "pub_date", "type": "date" }, { "name": "user" }, 'userHidden', { "name": "entry_type" }, 'entry_typeHidden', { "name": "title" }, { "name": "owner_type" }, 'owner_typeHidden', { "name": "owner_id" }, 'owner_idHidden', { "name": "body_preview" }, { "name": "pub_time" }, { "name": "language" }, 'languageHidden', { "name": "owner" }, { "name": "add_interest" }, 'add_interestHidden', { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "body" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 0,
  ls_grid_configs : [  ],
  content_type : 39,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.blogs.AllEntries.detail;
    this.ls_insert_handler = Lino.blogs.AllEntries.insert;
    var ww = this.containing_window;
    var id2772 = new Ext.form.NumberField({ "selectOnFocus": true });
    var pub_date2773 = new Lino.DateField({ "selectOnFocus": true });
    var user2774 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a User...", "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/blogs/AllEntries/user" }) }) });
    var entry_type2775 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Blog Entry Type...", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/blogs/AllEntries/entry_type" }) }) });
    var title2776 = new Ext.form.TextField({ "maxLength": 200, "selectOnFocus": true });
    var owner_type2777 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a content type...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/blogs/AllEntries/owner_type" }) }) });
    var owner_id2778 = new Lino.RemoteComboFieldElement({ "hidden": true, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/blogs/AllEntries/owner_id" }) }) });
    var body_preview2779 = new Lino.RichTextPanel({ "containing_panel": this, "disabled": true, "hidden": true, "title": "Preview" });
    var pub_time2780 = new Lino.TimeField({ "hidden": true, "selectOnFocus": true });
    var language2781 = new Lino.ChoicesFieldElement({ "hidden": true, "selectOnFocus": true, "store": [ [ "en-us", "American English" ] ] });
    var owner_disp2782 = new Ext.form.DisplayField({ "disabled": true, "hidden": true });
    var add_interest2783 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Topic...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/blogs/AllEntries/add_interest" }) }) });
    var mobile_item_disp2784 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp2785 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp2786 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp2787 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var body2788 = new Lino.RichTextPanel({ "containing_panel": this, "selectOnFocus": true, "title": "Body" });
    this.before_row_edit = function(record) {
      owner_id2778.setContextValue('owner_type', record ? record.data['owner_typeHidden'] : undefined);
      body_preview2779.refresh();
      body2788.refresh();
    };
    this.onRender = function(ct, position) {
      owner_type2777.on('change',Lino.chooser_handler(owner_id2778,'owner_type'));
      Lino.blogs.AllEntries.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "align": "right", "colIndex": 0, "dataIndex": "id", "editable": true, "editor": id2772, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "sortable": true, "tooltip": "(blogs.AllEntries.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 1, "dataIndex": "pub_date", "editable": true, "editor": pub_date2773, "filter": { "dateFormat": "d.m.Y", "type": "date" }, "format": "d.m.Y", "header": "Publication date", "sortable": true, "tooltip": "(blogs.AllEntries.pub_date) ", "width": Lino.chars2width(14), "xtype": "datecolumn" }, { "colIndex": 2, "dataIndex": "user", "editable": true, "editor": user2774, "filter": { "type": "string" }, "header": "Author", "renderer": Lino.fk_renderer('userHidden','Lino.users.Users.detail'), "sortable": false, "tooltip": "(blogs.AllEntries.user) ", "width": Lino.chars2width(21) }, { "colIndex": 3, "dataIndex": "entry_type", "editable": true, "editor": entry_type2775, "filter": { "type": "string" }, "header": "Blog Entry Type", "renderer": Lino.fk_renderer('entry_typeHidden','Lino.blogs.EntryTypes.detail'), "sortable": false, "tooltip": "(blogs.AllEntries.entry_type) ", "width": Lino.chars2width(21) }, { "colIndex": 4, "dataIndex": "title", "editable": true, "editor": title2776, "filter": { "type": "string" }, "header": "Heading", "sortable": true, "tooltip": "(blogs.AllEntries.title) ", "width": Lino.chars2width(22) }, { "colIndex": 5, "dataIndex": "owner_type", "editable": true, "editor": owner_type2777, "filter": { "type": "string" }, "header": "Controlled by (type)", "hidden": true, "renderer": Lino.fk_renderer('owner_typeHidden','Lino.gfks.ContentTypes.detail'), "sortable": false, "tooltip": "(blogs.AllEntries.owner_type) ", "width": Lino.chars2width(21) }, { "colIndex": 6, "dataIndex": "owner_id", "editable": true, "editor": owner_id2778, "filter": { "type": "string" }, "header": "Controlled by (object)", "hidden": true, "sortable": false, "tooltip": "(blogs.AllEntries.owner_id) ", "width": Lino.chars2width(11) }, { "colIndex": 7, "dataIndex": "body_preview", "editable": false, "filter": { "type": "string" }, "header": "Preview", "hidden": true, "sortable": false, "tooltip": "(blogs.AllEntries.body_preview) ", "width": Lino.chars2width(61) }, { "colIndex": 8, "dataIndex": "pub_time", "editable": true, "editor": pub_time2780, "header": "Publication time", "hidden": true, "sortable": true, "tooltip": "(blogs.AllEntries.pub_time) ", "width": Lino.chars2width(9) }, { "colIndex": 9, "dataIndex": "language", "editable": true, "editor": language2781, "filter": { "type": "string" }, "header": "Language", "hidden": true, "sortable": false, "tooltip": "(blogs.AllEntries.language) ", "width": Lino.chars2width(21) }, { "colIndex": 10, "dataIndex": "owner", "editable": false, "header": "Controlled by", "hidden": true, "sortable": false, "tooltip": "(blogs.AllEntries.owner) ", "width": Lino.chars2width(11) }, { "colIndex": 11, "dataIndex": "add_interest", "editable": true, "editor": add_interest2783, "header": "Add interest", "hidden": true, "renderer": Lino.fk_renderer('add_interestHidden','Lino.topics.Topics.detail'), "sortable": false, "tooltip": "(blogs.AllEntries.add_interest) ", "width": Lino.chars2width(21) }, { "colIndex": 12, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(blogs.AllEntries.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 13, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(blogs.AllEntries.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 14, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(blogs.AllEntries.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 15, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(blogs.AllEntries.workflow_buttons) ", "width": Lino.chars2width(31) }, { "colIndex": 16, "dataIndex": "body", "editable": true, "editor": body2788, "filter": { "type": "string" }, "header": "Body", "sortable": false, "tooltip": "(blogs.AllEntries.body) ", "width": Lino.chars2width(61) } ];
    Lino.blogs.AllEntries.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.blogs.AllEntries.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/blogs/AllEntries", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.blogs.AllEntries.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/blogs/AllEntries", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.blogs.AllEntries.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/blogs/AllEntries", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.blogs.AllEntries.insertPanel = Ext.extend(Lino.blogs.Entries.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/blogs/AllEntries",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.blogs.AllEntries.detail;
    this.ls_insert_handler = Lino.blogs.AllEntries.insert;
    Lino.blogs.AllEntries.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.blogs.AllEntries.insert = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.blogs.AllEntries.insertPanel(p);
});
Lino.blogs.AllEntries.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/blogs/AllEntries", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.blogs.AllEntries.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/blogs/AllEntries", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.blogs.AllEntries.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/blogs/AllEntries", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.blogs.AllEntries.detailPanel = Ext.extend(Lino.blogs.Entries.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  ls_url: "/blogs/AllEntries",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.blogs.AllEntries.detail;
    this.ls_insert_handler = Lino.blogs.AllEntries.insert;
    Lino.blogs.AllEntries.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.blogs.AllEntries.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.blogs.AllEntries.detailPanel(p);
});
Lino.blogs.AllEntries.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/blogs/AllEntries", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.blogs.AllEntries.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.blogs.Entries.ParamsPanel({});
  return new Lino.blogs.AllEntries.GridPanel(p);
});
Lino.blogs.AllEntries.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/blogs/AllEntries", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class blogs.LatestEntries
Lino.blogs.LatestEntries.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/blogs/LatestEntries",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/blogs/LatestEntries','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/blogs/LatestEntries','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "Latest blog entries",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 24,
  ls_store_fields : [ { "dateFormat": "d.m.Y", "name": "pub_date", "type": "date" }, { "name": "title" }, { "name": "user" }, 'userHidden', { "name": "id", "type": "int" }, { "name": "owner_type" }, 'owner_typeHidden', { "name": "owner_id" }, 'owner_idHidden', { "name": "body" }, { "name": "body_preview" }, { "name": "pub_time" }, { "name": "entry_type" }, 'entry_typeHidden', { "name": "language" }, 'languageHidden', { "name": "owner" }, { "name": "add_interest" }, 'add_interestHidden', { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 4,
  ls_grid_configs : [  ],
  content_type : 39,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.blogs.LatestEntries.detail;
    this.ls_insert_handler = Lino.blogs.LatestEntries.insert;
    var ww = this.containing_window;
    var pub_date2790 = new Lino.DateField({ "selectOnFocus": true });
    var title2791 = new Ext.form.TextField({ "maxLength": 200, "selectOnFocus": true });
    var user2792 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a User...", "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/blogs/LatestEntries/user" }) }) });
    var id2793 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var owner_type2794 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a content type...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/blogs/LatestEntries/owner_type" }) }) });
    var owner_id2795 = new Lino.RemoteComboFieldElement({ "hidden": true, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/blogs/LatestEntries/owner_id" }) }) });
    var body2796 = new Lino.RichTextPanel({ "containing_panel": this, "hidden": true, "selectOnFocus": true, "title": "Body" });
    var body_preview2797 = new Lino.RichTextPanel({ "containing_panel": this, "disabled": true, "hidden": true, "title": "Preview" });
    var pub_time2798 = new Lino.TimeField({ "hidden": true, "selectOnFocus": true });
    var entry_type2799 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Blog Entry Type...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/blogs/LatestEntries/entry_type" }) }) });
    var language2800 = new Lino.ChoicesFieldElement({ "hidden": true, "selectOnFocus": true, "store": [ [ "en-us", "American English" ] ] });
    var owner_disp2801 = new Ext.form.DisplayField({ "disabled": true, "hidden": true });
    var add_interest2802 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Topic...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/blogs/LatestEntries/add_interest" }) }) });
    var mobile_item_disp2803 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp2804 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp2805 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp2806 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
      owner_id2795.setContextValue('owner_type', record ? record.data['owner_typeHidden'] : undefined);
      body2796.refresh();
      body_preview2797.refresh();
    };
    this.onRender = function(ct, position) {
      owner_type2794.on('change',Lino.chooser_handler(owner_id2795,'owner_type'));
      Lino.blogs.LatestEntries.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "pub_date", "editable": true, "editor": pub_date2790, "filter": { "dateFormat": "d.m.Y", "type": "date" }, "format": "d.m.Y", "header": "Publication date", "sortable": true, "tooltip": "(blogs.LatestEntries.pub_date) ", "width": Lino.chars2width(14), "xtype": "datecolumn" }, { "colIndex": 1, "dataIndex": "title", "editable": true, "editor": title2791, "filter": { "type": "string" }, "header": "Heading", "sortable": true, "tooltip": "(blogs.LatestEntries.title) ", "width": Lino.chars2width(22) }, { "colIndex": 2, "dataIndex": "user", "editable": true, "editor": user2792, "filter": { "type": "string" }, "header": "Author", "renderer": Lino.fk_renderer('userHidden','Lino.users.Users.detail'), "sortable": false, "tooltip": "(blogs.LatestEntries.user) ", "width": Lino.chars2width(21) }, { "align": "right", "colIndex": 3, "dataIndex": "id", "editable": true, "editor": id2793, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(blogs.LatestEntries.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 4, "dataIndex": "owner_type", "editable": true, "editor": owner_type2794, "filter": { "type": "string" }, "header": "Controlled by (type)", "hidden": true, "renderer": Lino.fk_renderer('owner_typeHidden','Lino.gfks.ContentTypes.detail'), "sortable": false, "tooltip": "(blogs.LatestEntries.owner_type) ", "width": Lino.chars2width(21) }, { "colIndex": 5, "dataIndex": "owner_id", "editable": true, "editor": owner_id2795, "filter": { "type": "string" }, "header": "Controlled by (object)", "hidden": true, "sortable": false, "tooltip": "(blogs.LatestEntries.owner_id) ", "width": Lino.chars2width(11) }, { "colIndex": 6, "dataIndex": "body", "editable": true, "editor": body2796, "filter": { "type": "string" }, "header": "Body", "hidden": true, "sortable": false, "tooltip": "(blogs.LatestEntries.body) ", "width": Lino.chars2width(61) }, { "colIndex": 7, "dataIndex": "body_preview", "editable": false, "filter": { "type": "string" }, "header": "Preview", "hidden": true, "sortable": false, "tooltip": "(blogs.LatestEntries.body_preview) ", "width": Lino.chars2width(61) }, { "colIndex": 8, "dataIndex": "pub_time", "editable": true, "editor": pub_time2798, "header": "Publication time", "hidden": true, "sortable": true, "tooltip": "(blogs.LatestEntries.pub_time) ", "width": Lino.chars2width(9) }, { "colIndex": 9, "dataIndex": "entry_type", "editable": true, "editor": entry_type2799, "filter": { "type": "string" }, "header": "Blog Entry Type", "hidden": true, "renderer": Lino.fk_renderer('entry_typeHidden','Lino.blogs.EntryTypes.detail'), "sortable": false, "tooltip": "(blogs.LatestEntries.entry_type) ", "width": Lino.chars2width(21) }, { "colIndex": 10, "dataIndex": "language", "editable": true, "editor": language2800, "filter": { "type": "string" }, "header": "Language", "hidden": true, "sortable": false, "tooltip": "(blogs.LatestEntries.language) ", "width": Lino.chars2width(21) }, { "colIndex": 11, "dataIndex": "owner", "editable": false, "header": "Controlled by", "hidden": true, "sortable": false, "tooltip": "(blogs.LatestEntries.owner) ", "width": Lino.chars2width(11) }, { "colIndex": 12, "dataIndex": "add_interest", "editable": true, "editor": add_interest2802, "header": "Add interest", "hidden": true, "renderer": Lino.fk_renderer('add_interestHidden','Lino.topics.Topics.detail'), "sortable": false, "tooltip": "(blogs.LatestEntries.add_interest) ", "width": Lino.chars2width(21) }, { "colIndex": 13, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(blogs.LatestEntries.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 14, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(blogs.LatestEntries.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 15, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(blogs.LatestEntries.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 16, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(blogs.LatestEntries.workflow_buttons) ", "width": Lino.chars2width(31) } ];
    Lino.blogs.LatestEntries.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.blogs.LatestEntries.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/blogs/LatestEntries", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.blogs.LatestEntries.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/blogs/LatestEntries", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.blogs.LatestEntries.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/blogs/LatestEntries", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.blogs.LatestEntries.insertPanel = Ext.extend(Lino.blogs.Entries.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/blogs/LatestEntries",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.blogs.LatestEntries.detail;
    this.ls_insert_handler = Lino.blogs.LatestEntries.insert;
    Lino.blogs.LatestEntries.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.blogs.LatestEntries.insert = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.blogs.LatestEntries.insertPanel(p);
});
Lino.blogs.LatestEntries.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/blogs/LatestEntries", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.blogs.LatestEntries.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/blogs/LatestEntries", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.blogs.LatestEntries.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/blogs/LatestEntries", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.blogs.LatestEntries.detailPanel = Ext.extend(Lino.blogs.Entries.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  ls_url: "/blogs/LatestEntries",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.blogs.LatestEntries.detail;
    this.ls_insert_handler = Lino.blogs.LatestEntries.insert;
    Lino.blogs.LatestEntries.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.blogs.LatestEntries.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.blogs.LatestEntries.detailPanel(p);
});
Lino.blogs.LatestEntries.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/blogs/LatestEntries", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.blogs.LatestEntries.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.blogs.Entries.ParamsPanel({});
  return new Lino.blogs.LatestEntries.GridPanel(p);
});
Lino.blogs.LatestEntries.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/blogs/LatestEntries", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class excerpts.ExcerptTypes
Lino.excerpts.ExcerptTypes.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/excerpts/ExcerptTypes",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/excerpts/ExcerptTypes','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/excerpts/ExcerptTypes','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "Excerpt Types",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 23,
  ls_store_fields : [ { "name": "content_type_display" }, { "name": "primary", "type": "boolean" }, { "name": "certifying", "type": "boolean" }, { "name": "name" }, { "name": "build_method" }, 'build_methodHidden', { "name": "template" }, { "name": "body_template" }, { "name": "id", "type": "int" }, { "name": "attach_to_email", "type": "boolean" }, { "name": "email_template" }, { "name": "remark" }, { "name": "content_type" }, 'content_typeHidden', { "name": "backward_compat", "type": "boolean" }, { "name": "print_recipient", "type": "boolean" }, { "name": "print_directly", "type": "boolean" }, { "name": "shortcut" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 8,
  ls_grid_configs : [  ],
  content_type : 41,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.excerpts.ExcerptTypes.detail;
    this.ls_insert_handler = Lino.excerpts.ExcerptTypes.insert;
    var ww = this.containing_window;
    var content_type_display_disp2808 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    var primary2809 = new Ext.form.Checkbox({ "checked": false, "selectOnFocus": true });
    var certifying2810 = new Ext.form.Checkbox({ "checked": false, "selectOnFocus": true });
    var name2811 = new Ext.form.TextField({ "allowBlank": false, "maxLength": 200, "selectOnFocus": true });
    var build_method2812 = new Lino.ChoicesFieldElement({ "forceSelection": true, "selectOnFocus": true, "store": [['','<br>']].concat(Lino.printing.BuildMethods) });
    var template2813 = new Lino.SimpleRemoteComboFieldElement({ "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/excerpts/ExcerptTypes/template" }) }) });
    var body_template2814 = new Lino.SimpleRemoteComboFieldElement({ "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/excerpts/ExcerptTypes/body_template" }) }) });
    var id2815 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var attach_to_email2816 = new Ext.form.Checkbox({ "checked": false, "hidden": true, "selectOnFocus": true });
    var email_template2817 = new Lino.SimpleRemoteComboFieldElement({ "hidden": true, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/excerpts/ExcerptTypes/email_template" }) }) });
    var remark2818 = new Lino.RichTextPanel({ "containing_panel": this, "hidden": true, "selectOnFocus": true, "title": "Remark" });
    var content_type2819 = new Lino.RemoteComboFieldElement({ "allowBlank": false, "emptyText": "Select a content type...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/excerpts/ExcerptTypes/content_type" }) }) });
    var backward_compat2820 = new Ext.form.Checkbox({ "checked": false, "hidden": true, "selectOnFocus": true });
    var print_recipient2821 = new Ext.form.Checkbox({ "checked": true, "hidden": true, "selectOnFocus": true });
    var print_directly2822 = new Ext.form.Checkbox({ "checked": true, "hidden": true, "selectOnFocus": true });
    var shortcut2823 = new Ext.form.TextField({ "hidden": true, "maxLength": 50, "selectOnFocus": true });
    var mobile_item_disp2824 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp2825 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp2826 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp2827 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
      template2813.setContextValue('build_method', record ? record.data['build_methodHidden'] : undefined);
      template2813.setContextValue('content_type', record ? record.data['content_typeHidden'] : undefined);
      body_template2814.setContextValue('content_type', record ? record.data['content_typeHidden'] : undefined);
      email_template2817.setContextValue('content_type', record ? record.data['content_typeHidden'] : undefined);
      remark2818.refresh();
    };
    this.onRender = function(ct, position) {
      build_method2812.on('change',Lino.chooser_handler(template2813,'build_method'));
      content_type2819.on('change',Lino.chooser_handler(template2813,'content_type'));
      content_type2819.on('change',Lino.chooser_handler(body_template2814,'content_type'));
      content_type2819.on('change',Lino.chooser_handler(email_template2817,'content_type'));
      Lino.excerpts.ExcerptTypes.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "content_type_display", "editable": false, "header": "Model", "sortable": false, "tooltip": "(excerpts.ExcerptTypes.content_type_display) ", "width": Lino.chars2width(31) }, { "colIndex": 1, "dataIndex": "primary", "editable": true, "filter": { "type": "boolean" }, "header": "Primary", "sortable": false, "tooltip": "(excerpts.ExcerptTypes.primary) Whether this is the default type to use for this model. There's at most one primary type per model. Enabling this field will automatically make the other types non-primary.", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 2, "dataIndex": "certifying", "editable": true, "filter": { "type": "boolean" }, "header": "Certifying", "sortable": false, "tooltip": "(excerpts.ExcerptTypes.certifying) Whether an excerpt of this type is a unique printout.", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 3, "dataIndex": "name", "editable": true, "editor": name2811, "filter": { "type": "string" }, "header": "Designation", "sortable": true, "tooltip": "(excerpts.ExcerptTypes.name) The designation of this excerpt type.\nOne field for every language.", "width": Lino.chars2width(22) }, { "colIndex": 4, "dataIndex": "build_method", "editable": true, "editor": build_method2812, "filter": { "type": "string" }, "header": "Build method", "sortable": false, "tooltip": "(excerpts.ExcerptTypes.build_method) See lino.modlib.printing.mixins.PrintableType.build_method.", "width": Lino.chars2width(24) }, { "colIndex": 5, "dataIndex": "template", "editable": true, "editor": template2813, "filter": { "type": "string" }, "header": "Template", "sortable": false, "tooltip": "(excerpts.ExcerptTypes.template) The main template to be used when printing an excerpt of this type.", "width": Lino.chars2width(11) }, { "colIndex": 6, "dataIndex": "body_template", "editable": true, "editor": body_template2814, "filter": { "type": "string" }, "header": "Body template", "sortable": false, "tooltip": "(excerpts.ExcerptTypes.body_template) The body template to be used when         rendering a printable of this type. This is a list of files         with extension `.body.html`.", "width": Lino.chars2width(11) }, { "align": "right", "colIndex": 7, "dataIndex": "id", "editable": true, "editor": id2815, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(excerpts.ExcerptTypes.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 8, "dataIndex": "attach_to_email", "editable": true, "filter": { "type": "boolean" }, "header": "Attach to email", "hidden": true, "sortable": false, "tooltip": "(excerpts.ExcerptTypes.attach_to_email) Whether the printable file should be attached to the email\nwhen creating an email from a mailable of this type.\n", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 9, "dataIndex": "email_template", "editable": true, "editor": email_template2817, "filter": { "type": "string" }, "header": "Email template", "hidden": true, "sortable": false, "tooltip": "(excerpts.ExcerptTypes.email_template) The name of the file to be used as template when creating an email from a mailable of this type.", "width": Lino.chars2width(11) }, { "colIndex": 10, "dataIndex": "remark", "editable": true, "editor": remark2818, "filter": { "type": "string" }, "header": "Remark", "hidden": true, "sortable": false, "tooltip": "(excerpts.ExcerptTypes.remark) ", "width": Lino.chars2width(61) }, { "colIndex": 11, "dataIndex": "content_type", "editable": true, "editor": content_type2819, "filter": { "type": "string" }, "header": "Model", "hidden": true, "renderer": Lino.fk_renderer('content_typeHidden','Lino.gfks.ContentTypes.detail'), "sortable": false, "tooltip": "(excerpts.ExcerptTypes.content_type) The model that can issue printouts of this type.", "width": Lino.chars2width(21) }, { "colIndex": 12, "dataIndex": "backward_compat", "editable": true, "filter": { "type": "boolean" }, "header": "Backward compatible", "hidden": true, "sortable": false, "tooltip": "(excerpts.ExcerptTypes.backward_compat) Check this to have `this` in template context point to owner instead of excerpt.", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 13, "dataIndex": "print_recipient", "editable": true, "filter": { "type": "boolean" }, "header": "Print recipient", "hidden": true, "sortable": false, "tooltip": "(excerpts.ExcerptTypes.print_recipient) Whether to print a recipient field in document.", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 14, "dataIndex": "print_directly", "editable": true, "filter": { "type": "boolean" }, "header": "Print directly", "hidden": true, "sortable": false, "tooltip": "(excerpts.ExcerptTypes.print_directly) ", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 15, "dataIndex": "shortcut", "editable": true, "editor": shortcut2823, "filter": { "type": "string" }, "header": "Excerpt shortcut", "hidden": true, "sortable": true, "tooltip": "(excerpts.ExcerptTypes.shortcut) Optional pointer to a shortcut field.  If this is not empty, then\nthe given shortcut field will manage excerpts of this type.", "width": Lino.chars2width(22) }, { "colIndex": 16, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(excerpts.ExcerptTypes.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 17, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(excerpts.ExcerptTypes.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 18, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(excerpts.ExcerptTypes.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 19, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(excerpts.ExcerptTypes.workflow_buttons) ", "width": Lino.chars2width(31) } ];
    Lino.excerpts.ExcerptTypes.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.excerpts.ExcerptTypes.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/ExcerptTypes", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.ExcerptTypes.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/ExcerptTypes", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.ExcerptTypes.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/ExcerptTypes", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.excerpts.ExcerptTypes.insertPanel = Ext.extend(Lino.excerpts.ExcerptTypes.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/excerpts/ExcerptTypes",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.excerpts.ExcerptTypes.detail;
    this.ls_insert_handler = Lino.excerpts.ExcerptTypes.insert;
    Lino.excerpts.ExcerptTypes.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.excerpts.ExcerptTypes.insert = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.excerpts.ExcerptTypes.insertPanel(p);
});
Lino.excerpts.ExcerptTypes.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/ExcerptTypes", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.ExcerptTypes.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/ExcerptTypes", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.ExcerptTypes.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/ExcerptTypes", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.excerpts.ExcerptTypes.detailPanel = Ext.extend(Lino.excerpts.ExcerptTypes.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  ls_url: "/excerpts/ExcerptTypes",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.excerpts.ExcerptTypes.detail;
    this.ls_insert_handler = Lino.excerpts.ExcerptTypes.insert;
    Lino.excerpts.ExcerptTypes.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.excerpts.ExcerptTypes.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.excerpts.ExcerptTypes.detailPanel(p);
});
Lino.excerpts.ExcerptTypes.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/ExcerptTypes", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.ExcerptTypes.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.excerpts.ExcerptTypes.GridPanel(p);
});
Lino.excerpts.ExcerptTypes.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/ExcerptTypes", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class excerpts.Excerpts
Lino.excerpts.Excerpts.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/excerpts/Excerpts",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/excerpts/Excerpts','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/excerpts/Excerpts','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "itemId": "duplicate", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Duplicate the selected row.") }, "menu_item_text": "\u2687", "overflowText": "\u2687", "panel_btn_handler": Lino.row_action_handler('duplicate','GET',null), "text": " <font size=\"4\">\u2687</font>" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "iconCls": "x-tbar-printer", "itemId": "do_print", "menu_item_text": "Print", "overflowText": "Print", "panel_btn_handler": Lino.row_action_handler('do_print','POST',null), "tooltip": "A print action which uses a cache for the generated printable\ndocument and builds is only when it doesn't yet exist." }, { "auto_save": true, "iconCls": "x-tbar-printer_delete", "itemId": "do_clear_cache", "menu_item_text": "Clear cache", "overflowText": "Clear cache", "panel_btn_handler": Lino.row_action_handler('do_clear_cache','GET',null), "tooltip": "Defines the Clear cache button on a Printable record." }, { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "check_plausibility", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": "Check plausibility", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." }, { "auto_save": true, "itemId": "fix_problems", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": "Fix plausibility problems", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." } ], "menu_item_text": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": null, "xtype": "splitbutton" }, { "auto_save": true, "iconCls": "x-tbar-email_add", "itemId": "create_mail", "menu_item_text": "Create email", "overflowText": "Create email", "panel_btn_handler": Lino.row_action_handler('create_mail','GET',null), "tooltip": "Create an email from this" }, { "auto_save": true, "iconCls": "x-tbar-script_add", "itemId": "create_postings", "menu_item_text": "Create posting", "overflowText": "Create posting", "panel_btn_handler": Lino.row_action_handler('create_postings','GET',null), "tooltip": "Create classical mail postings from this" } ],
  cell_edit : true,
  title : "Excerpts",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 28,
  ls_store_fields : [ { "name": "id", "type": "int" }, { "name": "excerpt_type" }, 'excerpt_typeHidden', { "name": "owner" }, { "name": "company" }, 'companyHidden', { "name": "language" }, 'languageHidden', { "name": "build_time" }, { "name": "build_method" }, 'build_methodHidden', { "name": "contact_person" }, 'contact_personHidden', { "name": "contact_role" }, 'contact_roleHidden', { "name": "user" }, 'userHidden', { "name": "owner_type" }, 'owner_typeHidden', { "name": "owner_id" }, 'owner_idHidden', { "name": "body_template_content" }, { "name": "preview" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 0,
  ls_grid_configs : [  ],
  content_type : 42,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.excerpts.Excerpts.detail;
    var ww = this.containing_window;
    var id2829 = new Ext.form.NumberField({ "selectOnFocus": true });
    var excerpt_type2830 = new Lino.RemoteComboFieldElement({ "allowBlank": false, "emptyText": "Select a Excerpt Type...", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/excerpts/Excerpts/excerpt_type" }) }) });
    var owner_disp2831 = new Ext.form.DisplayField({ "disabled": true });
    var company2832 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Organization...", "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/excerpts/Excerpts/company" }) }) });
    var language2833 = new Lino.ChoicesFieldElement({ "selectOnFocus": true, "store": [ [ "en-us", "American English" ] ] });
    var build_time2834 = new Ext.form.DisplayField({ "disabled": true, "value": "<br>" });
    var build_method2835 = new Lino.ChoicesFieldElement({ "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": [['','<br>']].concat(Lino.printing.BuildMethods) });
    var contact_person2836 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Person...", "hidden": true, "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/excerpts/Excerpts/contact_person" }) }) });
    var contact_role2837 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Function...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/excerpts/Excerpts/contact_role" }) }) });
    var user2838 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a User...", "hidden": true, "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/excerpts/Excerpts/user" }) }) });
    var owner_type2839 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a content type...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/excerpts/Excerpts/owner_type" }) }) });
    var owner_id2840 = new Lino.RemoteComboFieldElement({ "hidden": true, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/excerpts/Excerpts/owner_id" }) }) });
    var body_template_content2841 = new Lino.RichTextPanel({ "containing_panel": this, "disabled": true, "hidden": true, "title": "Body template" });
    var preview_htmlbox2842 = new Lino.HtmlBoxPanel({ "always_enabled": true, "bodyStyle": "overflow-x:hidden;", "containing_panel": this, "hidden": true, "items": new Ext.BoxComponent({autoScroll:true}), "layout": "fit", "name": "preview", "title": "Preview", "value": "<br/>" });
    var mobile_item_disp2843 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp2844 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp2845 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp2846 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
      excerpt_type2830.setContextValue('owner', record ? record.data['owner'] : undefined);
      contact_person2836.setContextValue('company', record ? record.data['companyHidden'] : undefined);
      owner_id2840.setContextValue('owner_type', record ? record.data['owner_typeHidden'] : undefined);
      body_template_content2841.refresh();
      preview_htmlbox2842.refresh();
    };
    this.onRender = function(ct, position) {
      owner_disp2831.on('change',Lino.chooser_handler(excerpt_type2830,'owner'));
      company2832.on('change',Lino.chooser_handler(contact_person2836,'company'));
      owner_type2839.on('change',Lino.chooser_handler(owner_id2840,'owner_type'));
      Lino.excerpts.Excerpts.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "align": "right", "colIndex": 0, "dataIndex": "id", "editable": true, "editor": id2829, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "sortable": true, "tooltip": "(excerpts.Excerpts.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 1, "dataIndex": "excerpt_type", "editable": true, "editor": excerpt_type2830, "filter": { "type": "string" }, "header": "Excerpt Type", "renderer": Lino.fk_renderer('excerpt_typeHidden','Lino.excerpts.ExcerptTypes.detail'), "sortable": false, "tooltip": "(excerpts.Excerpts.excerpt_type) The type of this excerpt (ForeignKey to ExcerptType).", "width": Lino.chars2width(21) }, { "colIndex": 2, "dataIndex": "owner", "editable": false, "header": "Controlled by", "sortable": false, "tooltip": "(excerpts.Excerpts.owner) The object being printed by this excerpt.\nSee Controllable.owner.", "width": Lino.chars2width(11) }, { "colIndex": 3, "dataIndex": "company", "editable": true, "editor": company2832, "filter": { "type": "string" }, "header": "Recipient (Organization)", "renderer": Lino.fk_renderer('companyHidden','Lino.contacts.Companies.detail'), "sortable": false, "tooltip": "(excerpts.Excerpts.company) The optional company of the recipient of this\nexcerpt.  See ContactRelated.company.", "width": Lino.chars2width(21) }, { "colIndex": 4, "dataIndex": "language", "editable": true, "editor": language2833, "filter": { "type": "string" }, "header": "Language", "sortable": false, "tooltip": "(excerpts.Excerpts.language) The language used for printing this excerpt.", "width": Lino.chars2width(21) }, { "colIndex": 5, "dataIndex": "build_time", "editable": false, "header": "build time", "sortable": true, "tooltip": "(excerpts.Excerpts.build_time) Timestamp of the built target file. Contains None\nif no build hasn't been called yet.", "width": Lino.chars2width(17) }, { "colIndex": 6, "dataIndex": "build_method", "editable": true, "editor": build_method2835, "filter": { "type": "string" }, "header": "Build method", "hidden": true, "sortable": false, "tooltip": "(excerpts.Excerpts.build_method) ", "width": Lino.chars2width(24) }, { "colIndex": 7, "dataIndex": "contact_person", "editable": true, "editor": contact_person2836, "filter": { "type": "string" }, "header": "Recipient (Person)", "hidden": true, "renderer": Lino.fk_renderer('contact_personHidden','Lino.contacts.Persons.detail'), "sortable": false, "tooltip": "(excerpts.Excerpts.contact_person) The optional contact person of the recipient of this\nexcerpt.  See ContactRelated.contact_person.", "width": Lino.chars2width(21) }, { "colIndex": 8, "dataIndex": "contact_role", "editable": true, "editor": contact_role2837, "filter": { "type": "string" }, "header": "represented as", "hidden": true, "sortable": false, "tooltip": "(excerpts.Excerpts.contact_role) The optional Role\nof the contact_person within company.", "width": Lino.chars2width(21) }, { "colIndex": 9, "dataIndex": "user", "editable": true, "editor": user2838, "filter": { "type": "string" }, "header": "Author", "hidden": true, "renderer": Lino.fk_renderer('userHidden','Lino.users.Users.detail'), "sortable": false, "tooltip": "(excerpts.Excerpts.user) ", "width": Lino.chars2width(21) }, { "colIndex": 10, "dataIndex": "owner_type", "editable": true, "editor": owner_type2839, "filter": { "type": "string" }, "header": "Controlled by (type)", "hidden": true, "renderer": Lino.fk_renderer('owner_typeHidden','Lino.gfks.ContentTypes.detail'), "sortable": false, "tooltip": "(excerpts.Excerpts.owner_type) ", "width": Lino.chars2width(21) }, { "colIndex": 11, "dataIndex": "owner_id", "editable": true, "editor": owner_id2840, "filter": { "type": "string" }, "header": "Controlled by (object)", "hidden": true, "sortable": false, "tooltip": "(excerpts.Excerpts.owner_id) ", "width": Lino.chars2width(11) }, { "colIndex": 12, "dataIndex": "body_template_content", "editable": false, "header": "Body template", "hidden": true, "sortable": false, "tooltip": "(excerpts.Excerpts.body_template_content) ", "width": Lino.chars2width(61) }, { "colIndex": 13, "dataIndex": "preview", "editable": false, "header": "Preview", "hidden": true, "sortable": false, "tooltip": "(excerpts.Excerpts.preview) ", "width": Lino.chars2width(31) }, { "colIndex": 14, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(excerpts.Excerpts.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 15, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(excerpts.Excerpts.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 16, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(excerpts.Excerpts.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 17, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(excerpts.Excerpts.workflow_buttons) ", "width": Lino.chars2width(31) } ];
    Lino.excerpts.Excerpts.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.excerpts.Excerpts.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/Excerpts", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.Excerpts.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/Excerpts", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.Excerpts.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/Excerpts", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.Excerpts.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/Excerpts", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.Excerpts.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/Excerpts", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.Excerpts.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/Excerpts", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.Excerpts.duplicate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/Excerpts", "GET", pk, "duplicate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.excerpts.Excerpts.detailPanel = Ext.extend(Lino.excerpts.Excerpts.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "itemId": "duplicate", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Duplicate the selected row.") }, "menu_item_text": "\u2687", "overflowText": "\u2687", "panel_btn_handler": Lino.row_action_handler('duplicate','GET',null), "text": " <font size=\"4\">\u2687</font>" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "iconCls": "x-tbar-printer", "itemId": "do_print", "menu_item_text": "Print", "overflowText": "Print", "panel_btn_handler": Lino.row_action_handler('do_print','POST',null), "tooltip": "A print action which uses a cache for the generated printable\ndocument and builds is only when it doesn't yet exist." }, { "auto_save": true, "iconCls": "x-tbar-printer_delete", "itemId": "do_clear_cache", "menu_item_text": "Clear cache", "overflowText": "Clear cache", "panel_btn_handler": Lino.row_action_handler('do_clear_cache','GET',null), "tooltip": "Defines the Clear cache button on a Printable record." }, { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "check_plausibility", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": "Check plausibility", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." }, { "auto_save": true, "itemId": "fix_problems", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": "Fix plausibility problems", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." } ], "menu_item_text": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": null, "xtype": "splitbutton" }, { "auto_save": true, "iconCls": "x-tbar-email_add", "itemId": "create_mail", "menu_item_text": "Create email", "overflowText": "Create email", "panel_btn_handler": Lino.row_action_handler('create_mail','GET',null), "tooltip": "Create an email from this" }, { "auto_save": true, "iconCls": "x-tbar-script_add", "itemId": "create_postings", "menu_item_text": "Create posting", "overflowText": "Create posting", "panel_btn_handler": Lino.row_action_handler('create_postings','GET',null), "tooltip": "Create classical mail postings from this" } ],
  ls_url: "/excerpts/Excerpts",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.excerpts.Excerpts.detail;
    Lino.excerpts.Excerpts.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.excerpts.Excerpts.detail = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(80) }, function(){
  var p = { "is_main_window": true };
  return new Lino.excerpts.Excerpts.detailPanel(p);
});
Lino.excerpts.Excerpts.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/Excerpts", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.Excerpts.do_print = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/Excerpts", "POST", pk, "do_print", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.Excerpts.do_clear_cache = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/Excerpts", "GET", pk, "do_clear_cache", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.Excerpts.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.excerpts.Excerpts.ParamsPanel({});
  return new Lino.excerpts.Excerpts.GridPanel(p);
});
Lino.excerpts.Excerpts.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/Excerpts", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.Excerpts.check_plausibility = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/Excerpts", "GET", pk, "check_plausibility", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.Excerpts.fix_problems = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/Excerpts", "GET", pk, "fix_problems", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.Excerpts.create_mail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/Excerpts", "GET", pk, "create_mail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.Excerpts.create_postings = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/Excerpts", "GET", pk, "create_postings", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class excerpts.AllExcerpts
Lino.excerpts.AllExcerpts.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/excerpts/AllExcerpts",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/excerpts/AllExcerpts','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/excerpts/AllExcerpts','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "itemId": "duplicate", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Duplicate the selected row.") }, "menu_item_text": "\u2687", "overflowText": "\u2687", "panel_btn_handler": Lino.row_action_handler('duplicate','GET',null), "text": " <font size=\"4\">\u2687</font>" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "iconCls": "x-tbar-printer", "itemId": "do_print", "menu_item_text": "Print", "overflowText": "Print", "panel_btn_handler": Lino.row_action_handler('do_print','POST',null), "tooltip": "A print action which uses a cache for the generated printable\ndocument and builds is only when it doesn't yet exist." }, { "auto_save": true, "iconCls": "x-tbar-printer_delete", "itemId": "do_clear_cache", "menu_item_text": "Clear cache", "overflowText": "Clear cache", "panel_btn_handler": Lino.row_action_handler('do_clear_cache','GET',null), "tooltip": "Defines the Clear cache button on a Printable record." }, { "auto_save": true, "iconCls": "x-tbar-script_add", "itemId": "create_postings", "menu_item_text": "Create posting", "overflowText": "Create posting", "panel_btn_handler": Lino.row_action_handler('create_postings','GET',null), "tooltip": "Create classical mail postings from this" }, { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "check_plausibility", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": "Check plausibility", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." }, { "auto_save": true, "itemId": "fix_problems", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": "Fix plausibility problems", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." } ], "menu_item_text": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": null, "xtype": "splitbutton" }, { "auto_save": true, "iconCls": "x-tbar-email_add", "itemId": "create_mail", "menu_item_text": "Create email", "overflowText": "Create email", "panel_btn_handler": Lino.row_action_handler('create_mail','GET',null), "tooltip": "Create an email from this" } ],
  cell_edit : true,
  title : "Excerpts",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 28,
  ls_store_fields : [ { "name": "id", "type": "int" }, { "name": "excerpt_type" }, 'excerpt_typeHidden', { "name": "owner" }, { "name": "company" }, 'companyHidden', { "name": "language" }, 'languageHidden', { "name": "build_time" }, { "name": "build_method" }, 'build_methodHidden', { "name": "contact_person" }, 'contact_personHidden', { "name": "contact_role" }, 'contact_roleHidden', { "name": "user" }, 'userHidden', { "name": "owner_type" }, 'owner_typeHidden', { "name": "owner_id" }, 'owner_idHidden', { "name": "body_template_content" }, { "name": "preview" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 0,
  ls_grid_configs : [  ],
  content_type : 42,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.excerpts.AllExcerpts.detail;
    var ww = this.containing_window;
    var id2848 = new Ext.form.NumberField({ "selectOnFocus": true });
    var excerpt_type2849 = new Lino.RemoteComboFieldElement({ "allowBlank": false, "emptyText": "Select a Excerpt Type...", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/excerpts/AllExcerpts/excerpt_type" }) }) });
    var owner_disp2850 = new Ext.form.DisplayField({ "disabled": true });
    var company2851 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Organization...", "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/excerpts/AllExcerpts/company" }) }) });
    var language2852 = new Lino.ChoicesFieldElement({ "selectOnFocus": true, "store": [ [ "en-us", "American English" ] ] });
    var build_time2853 = new Ext.form.DisplayField({ "disabled": true, "value": "<br>" });
    var build_method2854 = new Lino.ChoicesFieldElement({ "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": [['','<br>']].concat(Lino.printing.BuildMethods) });
    var contact_person2855 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Person...", "hidden": true, "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/excerpts/AllExcerpts/contact_person" }) }) });
    var contact_role2856 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Function...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/excerpts/AllExcerpts/contact_role" }) }) });
    var user2857 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a User...", "hidden": true, "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/excerpts/AllExcerpts/user" }) }) });
    var owner_type2858 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a content type...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/excerpts/AllExcerpts/owner_type" }) }) });
    var owner_id2859 = new Lino.RemoteComboFieldElement({ "hidden": true, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/excerpts/AllExcerpts/owner_id" }) }) });
    var body_template_content2860 = new Lino.RichTextPanel({ "containing_panel": this, "disabled": true, "hidden": true, "title": "Body template" });
    var preview_htmlbox2861 = new Lino.HtmlBoxPanel({ "always_enabled": true, "bodyStyle": "overflow-x:hidden;", "containing_panel": this, "hidden": true, "items": new Ext.BoxComponent({autoScroll:true}), "layout": "fit", "name": "preview", "title": "Preview", "value": "<br/>" });
    var mobile_item_disp2862 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp2863 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp2864 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp2865 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
      excerpt_type2849.setContextValue('owner', record ? record.data['owner'] : undefined);
      contact_person2855.setContextValue('company', record ? record.data['companyHidden'] : undefined);
      owner_id2859.setContextValue('owner_type', record ? record.data['owner_typeHidden'] : undefined);
      body_template_content2860.refresh();
      preview_htmlbox2861.refresh();
    };
    this.onRender = function(ct, position) {
      owner_disp2850.on('change',Lino.chooser_handler(excerpt_type2849,'owner'));
      company2851.on('change',Lino.chooser_handler(contact_person2855,'company'));
      owner_type2858.on('change',Lino.chooser_handler(owner_id2859,'owner_type'));
      Lino.excerpts.AllExcerpts.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "align": "right", "colIndex": 0, "dataIndex": "id", "editable": true, "editor": id2848, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "sortable": true, "tooltip": "(excerpts.AllExcerpts.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 1, "dataIndex": "excerpt_type", "editable": true, "editor": excerpt_type2849, "filter": { "type": "string" }, "header": "Excerpt Type", "renderer": Lino.fk_renderer('excerpt_typeHidden','Lino.excerpts.ExcerptTypes.detail'), "sortable": false, "tooltip": "(excerpts.AllExcerpts.excerpt_type) The type of this excerpt (ForeignKey to ExcerptType).", "width": Lino.chars2width(21) }, { "colIndex": 2, "dataIndex": "owner", "editable": false, "header": "Controlled by", "sortable": false, "tooltip": "(excerpts.AllExcerpts.owner) The object being printed by this excerpt.\nSee Controllable.owner.", "width": Lino.chars2width(11) }, { "colIndex": 3, "dataIndex": "company", "editable": true, "editor": company2851, "filter": { "type": "string" }, "header": "Recipient (Organization)", "renderer": Lino.fk_renderer('companyHidden','Lino.contacts.Companies.detail'), "sortable": false, "tooltip": "(excerpts.AllExcerpts.company) The optional company of the recipient of this\nexcerpt.  See ContactRelated.company.", "width": Lino.chars2width(21) }, { "colIndex": 4, "dataIndex": "language", "editable": true, "editor": language2852, "filter": { "type": "string" }, "header": "Language", "sortable": false, "tooltip": "(excerpts.AllExcerpts.language) The language used for printing this excerpt.", "width": Lino.chars2width(21) }, { "colIndex": 5, "dataIndex": "build_time", "editable": false, "header": "build time", "sortable": true, "tooltip": "(excerpts.AllExcerpts.build_time) Timestamp of the built target file. Contains None\nif no build hasn't been called yet.", "width": Lino.chars2width(17) }, { "colIndex": 6, "dataIndex": "build_method", "editable": true, "editor": build_method2854, "filter": { "type": "string" }, "header": "Build method", "hidden": true, "sortable": false, "tooltip": "(excerpts.AllExcerpts.build_method) ", "width": Lino.chars2width(24) }, { "colIndex": 7, "dataIndex": "contact_person", "editable": true, "editor": contact_person2855, "filter": { "type": "string" }, "header": "Recipient (Person)", "hidden": true, "renderer": Lino.fk_renderer('contact_personHidden','Lino.contacts.Persons.detail'), "sortable": false, "tooltip": "(excerpts.AllExcerpts.contact_person) The optional contact person of the recipient of this\nexcerpt.  See ContactRelated.contact_person.", "width": Lino.chars2width(21) }, { "colIndex": 8, "dataIndex": "contact_role", "editable": true, "editor": contact_role2856, "filter": { "type": "string" }, "header": "represented as", "hidden": true, "sortable": false, "tooltip": "(excerpts.AllExcerpts.contact_role) The optional Role\nof the contact_person within company.", "width": Lino.chars2width(21) }, { "colIndex": 9, "dataIndex": "user", "editable": true, "editor": user2857, "filter": { "type": "string" }, "header": "Author", "hidden": true, "renderer": Lino.fk_renderer('userHidden','Lino.users.Users.detail'), "sortable": false, "tooltip": "(excerpts.AllExcerpts.user) ", "width": Lino.chars2width(21) }, { "colIndex": 10, "dataIndex": "owner_type", "editable": true, "editor": owner_type2858, "filter": { "type": "string" }, "header": "Controlled by (type)", "hidden": true, "renderer": Lino.fk_renderer('owner_typeHidden','Lino.gfks.ContentTypes.detail'), "sortable": false, "tooltip": "(excerpts.AllExcerpts.owner_type) ", "width": Lino.chars2width(21) }, { "colIndex": 11, "dataIndex": "owner_id", "editable": true, "editor": owner_id2859, "filter": { "type": "string" }, "header": "Controlled by (object)", "hidden": true, "sortable": false, "tooltip": "(excerpts.AllExcerpts.owner_id) ", "width": Lino.chars2width(11) }, { "colIndex": 12, "dataIndex": "body_template_content", "editable": false, "header": "Body template", "hidden": true, "sortable": false, "tooltip": "(excerpts.AllExcerpts.body_template_content) ", "width": Lino.chars2width(61) }, { "colIndex": 13, "dataIndex": "preview", "editable": false, "header": "Preview", "hidden": true, "sortable": false, "tooltip": "(excerpts.AllExcerpts.preview) ", "width": Lino.chars2width(31) }, { "colIndex": 14, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(excerpts.AllExcerpts.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 15, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(excerpts.AllExcerpts.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 16, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(excerpts.AllExcerpts.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 17, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(excerpts.AllExcerpts.workflow_buttons) ", "width": Lino.chars2width(31) } ];
    Lino.excerpts.AllExcerpts.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.excerpts.AllExcerpts.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/AllExcerpts", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.AllExcerpts.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/AllExcerpts", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.AllExcerpts.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/AllExcerpts", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.AllExcerpts.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/AllExcerpts", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.AllExcerpts.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/AllExcerpts", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.AllExcerpts.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/AllExcerpts", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.AllExcerpts.duplicate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/AllExcerpts", "GET", pk, "duplicate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.excerpts.AllExcerpts.detailPanel = Ext.extend(Lino.excerpts.Excerpts.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "itemId": "duplicate", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Duplicate the selected row.") }, "menu_item_text": "\u2687", "overflowText": "\u2687", "panel_btn_handler": Lino.row_action_handler('duplicate','GET',null), "text": " <font size=\"4\">\u2687</font>" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "iconCls": "x-tbar-printer", "itemId": "do_print", "menu_item_text": "Print", "overflowText": "Print", "panel_btn_handler": Lino.row_action_handler('do_print','POST',null), "tooltip": "A print action which uses a cache for the generated printable\ndocument and builds is only when it doesn't yet exist." }, { "auto_save": true, "iconCls": "x-tbar-printer_delete", "itemId": "do_clear_cache", "menu_item_text": "Clear cache", "overflowText": "Clear cache", "panel_btn_handler": Lino.row_action_handler('do_clear_cache','GET',null), "tooltip": "Defines the Clear cache button on a Printable record." }, { "auto_save": true, "iconCls": "x-tbar-script_add", "itemId": "create_postings", "menu_item_text": "Create posting", "overflowText": "Create posting", "panel_btn_handler": Lino.row_action_handler('create_postings','GET',null), "tooltip": "Create classical mail postings from this" }, { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "check_plausibility", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": "Check plausibility", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." }, { "auto_save": true, "itemId": "fix_problems", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": "Fix plausibility problems", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." } ], "menu_item_text": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": null, "xtype": "splitbutton" }, { "auto_save": true, "iconCls": "x-tbar-email_add", "itemId": "create_mail", "menu_item_text": "Create email", "overflowText": "Create email", "panel_btn_handler": Lino.row_action_handler('create_mail','GET',null), "tooltip": "Create an email from this" } ],
  ls_url: "/excerpts/AllExcerpts",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.excerpts.AllExcerpts.detail;
    Lino.excerpts.AllExcerpts.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.excerpts.AllExcerpts.detail = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(80) }, function(){
  var p = { "is_main_window": true };
  return new Lino.excerpts.AllExcerpts.detailPanel(p);
});
Lino.excerpts.AllExcerpts.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/AllExcerpts", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.AllExcerpts.do_print = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/AllExcerpts", "POST", pk, "do_print", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.AllExcerpts.do_clear_cache = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/AllExcerpts", "GET", pk, "do_clear_cache", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.AllExcerpts.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.excerpts.Excerpts.ParamsPanel({});
  return new Lino.excerpts.AllExcerpts.GridPanel(p);
});
Lino.excerpts.AllExcerpts.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/AllExcerpts", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.AllExcerpts.create_postings = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/AllExcerpts", "GET", pk, "create_postings", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.AllExcerpts.check_plausibility = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/AllExcerpts", "GET", pk, "check_plausibility", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.AllExcerpts.create_mail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/AllExcerpts", "GET", pk, "create_mail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.AllExcerpts.fix_problems = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/AllExcerpts", "GET", pk, "fix_problems", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class excerpts.MyExcerpts
Lino.excerpts.MyExcerpts.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/excerpts/MyExcerpts",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/excerpts/MyExcerpts','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/excerpts/MyExcerpts','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "itemId": "duplicate", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Duplicate the selected row.") }, "menu_item_text": "\u2687", "overflowText": "\u2687", "panel_btn_handler": Lino.row_action_handler('duplicate','GET',null), "text": " <font size=\"4\">\u2687</font>" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "iconCls": "x-tbar-printer", "itemId": "do_print", "menu_item_text": "Print", "overflowText": "Print", "panel_btn_handler": Lino.row_action_handler('do_print','POST',null), "tooltip": "A print action which uses a cache for the generated printable\ndocument and builds is only when it doesn't yet exist." }, { "auto_save": true, "iconCls": "x-tbar-printer_delete", "itemId": "do_clear_cache", "menu_item_text": "Clear cache", "overflowText": "Clear cache", "panel_btn_handler": Lino.row_action_handler('do_clear_cache','GET',null), "tooltip": "Defines the Clear cache button on a Printable record." }, { "auto_save": true, "iconCls": "x-tbar-script_add", "itemId": "create_postings", "menu_item_text": "Create posting", "overflowText": "Create posting", "panel_btn_handler": Lino.row_action_handler('create_postings','GET',null), "tooltip": "Create classical mail postings from this" }, { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "check_plausibility", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": "Check plausibility", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." }, { "auto_save": true, "itemId": "fix_problems", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": "Fix plausibility problems", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." } ], "menu_item_text": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": null, "xtype": "splitbutton" }, { "auto_save": true, "iconCls": "x-tbar-email_add", "itemId": "create_mail", "menu_item_text": "Create email", "overflowText": "Create email", "panel_btn_handler": Lino.row_action_handler('create_mail','GET',null), "tooltip": "Create an email from this" } ],
  cell_edit : true,
  title : "My Excerpts",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 28,
  ls_store_fields : [ { "name": "build_time" }, { "name": "excerpt_type" }, 'excerpt_typeHidden', { "name": "id", "type": "int" }, { "name": "build_method" }, 'build_methodHidden', { "name": "company" }, 'companyHidden', { "name": "contact_person" }, 'contact_personHidden', { "name": "contact_role" }, 'contact_roleHidden', { "name": "user" }, 'userHidden', { "name": "owner_type" }, 'owner_typeHidden', { "name": "owner_id" }, 'owner_idHidden', { "name": "language" }, 'languageHidden', { "name": "owner" }, { "name": "body_template_content" }, { "name": "preview" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 3,
  ls_grid_configs : [  ],
  content_type : 42,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.excerpts.MyExcerpts.detail;
    var ww = this.containing_window;
    var build_time2867 = new Ext.form.DisplayField({ "disabled": true, "value": "<br>" });
    var excerpt_type2868 = new Lino.RemoteComboFieldElement({ "allowBlank": false, "emptyText": "Select a Excerpt Type...", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/excerpts/MyExcerpts/excerpt_type" }) }) });
    var id2869 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var build_method2870 = new Lino.ChoicesFieldElement({ "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": [['','<br>']].concat(Lino.printing.BuildMethods) });
    var company2871 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Organization...", "hidden": true, "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/excerpts/MyExcerpts/company" }) }) });
    var contact_person2872 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Person...", "hidden": true, "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/excerpts/MyExcerpts/contact_person" }) }) });
    var contact_role2873 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Function...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/excerpts/MyExcerpts/contact_role" }) }) });
    var user2874 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a User...", "hidden": true, "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/excerpts/MyExcerpts/user" }) }) });
    var owner_type2875 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a content type...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/excerpts/MyExcerpts/owner_type" }) }) });
    var owner_id2876 = new Lino.RemoteComboFieldElement({ "hidden": true, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/excerpts/MyExcerpts/owner_id" }) }) });
    var language2877 = new Lino.ChoicesFieldElement({ "hidden": true, "selectOnFocus": true, "store": [ [ "en-us", "American English" ] ] });
    var owner_disp2878 = new Ext.form.DisplayField({ "disabled": true, "hidden": true });
    var body_template_content2879 = new Lino.RichTextPanel({ "containing_panel": this, "disabled": true, "hidden": true, "title": "Body template" });
    var preview_htmlbox2880 = new Lino.HtmlBoxPanel({ "always_enabled": true, "bodyStyle": "overflow-x:hidden;", "containing_panel": this, "hidden": true, "items": new Ext.BoxComponent({autoScroll:true}), "layout": "fit", "name": "preview", "title": "Preview", "value": "<br/>" });
    var mobile_item_disp2881 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp2882 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp2883 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp2884 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
      excerpt_type2868.setContextValue('owner', record ? record.data['owner'] : undefined);
      contact_person2872.setContextValue('company', record ? record.data['companyHidden'] : undefined);
      owner_id2876.setContextValue('owner_type', record ? record.data['owner_typeHidden'] : undefined);
      body_template_content2879.refresh();
      preview_htmlbox2880.refresh();
    };
    this.onRender = function(ct, position) {
      owner_disp2878.on('change',Lino.chooser_handler(excerpt_type2868,'owner'));
      company2871.on('change',Lino.chooser_handler(contact_person2872,'company'));
      owner_type2875.on('change',Lino.chooser_handler(owner_id2876,'owner_type'));
      Lino.excerpts.MyExcerpts.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "build_time", "editable": false, "header": "build time", "sortable": true, "tooltip": "(excerpts.MyExcerpts.build_time) Timestamp of the built target file. Contains None\nif no build hasn't been called yet.", "width": Lino.chars2width(17) }, { "colIndex": 1, "dataIndex": "excerpt_type", "editable": true, "editor": excerpt_type2868, "filter": { "type": "string" }, "header": "Excerpt Type", "renderer": Lino.fk_renderer('excerpt_typeHidden','Lino.excerpts.ExcerptTypes.detail'), "sortable": false, "tooltip": "(excerpts.MyExcerpts.excerpt_type) The type of this excerpt (ForeignKey to ExcerptType).", "width": Lino.chars2width(21) }, { "align": "right", "colIndex": 2, "dataIndex": "id", "editable": true, "editor": id2869, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(excerpts.MyExcerpts.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 3, "dataIndex": "build_method", "editable": true, "editor": build_method2870, "filter": { "type": "string" }, "header": "Build method", "hidden": true, "sortable": false, "tooltip": "(excerpts.MyExcerpts.build_method) ", "width": Lino.chars2width(24) }, { "colIndex": 4, "dataIndex": "company", "editable": true, "editor": company2871, "filter": { "type": "string" }, "header": "Recipient (Organization)", "hidden": true, "renderer": Lino.fk_renderer('companyHidden','Lino.contacts.Companies.detail'), "sortable": false, "tooltip": "(excerpts.MyExcerpts.company) The optional company of the recipient of this\nexcerpt.  See ContactRelated.company.", "width": Lino.chars2width(21) }, { "colIndex": 5, "dataIndex": "contact_person", "editable": true, "editor": contact_person2872, "filter": { "type": "string" }, "header": "Recipient (Person)", "hidden": true, "renderer": Lino.fk_renderer('contact_personHidden','Lino.contacts.Persons.detail'), "sortable": false, "tooltip": "(excerpts.MyExcerpts.contact_person) The optional contact person of the recipient of this\nexcerpt.  See ContactRelated.contact_person.", "width": Lino.chars2width(21) }, { "colIndex": 6, "dataIndex": "contact_role", "editable": true, "editor": contact_role2873, "filter": { "type": "string" }, "header": "represented as", "hidden": true, "sortable": false, "tooltip": "(excerpts.MyExcerpts.contact_role) The optional Role\nof the contact_person within company.", "width": Lino.chars2width(21) }, { "colIndex": 7, "dataIndex": "user", "editable": true, "editor": user2874, "filter": { "type": "string" }, "header": "Author", "hidden": true, "renderer": Lino.fk_renderer('userHidden','Lino.users.Users.detail'), "sortable": false, "tooltip": "(excerpts.MyExcerpts.user) ", "width": Lino.chars2width(21) }, { "colIndex": 8, "dataIndex": "owner_type", "editable": true, "editor": owner_type2875, "filter": { "type": "string" }, "header": "Controlled by (type)", "hidden": true, "renderer": Lino.fk_renderer('owner_typeHidden','Lino.gfks.ContentTypes.detail'), "sortable": false, "tooltip": "(excerpts.MyExcerpts.owner_type) ", "width": Lino.chars2width(21) }, { "colIndex": 9, "dataIndex": "owner_id", "editable": true, "editor": owner_id2876, "filter": { "type": "string" }, "header": "Controlled by (object)", "hidden": true, "sortable": false, "tooltip": "(excerpts.MyExcerpts.owner_id) ", "width": Lino.chars2width(11) }, { "colIndex": 10, "dataIndex": "language", "editable": true, "editor": language2877, "filter": { "type": "string" }, "header": "Language", "hidden": true, "sortable": false, "tooltip": "(excerpts.MyExcerpts.language) The language used for printing this excerpt.", "width": Lino.chars2width(21) }, { "colIndex": 11, "dataIndex": "owner", "editable": false, "header": "Controlled by", "hidden": true, "sortable": false, "tooltip": "(excerpts.MyExcerpts.owner) The object being printed by this excerpt.\nSee Controllable.owner.", "width": Lino.chars2width(11) }, { "colIndex": 12, "dataIndex": "body_template_content", "editable": false, "header": "Body template", "hidden": true, "sortable": false, "tooltip": "(excerpts.MyExcerpts.body_template_content) ", "width": Lino.chars2width(61) }, { "colIndex": 13, "dataIndex": "preview", "editable": false, "header": "Preview", "hidden": true, "sortable": false, "tooltip": "(excerpts.MyExcerpts.preview) ", "width": Lino.chars2width(31) }, { "colIndex": 14, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(excerpts.MyExcerpts.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 15, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(excerpts.MyExcerpts.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 16, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(excerpts.MyExcerpts.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 17, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(excerpts.MyExcerpts.workflow_buttons) ", "width": Lino.chars2width(31) } ];
    Lino.excerpts.MyExcerpts.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.excerpts.MyExcerpts.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/MyExcerpts", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.MyExcerpts.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/MyExcerpts", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.MyExcerpts.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/MyExcerpts", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.MyExcerpts.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/MyExcerpts", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.MyExcerpts.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/MyExcerpts", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.MyExcerpts.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/MyExcerpts", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.MyExcerpts.duplicate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/MyExcerpts", "GET", pk, "duplicate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.excerpts.MyExcerpts.detailPanel = Ext.extend(Lino.excerpts.Excerpts.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "itemId": "duplicate", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Duplicate the selected row.") }, "menu_item_text": "\u2687", "overflowText": "\u2687", "panel_btn_handler": Lino.row_action_handler('duplicate','GET',null), "text": " <font size=\"4\">\u2687</font>" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "iconCls": "x-tbar-printer", "itemId": "do_print", "menu_item_text": "Print", "overflowText": "Print", "panel_btn_handler": Lino.row_action_handler('do_print','POST',null), "tooltip": "A print action which uses a cache for the generated printable\ndocument and builds is only when it doesn't yet exist." }, { "auto_save": true, "iconCls": "x-tbar-printer_delete", "itemId": "do_clear_cache", "menu_item_text": "Clear cache", "overflowText": "Clear cache", "panel_btn_handler": Lino.row_action_handler('do_clear_cache','GET',null), "tooltip": "Defines the Clear cache button on a Printable record." }, { "auto_save": true, "iconCls": "x-tbar-script_add", "itemId": "create_postings", "menu_item_text": "Create posting", "overflowText": "Create posting", "panel_btn_handler": Lino.row_action_handler('create_postings','GET',null), "tooltip": "Create classical mail postings from this" }, { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "check_plausibility", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": "Check plausibility", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." }, { "auto_save": true, "itemId": "fix_problems", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": "Fix plausibility problems", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." } ], "menu_item_text": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": null, "xtype": "splitbutton" }, { "auto_save": true, "iconCls": "x-tbar-email_add", "itemId": "create_mail", "menu_item_text": "Create email", "overflowText": "Create email", "panel_btn_handler": Lino.row_action_handler('create_mail','GET',null), "tooltip": "Create an email from this" } ],
  ls_url: "/excerpts/MyExcerpts",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.excerpts.MyExcerpts.detail;
    Lino.excerpts.MyExcerpts.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.excerpts.MyExcerpts.detail = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(80) }, function(){
  var p = { "is_main_window": true };
  return new Lino.excerpts.MyExcerpts.detailPanel(p);
});
Lino.excerpts.MyExcerpts.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/MyExcerpts", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.MyExcerpts.do_print = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/MyExcerpts", "POST", pk, "do_print", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.MyExcerpts.do_clear_cache = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/MyExcerpts", "GET", pk, "do_clear_cache", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.MyExcerpts.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.excerpts.Excerpts.ParamsPanel({});
  return new Lino.excerpts.MyExcerpts.GridPanel(p);
});
Lino.excerpts.MyExcerpts.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/MyExcerpts", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.MyExcerpts.create_postings = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/MyExcerpts", "GET", pk, "create_postings", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.MyExcerpts.check_plausibility = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/MyExcerpts", "GET", pk, "check_plausibility", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.MyExcerpts.create_mail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/MyExcerpts", "GET", pk, "create_mail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.MyExcerpts.fix_problems = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/MyExcerpts", "GET", pk, "fix_problems", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class tinymce.TextFieldTemplates
Lino.tinymce.TextFieldTemplates.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/tinymce/TextFieldTemplates",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/tinymce/TextFieldTemplates','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/tinymce/TextFieldTemplates','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "Text Field Templates",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 11,
  ls_store_fields : [ { "name": "id", "type": "int" }, { "name": "user" }, 'userHidden', { "name": "name" }, { "name": "description" }, { "name": "text" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 0,
  ls_grid_configs : [  ],
  content_type : 43,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.tinymce.TextFieldTemplates.detail;
    this.ls_insert_handler = Lino.tinymce.TextFieldTemplates.insert;
    var ww = this.containing_window;
    var id2886 = new Ext.form.NumberField({ "selectOnFocus": true });
    var user2887 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a User...", "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/tinymce/TextFieldTemplates/user" }) }) });
    var name2888 = new Ext.form.TextField({ "allowBlank": false, "maxLength": 200, "selectOnFocus": true });
    var description2889 = new Ext.form.TextArea({ "growMax": 2000, "selectOnFocus": true });
    var text2890 = new Lino.RichTextPanel({ "containing_panel": this, "selectOnFocus": true, "title": "Template Text" });
    var mobile_item_disp2891 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp2892 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp2893 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp2894 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
      text2890.refresh();
    };
    this.ls_columns = [ { "align": "right", "colIndex": 0, "dataIndex": "id", "editable": true, "editor": id2886, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "sortable": true, "tooltip": "(tinymce.TextFieldTemplates.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 1, "dataIndex": "user", "editable": true, "editor": user2887, "filter": { "type": "string" }, "header": "Author", "renderer": Lino.fk_renderer('userHidden','Lino.users.Users.detail'), "sortable": false, "tooltip": "(tinymce.TextFieldTemplates.user) ", "width": Lino.chars2width(21) }, { "colIndex": 2, "dataIndex": "name", "editable": true, "editor": name2888, "filter": { "type": "string" }, "header": "Designation", "sortable": true, "tooltip": "(tinymce.TextFieldTemplates.name) ", "width": Lino.chars2width(22) }, { "colIndex": 3, "dataIndex": "description", "editable": true, "editor": description2889, "filter": { "type": "string" }, "header": "Description", "sortable": false, "tooltip": "(tinymce.TextFieldTemplates.description) ", "width": Lino.chars2width(61) }, { "colIndex": 4, "dataIndex": "text", "editable": true, "editor": text2890, "filter": { "type": "string" }, "header": "Template Text", "sortable": false, "tooltip": "(tinymce.TextFieldTemplates.text) ", "width": Lino.chars2width(61) }, { "colIndex": 5, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(tinymce.TextFieldTemplates.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 6, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(tinymce.TextFieldTemplates.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 7, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(tinymce.TextFieldTemplates.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 8, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(tinymce.TextFieldTemplates.workflow_buttons) ", "width": Lino.chars2width(31) } ];
    Lino.tinymce.TextFieldTemplates.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.tinymce.TextFieldTemplates.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/tinymce/TextFieldTemplates", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.tinymce.TextFieldTemplates.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/tinymce/TextFieldTemplates", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.tinymce.TextFieldTemplates.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/tinymce/TextFieldTemplates", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.tinymce.TextFieldTemplates.insertPanel = Ext.extend(Lino.tinymce.TextFieldTemplates.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/tinymce/TextFieldTemplates",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.tinymce.TextFieldTemplates.detail;
    this.ls_insert_handler = Lino.tinymce.TextFieldTemplates.insert;
    Lino.tinymce.TextFieldTemplates.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.tinymce.TextFieldTemplates.insert = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.tinymce.TextFieldTemplates.insertPanel(p);
});
Lino.tinymce.TextFieldTemplates.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/tinymce/TextFieldTemplates", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.tinymce.TextFieldTemplates.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/tinymce/TextFieldTemplates", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.tinymce.TextFieldTemplates.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/tinymce/TextFieldTemplates", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.tinymce.TextFieldTemplates.detailPanel = Ext.extend(Lino.tinymce.TextFieldTemplates.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  ls_url: "/tinymce/TextFieldTemplates",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.tinymce.TextFieldTemplates.detail;
    this.ls_insert_handler = Lino.tinymce.TextFieldTemplates.insert;
    Lino.tinymce.TextFieldTemplates.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.tinymce.TextFieldTemplates.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.tinymce.TextFieldTemplates.detailPanel(p);
});
Lino.tinymce.TextFieldTemplates.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/tinymce/TextFieldTemplates", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.tinymce.TextFieldTemplates.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.tinymce.TextFieldTemplates.ParamsPanel({});
  return new Lino.tinymce.TextFieldTemplates.GridPanel(p);
});
Lino.tinymce.TextFieldTemplates.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/tinymce/TextFieldTemplates", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class tinymce.MyTextFieldTemplates
Lino.tinymce.MyTextFieldTemplates.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/tinymce/MyTextFieldTemplates",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/tinymce/MyTextFieldTemplates','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/tinymce/MyTextFieldTemplates','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "My Text Field Templates",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 11,
  ls_store_fields : [ { "name": "id", "type": "int" }, { "name": "user" }, 'userHidden', { "name": "name" }, { "name": "description" }, { "name": "text" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 0,
  ls_grid_configs : [  ],
  content_type : 43,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.tinymce.MyTextFieldTemplates.detail;
    this.ls_insert_handler = Lino.tinymce.MyTextFieldTemplates.insert;
    var ww = this.containing_window;
    var id2896 = new Ext.form.NumberField({ "selectOnFocus": true });
    var user2897 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a User...", "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/tinymce/MyTextFieldTemplates/user" }) }) });
    var name2898 = new Ext.form.TextField({ "allowBlank": false, "maxLength": 200, "selectOnFocus": true });
    var description2899 = new Ext.form.TextArea({ "growMax": 2000, "selectOnFocus": true });
    var text2900 = new Lino.RichTextPanel({ "containing_panel": this, "selectOnFocus": true, "title": "Template Text" });
    var mobile_item_disp2901 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp2902 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp2903 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp2904 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
      text2900.refresh();
    };
    this.ls_columns = [ { "align": "right", "colIndex": 0, "dataIndex": "id", "editable": true, "editor": id2896, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "sortable": true, "tooltip": "(tinymce.MyTextFieldTemplates.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 1, "dataIndex": "user", "editable": true, "editor": user2897, "filter": { "type": "string" }, "header": "Author", "renderer": Lino.fk_renderer('userHidden','Lino.users.Users.detail'), "sortable": false, "tooltip": "(tinymce.MyTextFieldTemplates.user) ", "width": Lino.chars2width(21) }, { "colIndex": 2, "dataIndex": "name", "editable": true, "editor": name2898, "filter": { "type": "string" }, "header": "Designation", "sortable": true, "tooltip": "(tinymce.MyTextFieldTemplates.name) ", "width": Lino.chars2width(22) }, { "colIndex": 3, "dataIndex": "description", "editable": true, "editor": description2899, "filter": { "type": "string" }, "header": "Description", "sortable": false, "tooltip": "(tinymce.MyTextFieldTemplates.description) ", "width": Lino.chars2width(61) }, { "colIndex": 4, "dataIndex": "text", "editable": true, "editor": text2900, "filter": { "type": "string" }, "header": "Template Text", "sortable": false, "tooltip": "(tinymce.MyTextFieldTemplates.text) ", "width": Lino.chars2width(61) }, { "colIndex": 5, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(tinymce.MyTextFieldTemplates.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 6, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(tinymce.MyTextFieldTemplates.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 7, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(tinymce.MyTextFieldTemplates.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 8, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(tinymce.MyTextFieldTemplates.workflow_buttons) ", "width": Lino.chars2width(31) } ];
    Lino.tinymce.MyTextFieldTemplates.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.tinymce.MyTextFieldTemplates.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/tinymce/MyTextFieldTemplates", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.tinymce.MyTextFieldTemplates.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/tinymce/MyTextFieldTemplates", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.tinymce.MyTextFieldTemplates.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/tinymce/MyTextFieldTemplates", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.tinymce.MyTextFieldTemplates.insertPanel = Ext.extend(Lino.tinymce.TextFieldTemplates.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/tinymce/MyTextFieldTemplates",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.tinymce.MyTextFieldTemplates.detail;
    this.ls_insert_handler = Lino.tinymce.MyTextFieldTemplates.insert;
    Lino.tinymce.MyTextFieldTemplates.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.tinymce.MyTextFieldTemplates.insert = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.tinymce.MyTextFieldTemplates.insertPanel(p);
});
Lino.tinymce.MyTextFieldTemplates.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/tinymce/MyTextFieldTemplates", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.tinymce.MyTextFieldTemplates.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/tinymce/MyTextFieldTemplates", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.tinymce.MyTextFieldTemplates.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/tinymce/MyTextFieldTemplates", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.tinymce.MyTextFieldTemplates.detailPanel = Ext.extend(Lino.tinymce.TextFieldTemplates.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  ls_url: "/tinymce/MyTextFieldTemplates",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.tinymce.MyTextFieldTemplates.detail;
    this.ls_insert_handler = Lino.tinymce.MyTextFieldTemplates.insert;
    Lino.tinymce.MyTextFieldTemplates.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.tinymce.MyTextFieldTemplates.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.tinymce.MyTextFieldTemplates.detailPanel(p);
});
Lino.tinymce.MyTextFieldTemplates.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/tinymce/MyTextFieldTemplates", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.tinymce.MyTextFieldTemplates.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.tinymce.TextFieldTemplates.ParamsPanel({});
  return new Lino.tinymce.MyTextFieldTemplates.GridPanel(p);
});
Lino.tinymce.MyTextFieldTemplates.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/tinymce/MyTextFieldTemplates", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class comments.CommentTypes
Lino.comments.CommentTypes.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/comments/CommentTypes",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/comments/CommentTypes','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/comments/CommentTypes','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "Comment Types",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 7,
  ls_store_fields : [ { "name": "name" }, { "name": "id", "type": "int" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 1,
  ls_grid_configs : [  ],
  content_type : 45,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.comments.CommentTypes.detail;
    this.ls_insert_handler = Lino.comments.CommentTypes.insert;
    var ww = this.containing_window;
    var name2906 = new Ext.form.TextField({ "allowBlank": false, "maxLength": 200, "selectOnFocus": true });
    var id2907 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var mobile_item_disp2908 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp2909 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp2910 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp2911 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "name", "editable": true, "editor": name2906, "filter": { "type": "string" }, "header": "Designation", "sortable": true, "tooltip": "(comments.CommentTypes.name) ", "width": Lino.chars2width(22) }, { "align": "right", "colIndex": 1, "dataIndex": "id", "editable": true, "editor": id2907, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(comments.CommentTypes.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 2, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(comments.CommentTypes.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 3, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(comments.CommentTypes.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 4, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(comments.CommentTypes.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 5, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(comments.CommentTypes.workflow_buttons) ", "width": Lino.chars2width(31) } ];
    Lino.comments.CommentTypes.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.comments.CommentTypes.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/comments/CommentTypes", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.comments.CommentTypes.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/comments/CommentTypes", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.comments.CommentTypes.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/comments/CommentTypes", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.comments.CommentTypes.insertPanel = Ext.extend(Lino.comments.CommentTypes.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/comments/CommentTypes",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.comments.CommentTypes.detail;
    this.ls_insert_handler = Lino.comments.CommentTypes.insert;
    Lino.comments.CommentTypes.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.comments.CommentTypes.insert = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.comments.CommentTypes.insertPanel(p);
});
Lino.comments.CommentTypes.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/comments/CommentTypes", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.comments.CommentTypes.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/comments/CommentTypes", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.comments.CommentTypes.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/comments/CommentTypes", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.comments.CommentTypes.detailPanel = Ext.extend(Lino.comments.CommentTypes.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  ls_url: "/comments/CommentTypes",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.comments.CommentTypes.detail;
    this.ls_insert_handler = Lino.comments.CommentTypes.insert;
    Lino.comments.CommentTypes.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.comments.CommentTypes.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.comments.CommentTypes.detailPanel(p);
});
Lino.comments.CommentTypes.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/comments/CommentTypes", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.comments.CommentTypes.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.comments.CommentTypes.GridPanel(p);
});
Lino.comments.CommentTypes.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/comments/CommentTypes", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class comments.Comments
Lino.comments.Comments.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/comments/Comments",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/comments/Comments','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/comments/Comments','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "Comments",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 22,
  ls_store_fields : [ { "name": "id", "type": "int" }, { "name": "modified" }, { "name": "created" }, { "name": "user" }, 'userHidden', { "name": "owner_type" }, 'owner_typeHidden', { "name": "owner_id" }, 'owner_idHidden', { "name": "short_text" }, { "name": "reply_to" }, 'reply_toHidden', { "name": "more_text" }, { "name": "comment_type" }, 'comment_typeHidden', { "name": "owner" }, { "name": "created_natural" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 0,
  ls_grid_configs : [  ],
  content_type : 44,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.comments.Comments.detail;
    this.ls_insert_handler = Lino.comments.Comments.insert;
    var ww = this.containing_window;
    var id2913 = new Ext.form.NumberField({ "selectOnFocus": true });
    var modified2914 = new Ext.form.DisplayField({ "disabled": true, "value": "<br>" });
    var created2915 = new Ext.form.DisplayField({ "disabled": true, "value": "<br>" });
    var user2916 = new Lino.RemoteComboFieldElement({ "disabled": true, "emptyText": "Select a User...", "pageSize": 20, "preferred_width": 15, "store": new Lino.ComplexRemoteComboStore({  }) });
    var owner_type2917 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a content type...", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/comments/Comments/owner_type" }) }) });
    var owner_id2918 = new Lino.RemoteComboFieldElement({ "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/comments/Comments/owner_id" }) }) });
    var short_text2919 = new Lino.RichTextPanel({ "allowBlank": false, "containing_panel": this, "selectOnFocus": true, "title": "Short text" });
    var reply_to2920 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Comment...", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/comments/Comments/reply_to" }) }) });
    var more_text2921 = new Lino.RichTextPanel({ "containing_panel": this, "selectOnFocus": true, "title": "More text" });
    var comment_type2922 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Comment Type...", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/comments/Comments/comment_type" }) }) });
    var owner_disp2923 = new Ext.form.DisplayField({ "disabled": true });
    var created_natural_disp2924 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var mobile_item_disp2925 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp2926 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp2927 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp2928 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
      owner_id2918.setContextValue('owner_type', record ? record.data['owner_typeHidden'] : undefined);
      short_text2919.refresh();
      more_text2921.refresh();
    };
    this.onRender = function(ct, position) {
      owner_type2917.on('change',Lino.chooser_handler(owner_id2918,'owner_type'));
      Lino.comments.Comments.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "align": "right", "colIndex": 0, "dataIndex": "id", "editable": true, "editor": id2913, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "sortable": true, "tooltip": "(comments.Comments.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 1, "dataIndex": "modified", "editable": false, "header": "Modified", "sortable": true, "tooltip": "(comments.Comments.modified) ", "width": Lino.chars2width(17) }, { "colIndex": 2, "dataIndex": "created", "editable": false, "header": "Created", "sortable": true, "tooltip": "(comments.Comments.created) The timestame when this object was created.", "width": Lino.chars2width(17) }, { "colIndex": 3, "dataIndex": "user", "editable": false, "filter": { "type": "string" }, "header": "Author", "renderer": Lino.fk_renderer('userHidden','Lino.users.Users.detail'), "sortable": false, "tooltip": "(comments.Comments.user) ", "width": Lino.chars2width(21) }, { "colIndex": 4, "dataIndex": "owner_type", "editable": true, "editor": owner_type2917, "filter": { "type": "string" }, "header": "Controlled by (type)", "renderer": Lino.fk_renderer('owner_typeHidden','Lino.gfks.ContentTypes.detail'), "sortable": false, "tooltip": "(comments.Comments.owner_type) ", "width": Lino.chars2width(21) }, { "colIndex": 5, "dataIndex": "owner_id", "editable": true, "editor": owner_id2918, "filter": { "type": "string" }, "header": "Controlled by (object)", "sortable": false, "tooltip": "(comments.Comments.owner_id) ", "width": Lino.chars2width(11) }, { "colIndex": 6, "dataIndex": "short_text", "editable": true, "editor": short_text2919, "filter": { "type": "string" }, "header": "Short text", "sortable": false, "tooltip": "(comments.Comments.short_text) A short \"abstract\" of your comment. This should not be more\nthan one paragraph.", "width": Lino.chars2width(61) }, { "colIndex": 7, "dataIndex": "reply_to", "editable": true, "editor": reply_to2920, "filter": { "type": "string" }, "header": "Reply to", "renderer": Lino.fk_renderer('reply_toHidden','Lino.comments.Comments.detail'), "sortable": false, "tooltip": "(comments.Comments.reply_to) ", "width": Lino.chars2width(21) }, { "colIndex": 8, "dataIndex": "more_text", "editable": true, "editor": more_text2921, "filter": { "type": "string" }, "header": "More text", "sortable": false, "tooltip": "(comments.Comments.more_text) ", "width": Lino.chars2width(61) }, { "colIndex": 9, "dataIndex": "comment_type", "editable": true, "editor": comment_type2922, "filter": { "type": "string" }, "header": "Comment Type", "renderer": Lino.fk_renderer('comment_typeHidden','Lino.comments.CommentTypes.detail'), "sortable": false, "tooltip": "(comments.Comments.comment_type) ", "width": Lino.chars2width(21) }, { "colIndex": 10, "dataIndex": "owner", "editable": false, "header": "Controlled by", "sortable": false, "tooltip": "(comments.Comments.owner) ", "width": Lino.chars2width(11) }, { "colIndex": 11, "dataIndex": "created_natural", "editable": false, "header": "Created", "hidden": true, "sortable": false, "tooltip": "(comments.Comments.created_natural) ", "width": Lino.chars2width(31) }, { "colIndex": 12, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(comments.Comments.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 13, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(comments.Comments.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 14, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(comments.Comments.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 15, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(comments.Comments.workflow_buttons) ", "width": Lino.chars2width(31) } ];
    Lino.comments.Comments.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.comments.Comments.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/comments/Comments", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.comments.Comments.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/comments/Comments", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.comments.Comments.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/comments/Comments", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.comments.Comments.insertPanel = Ext.extend(Lino.comments.Comments.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/comments/Comments",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.comments.Comments.detail;
    this.ls_insert_handler = Lino.comments.Comments.insert;
    Lino.comments.Comments.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.comments.Comments.insert = new Lino.WindowAction({ "draggable": true, "height": Lino.rows2height(10), "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.comments.Comments.insertPanel(p);
});
Lino.comments.Comments.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/comments/Comments", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.comments.Comments.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/comments/Comments", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.comments.Comments.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/comments/Comments", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.comments.Comments.detailPanel = Ext.extend(Lino.comments.Comments.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  ls_url: "/comments/Comments",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.comments.Comments.detail;
    this.ls_insert_handler = Lino.comments.Comments.insert;
    Lino.comments.Comments.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.comments.Comments.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.comments.Comments.detailPanel(p);
});
Lino.comments.Comments.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/comments/Comments", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.comments.Comments.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.comments.Comments.ParamsPanel({});
  return new Lino.comments.Comments.GridPanel(p);
});
Lino.comments.Comments.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/comments/Comments", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class comments.MyComments
Lino.comments.MyComments.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/comments/MyComments",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/comments/MyComments','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/comments/MyComments','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "My Comments",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 22,
  ls_store_fields : [ { "name": "modified" }, { "name": "short_text" }, { "name": "owner" }, { "name": "id", "type": "int" }, { "name": "created" }, { "name": "user" }, 'userHidden', { "name": "owner_type" }, 'owner_typeHidden', { "name": "owner_id" }, 'owner_idHidden', { "name": "reply_to" }, 'reply_toHidden', { "name": "more_text" }, { "name": "comment_type" }, 'comment_typeHidden', { "name": "created_natural" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 3,
  ls_grid_configs : [  ],
  content_type : 44,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.comments.MyComments.detail;
    this.ls_insert_handler = Lino.comments.MyComments.insert;
    var ww = this.containing_window;
    var modified2930 = new Ext.form.DisplayField({ "disabled": true, "value": "<br>" });
    var short_text2931 = new Lino.RichTextPanel({ "allowBlank": false, "containing_panel": this, "selectOnFocus": true, "title": "Short text" });
    var owner_disp2932 = new Ext.form.DisplayField({ "disabled": true });
    var id2933 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var created2934 = new Ext.form.DisplayField({ "disabled": true, "hidden": true, "value": "<br>" });
    var user2935 = new Lino.RemoteComboFieldElement({ "disabled": true, "emptyText": "Select a User...", "hidden": true, "pageSize": 20, "preferred_width": 15, "store": new Lino.ComplexRemoteComboStore({  }) });
    var owner_type2936 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a content type...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/comments/MyComments/owner_type" }) }) });
    var owner_id2937 = new Lino.RemoteComboFieldElement({ "hidden": true, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/comments/MyComments/owner_id" }) }) });
    var reply_to2938 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Comment...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/comments/MyComments/reply_to" }) }) });
    var more_text2939 = new Lino.RichTextPanel({ "containing_panel": this, "hidden": true, "selectOnFocus": true, "title": "More text" });
    var comment_type2940 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Comment Type...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/comments/MyComments/comment_type" }) }) });
    var created_natural_disp2941 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var mobile_item_disp2942 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp2943 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp2944 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp2945 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
      short_text2931.refresh();
      owner_id2937.setContextValue('owner_type', record ? record.data['owner_typeHidden'] : undefined);
      more_text2939.refresh();
    };
    this.onRender = function(ct, position) {
      owner_type2936.on('change',Lino.chooser_handler(owner_id2937,'owner_type'));
      Lino.comments.MyComments.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "modified", "editable": false, "header": "Modified", "sortable": true, "tooltip": "(comments.MyComments.modified) ", "width": Lino.chars2width(17) }, { "colIndex": 1, "dataIndex": "short_text", "editable": true, "editor": short_text2931, "filter": { "type": "string" }, "header": "Short text", "sortable": false, "tooltip": "(comments.MyComments.short_text) A short \"abstract\" of your comment. This should not be more\nthan one paragraph.", "width": Lino.chars2width(61) }, { "colIndex": 2, "dataIndex": "owner", "editable": false, "header": "Controlled by", "sortable": false, "tooltip": "(comments.MyComments.owner) ", "width": Lino.chars2width(11) }, { "align": "right", "colIndex": 3, "dataIndex": "id", "editable": true, "editor": id2933, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(comments.MyComments.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 4, "dataIndex": "created", "editable": false, "header": "Created", "hidden": true, "sortable": true, "tooltip": "(comments.MyComments.created) The timestame when this object was created.", "width": Lino.chars2width(17) }, { "colIndex": 5, "dataIndex": "user", "editable": false, "filter": { "type": "string" }, "header": "Author", "hidden": true, "renderer": Lino.fk_renderer('userHidden','Lino.users.Users.detail'), "sortable": false, "tooltip": "(comments.MyComments.user) ", "width": Lino.chars2width(21) }, { "colIndex": 6, "dataIndex": "owner_type", "editable": true, "editor": owner_type2936, "filter": { "type": "string" }, "header": "Controlled by (type)", "hidden": true, "renderer": Lino.fk_renderer('owner_typeHidden','Lino.gfks.ContentTypes.detail'), "sortable": false, "tooltip": "(comments.MyComments.owner_type) ", "width": Lino.chars2width(21) }, { "colIndex": 7, "dataIndex": "owner_id", "editable": true, "editor": owner_id2937, "filter": { "type": "string" }, "header": "Controlled by (object)", "hidden": true, "sortable": false, "tooltip": "(comments.MyComments.owner_id) ", "width": Lino.chars2width(11) }, { "colIndex": 8, "dataIndex": "reply_to", "editable": true, "editor": reply_to2938, "filter": { "type": "string" }, "header": "Reply to", "hidden": true, "renderer": Lino.fk_renderer('reply_toHidden','Lino.comments.Comments.detail'), "sortable": false, "tooltip": "(comments.MyComments.reply_to) ", "width": Lino.chars2width(21) }, { "colIndex": 9, "dataIndex": "more_text", "editable": true, "editor": more_text2939, "filter": { "type": "string" }, "header": "More text", "hidden": true, "sortable": false, "tooltip": "(comments.MyComments.more_text) ", "width": Lino.chars2width(61) }, { "colIndex": 10, "dataIndex": "comment_type", "editable": true, "editor": comment_type2940, "filter": { "type": "string" }, "header": "Comment Type", "hidden": true, "renderer": Lino.fk_renderer('comment_typeHidden','Lino.comments.CommentTypes.detail'), "sortable": false, "tooltip": "(comments.MyComments.comment_type) ", "width": Lino.chars2width(21) }, { "colIndex": 11, "dataIndex": "created_natural", "editable": false, "header": "Created", "hidden": true, "sortable": false, "tooltip": "(comments.MyComments.created_natural) ", "width": Lino.chars2width(31) }, { "colIndex": 12, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(comments.MyComments.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 13, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(comments.MyComments.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 14, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(comments.MyComments.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 15, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(comments.MyComments.workflow_buttons) ", "width": Lino.chars2width(31) } ];
    Lino.comments.MyComments.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.comments.MyComments.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/comments/MyComments", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.comments.MyComments.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/comments/MyComments", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.comments.MyComments.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/comments/MyComments", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.comments.MyComments.insertPanel = Ext.extend(Lino.comments.Comments.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/comments/MyComments",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.comments.MyComments.detail;
    this.ls_insert_handler = Lino.comments.MyComments.insert;
    Lino.comments.MyComments.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.comments.MyComments.insert = new Lino.WindowAction({ "draggable": true, "height": Lino.rows2height(10), "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.comments.MyComments.insertPanel(p);
});
Lino.comments.MyComments.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/comments/MyComments", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.comments.MyComments.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/comments/MyComments", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.comments.MyComments.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/comments/MyComments", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.comments.MyComments.detailPanel = Ext.extend(Lino.comments.Comments.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  ls_url: "/comments/MyComments",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.comments.MyComments.detail;
    this.ls_insert_handler = Lino.comments.MyComments.insert;
    Lino.comments.MyComments.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.comments.MyComments.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.comments.MyComments.detailPanel(p);
});
Lino.comments.MyComments.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/comments/MyComments", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.comments.MyComments.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.comments.Comments.ParamsPanel({});
  return new Lino.comments.MyComments.GridPanel(p);
});
Lino.comments.MyComments.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/comments/MyComments", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class comments.CommentsByX
Lino.comments.CommentsByX.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/comments/CommentsByX",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/comments/CommentsByX','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/comments/CommentsByX','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "Comments",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 22,
  ls_store_fields : [ { "name": "id", "type": "int" }, { "name": "modified" }, { "name": "created" }, { "name": "user" }, 'userHidden', { "name": "owner_type" }, 'owner_typeHidden', { "name": "owner_id" }, 'owner_idHidden', { "name": "short_text" }, { "name": "reply_to" }, 'reply_toHidden', { "name": "more_text" }, { "name": "comment_type" }, 'comment_typeHidden', { "name": "owner" }, { "name": "created_natural" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 0,
  ls_grid_configs : [  ],
  content_type : 44,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.comments.CommentsByX.detail;
    this.ls_insert_handler = Lino.comments.CommentsByX.insert;
    var ww = this.containing_window;
    var id2947 = new Ext.form.NumberField({ "selectOnFocus": true });
    var modified2948 = new Ext.form.DisplayField({ "disabled": true, "value": "<br>" });
    var created2949 = new Ext.form.DisplayField({ "disabled": true, "value": "<br>" });
    var user2950 = new Lino.RemoteComboFieldElement({ "disabled": true, "emptyText": "Select a User...", "pageSize": 20, "preferred_width": 15, "store": new Lino.ComplexRemoteComboStore({  }) });
    var owner_type2951 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a content type...", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/comments/CommentsByX/owner_type" }) }) });
    var owner_id2952 = new Lino.RemoteComboFieldElement({ "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/comments/CommentsByX/owner_id" }) }) });
    var short_text2953 = new Lino.RichTextPanel({ "allowBlank": false, "containing_panel": this, "selectOnFocus": true, "title": "Short text" });
    var reply_to2954 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Comment...", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/comments/CommentsByX/reply_to" }) }) });
    var more_text2955 = new Lino.RichTextPanel({ "containing_panel": this, "selectOnFocus": true, "title": "More text" });
    var comment_type2956 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Comment Type...", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/comments/CommentsByX/comment_type" }) }) });
    var owner_disp2957 = new Ext.form.DisplayField({ "disabled": true });
    var created_natural_disp2958 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var mobile_item_disp2959 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp2960 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp2961 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp2962 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
      owner_id2952.setContextValue('owner_type', record ? record.data['owner_typeHidden'] : undefined);
      short_text2953.refresh();
      more_text2955.refresh();
    };
    this.onRender = function(ct, position) {
      owner_type2951.on('change',Lino.chooser_handler(owner_id2952,'owner_type'));
      Lino.comments.CommentsByX.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "align": "right", "colIndex": 0, "dataIndex": "id", "editable": true, "editor": id2947, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "sortable": true, "tooltip": "(comments.CommentsByX.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 1, "dataIndex": "modified", "editable": false, "header": "Modified", "sortable": true, "tooltip": "(comments.CommentsByX.modified) ", "width": Lino.chars2width(17) }, { "colIndex": 2, "dataIndex": "created", "editable": false, "header": "Created", "sortable": true, "tooltip": "(comments.CommentsByX.created) The timestame when this object was created.", "width": Lino.chars2width(17) }, { "colIndex": 3, "dataIndex": "user", "editable": false, "filter": { "type": "string" }, "header": "Author", "renderer": Lino.fk_renderer('userHidden','Lino.users.Users.detail'), "sortable": false, "tooltip": "(comments.CommentsByX.user) ", "width": Lino.chars2width(21) }, { "colIndex": 4, "dataIndex": "owner_type", "editable": true, "editor": owner_type2951, "filter": { "type": "string" }, "header": "Controlled by (type)", "renderer": Lino.fk_renderer('owner_typeHidden','Lino.gfks.ContentTypes.detail'), "sortable": false, "tooltip": "(comments.CommentsByX.owner_type) ", "width": Lino.chars2width(21) }, { "colIndex": 5, "dataIndex": "owner_id", "editable": true, "editor": owner_id2952, "filter": { "type": "string" }, "header": "Controlled by (object)", "sortable": false, "tooltip": "(comments.CommentsByX.owner_id) ", "width": Lino.chars2width(11) }, { "colIndex": 6, "dataIndex": "short_text", "editable": true, "editor": short_text2953, "filter": { "type": "string" }, "header": "Short text", "sortable": false, "tooltip": "(comments.CommentsByX.short_text) A short \"abstract\" of your comment. This should not be more\nthan one paragraph.", "width": Lino.chars2width(61) }, { "colIndex": 7, "dataIndex": "reply_to", "editable": true, "editor": reply_to2954, "filter": { "type": "string" }, "header": "Reply to", "renderer": Lino.fk_renderer('reply_toHidden','Lino.comments.Comments.detail'), "sortable": false, "tooltip": "(comments.CommentsByX.reply_to) ", "width": Lino.chars2width(21) }, { "colIndex": 8, "dataIndex": "more_text", "editable": true, "editor": more_text2955, "filter": { "type": "string" }, "header": "More text", "sortable": false, "tooltip": "(comments.CommentsByX.more_text) ", "width": Lino.chars2width(61) }, { "colIndex": 9, "dataIndex": "comment_type", "editable": true, "editor": comment_type2956, "filter": { "type": "string" }, "header": "Comment Type", "renderer": Lino.fk_renderer('comment_typeHidden','Lino.comments.CommentTypes.detail'), "sortable": false, "tooltip": "(comments.CommentsByX.comment_type) ", "width": Lino.chars2width(21) }, { "colIndex": 10, "dataIndex": "owner", "editable": false, "header": "Controlled by", "sortable": false, "tooltip": "(comments.CommentsByX.owner) ", "width": Lino.chars2width(11) }, { "colIndex": 11, "dataIndex": "created_natural", "editable": false, "header": "Created", "hidden": true, "sortable": false, "tooltip": "(comments.CommentsByX.created_natural) ", "width": Lino.chars2width(31) }, { "colIndex": 12, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(comments.CommentsByX.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 13, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(comments.CommentsByX.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 14, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(comments.CommentsByX.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 15, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(comments.CommentsByX.workflow_buttons) ", "width": Lino.chars2width(31) } ];
    Lino.comments.CommentsByX.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.comments.CommentsByX.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/comments/CommentsByX", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.comments.CommentsByX.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/comments/CommentsByX", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.comments.CommentsByX.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/comments/CommentsByX", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.comments.CommentsByX.insertPanel = Ext.extend(Lino.comments.Comments.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/comments/CommentsByX",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.comments.CommentsByX.detail;
    this.ls_insert_handler = Lino.comments.CommentsByX.insert;
    Lino.comments.CommentsByX.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.comments.CommentsByX.insert = new Lino.WindowAction({ "draggable": true, "height": Lino.rows2height(10), "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.comments.CommentsByX.insertPanel(p);
});
Lino.comments.CommentsByX.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/comments/CommentsByX", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.comments.CommentsByX.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/comments/CommentsByX", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.comments.CommentsByX.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/comments/CommentsByX", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.comments.CommentsByX.detailPanel = Ext.extend(Lino.comments.Comments.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  ls_url: "/comments/CommentsByX",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.comments.CommentsByX.detail;
    this.ls_insert_handler = Lino.comments.CommentsByX.insert;
    Lino.comments.CommentsByX.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.comments.CommentsByX.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.comments.CommentsByX.detailPanel(p);
});
Lino.comments.CommentsByX.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/comments/CommentsByX", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.comments.CommentsByX.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.comments.Comments.ParamsPanel({});
  return new Lino.comments.CommentsByX.GridPanel(p);
});
Lino.comments.CommentsByX.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/comments/CommentsByX", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class comments.AllComments
Lino.comments.AllComments.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/comments/AllComments",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/comments/AllComments','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/comments/AllComments','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "Comments",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 22,
  ls_store_fields : [ { "name": "id", "type": "int" }, { "name": "modified" }, { "name": "created" }, { "name": "user" }, 'userHidden', { "name": "owner_type" }, 'owner_typeHidden', { "name": "owner_id" }, 'owner_idHidden', { "name": "short_text" }, { "name": "reply_to" }, 'reply_toHidden', { "name": "more_text" }, { "name": "comment_type" }, 'comment_typeHidden', { "name": "owner" }, { "name": "created_natural" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 0,
  ls_grid_configs : [  ],
  content_type : 44,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.comments.AllComments.detail;
    this.ls_insert_handler = Lino.comments.AllComments.insert;
    var ww = this.containing_window;
    var id2964 = new Ext.form.NumberField({ "selectOnFocus": true });
    var modified2965 = new Ext.form.DisplayField({ "disabled": true, "value": "<br>" });
    var created2966 = new Ext.form.DisplayField({ "disabled": true, "value": "<br>" });
    var user2967 = new Lino.RemoteComboFieldElement({ "disabled": true, "emptyText": "Select a User...", "pageSize": 20, "preferred_width": 15, "store": new Lino.ComplexRemoteComboStore({  }) });
    var owner_type2968 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a content type...", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/comments/AllComments/owner_type" }) }) });
    var owner_id2969 = new Lino.RemoteComboFieldElement({ "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/comments/AllComments/owner_id" }) }) });
    var short_text2970 = new Lino.RichTextPanel({ "allowBlank": false, "containing_panel": this, "selectOnFocus": true, "title": "Short text" });
    var reply_to2971 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Comment...", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/comments/AllComments/reply_to" }) }) });
    var more_text2972 = new Lino.RichTextPanel({ "containing_panel": this, "selectOnFocus": true, "title": "More text" });
    var comment_type2973 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Comment Type...", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/comments/AllComments/comment_type" }) }) });
    var owner_disp2974 = new Ext.form.DisplayField({ "disabled": true });
    var created_natural_disp2975 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var mobile_item_disp2976 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp2977 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp2978 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp2979 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
      owner_id2969.setContextValue('owner_type', record ? record.data['owner_typeHidden'] : undefined);
      short_text2970.refresh();
      more_text2972.refresh();
    };
    this.onRender = function(ct, position) {
      owner_type2968.on('change',Lino.chooser_handler(owner_id2969,'owner_type'));
      Lino.comments.AllComments.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "align": "right", "colIndex": 0, "dataIndex": "id", "editable": true, "editor": id2964, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "sortable": true, "tooltip": "(comments.AllComments.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 1, "dataIndex": "modified", "editable": false, "header": "Modified", "sortable": true, "tooltip": "(comments.AllComments.modified) ", "width": Lino.chars2width(17) }, { "colIndex": 2, "dataIndex": "created", "editable": false, "header": "Created", "sortable": true, "tooltip": "(comments.AllComments.created) The timestame when this object was created.", "width": Lino.chars2width(17) }, { "colIndex": 3, "dataIndex": "user", "editable": false, "filter": { "type": "string" }, "header": "Author", "renderer": Lino.fk_renderer('userHidden','Lino.users.Users.detail'), "sortable": false, "tooltip": "(comments.AllComments.user) ", "width": Lino.chars2width(21) }, { "colIndex": 4, "dataIndex": "owner_type", "editable": true, "editor": owner_type2968, "filter": { "type": "string" }, "header": "Controlled by (type)", "renderer": Lino.fk_renderer('owner_typeHidden','Lino.gfks.ContentTypes.detail'), "sortable": false, "tooltip": "(comments.AllComments.owner_type) ", "width": Lino.chars2width(21) }, { "colIndex": 5, "dataIndex": "owner_id", "editable": true, "editor": owner_id2969, "filter": { "type": "string" }, "header": "Controlled by (object)", "sortable": false, "tooltip": "(comments.AllComments.owner_id) ", "width": Lino.chars2width(11) }, { "colIndex": 6, "dataIndex": "short_text", "editable": true, "editor": short_text2970, "filter": { "type": "string" }, "header": "Short text", "sortable": false, "tooltip": "(comments.AllComments.short_text) A short \"abstract\" of your comment. This should not be more\nthan one paragraph.", "width": Lino.chars2width(61) }, { "colIndex": 7, "dataIndex": "reply_to", "editable": true, "editor": reply_to2971, "filter": { "type": "string" }, "header": "Reply to", "renderer": Lino.fk_renderer('reply_toHidden','Lino.comments.Comments.detail'), "sortable": false, "tooltip": "(comments.AllComments.reply_to) ", "width": Lino.chars2width(21) }, { "colIndex": 8, "dataIndex": "more_text", "editable": true, "editor": more_text2972, "filter": { "type": "string" }, "header": "More text", "sortable": false, "tooltip": "(comments.AllComments.more_text) ", "width": Lino.chars2width(61) }, { "colIndex": 9, "dataIndex": "comment_type", "editable": true, "editor": comment_type2973, "filter": { "type": "string" }, "header": "Comment Type", "renderer": Lino.fk_renderer('comment_typeHidden','Lino.comments.CommentTypes.detail'), "sortable": false, "tooltip": "(comments.AllComments.comment_type) ", "width": Lino.chars2width(21) }, { "colIndex": 10, "dataIndex": "owner", "editable": false, "header": "Controlled by", "sortable": false, "tooltip": "(comments.AllComments.owner) ", "width": Lino.chars2width(11) }, { "colIndex": 11, "dataIndex": "created_natural", "editable": false, "header": "Created", "hidden": true, "sortable": false, "tooltip": "(comments.AllComments.created_natural) ", "width": Lino.chars2width(31) }, { "colIndex": 12, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(comments.AllComments.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 13, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(comments.AllComments.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 14, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(comments.AllComments.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 15, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(comments.AllComments.workflow_buttons) ", "width": Lino.chars2width(31) } ];
    Lino.comments.AllComments.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.comments.AllComments.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/comments/AllComments", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.comments.AllComments.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/comments/AllComments", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.comments.AllComments.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/comments/AllComments", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.comments.AllComments.insertPanel = Ext.extend(Lino.comments.Comments.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/comments/AllComments",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.comments.AllComments.detail;
    this.ls_insert_handler = Lino.comments.AllComments.insert;
    Lino.comments.AllComments.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.comments.AllComments.insert = new Lino.WindowAction({ "draggable": true, "height": Lino.rows2height(10), "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.comments.AllComments.insertPanel(p);
});
Lino.comments.AllComments.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/comments/AllComments", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.comments.AllComments.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/comments/AllComments", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.comments.AllComments.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/comments/AllComments", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.comments.AllComments.detailPanel = Ext.extend(Lino.comments.Comments.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  ls_url: "/comments/AllComments",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.comments.AllComments.detail;
    this.ls_insert_handler = Lino.comments.AllComments.insert;
    Lino.comments.AllComments.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.comments.AllComments.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.comments.AllComments.detailPanel(p);
});
Lino.comments.AllComments.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/comments/AllComments", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.comments.AllComments.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.comments.Comments.ParamsPanel({});
  return new Lino.comments.AllComments.GridPanel(p);
});
Lino.comments.AllComments.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/comments/AllComments", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class comments.RecentComments
Lino.comments.RecentComments.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/comments/RecentComments",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/comments/RecentComments','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/comments/RecentComments','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "Recent Comments",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 22,
  ls_store_fields : [ { "name": "short_text" }, { "name": "created" }, { "name": "user" }, 'userHidden', { "name": "id", "type": "int" }, { "name": "modified" }, { "name": "owner_type" }, 'owner_typeHidden', { "name": "owner_id" }, 'owner_idHidden', { "name": "reply_to" }, 'reply_toHidden', { "name": "more_text" }, { "name": "comment_type" }, 'comment_typeHidden', { "name": "owner" }, { "name": "created_natural" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 4,
  ls_grid_configs : [  ],
  content_type : 44,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.comments.RecentComments.detail;
    this.ls_insert_handler = Lino.comments.RecentComments.insert;
    var ww = this.containing_window;
    var short_text2981 = new Lino.RichTextPanel({ "allowBlank": false, "containing_panel": this, "selectOnFocus": true, "title": "Short text" });
    var created2982 = new Ext.form.DisplayField({ "disabled": true, "value": "<br>" });
    var user2983 = new Lino.RemoteComboFieldElement({ "disabled": true, "emptyText": "Select a User...", "pageSize": 20, "preferred_width": 15, "store": new Lino.ComplexRemoteComboStore({  }) });
    var id2984 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var modified2985 = new Ext.form.DisplayField({ "disabled": true, "hidden": true, "value": "<br>" });
    var owner_type2986 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a content type...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/comments/RecentComments/owner_type" }) }) });
    var owner_id2987 = new Lino.RemoteComboFieldElement({ "hidden": true, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/comments/RecentComments/owner_id" }) }) });
    var reply_to2988 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Comment...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/comments/RecentComments/reply_to" }) }) });
    var more_text2989 = new Lino.RichTextPanel({ "containing_panel": this, "hidden": true, "selectOnFocus": true, "title": "More text" });
    var comment_type2990 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Comment Type...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/comments/RecentComments/comment_type" }) }) });
    var owner_disp2991 = new Ext.form.DisplayField({ "disabled": true, "hidden": true });
    var created_natural_disp2992 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var mobile_item_disp2993 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp2994 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp2995 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp2996 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
      short_text2981.refresh();
      owner_id2987.setContextValue('owner_type', record ? record.data['owner_typeHidden'] : undefined);
      more_text2989.refresh();
    };
    this.onRender = function(ct, position) {
      owner_type2986.on('change',Lino.chooser_handler(owner_id2987,'owner_type'));
      Lino.comments.RecentComments.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "short_text", "editable": true, "editor": short_text2981, "filter": { "type": "string" }, "header": "Short text", "sortable": false, "tooltip": "(comments.RecentComments.short_text) A short \"abstract\" of your comment. This should not be more\nthan one paragraph.", "width": Lino.chars2width(61) }, { "colIndex": 1, "dataIndex": "created", "editable": false, "header": "Created", "sortable": true, "tooltip": "(comments.RecentComments.created) The timestame when this object was created.", "width": Lino.chars2width(17) }, { "colIndex": 2, "dataIndex": "user", "editable": false, "filter": { "type": "string" }, "header": "Author", "renderer": Lino.fk_renderer('userHidden','Lino.users.Users.detail'), "sortable": false, "tooltip": "(comments.RecentComments.user) ", "width": Lino.chars2width(21) }, { "align": "right", "colIndex": 3, "dataIndex": "id", "editable": true, "editor": id2984, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(comments.RecentComments.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 4, "dataIndex": "modified", "editable": false, "header": "Modified", "hidden": true, "sortable": true, "tooltip": "(comments.RecentComments.modified) ", "width": Lino.chars2width(17) }, { "colIndex": 5, "dataIndex": "owner_type", "editable": true, "editor": owner_type2986, "filter": { "type": "string" }, "header": "Controlled by (type)", "hidden": true, "renderer": Lino.fk_renderer('owner_typeHidden','Lino.gfks.ContentTypes.detail'), "sortable": false, "tooltip": "(comments.RecentComments.owner_type) ", "width": Lino.chars2width(21) }, { "colIndex": 6, "dataIndex": "owner_id", "editable": true, "editor": owner_id2987, "filter": { "type": "string" }, "header": "Controlled by (object)", "hidden": true, "sortable": false, "tooltip": "(comments.RecentComments.owner_id) ", "width": Lino.chars2width(11) }, { "colIndex": 7, "dataIndex": "reply_to", "editable": true, "editor": reply_to2988, "filter": { "type": "string" }, "header": "Reply to", "hidden": true, "renderer": Lino.fk_renderer('reply_toHidden','Lino.comments.Comments.detail'), "sortable": false, "tooltip": "(comments.RecentComments.reply_to) ", "width": Lino.chars2width(21) }, { "colIndex": 8, "dataIndex": "more_text", "editable": true, "editor": more_text2989, "filter": { "type": "string" }, "header": "More text", "hidden": true, "sortable": false, "tooltip": "(comments.RecentComments.more_text) ", "width": Lino.chars2width(61) }, { "colIndex": 9, "dataIndex": "comment_type", "editable": true, "editor": comment_type2990, "filter": { "type": "string" }, "header": "Comment Type", "hidden": true, "renderer": Lino.fk_renderer('comment_typeHidden','Lino.comments.CommentTypes.detail'), "sortable": false, "tooltip": "(comments.RecentComments.comment_type) ", "width": Lino.chars2width(21) }, { "colIndex": 10, "dataIndex": "owner", "editable": false, "header": "Controlled by", "hidden": true, "sortable": false, "tooltip": "(comments.RecentComments.owner) ", "width": Lino.chars2width(11) }, { "colIndex": 11, "dataIndex": "created_natural", "editable": false, "header": "Created", "hidden": true, "sortable": false, "tooltip": "(comments.RecentComments.created_natural) ", "width": Lino.chars2width(31) }, { "colIndex": 12, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(comments.RecentComments.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 13, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(comments.RecentComments.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 14, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(comments.RecentComments.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 15, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(comments.RecentComments.workflow_buttons) ", "width": Lino.chars2width(31) } ];
    Lino.comments.RecentComments.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.comments.RecentComments.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/comments/RecentComments", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.comments.RecentComments.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/comments/RecentComments", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.comments.RecentComments.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/comments/RecentComments", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.comments.RecentComments.insertPanel = Ext.extend(Lino.comments.Comments.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/comments/RecentComments",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.comments.RecentComments.detail;
    this.ls_insert_handler = Lino.comments.RecentComments.insert;
    Lino.comments.RecentComments.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.comments.RecentComments.insert = new Lino.WindowAction({ "draggable": true, "height": Lino.rows2height(10), "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.comments.RecentComments.insertPanel(p);
});
Lino.comments.RecentComments.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/comments/RecentComments", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.comments.RecentComments.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/comments/RecentComments", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.comments.RecentComments.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/comments/RecentComments", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.comments.RecentComments.detailPanel = Ext.extend(Lino.comments.Comments.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  ls_url: "/comments/RecentComments",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.comments.RecentComments.detail;
    this.ls_insert_handler = Lino.comments.RecentComments.insert;
    Lino.comments.RecentComments.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.comments.RecentComments.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.comments.RecentComments.detailPanel(p);
});
Lino.comments.RecentComments.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/comments/RecentComments", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.comments.RecentComments.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.comments.Comments.ParamsPanel({});
  return new Lino.comments.RecentComments.GridPanel(p);
});
Lino.comments.RecentComments.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/comments/RecentComments", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class dashboard.Widgets
Lino.dashboard.Widgets.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/dashboard/Widgets",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/dashboard/Widgets','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/dashboard/Widgets','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "itemId": "duplicate", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Duplicate the selected row.") }, "menu_item_text": "\u2687", "overflowText": "\u2687", "panel_btn_handler": Lino.row_action_handler('duplicate','GET',null), "text": " <font size=\"4\">\u2687</font>" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "itemId": "move_up", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Move this row one row upwards.") }, "menu_item_text": "\u25b2", "overflowText": "\u25b2", "panel_btn_handler": Lino.row_action_handler('move_up','GET',null), "text": " <font size=\"4\">\u25b2</font>" }, { "auto_save": true, "itemId": "move_down", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Move this row one row downwards.") }, "menu_item_text": "\u25bc", "overflowText": "\u25bc", "panel_btn_handler": Lino.row_action_handler('move_down','GET',null), "text": " <font size=\"4\">\u25bc</font>" } ],
  cell_edit : true,
  title : "Widgets",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 13,
  ls_store_fields : [ { "name": "id", "type": "int" }, { "name": "seqno", "type": "int", "useNull": true }, { "name": "user" }, 'userHidden', { "name": "item_name" }, { "name": "visible", "type": "boolean" }, { "name": "title" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "move_buttons" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 0,
  ls_grid_configs : [  ],
  content_type : 46,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    var ww = this.containing_window;
    var id2998 = new Ext.form.NumberField({ "selectOnFocus": true });
    var seqno2999 = new Ext.form.NumberField({ "selectOnFocus": true });
    var user3000 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a User...", "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/dashboard/Widgets/user" }) }) });
    var item_name3001 = new Lino.SimpleRemoteComboFieldElement({ "allowBlank": false, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/dashboard/Widgets/item_name" }) }) });
    var visible3002 = new Ext.form.Checkbox({ "checked": true, "selectOnFocus": true });
    var title_disp3003 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var mobile_item_disp3004 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp3005 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp3006 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp3007 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var move_buttons_disp3008 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
      item_name3001.setContextValue('user', record ? record.data['userHidden'] : undefined);
    };
    this.onRender = function(ct, position) {
      user3000.on('change',Lino.chooser_handler(item_name3001,'user'));
      Lino.dashboard.Widgets.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "align": "right", "colIndex": 0, "dataIndex": "id", "editable": true, "editor": id2998, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "sortable": true, "tooltip": "(dashboard.Widgets.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "align": "right", "colIndex": 1, "dataIndex": "seqno", "editable": true, "editor": seqno2999, "filter": { "type": "numeric" }, "format": "0", "header": "No.", "sortable": true, "tooltip": "(dashboard.Widgets.seqno) The sequence number of this item with its parent.", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 2, "dataIndex": "user", "editable": true, "editor": user3000, "filter": { "type": "string" }, "header": "Author", "renderer": Lino.fk_renderer('userHidden','Lino.users.Users.detail'), "sortable": false, "tooltip": "(dashboard.Widgets.user) ", "width": Lino.chars2width(21) }, { "colIndex": 3, "dataIndex": "item_name", "editable": true, "editor": item_name3001, "filter": { "type": "string" }, "header": "Resource", "sortable": false, "tooltip": "(dashboard.Widgets.item_name) ", "width": Lino.chars2width(11) }, { "colIndex": 4, "dataIndex": "visible", "editable": true, "filter": { "type": "boolean" }, "header": "Visible", "sortable": false, "tooltip": "(dashboard.Widgets.visible) ", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 5, "dataIndex": "title", "editable": false, "header": "Label", "hidden": true, "sortable": false, "tooltip": "(dashboard.Widgets.title) ", "width": Lino.chars2width(31) }, { "colIndex": 6, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(dashboard.Widgets.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 7, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(dashboard.Widgets.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 8, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(dashboard.Widgets.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 9, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(dashboard.Widgets.workflow_buttons) ", "width": Lino.chars2width(31) }, { "colIndex": 10, "dataIndex": "move_buttons", "editable": false, "header": "Move", "hidden": true, "sortable": false, "tooltip": "(dashboard.Widgets.move_buttons) ", "width": Lino.chars2width(6) } ];
    Lino.dashboard.Widgets.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.dashboard.Widgets.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/dashboard/Widgets", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.dashboard.Widgets.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/dashboard/Widgets", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.dashboard.Widgets.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/dashboard/Widgets", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.dashboard.Widgets.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/dashboard/Widgets", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.dashboard.Widgets.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/dashboard/Widgets", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.dashboard.Widgets.duplicate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/dashboard/Widgets", "GET", pk, "duplicate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.dashboard.Widgets.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/dashboard/Widgets", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.dashboard.Widgets.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.dashboard.Widgets.ParamsPanel({});
  return new Lino.dashboard.Widgets.GridPanel(p);
});
Lino.dashboard.Widgets.move_up = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/dashboard/Widgets", "GET", pk, "move_up", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.dashboard.Widgets.move_down = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/dashboard/Widgets", "GET", pk, "move_down", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class dashboard.AllWidgets
Lino.dashboard.AllWidgets.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/dashboard/AllWidgets",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/dashboard/AllWidgets','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/dashboard/AllWidgets','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "itemId": "duplicate", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Duplicate the selected row.") }, "menu_item_text": "\u2687", "overflowText": "\u2687", "panel_btn_handler": Lino.row_action_handler('duplicate','GET',null), "text": " <font size=\"4\">\u2687</font>" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "itemId": "move_up", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Move this row one row upwards.") }, "menu_item_text": "\u25b2", "overflowText": "\u25b2", "panel_btn_handler": Lino.row_action_handler('move_up','GET',null), "text": " <font size=\"4\">\u25b2</font>" }, { "auto_save": true, "itemId": "move_down", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Move this row one row downwards.") }, "menu_item_text": "\u25bc", "overflowText": "\u25bc", "panel_btn_handler": Lino.row_action_handler('move_down','GET',null), "text": " <font size=\"4\">\u25bc</font>" } ],
  cell_edit : true,
  title : "All dashboard widgets",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 13,
  ls_store_fields : [ { "name": "id", "type": "int" }, { "name": "user" }, 'userHidden', { "name": "seqno", "type": "int", "useNull": true }, { "name": "move_buttons" }, { "name": "title" }, { "name": "visible", "type": "boolean" }, { "name": "item_name" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 0,
  ls_grid_configs : [  ],
  content_type : 46,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    var ww = this.containing_window;
    var id3010 = new Ext.form.NumberField({ "selectOnFocus": true });
    var user3011 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a User...", "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/dashboard/AllWidgets/user" }) }) });
    var seqno3012 = new Ext.form.NumberField({ "selectOnFocus": true });
    var move_buttons_disp3013 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    var title_disp3014 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    var visible3015 = new Ext.form.Checkbox({ "checked": true, "selectOnFocus": true });
    var item_name3016 = new Lino.SimpleRemoteComboFieldElement({ "allowBlank": false, "hidden": true, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/dashboard/AllWidgets/item_name" }) }) });
    var mobile_item_disp3017 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp3018 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp3019 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp3020 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
      item_name3016.setContextValue('user', record ? record.data['userHidden'] : undefined);
    };
    this.onRender = function(ct, position) {
      user3011.on('change',Lino.chooser_handler(item_name3016,'user'));
      Lino.dashboard.AllWidgets.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "align": "right", "colIndex": 0, "dataIndex": "id", "editable": true, "editor": id3010, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "sortable": true, "tooltip": "(dashboard.AllWidgets.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 1, "dataIndex": "user", "editable": true, "editor": user3011, "filter": { "type": "string" }, "header": "Author", "renderer": Lino.fk_renderer('userHidden','Lino.users.Users.detail'), "sortable": false, "tooltip": "(dashboard.AllWidgets.user) ", "width": Lino.chars2width(21) }, { "align": "right", "colIndex": 2, "dataIndex": "seqno", "editable": true, "editor": seqno3012, "filter": { "type": "numeric" }, "format": "0", "header": "No.", "sortable": true, "tooltip": "(dashboard.AllWidgets.seqno) The sequence number of this item with its parent.", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 3, "dataIndex": "move_buttons", "editable": false, "header": "Move", "sortable": false, "tooltip": "(dashboard.AllWidgets.move_buttons) ", "width": Lino.chars2width(6) }, { "colIndex": 4, "dataIndex": "title", "editable": false, "header": "Label", "sortable": false, "tooltip": "(dashboard.AllWidgets.title) ", "width": Lino.chars2width(31) }, { "colIndex": 5, "dataIndex": "visible", "editable": true, "filter": { "type": "boolean" }, "header": "Visible", "sortable": false, "tooltip": "(dashboard.AllWidgets.visible) ", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 6, "dataIndex": "item_name", "editable": true, "editor": item_name3016, "filter": { "type": "string" }, "header": "Resource", "hidden": true, "sortable": false, "tooltip": "(dashboard.AllWidgets.item_name) ", "width": Lino.chars2width(11) }, { "colIndex": 7, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(dashboard.AllWidgets.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 8, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(dashboard.AllWidgets.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 9, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(dashboard.AllWidgets.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 10, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(dashboard.AllWidgets.workflow_buttons) ", "width": Lino.chars2width(31) } ];
    Lino.dashboard.AllWidgets.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.dashboard.AllWidgets.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/dashboard/AllWidgets", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.dashboard.AllWidgets.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/dashboard/AllWidgets", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.dashboard.AllWidgets.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/dashboard/AllWidgets", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.dashboard.AllWidgets.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/dashboard/AllWidgets", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.dashboard.AllWidgets.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/dashboard/AllWidgets", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.dashboard.AllWidgets.duplicate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/dashboard/AllWidgets", "GET", pk, "duplicate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.dashboard.AllWidgets.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/dashboard/AllWidgets", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.dashboard.AllWidgets.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.dashboard.Widgets.ParamsPanel({});
  return new Lino.dashboard.AllWidgets.GridPanel(p);
});
Lino.dashboard.AllWidgets.move_up = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/dashboard/AllWidgets", "GET", pk, "move_up", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.dashboard.AllWidgets.move_down = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/dashboard/AllWidgets", "GET", pk, "move_down", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class users.Users
Lino.users.Users.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/users/Users",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/users/Users','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/users/Users','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "iconCls": "x-tbar-arrow_join", "itemId": "merge_row", "menu_item_text": "Merge", "overflowText": "Merge", "panel_btn_handler": Lino.param_action_handler(Lino.contacts.Persons.merge_row), "tooltip": "Merge this object into another object of same class." }, { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "check_plausibility", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": "Check plausibility", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." }, { "auto_save": true, "itemId": "fix_problems", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": "Fix plausibility problems", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." } ], "menu_item_text": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": null, "xtype": "splitbutton" }, { "auto_save": true, "itemId": "update_widgets", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create or update the widgets for this user.") }, "menu_item_text": "Update widgets", "overflowText": "Update widgets", "panel_btn_handler": Lino.row_action_handler('update_widgets','GET',null), "text": "\u00a0\u26a1\u00a0" }, { "auto_save": true, "itemId": "change_password", "menu_item_text": "Change password", "overflowText": "Change password", "panel_btn_handler": Lino.param_action_handler(Lino.users.Users.change_password), "text": " <font size=\"4\">\u2731</font>" } ],
  cell_edit : true,
  title : "Users",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 60,
  ls_store_fields : [ { "name": "username" }, { "name": "user_type" }, 'user_typeHidden', { "name": "first_name" }, { "name": "last_name" }, { "name": "id", "type": "int" }, { "name": "email" }, { "name": "language" }, 'languageHidden', { "name": "url" }, { "name": "phone" }, { "name": "gsm" }, { "name": "fax" }, { "name": "country" }, 'countryHidden', { "name": "city" }, 'cityHidden', { "name": "zip_code" }, { "name": "region" }, 'regionHidden', { "name": "addr1" }, { "name": "street_prefix" }, { "name": "street" }, { "name": "street_no" }, { "name": "street_box" }, { "name": "addr2" }, { "name": "prefix" }, { "name": "name" }, { "name": "remarks" }, { "name": "title" }, { "name": "middle_name" }, { "name": "gender" }, 'genderHidden', { "name": "birth_date" }, { "name": "private", "type": "boolean" }, { "name": "modified" }, { "name": "created" }, { "name": "password" }, { "name": "last_login" }, { "name": "timezone" }, { "name": "initials" }, { "name": "callme_mode", "type": "boolean" }, { "name": "verification_code" }, { "name": "user_state" }, 'user_stateHidden', { "name": "access_class" }, 'access_classHidden', { "name": "event_type" }, 'event_typeHidden', { "name": "about_me" }, { "name": "name_column" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "created_natural" }, { "name": "age" }, { "name": "mti_navigator" }, { "name": "address_column" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 5,
  ls_grid_configs : [  ],
  content_type : 8,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.users.Users.detail;
    this.ls_insert_handler = Lino.users.Users.insert;
    var ww = this.containing_window;
    var username3022 = new Ext.form.TextField({ "maxLength": 30, "selectOnFocus": true });
    var user_type3023 = new Lino.ChoicesFieldElement({ "forceSelection": true, "selectOnFocus": true, "store": [['','<br>']].concat(Lino.users.UserTypes) });
    var first_name3024 = new Ext.form.TextField({ "maxLength": 200, "selectOnFocus": true });
    var last_name3025 = new Ext.form.TextField({ "maxLength": 200, "selectOnFocus": true });
    var id3026 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var email3027 = new Ext.form.TextField({ "hidden": true, "maxLength": 254, "selectOnFocus": true });
    var language3028 = new Lino.ChoicesFieldElement({ "hidden": true, "selectOnFocus": true, "store": [ [ "en-us", "American English" ] ] });
    var url3029 = new Lino.URLField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var phone3030 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var gsm3031 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var fax3032 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var country3033 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Country...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/users/Users/country" }) }) });
    var city3034 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Place...", "forceSelection": false, "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/users/Users/city" }) }) });
    var zip_code3035 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(10), "hidden": true, "maxLength": 10, "selectOnFocus": true });
    var region3036 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Place...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/users/Users/region" }) }) });
    var addr13037 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var street_prefix3038 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var street3039 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var street_no3040 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(10), "hidden": true, "maxLength": 10, "selectOnFocus": true });
    var street_box3041 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(10), "hidden": true, "maxLength": 10, "selectOnFocus": true });
    var addr23042 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var prefix3043 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var name3044 = new Ext.form.TextField({ "allowBlank": false, "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var remarks3045 = new Lino.RichTextPanel({ "containing_panel": this, "hidden": true, "selectOnFocus": true, "title": "About me" });
    var title3046 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var middle_name3047 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var gender3048 = new Lino.ChoicesFieldElement({ "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": [['','<br>']].concat(Lino.system.Genders) });
    var birth_date3049 = new Lino.IncompleteDateField({ "hidden": true, "selectOnFocus": true });
    var private3050 = new Ext.form.Checkbox({ "checked": false, "hidden": true, "selectOnFocus": true });
    var modified3051 = new Ext.form.DisplayField({ "disabled": true, "hidden": true, "value": "<br>" });
    var created3052 = new Ext.form.DisplayField({ "disabled": true, "hidden": true, "value": "<br>" });
    var password3053 = new Ext.form.TextField({ "allowBlank": false, "hidden": true, "maxLength": 128, "selectOnFocus": true });
    var last_login3054 = new Ext.form.DisplayField({ "hidden": true, "selectOnFocus": true, "value": "<br>" });
    var timezone3055 = new Lino.SimpleRemoteComboFieldElement({ "hidden": true, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/users/Users/timezone" }) }) });
    var initials3056 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(10), "hidden": true, "maxLength": 10, "selectOnFocus": true });
    var callme_mode3057 = new Ext.form.Checkbox({ "checked": true, "hidden": true, "selectOnFocus": true });
    var verification_code3058 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var user_state3059 = new Lino.ChoicesFieldElement({ "allowBlank": false, "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": Lino.users.UserStates });
    var access_class3060 = new Lino.ChoicesFieldElement({ "allowBlank": false, "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": Lino.cal.AccessClasses });
    var event_type3061 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Calendar entry type...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/users/Users/event_type" }) }) });
    var about_me_htmlbox3062 = new Lino.HtmlBoxPanel({ "always_enabled": true, "bodyStyle": "overflow-x:hidden;", "containing_panel": this, "hidden": true, "items": new Ext.BoxComponent({autoScroll:true}), "layout": "fit", "name": "about_me", "title": "About me", "value": "<br/>" });
    var name_column_disp3063 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var mobile_item_disp3064 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp3065 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp3066 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp3067 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var created_natural_disp3068 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var age_disp3069 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var mti_navigator_disp3070 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var address_column_disp3071 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
      city3034.setContextValue('country', record ? record.data['countryHidden'] : undefined);
      city3034.setContextValue('region', record ? record.data['regionHidden'] : undefined);
      region3036.setContextValue('country', record ? record.data['countryHidden'] : undefined);
      remarks3045.refresh();
      timezone3055.setContextValue('partner', record ? record.data['partner'] : undefined);
      about_me_htmlbox3062.refresh();
    };
    this.onRender = function(ct, position) {
      country3033.on('change',Lino.chooser_handler(city3034,'country'));
      region3036.on('change',Lino.chooser_handler(city3034,'region'));
      country3033.on('change',Lino.chooser_handler(region3036,'country'));
      Lino.users.Users.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "username", "editable": true, "editor": username3022, "filter": { "type": "string" }, "header": "Username", "sortable": true, "tooltip": "(users.Users.username) Must be unique or empty.\nLeaving this empty means that the user cannot log in.", "width": Lino.chars2width(22) }, { "colIndex": 1, "dataIndex": "user_type", "editable": true, "editor": user_type3023, "filter": { "type": "string" }, "header": "User type", "sortable": false, "tooltip": "(users.Users.user_type) The user_type of a user is what defines her or his permissions.", "width": Lino.chars2width(25) }, { "colIndex": 2, "dataIndex": "first_name", "editable": true, "editor": first_name3024, "filter": { "type": "string" }, "header": "First name", "sortable": true, "tooltip": "(users.Users.first_name) The first name, also known as given name.", "width": Lino.chars2width(22) }, { "colIndex": 3, "dataIndex": "last_name", "editable": true, "editor": last_name3025, "filter": { "type": "string" }, "header": "Last name", "sortable": true, "tooltip": "(users.Users.last_name) The last name, also known as family name.", "width": Lino.chars2width(22) }, { "align": "right", "colIndex": 4, "dataIndex": "id", "editable": true, "editor": id3026, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(users.Users.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 5, "dataIndex": "email", "editable": true, "editor": email3027, "filter": { "type": "string" }, "header": "e-mail address", "hidden": true, "sortable": true, "tooltip": "(users.Users.email) The primary email address.", "width": Lino.chars2width(22) }, { "colIndex": 6, "dataIndex": "language", "editable": true, "editor": language3028, "filter": { "type": "string" }, "header": "Language", "hidden": true, "sortable": false, "tooltip": "(users.Users.language) The language to use when communicating with this partner.", "width": Lino.chars2width(21) }, { "colIndex": 7, "dataIndex": "url", "editable": true, "editor": url3029, "filter": { "type": "string" }, "header": "URL", "hidden": true, "sortable": true, "tooltip": "(users.Users.url) ", "width": Lino.chars2width(22) }, { "colIndex": 8, "dataIndex": "phone", "editable": true, "editor": phone3030, "filter": { "type": "string" }, "header": "Phone", "hidden": true, "sortable": true, "tooltip": "(users.Users.phone) The primary phone number.  Note that Lino does not ignore\nformatting characters in phone numbers when searching.  For\nexample, if you enter \"087/12.34.56\" as a phone number, then a\nsearch for phone number containing \"1234\" will not find it.", "width": Lino.chars2width(22) }, { "colIndex": 9, "dataIndex": "gsm", "editable": true, "editor": gsm3031, "filter": { "type": "string" }, "header": "GSM", "hidden": true, "sortable": true, "tooltip": "(users.Users.gsm) The primary mobile phone number.", "width": Lino.chars2width(22) }, { "colIndex": 10, "dataIndex": "fax", "editable": true, "editor": fax3032, "filter": { "type": "string" }, "header": "Fax", "hidden": true, "sortable": true, "tooltip": "(users.Users.fax) ", "width": Lino.chars2width(22) }, { "colIndex": 11, "dataIndex": "country", "editable": true, "editor": country3033, "filter": { "type": "string" }, "header": "Country", "hidden": true, "renderer": Lino.fk_renderer('countryHidden','Lino.countries.Countries.detail'), "sortable": false, "tooltip": "(users.Users.country) ", "width": Lino.chars2width(21) }, { "colIndex": 12, "dataIndex": "city", "editable": true, "editor": city3034, "filter": { "type": "string" }, "header": "City", "hidden": true, "renderer": Lino.fk_renderer('cityHidden','Lino.countries.Places.detail'), "sortable": false, "tooltip": "(users.Users.city) A pointer to the Place which is used as city.", "width": Lino.chars2width(21) }, { "colIndex": 13, "dataIndex": "zip_code", "editable": true, "editor": zip_code3035, "filter": { "type": "string" }, "header": "Zip code", "hidden": true, "sortable": true, "tooltip": "(users.Users.zip_code) ", "width": Lino.chars2width(12) }, { "colIndex": 14, "dataIndex": "region", "editable": true, "editor": region3036, "filter": { "type": "string" }, "header": "County", "hidden": true, "renderer": Lino.fk_renderer('regionHidden','Lino.countries.Places.detail'), "sortable": false, "tooltip": "(users.Users.region) ", "width": Lino.chars2width(21) }, { "colIndex": 15, "dataIndex": "addr1", "editable": true, "editor": addr13037, "filter": { "type": "string" }, "header": "Address line before street", "hidden": true, "sortable": true, "tooltip": "(users.Users.addr1) Address line before street", "width": Lino.chars2width(22) }, { "colIndex": 16, "dataIndex": "street_prefix", "editable": true, "editor": street_prefix3038, "filter": { "type": "string" }, "header": "Street prefix", "hidden": true, "sortable": true, "tooltip": "(users.Users.street_prefix) Text to print before name of street, but to ignore for sorting.", "width": Lino.chars2width(22) }, { "colIndex": 17, "dataIndex": "street", "editable": true, "editor": street3039, "filter": { "type": "string" }, "header": "Street", "hidden": true, "sortable": true, "tooltip": "(users.Users.street) Name of street, without house number.", "width": Lino.chars2width(22) }, { "colIndex": 18, "dataIndex": "street_no", "editable": true, "editor": street_no3040, "filter": { "type": "string" }, "header": "No.", "hidden": true, "sortable": true, "tooltip": "(users.Users.street_no) House number.", "width": Lino.chars2width(12) }, { "colIndex": 19, "dataIndex": "street_box", "editable": true, "editor": street_box3041, "filter": { "type": "string" }, "header": "Box", "hidden": true, "sortable": true, "tooltip": "(users.Users.street_box) Text to print after street nuber on the same line.", "width": Lino.chars2width(12) }, { "colIndex": 20, "dataIndex": "addr2", "editable": true, "editor": addr23042, "filter": { "type": "string" }, "header": "Address line after street", "hidden": true, "sortable": true, "tooltip": "(users.Users.addr2) Address line to print below street line.", "width": Lino.chars2width(22) }, { "colIndex": 21, "dataIndex": "prefix", "editable": true, "editor": prefix3043, "filter": { "type": "string" }, "header": "Name prefix", "hidden": true, "sortable": true, "tooltip": "(users.Users.prefix) An optional name prefix. For organisations this is inserted\nbefore the name, for persons this is inserted between first\nname and last name (see\nlino.mixins.human.Human.get_last_name_prefix()).", "width": Lino.chars2width(22) }, { "colIndex": 22, "dataIndex": "name", "editable": true, "editor": name3044, "filter": { "type": "string" }, "header": "Name", "hidden": true, "sortable": true, "tooltip": "(users.Users.name) The full name of this partner. Used for alphabetic sorting.\nSubclasses may hide this field and fill it automatically,\ne.g. saving a Person will automatically set her\nname field to \"last_name, first_name\".", "width": Lino.chars2width(22) }, { "colIndex": 23, "dataIndex": "remarks", "editable": true, "editor": remarks3045, "filter": { "type": "string" }, "header": "About me", "hidden": true, "sortable": false, "tooltip": "(users.Users.remarks) ", "width": Lino.chars2width(61) }, { "colIndex": 24, "dataIndex": "title", "editable": true, "editor": title3046, "filter": { "type": "string" }, "header": "Title", "hidden": true, "sortable": true, "tooltip": "(users.Users.title) Used to specify a professional position or academic\nqualification like \"Dr.\" or \"PhD\".", "width": Lino.chars2width(22) }, { "colIndex": 25, "dataIndex": "middle_name", "editable": true, "editor": middle_name3047, "filter": { "type": "string" }, "header": "Middle name", "hidden": true, "sortable": true, "tooltip": "(users.Users.middle_name) A space-separated list of all middle names.", "width": Lino.chars2width(22) }, { "colIndex": 26, "dataIndex": "gender", "editable": true, "editor": gender3048, "filter": { "type": "string" }, "header": "Gender", "hidden": true, "sortable": false, "tooltip": "(users.Users.gender) The sex of this person (male or female).", "width": Lino.chars2width(10) }, { "colIndex": 27, "dataIndex": "birth_date", "editable": true, "editor": birth_date3049, "filter": { "type": "string" }, "header": "Birth date", "hidden": true, "sortable": true, "tooltip": "(users.Users.birth_date) Uncomplete dates are allowed, e.g. \n\"00.00.1980\" means \"some day in 1980\", \n\"00.07.1980\" means \"in July 1980\"\nor \"23.07.0000\" means \"on a 23th of July\".", "width": Lino.chars2width(13) }, { "colIndex": 28, "dataIndex": "private", "editable": true, "filter": { "type": "boolean" }, "header": "Private", "hidden": true, "sortable": false, "tooltip": "(users.Users.private) ", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 29, "dataIndex": "modified", "editable": false, "header": "Modified", "hidden": true, "sortable": true, "tooltip": "(users.Users.modified) ", "width": Lino.chars2width(17) }, { "colIndex": 30, "dataIndex": "created", "editable": false, "header": "Created", "hidden": true, "sortable": true, "tooltip": "(users.Users.created) The timestame when this object was created.", "width": Lino.chars2width(17) }, { "colIndex": 31, "dataIndex": "password", "editable": true, "editor": password3053, "filter": { "type": "string" }, "header": "password", "hidden": true, "sortable": true, "tooltip": "(users.Users.password) ", "width": Lino.chars2width(22) }, { "colIndex": 32, "dataIndex": "last_login", "editable": true, "editor": last_login3054, "header": "last login", "hidden": true, "sortable": true, "tooltip": "(users.Users.last_login) Not used in Lino.", "width": Lino.chars2width(17) }, { "colIndex": 33, "dataIndex": "timezone", "editable": true, "editor": timezone3055, "filter": { "type": "string" }, "header": "Time zone", "hidden": true, "sortable": false, "tooltip": "(users.Users.timezone) ", "width": Lino.chars2width(11) }, { "colIndex": 34, "dataIndex": "initials", "editable": true, "editor": initials3056, "filter": { "type": "string" }, "header": "Initials", "hidden": true, "sortable": true, "tooltip": "(users.Users.initials) The nickname or initials of this user. This does not need to\nbe unique but should provide a reasonably identifying\nfunction.", "width": Lino.chars2width(12) }, { "colIndex": 35, "dataIndex": "callme_mode", "editable": true, "filter": { "type": "boolean" }, "header": "Others may contact me", "hidden": true, "sortable": false, "tooltip": "(users.Users.callme_mode) Whether other users can see my contact data.", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 36, "dataIndex": "verification_code", "editable": true, "editor": verification_code3058, "filter": { "type": "string" }, "header": "verification code", "hidden": true, "sortable": true, "tooltip": "(users.Users.verification_code) A random string set for every new user. Used for\nonline_registration.", "width": Lino.chars2width(22) }, { "colIndex": 37, "dataIndex": "user_state", "editable": true, "editor": user_state3059, "filter": { "type": "string" }, "header": "User state", "hidden": true, "sortable": false, "tooltip": "(users.Users.user_state) The registration state of this user.", "width": Lino.chars2width(12) }, { "colIndex": 38, "dataIndex": "access_class", "editable": true, "editor": access_class3060, "filter": { "type": "string" }, "header": "Default access class", "hidden": true, "sortable": false, "tooltip": "(users.Users.access_class) The default access class for your calendar events and tasks.", "width": Lino.chars2width(13) }, { "colIndex": 39, "dataIndex": "event_type", "editable": true, "editor": event_type3061, "filter": { "type": "string" }, "header": "Default Event Type", "hidden": true, "renderer": Lino.fk_renderer('event_typeHidden','Lino.cal.EventTypes.detail'), "sortable": false, "tooltip": "(users.Users.event_type) The default event type for your calendar events.", "width": Lino.chars2width(21) }, { "colIndex": 40, "dataIndex": "about_me", "editable": false, "header": "About me", "hidden": true, "sortable": false, "tooltip": "(users.Users.about_me) ", "width": Lino.chars2width(31) }, { "colIndex": 41, "dataIndex": "name_column", "editable": false, "header": "Name", "hidden": true, "sortable": false, "tooltip": "(users.Users.name_column) ", "width": Lino.chars2width(16) }, { "colIndex": 42, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(users.Users.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 43, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(users.Users.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 44, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(users.Users.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 45, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(users.Users.workflow_buttons) ", "width": Lino.chars2width(31) }, { "colIndex": 46, "dataIndex": "created_natural", "editable": false, "header": "Created", "hidden": true, "sortable": false, "tooltip": "(users.Users.created_natural) ", "width": Lino.chars2width(31) }, { "colIndex": 47, "dataIndex": "age", "editable": false, "header": "Age", "hidden": true, "sortable": false, "tooltip": "(users.Users.age) ", "width": Lino.chars2width(31) }, { "colIndex": 48, "dataIndex": "mti_navigator", "editable": false, "header": "See as ", "hidden": true, "sortable": false, "tooltip": "(users.Users.mti_navigator) ", "width": Lino.chars2width(31) }, { "colIndex": 49, "dataIndex": "address_column", "editable": false, "header": "Address", "hidden": true, "sortable": false, "tooltip": "(users.Users.address_column) ", "width": Lino.chars2width(31) } ];
    Lino.users.Users.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.users.Users.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/Users", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.Users.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/Users", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.Users.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/Users", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.users.Users.insertPanel = Ext.extend(Lino.users.Users.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/users/Users",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.users.Users.detail;
    this.ls_insert_handler = Lino.users.Users.insert;
    Lino.users.Users.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.users.Users.insert = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.users.Users.insertPanel(p);
});
Lino.users.Users.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/Users", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.Users.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/Users", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.Users.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/Users", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.users.Users.detailPanel = Ext.extend(Lino.users.Users.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "iconCls": "x-tbar-arrow_join", "itemId": "merge_row", "menu_item_text": "Merge", "overflowText": "Merge", "panel_btn_handler": Lino.param_action_handler(Lino.contacts.Persons.merge_row), "tooltip": "Merge this object into another object of same class." }, { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "check_plausibility", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": "Check plausibility", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." }, { "auto_save": true, "itemId": "fix_problems", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": "Fix plausibility problems", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." } ], "menu_item_text": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": null, "xtype": "splitbutton" }, { "auto_save": true, "itemId": "update_widgets", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create or update the widgets for this user.") }, "menu_item_text": "Update widgets", "overflowText": "Update widgets", "panel_btn_handler": Lino.row_action_handler('update_widgets','GET',null), "text": "\u00a0\u26a1\u00a0" }, { "auto_save": true, "itemId": "change_password", "menu_item_text": "Change password", "overflowText": "Change password", "panel_btn_handler": Lino.param_action_handler(Lino.users.Users.change_password), "text": " <font size=\"4\">\u2731</font>" } ],
  ls_url: "/users/Users",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.users.Users.detail;
    this.ls_insert_handler = Lino.users.Users.insert;
    Lino.users.Users.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.users.Users.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.users.Users.detailPanel(p);
});
Lino.users.Users.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/Users", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.Users.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.users.Users.ParamsPanel({});
  return new Lino.users.Users.GridPanel(p);
});
Lino.users.Users.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/Users", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.Users.del_company = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/Users", "GET", pk, "del_company", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.Users.check_plausibility = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/Users", "GET", pk, "check_plausibility", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.Users.ins_company = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/Users", "GET", pk, "ins_company", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.Users.update_widgets = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/Users", "GET", pk, "update_widgets", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.Users.ins_partner = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/Users", "GET", pk, "ins_partner", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.Users.del_partner = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/Users", "GET", pk, "del_partner", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.Users.ins_user = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/Users", "GET", pk, "ins_user", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.Users.fix_problems = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/Users", "GET", pk, "fix_problems", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.Users.del_person = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/Users", "GET", pk, "del_person", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.Users.ins_person = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/Users", "GET", pk, "ins_person", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.Users.ins_household = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/Users", "GET", pk, "ins_household", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.Users.del_user = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/Users", "GET", pk, "del_user", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.Users.del_household = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/Users", "GET", pk, "del_household", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.Users.wf1 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/Users", "GET", pk, "wf1", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.Users.wf2 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/Users", "GET", pk, "wf2", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.Users.wf3 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/Users", "GET", pk, "wf3", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class users.AllUsers
Lino.users.AllUsers.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/users/AllUsers",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/users/AllUsers','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/users/AllUsers','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "iconCls": "x-tbar-arrow_join", "itemId": "merge_row", "menu_item_text": "Merge", "overflowText": "Merge", "panel_btn_handler": Lino.param_action_handler(Lino.contacts.Persons.merge_row), "tooltip": "Merge this object into another object of same class." }, { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "check_plausibility", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": "Check plausibility", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." }, { "auto_save": true, "itemId": "fix_problems", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": "Fix plausibility problems", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." } ], "menu_item_text": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": null, "xtype": "splitbutton" }, { "auto_save": true, "itemId": "update_widgets", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create or update the widgets for this user.") }, "menu_item_text": "Update widgets", "overflowText": "Update widgets", "panel_btn_handler": Lino.row_action_handler('update_widgets','GET',null), "text": "\u00a0\u26a1\u00a0" }, { "auto_save": true, "itemId": "change_password", "menu_item_text": "Change password", "overflowText": "Change password", "panel_btn_handler": Lino.param_action_handler(Lino.users.Users.change_password), "text": " <font size=\"4\">\u2731</font>" } ],
  cell_edit : true,
  title : "Users",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 60,
  ls_store_fields : [ { "name": "username" }, { "name": "user_type" }, 'user_typeHidden', { "name": "first_name" }, { "name": "last_name" }, { "name": "id", "type": "int" }, { "name": "email" }, { "name": "language" }, 'languageHidden', { "name": "url" }, { "name": "phone" }, { "name": "gsm" }, { "name": "fax" }, { "name": "country" }, 'countryHidden', { "name": "city" }, 'cityHidden', { "name": "zip_code" }, { "name": "region" }, 'regionHidden', { "name": "addr1" }, { "name": "street_prefix" }, { "name": "street" }, { "name": "street_no" }, { "name": "street_box" }, { "name": "addr2" }, { "name": "prefix" }, { "name": "name" }, { "name": "remarks" }, { "name": "title" }, { "name": "middle_name" }, { "name": "gender" }, 'genderHidden', { "name": "birth_date" }, { "name": "private", "type": "boolean" }, { "name": "modified" }, { "name": "created" }, { "name": "password" }, { "name": "last_login" }, { "name": "timezone" }, { "name": "initials" }, { "name": "callme_mode", "type": "boolean" }, { "name": "verification_code" }, { "name": "user_state" }, 'user_stateHidden', { "name": "access_class" }, 'access_classHidden', { "name": "event_type" }, 'event_typeHidden', { "name": "about_me" }, { "name": "name_column" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "created_natural" }, { "name": "age" }, { "name": "mti_navigator" }, { "name": "address_column" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 5,
  ls_grid_configs : [  ],
  content_type : 8,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.users.AllUsers.detail;
    this.ls_insert_handler = Lino.users.AllUsers.insert;
    var ww = this.containing_window;
    var username3073 = new Ext.form.TextField({ "maxLength": 30, "selectOnFocus": true });
    var user_type3074 = new Lino.ChoicesFieldElement({ "forceSelection": true, "selectOnFocus": true, "store": [['','<br>']].concat(Lino.users.UserTypes) });
    var first_name3075 = new Ext.form.TextField({ "maxLength": 200, "selectOnFocus": true });
    var last_name3076 = new Ext.form.TextField({ "maxLength": 200, "selectOnFocus": true });
    var id3077 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var email3078 = new Ext.form.TextField({ "hidden": true, "maxLength": 254, "selectOnFocus": true });
    var language3079 = new Lino.ChoicesFieldElement({ "hidden": true, "selectOnFocus": true, "store": [ [ "en-us", "American English" ] ] });
    var url3080 = new Lino.URLField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var phone3081 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var gsm3082 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var fax3083 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var country3084 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Country...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/users/AllUsers/country" }) }) });
    var city3085 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Place...", "forceSelection": false, "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/users/AllUsers/city" }) }) });
    var zip_code3086 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(10), "hidden": true, "maxLength": 10, "selectOnFocus": true });
    var region3087 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Place...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/users/AllUsers/region" }) }) });
    var addr13088 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var street_prefix3089 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var street3090 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var street_no3091 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(10), "hidden": true, "maxLength": 10, "selectOnFocus": true });
    var street_box3092 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(10), "hidden": true, "maxLength": 10, "selectOnFocus": true });
    var addr23093 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var prefix3094 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var name3095 = new Ext.form.TextField({ "allowBlank": false, "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var remarks3096 = new Lino.RichTextPanel({ "containing_panel": this, "hidden": true, "selectOnFocus": true, "title": "About me" });
    var title3097 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var middle_name3098 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var gender3099 = new Lino.ChoicesFieldElement({ "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": [['','<br>']].concat(Lino.system.Genders) });
    var birth_date3100 = new Lino.IncompleteDateField({ "hidden": true, "selectOnFocus": true });
    var private3101 = new Ext.form.Checkbox({ "checked": false, "hidden": true, "selectOnFocus": true });
    var modified3102 = new Ext.form.DisplayField({ "disabled": true, "hidden": true, "value": "<br>" });
    var created3103 = new Ext.form.DisplayField({ "disabled": true, "hidden": true, "value": "<br>" });
    var password3104 = new Ext.form.TextField({ "allowBlank": false, "hidden": true, "maxLength": 128, "selectOnFocus": true });
    var last_login3105 = new Ext.form.DisplayField({ "hidden": true, "selectOnFocus": true, "value": "<br>" });
    var timezone3106 = new Lino.SimpleRemoteComboFieldElement({ "hidden": true, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/users/AllUsers/timezone" }) }) });
    var initials3107 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(10), "hidden": true, "maxLength": 10, "selectOnFocus": true });
    var callme_mode3108 = new Ext.form.Checkbox({ "checked": true, "hidden": true, "selectOnFocus": true });
    var verification_code3109 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var user_state3110 = new Lino.ChoicesFieldElement({ "allowBlank": false, "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": Lino.users.UserStates });
    var access_class3111 = new Lino.ChoicesFieldElement({ "allowBlank": false, "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": Lino.cal.AccessClasses });
    var event_type3112 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Calendar entry type...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/users/AllUsers/event_type" }) }) });
    var about_me_htmlbox3113 = new Lino.HtmlBoxPanel({ "always_enabled": true, "bodyStyle": "overflow-x:hidden;", "containing_panel": this, "hidden": true, "items": new Ext.BoxComponent({autoScroll:true}), "layout": "fit", "name": "about_me", "title": "About me", "value": "<br/>" });
    var name_column_disp3114 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var mobile_item_disp3115 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp3116 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp3117 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp3118 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var created_natural_disp3119 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var age_disp3120 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var mti_navigator_disp3121 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var address_column_disp3122 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
      city3085.setContextValue('country', record ? record.data['countryHidden'] : undefined);
      city3085.setContextValue('region', record ? record.data['regionHidden'] : undefined);
      region3087.setContextValue('country', record ? record.data['countryHidden'] : undefined);
      remarks3096.refresh();
      timezone3106.setContextValue('partner', record ? record.data['partner'] : undefined);
      about_me_htmlbox3113.refresh();
    };
    this.onRender = function(ct, position) {
      country3084.on('change',Lino.chooser_handler(city3085,'country'));
      region3087.on('change',Lino.chooser_handler(city3085,'region'));
      country3084.on('change',Lino.chooser_handler(region3087,'country'));
      Lino.users.AllUsers.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "username", "editable": true, "editor": username3073, "filter": { "type": "string" }, "header": "Username", "sortable": true, "tooltip": "(users.AllUsers.username) Must be unique or empty.\nLeaving this empty means that the user cannot log in.", "width": Lino.chars2width(22) }, { "colIndex": 1, "dataIndex": "user_type", "editable": true, "editor": user_type3074, "filter": { "type": "string" }, "header": "User type", "sortable": false, "tooltip": "(users.AllUsers.user_type) The user_type of a user is what defines her or his permissions.", "width": Lino.chars2width(25) }, { "colIndex": 2, "dataIndex": "first_name", "editable": true, "editor": first_name3075, "filter": { "type": "string" }, "header": "First name", "sortable": true, "tooltip": "(users.AllUsers.first_name) The first name, also known as given name.", "width": Lino.chars2width(22) }, { "colIndex": 3, "dataIndex": "last_name", "editable": true, "editor": last_name3076, "filter": { "type": "string" }, "header": "Last name", "sortable": true, "tooltip": "(users.AllUsers.last_name) The last name, also known as family name.", "width": Lino.chars2width(22) }, { "align": "right", "colIndex": 4, "dataIndex": "id", "editable": true, "editor": id3077, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(users.AllUsers.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 5, "dataIndex": "email", "editable": true, "editor": email3078, "filter": { "type": "string" }, "header": "e-mail address", "hidden": true, "sortable": true, "tooltip": "(users.AllUsers.email) The primary email address.", "width": Lino.chars2width(22) }, { "colIndex": 6, "dataIndex": "language", "editable": true, "editor": language3079, "filter": { "type": "string" }, "header": "Language", "hidden": true, "sortable": false, "tooltip": "(users.AllUsers.language) The language to use when communicating with this partner.", "width": Lino.chars2width(21) }, { "colIndex": 7, "dataIndex": "url", "editable": true, "editor": url3080, "filter": { "type": "string" }, "header": "URL", "hidden": true, "sortable": true, "tooltip": "(users.AllUsers.url) ", "width": Lino.chars2width(22) }, { "colIndex": 8, "dataIndex": "phone", "editable": true, "editor": phone3081, "filter": { "type": "string" }, "header": "Phone", "hidden": true, "sortable": true, "tooltip": "(users.AllUsers.phone) The primary phone number.  Note that Lino does not ignore\nformatting characters in phone numbers when searching.  For\nexample, if you enter \"087/12.34.56\" as a phone number, then a\nsearch for phone number containing \"1234\" will not find it.", "width": Lino.chars2width(22) }, { "colIndex": 9, "dataIndex": "gsm", "editable": true, "editor": gsm3082, "filter": { "type": "string" }, "header": "GSM", "hidden": true, "sortable": true, "tooltip": "(users.AllUsers.gsm) The primary mobile phone number.", "width": Lino.chars2width(22) }, { "colIndex": 10, "dataIndex": "fax", "editable": true, "editor": fax3083, "filter": { "type": "string" }, "header": "Fax", "hidden": true, "sortable": true, "tooltip": "(users.AllUsers.fax) ", "width": Lino.chars2width(22) }, { "colIndex": 11, "dataIndex": "country", "editable": true, "editor": country3084, "filter": { "type": "string" }, "header": "Country", "hidden": true, "renderer": Lino.fk_renderer('countryHidden','Lino.countries.Countries.detail'), "sortable": false, "tooltip": "(users.AllUsers.country) ", "width": Lino.chars2width(21) }, { "colIndex": 12, "dataIndex": "city", "editable": true, "editor": city3085, "filter": { "type": "string" }, "header": "City", "hidden": true, "renderer": Lino.fk_renderer('cityHidden','Lino.countries.Places.detail'), "sortable": false, "tooltip": "(users.AllUsers.city) A pointer to the Place which is used as city.", "width": Lino.chars2width(21) }, { "colIndex": 13, "dataIndex": "zip_code", "editable": true, "editor": zip_code3086, "filter": { "type": "string" }, "header": "Zip code", "hidden": true, "sortable": true, "tooltip": "(users.AllUsers.zip_code) ", "width": Lino.chars2width(12) }, { "colIndex": 14, "dataIndex": "region", "editable": true, "editor": region3087, "filter": { "type": "string" }, "header": "County", "hidden": true, "renderer": Lino.fk_renderer('regionHidden','Lino.countries.Places.detail'), "sortable": false, "tooltip": "(users.AllUsers.region) ", "width": Lino.chars2width(21) }, { "colIndex": 15, "dataIndex": "addr1", "editable": true, "editor": addr13088, "filter": { "type": "string" }, "header": "Address line before street", "hidden": true, "sortable": true, "tooltip": "(users.AllUsers.addr1) Address line before street", "width": Lino.chars2width(22) }, { "colIndex": 16, "dataIndex": "street_prefix", "editable": true, "editor": street_prefix3089, "filter": { "type": "string" }, "header": "Street prefix", "hidden": true, "sortable": true, "tooltip": "(users.AllUsers.street_prefix) Text to print before name of street, but to ignore for sorting.", "width": Lino.chars2width(22) }, { "colIndex": 17, "dataIndex": "street", "editable": true, "editor": street3090, "filter": { "type": "string" }, "header": "Street", "hidden": true, "sortable": true, "tooltip": "(users.AllUsers.street) Name of street, without house number.", "width": Lino.chars2width(22) }, { "colIndex": 18, "dataIndex": "street_no", "editable": true, "editor": street_no3091, "filter": { "type": "string" }, "header": "No.", "hidden": true, "sortable": true, "tooltip": "(users.AllUsers.street_no) House number.", "width": Lino.chars2width(12) }, { "colIndex": 19, "dataIndex": "street_box", "editable": true, "editor": street_box3092, "filter": { "type": "string" }, "header": "Box", "hidden": true, "sortable": true, "tooltip": "(users.AllUsers.street_box) Text to print after street nuber on the same line.", "width": Lino.chars2width(12) }, { "colIndex": 20, "dataIndex": "addr2", "editable": true, "editor": addr23093, "filter": { "type": "string" }, "header": "Address line after street", "hidden": true, "sortable": true, "tooltip": "(users.AllUsers.addr2) Address line to print below street line.", "width": Lino.chars2width(22) }, { "colIndex": 21, "dataIndex": "prefix", "editable": true, "editor": prefix3094, "filter": { "type": "string" }, "header": "Name prefix", "hidden": true, "sortable": true, "tooltip": "(users.AllUsers.prefix) An optional name prefix. For organisations this is inserted\nbefore the name, for persons this is inserted between first\nname and last name (see\nlino.mixins.human.Human.get_last_name_prefix()).", "width": Lino.chars2width(22) }, { "colIndex": 22, "dataIndex": "name", "editable": true, "editor": name3095, "filter": { "type": "string" }, "header": "Name", "hidden": true, "sortable": true, "tooltip": "(users.AllUsers.name) The full name of this partner. Used for alphabetic sorting.\nSubclasses may hide this field and fill it automatically,\ne.g. saving a Person will automatically set her\nname field to \"last_name, first_name\".", "width": Lino.chars2width(22) }, { "colIndex": 23, "dataIndex": "remarks", "editable": true, "editor": remarks3096, "filter": { "type": "string" }, "header": "About me", "hidden": true, "sortable": false, "tooltip": "(users.AllUsers.remarks) ", "width": Lino.chars2width(61) }, { "colIndex": 24, "dataIndex": "title", "editable": true, "editor": title3097, "filter": { "type": "string" }, "header": "Title", "hidden": true, "sortable": true, "tooltip": "(users.AllUsers.title) Used to specify a professional position or academic\nqualification like \"Dr.\" or \"PhD\".", "width": Lino.chars2width(22) }, { "colIndex": 25, "dataIndex": "middle_name", "editable": true, "editor": middle_name3098, "filter": { "type": "string" }, "header": "Middle name", "hidden": true, "sortable": true, "tooltip": "(users.AllUsers.middle_name) A space-separated list of all middle names.", "width": Lino.chars2width(22) }, { "colIndex": 26, "dataIndex": "gender", "editable": true, "editor": gender3099, "filter": { "type": "string" }, "header": "Gender", "hidden": true, "sortable": false, "tooltip": "(users.AllUsers.gender) The sex of this person (male or female).", "width": Lino.chars2width(10) }, { "colIndex": 27, "dataIndex": "birth_date", "editable": true, "editor": birth_date3100, "filter": { "type": "string" }, "header": "Birth date", "hidden": true, "sortable": true, "tooltip": "(users.AllUsers.birth_date) Uncomplete dates are allowed, e.g. \n\"00.00.1980\" means \"some day in 1980\", \n\"00.07.1980\" means \"in July 1980\"\nor \"23.07.0000\" means \"on a 23th of July\".", "width": Lino.chars2width(13) }, { "colIndex": 28, "dataIndex": "private", "editable": true, "filter": { "type": "boolean" }, "header": "Private", "hidden": true, "sortable": false, "tooltip": "(users.AllUsers.private) ", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 29, "dataIndex": "modified", "editable": false, "header": "Modified", "hidden": true, "sortable": true, "tooltip": "(users.AllUsers.modified) ", "width": Lino.chars2width(17) }, { "colIndex": 30, "dataIndex": "created", "editable": false, "header": "Created", "hidden": true, "sortable": true, "tooltip": "(users.AllUsers.created) The timestame when this object was created.", "width": Lino.chars2width(17) }, { "colIndex": 31, "dataIndex": "password", "editable": true, "editor": password3104, "filter": { "type": "string" }, "header": "password", "hidden": true, "sortable": true, "tooltip": "(users.AllUsers.password) ", "width": Lino.chars2width(22) }, { "colIndex": 32, "dataIndex": "last_login", "editable": true, "editor": last_login3105, "header": "last login", "hidden": true, "sortable": true, "tooltip": "(users.AllUsers.last_login) Not used in Lino.", "width": Lino.chars2width(17) }, { "colIndex": 33, "dataIndex": "timezone", "editable": true, "editor": timezone3106, "filter": { "type": "string" }, "header": "Time zone", "hidden": true, "sortable": false, "tooltip": "(users.AllUsers.timezone) ", "width": Lino.chars2width(11) }, { "colIndex": 34, "dataIndex": "initials", "editable": true, "editor": initials3107, "filter": { "type": "string" }, "header": "Initials", "hidden": true, "sortable": true, "tooltip": "(users.AllUsers.initials) The nickname or initials of this user. This does not need to\nbe unique but should provide a reasonably identifying\nfunction.", "width": Lino.chars2width(12) }, { "colIndex": 35, "dataIndex": "callme_mode", "editable": true, "filter": { "type": "boolean" }, "header": "Others may contact me", "hidden": true, "sortable": false, "tooltip": "(users.AllUsers.callme_mode) Whether other users can see my contact data.", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 36, "dataIndex": "verification_code", "editable": true, "editor": verification_code3109, "filter": { "type": "string" }, "header": "verification code", "hidden": true, "sortable": true, "tooltip": "(users.AllUsers.verification_code) A random string set for every new user. Used for\nonline_registration.", "width": Lino.chars2width(22) }, { "colIndex": 37, "dataIndex": "user_state", "editable": true, "editor": user_state3110, "filter": { "type": "string" }, "header": "User state", "hidden": true, "sortable": false, "tooltip": "(users.AllUsers.user_state) The registration state of this user.", "width": Lino.chars2width(12) }, { "colIndex": 38, "dataIndex": "access_class", "editable": true, "editor": access_class3111, "filter": { "type": "string" }, "header": "Default access class", "hidden": true, "sortable": false, "tooltip": "(users.AllUsers.access_class) The default access class for your calendar events and tasks.", "width": Lino.chars2width(13) }, { "colIndex": 39, "dataIndex": "event_type", "editable": true, "editor": event_type3112, "filter": { "type": "string" }, "header": "Default Event Type", "hidden": true, "renderer": Lino.fk_renderer('event_typeHidden','Lino.cal.EventTypes.detail'), "sortable": false, "tooltip": "(users.AllUsers.event_type) The default event type for your calendar events.", "width": Lino.chars2width(21) }, { "colIndex": 40, "dataIndex": "about_me", "editable": false, "header": "About me", "hidden": true, "sortable": false, "tooltip": "(users.AllUsers.about_me) ", "width": Lino.chars2width(31) }, { "colIndex": 41, "dataIndex": "name_column", "editable": false, "header": "Name", "hidden": true, "sortable": false, "tooltip": "(users.AllUsers.name_column) ", "width": Lino.chars2width(16) }, { "colIndex": 42, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(users.AllUsers.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 43, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(users.AllUsers.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 44, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(users.AllUsers.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 45, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(users.AllUsers.workflow_buttons) ", "width": Lino.chars2width(31) }, { "colIndex": 46, "dataIndex": "created_natural", "editable": false, "header": "Created", "hidden": true, "sortable": false, "tooltip": "(users.AllUsers.created_natural) ", "width": Lino.chars2width(31) }, { "colIndex": 47, "dataIndex": "age", "editable": false, "header": "Age", "hidden": true, "sortable": false, "tooltip": "(users.AllUsers.age) ", "width": Lino.chars2width(31) }, { "colIndex": 48, "dataIndex": "mti_navigator", "editable": false, "header": "See as ", "hidden": true, "sortable": false, "tooltip": "(users.AllUsers.mti_navigator) ", "width": Lino.chars2width(31) }, { "colIndex": 49, "dataIndex": "address_column", "editable": false, "header": "Address", "hidden": true, "sortable": false, "tooltip": "(users.AllUsers.address_column) ", "width": Lino.chars2width(31) } ];
    Lino.users.AllUsers.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.users.AllUsers.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/AllUsers", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.AllUsers.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/AllUsers", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.AllUsers.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/AllUsers", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.users.AllUsers.insertPanel = Ext.extend(Lino.users.Users.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/users/AllUsers",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.users.AllUsers.detail;
    this.ls_insert_handler = Lino.users.AllUsers.insert;
    Lino.users.AllUsers.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.users.AllUsers.insert = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.users.AllUsers.insertPanel(p);
});
Lino.users.AllUsers.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/AllUsers", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.AllUsers.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/AllUsers", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.AllUsers.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/AllUsers", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.users.AllUsers.detailPanel = Ext.extend(Lino.users.Users.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "iconCls": "x-tbar-arrow_join", "itemId": "merge_row", "menu_item_text": "Merge", "overflowText": "Merge", "panel_btn_handler": Lino.param_action_handler(Lino.contacts.Persons.merge_row), "tooltip": "Merge this object into another object of same class." }, { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "check_plausibility", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": "Check plausibility", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." }, { "auto_save": true, "itemId": "fix_problems", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": "Fix plausibility problems", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." } ], "menu_item_text": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": null, "xtype": "splitbutton" }, { "auto_save": true, "itemId": "update_widgets", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create or update the widgets for this user.") }, "menu_item_text": "Update widgets", "overflowText": "Update widgets", "panel_btn_handler": Lino.row_action_handler('update_widgets','GET',null), "text": "\u00a0\u26a1\u00a0" }, { "auto_save": true, "itemId": "change_password", "menu_item_text": "Change password", "overflowText": "Change password", "panel_btn_handler": Lino.param_action_handler(Lino.users.Users.change_password), "text": " <font size=\"4\">\u2731</font>" } ],
  ls_url: "/users/AllUsers",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.users.AllUsers.detail;
    this.ls_insert_handler = Lino.users.AllUsers.insert;
    Lino.users.AllUsers.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.users.AllUsers.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.users.AllUsers.detailPanel(p);
});
Lino.users.AllUsers.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/AllUsers", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.AllUsers.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.users.Users.ParamsPanel({});
  return new Lino.users.AllUsers.GridPanel(p);
});
Lino.users.AllUsers.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/AllUsers", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.AllUsers.check_plausibility = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/AllUsers", "GET", pk, "check_plausibility", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.AllUsers.ins_company = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/AllUsers", "GET", pk, "ins_company", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.AllUsers.update_widgets = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/AllUsers", "GET", pk, "update_widgets", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.AllUsers.ins_user = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/AllUsers", "GET", pk, "ins_user", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.AllUsers.del_partner = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/AllUsers", "GET", pk, "del_partner", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.AllUsers.fix_problems = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/AllUsers", "GET", pk, "fix_problems", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.AllUsers.del_company = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/AllUsers", "GET", pk, "del_company", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.AllUsers.ins_partner = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/AllUsers", "GET", pk, "ins_partner", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.AllUsers.del_person = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/AllUsers", "GET", pk, "del_person", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.AllUsers.ins_person = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/AllUsers", "GET", pk, "ins_person", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.AllUsers.ins_household = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/AllUsers", "GET", pk, "ins_household", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.AllUsers.del_user = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/AllUsers", "GET", pk, "del_user", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.AllUsers.del_household = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/AllUsers", "GET", pk, "del_household", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.AllUsers.wf1 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/AllUsers", "GET", pk, "wf1", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.AllUsers.wf2 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/AllUsers", "GET", pk, "wf2", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.AllUsers.wf3 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/AllUsers", "GET", pk, "wf3", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class users.UsersOverview
Lino.users.UsersOverview.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/users/UsersOverview",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/users/UsersOverview','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/users/UsersOverview','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "iconCls": "x-tbar-arrow_join", "itemId": "merge_row", "menu_item_text": "Merge", "overflowText": "Merge", "panel_btn_handler": Lino.param_action_handler(Lino.contacts.Persons.merge_row), "tooltip": "Merge this object into another object of same class." }, { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "check_plausibility", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": "Check plausibility", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." }, { "auto_save": true, "itemId": "fix_problems", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": "Fix plausibility problems", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." } ], "menu_item_text": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": null, "xtype": "splitbutton" }, { "auto_save": true, "itemId": "update_widgets", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create or update the widgets for this user.") }, "menu_item_text": "Update widgets", "overflowText": "Update widgets", "panel_btn_handler": Lino.row_action_handler('update_widgets','GET',null), "text": "\u00a0\u26a1\u00a0" }, { "auto_save": true, "itemId": "change_password", "menu_item_text": "Change password", "overflowText": "Change password", "panel_btn_handler": Lino.param_action_handler(Lino.users.Users.change_password), "text": " <font size=\"4\">\u2731</font>" } ],
  cell_edit : true,
  title : "Users",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 7,
  ls_store_fields : [ { "name": "username" }, { "name": "user_type" }, 'user_typeHidden', { "name": "language" }, 'languageHidden', { "name": "person_ptr" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 5,
  ls_grid_configs : [  ],
  content_type : 10,
  ls_id_property : "person_ptr",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.users.UsersOverview.detail;
    this.ls_insert_handler = Lino.users.UsersOverview.insert;
    var ww = this.containing_window;
    var username1746 = new Ext.form.TextField({ "maxLength": 30, "selectOnFocus": true });
    var user_type1747 = new Lino.ChoicesFieldElement({ "forceSelection": true, "selectOnFocus": true, "store": [['','<br>']].concat(Lino.users.UserTypes) });
    var language1748 = new Lino.ChoicesFieldElement({ "selectOnFocus": true, "store": [ [ "en-us", "American English" ] ] });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "username", "editable": true, "editor": username1746, "filter": { "type": "string" }, "header": "Username", "sortable": true, "tooltip": "(users.UsersOverview.username) Must be unique or empty.\nLeaving this empty means that the user cannot log in.", "width": Lino.chars2width(22) }, { "colIndex": 1, "dataIndex": "user_type", "editable": true, "editor": user_type1747, "filter": { "type": "string" }, "header": "User type", "sortable": false, "tooltip": "(users.UsersOverview.user_type) The user_type of a user is what defines her or his permissions.", "width": Lino.chars2width(25) }, { "colIndex": 2, "dataIndex": "language", "editable": true, "editor": language1748, "filter": { "type": "string" }, "header": "Language", "sortable": false, "tooltip": "(users.UsersOverview.language) The language to use when communicating with this partner.", "width": Lino.chars2width(21) } ];
    Lino.users.UsersOverview.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.users.UsersOverview.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/UsersOverview", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.UsersOverview.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/UsersOverview", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.UsersOverview.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/UsersOverview", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.users.UsersOverview.insertPanel = Ext.extend(Lino.users.Users.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/users/UsersOverview",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.users.UsersOverview.detail;
    this.ls_insert_handler = Lino.users.UsersOverview.insert;
    Lino.users.UsersOverview.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.users.UsersOverview.insert = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.users.UsersOverview.insertPanel(p);
});
Lino.users.UsersOverview.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/UsersOverview", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.UsersOverview.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/UsersOverview", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.UsersOverview.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/UsersOverview", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.users.UsersOverview.detailPanel = Ext.extend(Lino.users.Users.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "iconCls": "x-tbar-arrow_join", "itemId": "merge_row", "menu_item_text": "Merge", "overflowText": "Merge", "panel_btn_handler": Lino.param_action_handler(Lino.contacts.Persons.merge_row), "tooltip": "Merge this object into another object of same class." }, { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "check_plausibility", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": "Check plausibility", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." }, { "auto_save": true, "itemId": "fix_problems", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": "Fix plausibility problems", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." } ], "menu_item_text": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": null, "xtype": "splitbutton" }, { "auto_save": true, "itemId": "update_widgets", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create or update the widgets for this user.") }, "menu_item_text": "Update widgets", "overflowText": "Update widgets", "panel_btn_handler": Lino.row_action_handler('update_widgets','GET',null), "text": "\u00a0\u26a1\u00a0" }, { "auto_save": true, "itemId": "change_password", "menu_item_text": "Change password", "overflowText": "Change password", "panel_btn_handler": Lino.param_action_handler(Lino.users.Users.change_password), "text": " <font size=\"4\">\u2731</font>" } ],
  ls_url: "/users/UsersOverview",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.users.UsersOverview.detail;
    this.ls_insert_handler = Lino.users.UsersOverview.insert;
    Lino.users.UsersOverview.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.users.UsersOverview.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.users.UsersOverview.detailPanel(p);
});
Lino.users.UsersOverview.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/UsersOverview", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.UsersOverview.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.users.Users.ParamsPanel({});
  return new Lino.users.UsersOverview.GridPanel(p);
});
Lino.users.UsersOverview.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/UsersOverview", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.UsersOverview.check_plausibility = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/UsersOverview", "GET", pk, "check_plausibility", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.UsersOverview.ins_company = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/UsersOverview", "GET", pk, "ins_company", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.UsersOverview.update_widgets = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/UsersOverview", "GET", pk, "update_widgets", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.UsersOverview.ins_user = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/UsersOverview", "GET", pk, "ins_user", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.UsersOverview.del_partner = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/UsersOverview", "GET", pk, "del_partner", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.UsersOverview.fix_problems = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/UsersOverview", "GET", pk, "fix_problems", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.UsersOverview.del_company = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/UsersOverview", "GET", pk, "del_company", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.UsersOverview.ins_partner = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/UsersOverview", "GET", pk, "ins_partner", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.UsersOverview.del_person = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/UsersOverview", "GET", pk, "del_person", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.UsersOverview.ins_person = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/UsersOverview", "GET", pk, "ins_person", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.UsersOverview.ins_household = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/UsersOverview", "GET", pk, "ins_household", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.UsersOverview.del_user = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/UsersOverview", "GET", pk, "del_user", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.UsersOverview.del_household = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/UsersOverview", "GET", pk, "del_household", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.UsersOverview.wf1 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/UsersOverview", "GET", pk, "wf1", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.UsersOverview.wf2 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/UsersOverview", "GET", pk, "wf2", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.UsersOverview.wf3 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/UsersOverview", "GET", pk, "wf3", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class users.MySettings
Lino.users.MySettings.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/users/MySettings",
  ls_bbar_actions : [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-arrow_join", "itemId": "merge_row", "menu_item_text": "Merge", "overflowText": "Merge", "panel_btn_handler": Lino.param_action_handler(Lino.contacts.Persons.merge_row), "tooltip": "Merge this object into another object of same class." }, { "auto_save": true, "itemId": "update_widgets", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create or update the widgets for this user.") }, "menu_item_text": "Update widgets", "overflowText": "Update widgets", "panel_btn_handler": Lino.row_action_handler('update_widgets','GET',null), "text": "\u00a0\u26a1\u00a0" }, { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "fix_problems", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": "Fix plausibility problems", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." }, { "auto_save": true, "itemId": "check_plausibility", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": "Check plausibility", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." } ], "menu_item_text": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": null, "xtype": "splitbutton" }, { "auto_save": true, "itemId": "change_password", "menu_item_text": "Change password", "overflowText": "Change password", "panel_btn_handler": Lino.param_action_handler(Lino.users.Users.change_password), "text": " <font size=\"4\">\u2731</font>" } ],
  cell_edit : true,
  title : "Users",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 60,
  ls_store_fields : [ { "name": "username" }, { "name": "user_type" }, 'user_typeHidden', { "name": "first_name" }, { "name": "last_name" }, { "name": "id", "type": "int" }, { "name": "email" }, { "name": "language" }, 'languageHidden', { "name": "url" }, { "name": "phone" }, { "name": "gsm" }, { "name": "fax" }, { "name": "country" }, 'countryHidden', { "name": "city" }, 'cityHidden', { "name": "zip_code" }, { "name": "region" }, 'regionHidden', { "name": "addr1" }, { "name": "street_prefix" }, { "name": "street" }, { "name": "street_no" }, { "name": "street_box" }, { "name": "addr2" }, { "name": "prefix" }, { "name": "name" }, { "name": "remarks" }, { "name": "title" }, { "name": "middle_name" }, { "name": "gender" }, 'genderHidden', { "name": "birth_date" }, { "name": "private", "type": "boolean" }, { "name": "modified" }, { "name": "created" }, { "name": "password" }, { "name": "last_login" }, { "name": "timezone" }, { "name": "initials" }, { "name": "callme_mode", "type": "boolean" }, { "name": "verification_code" }, { "name": "user_state" }, 'user_stateHidden', { "name": "access_class" }, 'access_classHidden', { "name": "event_type" }, 'event_typeHidden', { "name": "about_me" }, { "name": "name_column" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "created_natural" }, { "name": "age" }, { "name": "mti_navigator" }, { "name": "address_column" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 5,
  ls_grid_configs : [  ],
  content_type : 8,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.users.MySettings.detail;
    this.ls_insert_handler = Lino.users.Users.insert;
    var ww = this.containing_window;
    var username3124 = new Ext.form.TextField({ "maxLength": 30, "selectOnFocus": true });
    var user_type3125 = new Lino.ChoicesFieldElement({ "forceSelection": true, "selectOnFocus": true, "store": [['','<br>']].concat(Lino.users.UserTypes) });
    var first_name3126 = new Ext.form.TextField({ "maxLength": 200, "selectOnFocus": true });
    var last_name3127 = new Ext.form.TextField({ "maxLength": 200, "selectOnFocus": true });
    var id3128 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var email3129 = new Ext.form.TextField({ "hidden": true, "maxLength": 254, "selectOnFocus": true });
    var language3130 = new Lino.ChoicesFieldElement({ "hidden": true, "selectOnFocus": true, "store": [ [ "en-us", "American English" ] ] });
    var url3131 = new Lino.URLField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var phone3132 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var gsm3133 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var fax3134 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var country3135 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Country...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/users/MySettings/country" }) }) });
    var city3136 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Place...", "forceSelection": false, "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/users/MySettings/city" }) }) });
    var zip_code3137 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(10), "hidden": true, "maxLength": 10, "selectOnFocus": true });
    var region3138 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Place...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/users/MySettings/region" }) }) });
    var addr13139 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var street_prefix3140 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var street3141 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var street_no3142 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(10), "hidden": true, "maxLength": 10, "selectOnFocus": true });
    var street_box3143 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(10), "hidden": true, "maxLength": 10, "selectOnFocus": true });
    var addr23144 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var prefix3145 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var name3146 = new Ext.form.TextField({ "allowBlank": false, "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var remarks3147 = new Lino.RichTextPanel({ "containing_panel": this, "hidden": true, "selectOnFocus": true, "title": "About me" });
    var title3148 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var middle_name3149 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var gender3150 = new Lino.ChoicesFieldElement({ "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": [['','<br>']].concat(Lino.system.Genders) });
    var birth_date3151 = new Lino.IncompleteDateField({ "hidden": true, "selectOnFocus": true });
    var private3152 = new Ext.form.Checkbox({ "checked": false, "hidden": true, "selectOnFocus": true });
    var modified3153 = new Ext.form.DisplayField({ "disabled": true, "hidden": true, "value": "<br>" });
    var created3154 = new Ext.form.DisplayField({ "disabled": true, "hidden": true, "value": "<br>" });
    var password3155 = new Ext.form.TextField({ "allowBlank": false, "hidden": true, "maxLength": 128, "selectOnFocus": true });
    var last_login3156 = new Ext.form.DisplayField({ "hidden": true, "selectOnFocus": true, "value": "<br>" });
    var timezone3157 = new Lino.SimpleRemoteComboFieldElement({ "hidden": true, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/users/MySettings/timezone" }) }) });
    var initials3158 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(10), "hidden": true, "maxLength": 10, "selectOnFocus": true });
    var callme_mode3159 = new Ext.form.Checkbox({ "checked": true, "hidden": true, "selectOnFocus": true });
    var verification_code3160 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var user_state3161 = new Lino.ChoicesFieldElement({ "allowBlank": false, "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": Lino.users.UserStates });
    var access_class3162 = new Lino.ChoicesFieldElement({ "allowBlank": false, "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": Lino.cal.AccessClasses });
    var event_type3163 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Calendar entry type...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/users/MySettings/event_type" }) }) });
    var about_me_htmlbox3164 = new Lino.HtmlBoxPanel({ "always_enabled": true, "bodyStyle": "overflow-x:hidden;", "containing_panel": this, "hidden": true, "items": new Ext.BoxComponent({autoScroll:true}), "layout": "fit", "name": "about_me", "title": "About me", "value": "<br/>" });
    var name_column_disp3165 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var mobile_item_disp3166 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp3167 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp3168 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp3169 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var created_natural_disp3170 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var age_disp3171 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var mti_navigator_disp3172 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var address_column_disp3173 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
      city3136.setContextValue('country', record ? record.data['countryHidden'] : undefined);
      city3136.setContextValue('region', record ? record.data['regionHidden'] : undefined);
      region3138.setContextValue('country', record ? record.data['countryHidden'] : undefined);
      remarks3147.refresh();
      timezone3157.setContextValue('partner', record ? record.data['partner'] : undefined);
      about_me_htmlbox3164.refresh();
    };
    this.onRender = function(ct, position) {
      country3135.on('change',Lino.chooser_handler(city3136,'country'));
      region3138.on('change',Lino.chooser_handler(city3136,'region'));
      country3135.on('change',Lino.chooser_handler(region3138,'country'));
      Lino.users.MySettings.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "username", "editable": true, "editor": username3124, "filter": { "type": "string" }, "header": "Username", "sortable": true, "tooltip": "(users.MySettings.username) Must be unique or empty.\nLeaving this empty means that the user cannot log in.", "width": Lino.chars2width(22) }, { "colIndex": 1, "dataIndex": "user_type", "editable": true, "editor": user_type3125, "filter": { "type": "string" }, "header": "User type", "sortable": false, "tooltip": "(users.MySettings.user_type) The user_type of a user is what defines her or his permissions.", "width": Lino.chars2width(25) }, { "colIndex": 2, "dataIndex": "first_name", "editable": true, "editor": first_name3126, "filter": { "type": "string" }, "header": "First name", "sortable": true, "tooltip": "(users.MySettings.first_name) The first name, also known as given name.", "width": Lino.chars2width(22) }, { "colIndex": 3, "dataIndex": "last_name", "editable": true, "editor": last_name3127, "filter": { "type": "string" }, "header": "Last name", "sortable": true, "tooltip": "(users.MySettings.last_name) The last name, also known as family name.", "width": Lino.chars2width(22) }, { "align": "right", "colIndex": 4, "dataIndex": "id", "editable": true, "editor": id3128, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(users.MySettings.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 5, "dataIndex": "email", "editable": true, "editor": email3129, "filter": { "type": "string" }, "header": "e-mail address", "hidden": true, "sortable": true, "tooltip": "(users.MySettings.email) The primary email address.", "width": Lino.chars2width(22) }, { "colIndex": 6, "dataIndex": "language", "editable": true, "editor": language3130, "filter": { "type": "string" }, "header": "Language", "hidden": true, "sortable": false, "tooltip": "(users.MySettings.language) The language to use when communicating with this partner.", "width": Lino.chars2width(21) }, { "colIndex": 7, "dataIndex": "url", "editable": true, "editor": url3131, "filter": { "type": "string" }, "header": "URL", "hidden": true, "sortable": true, "tooltip": "(users.MySettings.url) ", "width": Lino.chars2width(22) }, { "colIndex": 8, "dataIndex": "phone", "editable": true, "editor": phone3132, "filter": { "type": "string" }, "header": "Phone", "hidden": true, "sortable": true, "tooltip": "(users.MySettings.phone) The primary phone number.  Note that Lino does not ignore\nformatting characters in phone numbers when searching.  For\nexample, if you enter \"087/12.34.56\" as a phone number, then a\nsearch for phone number containing \"1234\" will not find it.", "width": Lino.chars2width(22) }, { "colIndex": 9, "dataIndex": "gsm", "editable": true, "editor": gsm3133, "filter": { "type": "string" }, "header": "GSM", "hidden": true, "sortable": true, "tooltip": "(users.MySettings.gsm) The primary mobile phone number.", "width": Lino.chars2width(22) }, { "colIndex": 10, "dataIndex": "fax", "editable": true, "editor": fax3134, "filter": { "type": "string" }, "header": "Fax", "hidden": true, "sortable": true, "tooltip": "(users.MySettings.fax) ", "width": Lino.chars2width(22) }, { "colIndex": 11, "dataIndex": "country", "editable": true, "editor": country3135, "filter": { "type": "string" }, "header": "Country", "hidden": true, "renderer": Lino.fk_renderer('countryHidden','Lino.countries.Countries.detail'), "sortable": false, "tooltip": "(users.MySettings.country) ", "width": Lino.chars2width(21) }, { "colIndex": 12, "dataIndex": "city", "editable": true, "editor": city3136, "filter": { "type": "string" }, "header": "City", "hidden": true, "renderer": Lino.fk_renderer('cityHidden','Lino.countries.Places.detail'), "sortable": false, "tooltip": "(users.MySettings.city) A pointer to the Place which is used as city.", "width": Lino.chars2width(21) }, { "colIndex": 13, "dataIndex": "zip_code", "editable": true, "editor": zip_code3137, "filter": { "type": "string" }, "header": "Zip code", "hidden": true, "sortable": true, "tooltip": "(users.MySettings.zip_code) ", "width": Lino.chars2width(12) }, { "colIndex": 14, "dataIndex": "region", "editable": true, "editor": region3138, "filter": { "type": "string" }, "header": "County", "hidden": true, "renderer": Lino.fk_renderer('regionHidden','Lino.countries.Places.detail'), "sortable": false, "tooltip": "(users.MySettings.region) ", "width": Lino.chars2width(21) }, { "colIndex": 15, "dataIndex": "addr1", "editable": true, "editor": addr13139, "filter": { "type": "string" }, "header": "Address line before street", "hidden": true, "sortable": true, "tooltip": "(users.MySettings.addr1) Address line before street", "width": Lino.chars2width(22) }, { "colIndex": 16, "dataIndex": "street_prefix", "editable": true, "editor": street_prefix3140, "filter": { "type": "string" }, "header": "Street prefix", "hidden": true, "sortable": true, "tooltip": "(users.MySettings.street_prefix) Text to print before name of street, but to ignore for sorting.", "width": Lino.chars2width(22) }, { "colIndex": 17, "dataIndex": "street", "editable": true, "editor": street3141, "filter": { "type": "string" }, "header": "Street", "hidden": true, "sortable": true, "tooltip": "(users.MySettings.street) Name of street, without house number.", "width": Lino.chars2width(22) }, { "colIndex": 18, "dataIndex": "street_no", "editable": true, "editor": street_no3142, "filter": { "type": "string" }, "header": "No.", "hidden": true, "sortable": true, "tooltip": "(users.MySettings.street_no) House number.", "width": Lino.chars2width(12) }, { "colIndex": 19, "dataIndex": "street_box", "editable": true, "editor": street_box3143, "filter": { "type": "string" }, "header": "Box", "hidden": true, "sortable": true, "tooltip": "(users.MySettings.street_box) Text to print after street nuber on the same line.", "width": Lino.chars2width(12) }, { "colIndex": 20, "dataIndex": "addr2", "editable": true, "editor": addr23144, "filter": { "type": "string" }, "header": "Address line after street", "hidden": true, "sortable": true, "tooltip": "(users.MySettings.addr2) Address line to print below street line.", "width": Lino.chars2width(22) }, { "colIndex": 21, "dataIndex": "prefix", "editable": true, "editor": prefix3145, "filter": { "type": "string" }, "header": "Name prefix", "hidden": true, "sortable": true, "tooltip": "(users.MySettings.prefix) An optional name prefix. For organisations this is inserted\nbefore the name, for persons this is inserted between first\nname and last name (see\nlino.mixins.human.Human.get_last_name_prefix()).", "width": Lino.chars2width(22) }, { "colIndex": 22, "dataIndex": "name", "editable": true, "editor": name3146, "filter": { "type": "string" }, "header": "Name", "hidden": true, "sortable": true, "tooltip": "(users.MySettings.name) The full name of this partner. Used for alphabetic sorting.\nSubclasses may hide this field and fill it automatically,\ne.g. saving a Person will automatically set her\nname field to \"last_name, first_name\".", "width": Lino.chars2width(22) }, { "colIndex": 23, "dataIndex": "remarks", "editable": true, "editor": remarks3147, "filter": { "type": "string" }, "header": "About me", "hidden": true, "sortable": false, "tooltip": "(users.MySettings.remarks) ", "width": Lino.chars2width(61) }, { "colIndex": 24, "dataIndex": "title", "editable": true, "editor": title3148, "filter": { "type": "string" }, "header": "Title", "hidden": true, "sortable": true, "tooltip": "(users.MySettings.title) Used to specify a professional position or academic\nqualification like \"Dr.\" or \"PhD\".", "width": Lino.chars2width(22) }, { "colIndex": 25, "dataIndex": "middle_name", "editable": true, "editor": middle_name3149, "filter": { "type": "string" }, "header": "Middle name", "hidden": true, "sortable": true, "tooltip": "(users.MySettings.middle_name) A space-separated list of all middle names.", "width": Lino.chars2width(22) }, { "colIndex": 26, "dataIndex": "gender", "editable": true, "editor": gender3150, "filter": { "type": "string" }, "header": "Gender", "hidden": true, "sortable": false, "tooltip": "(users.MySettings.gender) The sex of this person (male or female).", "width": Lino.chars2width(10) }, { "colIndex": 27, "dataIndex": "birth_date", "editable": true, "editor": birth_date3151, "filter": { "type": "string" }, "header": "Birth date", "hidden": true, "sortable": true, "tooltip": "(users.MySettings.birth_date) Uncomplete dates are allowed, e.g. \n\"00.00.1980\" means \"some day in 1980\", \n\"00.07.1980\" means \"in July 1980\"\nor \"23.07.0000\" means \"on a 23th of July\".", "width": Lino.chars2width(13) }, { "colIndex": 28, "dataIndex": "private", "editable": true, "filter": { "type": "boolean" }, "header": "Private", "hidden": true, "sortable": false, "tooltip": "(users.MySettings.private) ", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 29, "dataIndex": "modified", "editable": false, "header": "Modified", "hidden": true, "sortable": true, "tooltip": "(users.MySettings.modified) ", "width": Lino.chars2width(17) }, { "colIndex": 30, "dataIndex": "created", "editable": false, "header": "Created", "hidden": true, "sortable": true, "tooltip": "(users.MySettings.created) The timestame when this object was created.", "width": Lino.chars2width(17) }, { "colIndex": 31, "dataIndex": "password", "editable": true, "editor": password3155, "filter": { "type": "string" }, "header": "password", "hidden": true, "sortable": true, "tooltip": "(users.MySettings.password) ", "width": Lino.chars2width(22) }, { "colIndex": 32, "dataIndex": "last_login", "editable": true, "editor": last_login3156, "header": "last login", "hidden": true, "sortable": true, "tooltip": "(users.MySettings.last_login) Not used in Lino.", "width": Lino.chars2width(17) }, { "colIndex": 33, "dataIndex": "timezone", "editable": true, "editor": timezone3157, "filter": { "type": "string" }, "header": "Time zone", "hidden": true, "sortable": false, "tooltip": "(users.MySettings.timezone) ", "width": Lino.chars2width(11) }, { "colIndex": 34, "dataIndex": "initials", "editable": true, "editor": initials3158, "filter": { "type": "string" }, "header": "Initials", "hidden": true, "sortable": true, "tooltip": "(users.MySettings.initials) The nickname or initials of this user. This does not need to\nbe unique but should provide a reasonably identifying\nfunction.", "width": Lino.chars2width(12) }, { "colIndex": 35, "dataIndex": "callme_mode", "editable": true, "filter": { "type": "boolean" }, "header": "Others may contact me", "hidden": true, "sortable": false, "tooltip": "(users.MySettings.callme_mode) Whether other users can see my contact data.", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 36, "dataIndex": "verification_code", "editable": true, "editor": verification_code3160, "filter": { "type": "string" }, "header": "verification code", "hidden": true, "sortable": true, "tooltip": "(users.MySettings.verification_code) A random string set for every new user. Used for\nonline_registration.", "width": Lino.chars2width(22) }, { "colIndex": 37, "dataIndex": "user_state", "editable": true, "editor": user_state3161, "filter": { "type": "string" }, "header": "User state", "hidden": true, "sortable": false, "tooltip": "(users.MySettings.user_state) The registration state of this user.", "width": Lino.chars2width(12) }, { "colIndex": 38, "dataIndex": "access_class", "editable": true, "editor": access_class3162, "filter": { "type": "string" }, "header": "Default access class", "hidden": true, "sortable": false, "tooltip": "(users.MySettings.access_class) The default access class for your calendar events and tasks.", "width": Lino.chars2width(13) }, { "colIndex": 39, "dataIndex": "event_type", "editable": true, "editor": event_type3163, "filter": { "type": "string" }, "header": "Default Event Type", "hidden": true, "renderer": Lino.fk_renderer('event_typeHidden','Lino.cal.EventTypes.detail'), "sortable": false, "tooltip": "(users.MySettings.event_type) The default event type for your calendar events.", "width": Lino.chars2width(21) }, { "colIndex": 40, "dataIndex": "about_me", "editable": false, "header": "About me", "hidden": true, "sortable": false, "tooltip": "(users.MySettings.about_me) ", "width": Lino.chars2width(31) }, { "colIndex": 41, "dataIndex": "name_column", "editable": false, "header": "Name", "hidden": true, "sortable": false, "tooltip": "(users.MySettings.name_column) ", "width": Lino.chars2width(16) }, { "colIndex": 42, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(users.MySettings.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 43, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(users.MySettings.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 44, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(users.MySettings.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 45, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(users.MySettings.workflow_buttons) ", "width": Lino.chars2width(31) }, { "colIndex": 46, "dataIndex": "created_natural", "editable": false, "header": "Created", "hidden": true, "sortable": false, "tooltip": "(users.MySettings.created_natural) ", "width": Lino.chars2width(31) }, { "colIndex": 47, "dataIndex": "age", "editable": false, "header": "Age", "hidden": true, "sortable": false, "tooltip": "(users.MySettings.age) ", "width": Lino.chars2width(31) }, { "colIndex": 48, "dataIndex": "mti_navigator", "editable": false, "header": "See as ", "hidden": true, "sortable": false, "tooltip": "(users.MySettings.mti_navigator) ", "width": Lino.chars2width(31) }, { "colIndex": 49, "dataIndex": "address_column", "editable": false, "header": "Address", "hidden": true, "sortable": false, "tooltip": "(users.MySettings.address_column) ", "width": Lino.chars2width(31) } ];
    Lino.users.MySettings.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.users.MySettings.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/MySettings", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.MySettings.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/MySettings", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.MySettings.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/MySettings", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.MySettings.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/MySettings", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.MySettings.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/MySettings", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.MySettings.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/MySettings", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.users.MySettings.detailPanel = Ext.extend(Lino.users.Users.DetailFormPanel,{
  empty_title: "Users",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-arrow_join", "itemId": "merge_row", "menu_item_text": "Merge", "overflowText": "Merge", "panel_btn_handler": Lino.param_action_handler(Lino.contacts.Persons.merge_row), "tooltip": "Merge this object into another object of same class." }, { "auto_save": true, "itemId": "update_widgets", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create or update the widgets for this user.") }, "menu_item_text": "Update widgets", "overflowText": "Update widgets", "panel_btn_handler": Lino.row_action_handler('update_widgets','GET',null), "text": "\u00a0\u26a1\u00a0" }, { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "fix_problems", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": "Fix plausibility problems", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." }, { "auto_save": true, "itemId": "check_plausibility", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": "Check plausibility", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." } ], "menu_item_text": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": null, "xtype": "splitbutton" }, { "auto_save": true, "itemId": "change_password", "menu_item_text": "Change password", "overflowText": "Change password", "panel_btn_handler": Lino.param_action_handler(Lino.users.Users.change_password), "text": " <font size=\"4\">\u2731</font>" } ],
  ls_url: "/users/MySettings",
  initComponent : function() {
    this.ls_detail_handler = Lino.users.MySettings.detail;
    this.ls_insert_handler = Lino.users.Users.insert;
    Lino.users.MySettings.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.users.MySettings.detail = new Lino.WindowAction({  }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.users.MySettings.detailPanel(p);
});

Lino.users.MySettings.detailPanel = Ext.extend(Lino.users.Users.DetailFormPanel,{
  empty_title: "Users",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-arrow_join", "itemId": "merge_row", "menu_item_text": "Merge", "overflowText": "Merge", "panel_btn_handler": Lino.param_action_handler(Lino.contacts.Persons.merge_row), "tooltip": "Merge this object into another object of same class." }, { "auto_save": true, "itemId": "update_widgets", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create or update the widgets for this user.") }, "menu_item_text": "Update widgets", "overflowText": "Update widgets", "panel_btn_handler": Lino.row_action_handler('update_widgets','GET',null), "text": "\u00a0\u26a1\u00a0" }, { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "fix_problems", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": "Fix plausibility problems", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." }, { "auto_save": true, "itemId": "check_plausibility", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": "Check plausibility", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." } ], "menu_item_text": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": null, "xtype": "splitbutton" }, { "auto_save": true, "itemId": "change_password", "menu_item_text": "Change password", "overflowText": "Change password", "panel_btn_handler": Lino.param_action_handler(Lino.users.Users.change_password), "text": " <font size=\"4\">\u2731</font>" } ],
  ls_url: "/users/MySettings",
  initComponent : function() {
    this.ls_detail_handler = Lino.users.MySettings.detail;
    this.ls_insert_handler = Lino.users.Users.insert;
    Lino.users.MySettings.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.users.MySettings.detail = new Lino.WindowAction({  }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.users.MySettings.detailPanel(p);
});
Lino.users.MySettings.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/MySettings", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.MySettings.del_company = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/MySettings", "GET", pk, "del_company", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.MySettings.ins_company = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/MySettings", "GET", pk, "ins_company", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.MySettings.update_widgets = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/MySettings", "GET", pk, "update_widgets", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.MySettings.ins_partner = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/MySettings", "GET", pk, "ins_partner", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.MySettings.ins_user = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/MySettings", "GET", pk, "ins_user", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.MySettings.del_partner = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/MySettings", "GET", pk, "del_partner", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.MySettings.fix_problems = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/MySettings", "GET", pk, "fix_problems", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.MySettings.ins_person = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/MySettings", "GET", pk, "ins_person", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.MySettings.del_household = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/MySettings", "GET", pk, "del_household", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.MySettings.ins_household = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/MySettings", "GET", pk, "ins_household", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.MySettings.del_person = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/MySettings", "GET", pk, "del_person", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.MySettings.del_user = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/MySettings", "GET", pk, "del_user", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.MySettings.check_plausibility = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/MySettings", "GET", pk, "check_plausibility", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.MySettings.wf1 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/MySettings", "GET", pk, "wf1", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.MySettings.wf2 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/MySettings", "GET", pk, "wf2", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.MySettings.wf3 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/MySettings", "GET", pk, "wf3", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class users.Authorities
Lino.users.Authorities.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/users/Authorities",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/users/Authorities','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/users/Authorities','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "Authorities",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 10,
  ls_store_fields : [ { "name": "id", "type": "int" }, { "name": "user" }, 'userHidden', { "name": "authorized" }, 'authorizedHidden', { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 0,
  ls_grid_configs : [  ],
  content_type : 11,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    var ww = this.containing_window;
    var id3175 = new Ext.form.NumberField({ "selectOnFocus": true });
    var user3176 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a User...", "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/users/Authorities/user" }) }) });
    var authorized3177 = new Lino.RemoteComboFieldElement({ "allowBlank": false, "emptyText": "Select a User...", "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/users/Authorities/authorized" }) }) });
    var mobile_item_disp3178 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp3179 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp3180 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp3181 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
      authorized3177.setContextValue('user', record ? record.data['userHidden'] : undefined);
    };
    this.onRender = function(ct, position) {
      user3176.on('change',Lino.chooser_handler(authorized3177,'user'));
      Lino.users.Authorities.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "align": "right", "colIndex": 0, "dataIndex": "id", "editable": true, "editor": id3175, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "sortable": true, "tooltip": "(users.Authorities.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 1, "dataIndex": "user", "editable": true, "editor": user3176, "filter": { "type": "string" }, "header": "Author", "renderer": Lino.fk_renderer('userHidden','Lino.users.Users.detail'), "sortable": false, "tooltip": "(users.Authorities.user) The user who gives the right of representation. author of this\nauthority", "width": Lino.chars2width(21) }, { "colIndex": 2, "dataIndex": "authorized", "editable": true, "editor": authorized3177, "filter": { "type": "string" }, "header": "User", "renderer": Lino.fk_renderer('authorizedHidden','Lino.users.Users.detail'), "sortable": false, "tooltip": "(users.Authorities.authorized) The user who gets the right to represent the author", "width": Lino.chars2width(21) }, { "colIndex": 3, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(users.Authorities.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 4, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(users.Authorities.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 5, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(users.Authorities.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 6, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(users.Authorities.workflow_buttons) ", "width": Lino.chars2width(31) } ];
    Lino.users.Authorities.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.users.Authorities.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/Authorities", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.Authorities.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/Authorities", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.Authorities.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/Authorities", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.Authorities.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/Authorities", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.Authorities.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/Authorities", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.Authorities.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/Authorities", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.Authorities.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.users.Authorities.ParamsPanel({});
  return new Lino.users.Authorities.GridPanel(p);
});

// js_render_GridPanel_class users.OtherUsers
Lino.users.OtherUsers.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true },
  ls_url : "/users/OtherUsers",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/users/OtherUsers','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/users/OtherUsers','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": true, "iconCls": "x-tbar-arrow_join", "itemId": "merge_row", "menu_item_text": "Merge", "overflowText": "Merge", "panel_btn_handler": Lino.param_action_handler(Lino.contacts.Persons.merge_row), "tooltip": "Merge this object into another object of same class." }, { "auto_save": true, "itemId": "update_widgets", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create or update the widgets for this user.") }, "menu_item_text": "Update widgets", "overflowText": "Update widgets", "panel_btn_handler": Lino.row_action_handler('update_widgets','GET',null), "text": "\u00a0\u26a1\u00a0" }, { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "fix_problems", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": "Fix plausibility problems", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." }, { "auto_save": true, "itemId": "check_plausibility", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": "Check plausibility", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." } ], "menu_item_text": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": null, "xtype": "splitbutton" }, { "auto_save": true, "itemId": "change_password", "menu_item_text": "Change password", "overflowText": "Change password", "panel_btn_handler": Lino.param_action_handler(Lino.users.Users.change_password), "text": " <font size=\"4\">\u2731</font>" } ],
  cell_edit : true,
  title : "Users",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disable_editing : true,
  disabled_actions_index : 59,
  ls_store_fields : [ { "name": "username" }, { "name": "user_type" }, 'user_typeHidden', { "name": "first_name" }, { "name": "last_name" }, { "name": "id", "type": "int" }, { "name": "email" }, { "name": "language" }, 'languageHidden', { "name": "url" }, { "name": "phone" }, { "name": "gsm" }, { "name": "fax" }, { "name": "country" }, 'countryHidden', { "name": "city" }, 'cityHidden', { "name": "zip_code" }, { "name": "region" }, 'regionHidden', { "name": "addr1" }, { "name": "street_prefix" }, { "name": "street" }, { "name": "street_no" }, { "name": "street_box" }, { "name": "addr2" }, { "name": "prefix" }, { "name": "name" }, { "name": "remarks" }, { "name": "title" }, { "name": "middle_name" }, { "name": "gender" }, 'genderHidden', { "name": "birth_date" }, { "name": "private", "type": "boolean" }, { "name": "modified" }, { "name": "created" }, { "name": "password" }, { "name": "last_login" }, { "name": "timezone" }, { "name": "initials" }, { "name": "callme_mode", "type": "boolean" }, { "name": "verification_code" }, { "name": "user_state" }, 'user_stateHidden', { "name": "access_class" }, 'access_classHidden', { "name": "event_type" }, 'event_typeHidden', { "name": "about_me" }, { "name": "name_column" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "created_natural" }, { "name": "age" }, { "name": "mti_navigator" }, { "name": "address_column" }, { "name": "disabled_actions" } ],
  pk_index : 5,
  ls_grid_configs : [  ],
  content_type : 8,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.users.OtherUsers.detail;
    this.ls_insert_handler = Lino.users.Users.insert;
    var ww = this.containing_window;
    var username3183 = new Ext.form.TextField({ "maxLength": 30, "selectOnFocus": true });
    var user_type3184 = new Lino.ChoicesFieldElement({ "forceSelection": true, "selectOnFocus": true, "store": [['','<br>']].concat(Lino.users.UserTypes) });
    var first_name3185 = new Ext.form.TextField({ "maxLength": 200, "selectOnFocus": true });
    var last_name3186 = new Ext.form.TextField({ "maxLength": 200, "selectOnFocus": true });
    var id3187 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var email3188 = new Ext.form.TextField({ "hidden": true, "maxLength": 254, "selectOnFocus": true });
    var language3189 = new Lino.ChoicesFieldElement({ "hidden": true, "selectOnFocus": true, "store": [ [ "en-us", "American English" ] ] });
    var url3190 = new Lino.URLField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var phone3191 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var gsm3192 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var fax3193 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var country3194 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Country...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/users/OtherUsers/country" }) }) });
    var city3195 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Place...", "forceSelection": false, "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/users/OtherUsers/city" }) }) });
    var zip_code3196 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(10), "hidden": true, "maxLength": 10, "selectOnFocus": true });
    var region3197 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Place...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/users/OtherUsers/region" }) }) });
    var addr13198 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var street_prefix3199 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var street3200 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var street_no3201 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(10), "hidden": true, "maxLength": 10, "selectOnFocus": true });
    var street_box3202 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(10), "hidden": true, "maxLength": 10, "selectOnFocus": true });
    var addr23203 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var prefix3204 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var name3205 = new Ext.form.TextField({ "allowBlank": false, "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var remarks3206 = new Lino.RichTextPanel({ "containing_panel": this, "hidden": true, "selectOnFocus": true, "title": "About me" });
    var title3207 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var middle_name3208 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var gender3209 = new Lino.ChoicesFieldElement({ "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": [['','<br>']].concat(Lino.system.Genders) });
    var birth_date3210 = new Lino.IncompleteDateField({ "hidden": true, "selectOnFocus": true });
    var private3211 = new Ext.form.Checkbox({ "checked": false, "hidden": true, "selectOnFocus": true });
    var modified3212 = new Ext.form.DisplayField({ "disabled": true, "hidden": true, "value": "<br>" });
    var created3213 = new Ext.form.DisplayField({ "disabled": true, "hidden": true, "value": "<br>" });
    var password3214 = new Ext.form.TextField({ "allowBlank": false, "hidden": true, "maxLength": 128, "selectOnFocus": true });
    var last_login3215 = new Ext.form.DisplayField({ "hidden": true, "selectOnFocus": true, "value": "<br>" });
    var timezone3216 = new Lino.SimpleRemoteComboFieldElement({ "hidden": true, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/users/OtherUsers/timezone" }) }) });
    var initials3217 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(10), "hidden": true, "maxLength": 10, "selectOnFocus": true });
    var callme_mode3218 = new Ext.form.Checkbox({ "checked": true, "hidden": true, "selectOnFocus": true });
    var verification_code3219 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var user_state3220 = new Lino.ChoicesFieldElement({ "allowBlank": false, "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": Lino.users.UserStates });
    var access_class3221 = new Lino.ChoicesFieldElement({ "allowBlank": false, "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": Lino.cal.AccessClasses });
    var event_type3222 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Calendar entry type...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/users/OtherUsers/event_type" }) }) });
    var about_me_htmlbox3223 = new Lino.HtmlBoxPanel({ "always_enabled": true, "bodyStyle": "overflow-x:hidden;", "containing_panel": this, "hidden": true, "items": new Ext.BoxComponent({autoScroll:true}), "layout": "fit", "name": "about_me", "title": "About me", "value": "<br/>" });
    var name_column_disp3224 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var mobile_item_disp3225 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp3226 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp3227 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp3228 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var created_natural_disp3229 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var age_disp3230 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var mti_navigator_disp3231 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var address_column_disp3232 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
      remarks3206.refresh();
      about_me_htmlbox3223.refresh();
    };
    this.onRender = function(ct, position) {
      country3194.on('change',Lino.chooser_handler(city3195,'country'));
      region3197.on('change',Lino.chooser_handler(city3195,'region'));
      country3194.on('change',Lino.chooser_handler(region3197,'country'));
      Lino.users.OtherUsers.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "username", "editable": true, "editor": username3183, "filter": { "type": "string" }, "header": "Username", "sortable": true, "tooltip": "(users.OtherUsers.username) Must be unique or empty.\nLeaving this empty means that the user cannot log in.", "width": Lino.chars2width(22) }, { "colIndex": 1, "dataIndex": "user_type", "editable": true, "editor": user_type3184, "filter": { "type": "string" }, "header": "User type", "sortable": false, "tooltip": "(users.OtherUsers.user_type) The user_type of a user is what defines her or his permissions.", "width": Lino.chars2width(25) }, { "colIndex": 2, "dataIndex": "first_name", "editable": true, "editor": first_name3185, "filter": { "type": "string" }, "header": "First name", "sortable": true, "tooltip": "(users.OtherUsers.first_name) The first name, also known as given name.", "width": Lino.chars2width(22) }, { "colIndex": 3, "dataIndex": "last_name", "editable": true, "editor": last_name3186, "filter": { "type": "string" }, "header": "Last name", "sortable": true, "tooltip": "(users.OtherUsers.last_name) The last name, also known as family name.", "width": Lino.chars2width(22) }, { "align": "right", "colIndex": 4, "dataIndex": "id", "editable": true, "editor": id3187, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(users.OtherUsers.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 5, "dataIndex": "email", "editable": true, "editor": email3188, "filter": { "type": "string" }, "header": "e-mail address", "hidden": true, "sortable": true, "tooltip": "(users.OtherUsers.email) The primary email address.", "width": Lino.chars2width(22) }, { "colIndex": 6, "dataIndex": "language", "editable": true, "editor": language3189, "filter": { "type": "string" }, "header": "Language", "hidden": true, "sortable": false, "tooltip": "(users.OtherUsers.language) The language to use when communicating with this partner.", "width": Lino.chars2width(21) }, { "colIndex": 7, "dataIndex": "url", "editable": true, "editor": url3190, "filter": { "type": "string" }, "header": "URL", "hidden": true, "sortable": true, "tooltip": "(users.OtherUsers.url) ", "width": Lino.chars2width(22) }, { "colIndex": 8, "dataIndex": "phone", "editable": true, "editor": phone3191, "filter": { "type": "string" }, "header": "Phone", "hidden": true, "sortable": true, "tooltip": "(users.OtherUsers.phone) The primary phone number.  Note that Lino does not ignore\nformatting characters in phone numbers when searching.  For\nexample, if you enter \"087/12.34.56\" as a phone number, then a\nsearch for phone number containing \"1234\" will not find it.", "width": Lino.chars2width(22) }, { "colIndex": 9, "dataIndex": "gsm", "editable": true, "editor": gsm3192, "filter": { "type": "string" }, "header": "GSM", "hidden": true, "sortable": true, "tooltip": "(users.OtherUsers.gsm) The primary mobile phone number.", "width": Lino.chars2width(22) }, { "colIndex": 10, "dataIndex": "fax", "editable": true, "editor": fax3193, "filter": { "type": "string" }, "header": "Fax", "hidden": true, "sortable": true, "tooltip": "(users.OtherUsers.fax) ", "width": Lino.chars2width(22) }, { "colIndex": 11, "dataIndex": "country", "editable": true, "editor": country3194, "filter": { "type": "string" }, "header": "Country", "hidden": true, "renderer": Lino.fk_renderer('countryHidden','Lino.countries.Countries.detail'), "sortable": false, "tooltip": "(users.OtherUsers.country) ", "width": Lino.chars2width(21) }, { "colIndex": 12, "dataIndex": "city", "editable": true, "editor": city3195, "filter": { "type": "string" }, "header": "City", "hidden": true, "renderer": Lino.fk_renderer('cityHidden','Lino.countries.Places.detail'), "sortable": false, "tooltip": "(users.OtherUsers.city) A pointer to the Place which is used as city.", "width": Lino.chars2width(21) }, { "colIndex": 13, "dataIndex": "zip_code", "editable": true, "editor": zip_code3196, "filter": { "type": "string" }, "header": "Zip code", "hidden": true, "sortable": true, "tooltip": "(users.OtherUsers.zip_code) ", "width": Lino.chars2width(12) }, { "colIndex": 14, "dataIndex": "region", "editable": true, "editor": region3197, "filter": { "type": "string" }, "header": "County", "hidden": true, "renderer": Lino.fk_renderer('regionHidden','Lino.countries.Places.detail'), "sortable": false, "tooltip": "(users.OtherUsers.region) ", "width": Lino.chars2width(21) }, { "colIndex": 15, "dataIndex": "addr1", "editable": true, "editor": addr13198, "filter": { "type": "string" }, "header": "Address line before street", "hidden": true, "sortable": true, "tooltip": "(users.OtherUsers.addr1) Address line before street", "width": Lino.chars2width(22) }, { "colIndex": 16, "dataIndex": "street_prefix", "editable": true, "editor": street_prefix3199, "filter": { "type": "string" }, "header": "Street prefix", "hidden": true, "sortable": true, "tooltip": "(users.OtherUsers.street_prefix) Text to print before name of street, but to ignore for sorting.", "width": Lino.chars2width(22) }, { "colIndex": 17, "dataIndex": "street", "editable": true, "editor": street3200, "filter": { "type": "string" }, "header": "Street", "hidden": true, "sortable": true, "tooltip": "(users.OtherUsers.street) Name of street, without house number.", "width": Lino.chars2width(22) }, { "colIndex": 18, "dataIndex": "street_no", "editable": true, "editor": street_no3201, "filter": { "type": "string" }, "header": "No.", "hidden": true, "sortable": true, "tooltip": "(users.OtherUsers.street_no) House number.", "width": Lino.chars2width(12) }, { "colIndex": 19, "dataIndex": "street_box", "editable": true, "editor": street_box3202, "filter": { "type": "string" }, "header": "Box", "hidden": true, "sortable": true, "tooltip": "(users.OtherUsers.street_box) Text to print after street nuber on the same line.", "width": Lino.chars2width(12) }, { "colIndex": 20, "dataIndex": "addr2", "editable": true, "editor": addr23203, "filter": { "type": "string" }, "header": "Address line after street", "hidden": true, "sortable": true, "tooltip": "(users.OtherUsers.addr2) Address line to print below street line.", "width": Lino.chars2width(22) }, { "colIndex": 21, "dataIndex": "prefix", "editable": true, "editor": prefix3204, "filter": { "type": "string" }, "header": "Name prefix", "hidden": true, "sortable": true, "tooltip": "(users.OtherUsers.prefix) An optional name prefix. For organisations this is inserted\nbefore the name, for persons this is inserted between first\nname and last name (see\nlino.mixins.human.Human.get_last_name_prefix()).", "width": Lino.chars2width(22) }, { "colIndex": 22, "dataIndex": "name", "editable": true, "editor": name3205, "filter": { "type": "string" }, "header": "Name", "hidden": true, "sortable": true, "tooltip": "(users.OtherUsers.name) The full name of this partner. Used for alphabetic sorting.\nSubclasses may hide this field and fill it automatically,\ne.g. saving a Person will automatically set her\nname field to \"last_name, first_name\".", "width": Lino.chars2width(22) }, { "colIndex": 23, "dataIndex": "remarks", "editable": true, "editor": remarks3206, "filter": { "type": "string" }, "header": "About me", "hidden": true, "sortable": false, "tooltip": "(users.OtherUsers.remarks) ", "width": Lino.chars2width(61) }, { "colIndex": 24, "dataIndex": "title", "editable": true, "editor": title3207, "filter": { "type": "string" }, "header": "Title", "hidden": true, "sortable": true, "tooltip": "(users.OtherUsers.title) Used to specify a professional position or academic\nqualification like \"Dr.\" or \"PhD\".", "width": Lino.chars2width(22) }, { "colIndex": 25, "dataIndex": "middle_name", "editable": true, "editor": middle_name3208, "filter": { "type": "string" }, "header": "Middle name", "hidden": true, "sortable": true, "tooltip": "(users.OtherUsers.middle_name) A space-separated list of all middle names.", "width": Lino.chars2width(22) }, { "colIndex": 26, "dataIndex": "gender", "editable": true, "editor": gender3209, "filter": { "type": "string" }, "header": "Gender", "hidden": true, "sortable": false, "tooltip": "(users.OtherUsers.gender) The sex of this person (male or female).", "width": Lino.chars2width(10) }, { "colIndex": 27, "dataIndex": "birth_date", "editable": true, "editor": birth_date3210, "filter": { "type": "string" }, "header": "Birth date", "hidden": true, "sortable": true, "tooltip": "(users.OtherUsers.birth_date) Uncomplete dates are allowed, e.g. \n\"00.00.1980\" means \"some day in 1980\", \n\"00.07.1980\" means \"in July 1980\"\nor \"23.07.0000\" means \"on a 23th of July\".", "width": Lino.chars2width(13) }, { "colIndex": 28, "dataIndex": "private", "editable": true, "filter": { "type": "boolean" }, "header": "Private", "hidden": true, "sortable": false, "tooltip": "(users.OtherUsers.private) ", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 29, "dataIndex": "modified", "editable": false, "header": "Modified", "hidden": true, "sortable": true, "tooltip": "(users.OtherUsers.modified) ", "width": Lino.chars2width(17) }, { "colIndex": 30, "dataIndex": "created", "editable": false, "header": "Created", "hidden": true, "sortable": true, "tooltip": "(users.OtherUsers.created) The timestame when this object was created.", "width": Lino.chars2width(17) }, { "colIndex": 31, "dataIndex": "password", "editable": true, "editor": password3214, "filter": { "type": "string" }, "header": "password", "hidden": true, "sortable": true, "tooltip": "(users.OtherUsers.password) ", "width": Lino.chars2width(22) }, { "colIndex": 32, "dataIndex": "last_login", "editable": true, "editor": last_login3215, "header": "last login", "hidden": true, "sortable": true, "tooltip": "(users.OtherUsers.last_login) Not used in Lino.", "width": Lino.chars2width(17) }, { "colIndex": 33, "dataIndex": "timezone", "editable": true, "editor": timezone3216, "filter": { "type": "string" }, "header": "Time zone", "hidden": true, "sortable": false, "tooltip": "(users.OtherUsers.timezone) ", "width": Lino.chars2width(11) }, { "colIndex": 34, "dataIndex": "initials", "editable": true, "editor": initials3217, "filter": { "type": "string" }, "header": "Initials", "hidden": true, "sortable": true, "tooltip": "(users.OtherUsers.initials) The nickname or initials of this user. This does not need to\nbe unique but should provide a reasonably identifying\nfunction.", "width": Lino.chars2width(12) }, { "colIndex": 35, "dataIndex": "callme_mode", "editable": true, "filter": { "type": "boolean" }, "header": "Others may contact me", "hidden": true, "sortable": false, "tooltip": "(users.OtherUsers.callme_mode) Whether other users can see my contact data.", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 36, "dataIndex": "verification_code", "editable": true, "editor": verification_code3219, "filter": { "type": "string" }, "header": "verification code", "hidden": true, "sortable": true, "tooltip": "(users.OtherUsers.verification_code) A random string set for every new user. Used for\nonline_registration.", "width": Lino.chars2width(22) }, { "colIndex": 37, "dataIndex": "user_state", "editable": true, "editor": user_state3220, "filter": { "type": "string" }, "header": "User state", "hidden": true, "sortable": false, "tooltip": "(users.OtherUsers.user_state) The registration state of this user.", "width": Lino.chars2width(12) }, { "colIndex": 38, "dataIndex": "access_class", "editable": true, "editor": access_class3221, "filter": { "type": "string" }, "header": "Default access class", "hidden": true, "sortable": false, "tooltip": "(users.OtherUsers.access_class) The default access class for your calendar events and tasks.", "width": Lino.chars2width(13) }, { "colIndex": 39, "dataIndex": "event_type", "editable": true, "editor": event_type3222, "filter": { "type": "string" }, "header": "Default Event Type", "hidden": true, "renderer": Lino.fk_renderer('event_typeHidden','Lino.cal.EventTypes.detail'), "sortable": false, "tooltip": "(users.OtherUsers.event_type) The default event type for your calendar events.", "width": Lino.chars2width(21) }, { "colIndex": 40, "dataIndex": "about_me", "editable": false, "header": "About me", "hidden": true, "sortable": false, "tooltip": "(users.OtherUsers.about_me) ", "width": Lino.chars2width(31) }, { "colIndex": 41, "dataIndex": "name_column", "editable": false, "header": "Name", "hidden": true, "sortable": false, "tooltip": "(users.OtherUsers.name_column) ", "width": Lino.chars2width(16) }, { "colIndex": 42, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(users.OtherUsers.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 43, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(users.OtherUsers.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 44, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(users.OtherUsers.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 45, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(users.OtherUsers.workflow_buttons) ", "width": Lino.chars2width(31) }, { "colIndex": 46, "dataIndex": "created_natural", "editable": false, "header": "Created", "hidden": true, "sortable": false, "tooltip": "(users.OtherUsers.created_natural) ", "width": Lino.chars2width(31) }, { "colIndex": 47, "dataIndex": "age", "editable": false, "header": "Age", "hidden": true, "sortable": false, "tooltip": "(users.OtherUsers.age) ", "width": Lino.chars2width(31) }, { "colIndex": 48, "dataIndex": "mti_navigator", "editable": false, "header": "See as ", "hidden": true, "sortable": false, "tooltip": "(users.OtherUsers.mti_navigator) ", "width": Lino.chars2width(31) }, { "colIndex": 49, "dataIndex": "address_column", "editable": false, "header": "Address", "hidden": true, "sortable": false, "tooltip": "(users.OtherUsers.address_column) ", "width": Lino.chars2width(31) } ];
    Lino.users.OtherUsers.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.users.OtherUsers.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/OtherUsers", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.OtherUsers.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/OtherUsers", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.OtherUsers.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/OtherUsers", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.OtherUsers.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/OtherUsers", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.users.OtherUsers.detailPanel = Ext.extend(Lino.users.OtherUsers.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": true, "iconCls": "x-tbar-arrow_join", "itemId": "merge_row", "menu_item_text": "Merge", "overflowText": "Merge", "panel_btn_handler": Lino.param_action_handler(Lino.contacts.Persons.merge_row), "tooltip": "Merge this object into another object of same class." }, { "auto_save": true, "itemId": "update_widgets", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create or update the widgets for this user.") }, "menu_item_text": "Update widgets", "overflowText": "Update widgets", "panel_btn_handler": Lino.row_action_handler('update_widgets','GET',null), "text": "\u00a0\u26a1\u00a0" }, { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "fix_problems", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": "Fix plausibility problems", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." }, { "auto_save": true, "itemId": "check_plausibility", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": "Check plausibility", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." } ], "menu_item_text": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": null, "xtype": "splitbutton" }, { "auto_save": true, "itemId": "change_password", "menu_item_text": "Change password", "overflowText": "Change password", "panel_btn_handler": Lino.param_action_handler(Lino.users.Users.change_password), "text": " <font size=\"4\">\u2731</font>" } ],
  ls_url: "/users/OtherUsers",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.users.OtherUsers.detail;
    this.ls_insert_handler = Lino.users.Users.insert;
    Lino.users.OtherUsers.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.users.OtherUsers.detail = new Lino.WindowAction({ "draggable": true, "height": Lino.rows2height(15), "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.users.OtherUsers.detailPanel(p);
});
Lino.users.OtherUsers.grid = new Lino.WindowAction({  }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  p.params_panel = new Lino.users.Users.ParamsPanel({});
  return new Lino.users.OtherUsers.GridPanel(p);
});
Lino.users.OtherUsers.del_company = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/OtherUsers", "GET", pk, "del_company", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.OtherUsers.ins_company = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/OtherUsers", "GET", pk, "ins_company", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.OtherUsers.update_widgets = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/OtherUsers", "GET", pk, "update_widgets", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.OtherUsers.ins_partner = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/OtherUsers", "GET", pk, "ins_partner", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.OtherUsers.ins_user = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/OtherUsers", "GET", pk, "ins_user", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.OtherUsers.del_partner = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/OtherUsers", "GET", pk, "del_partner", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.OtherUsers.fix_problems = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/OtherUsers", "GET", pk, "fix_problems", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.OtherUsers.ins_person = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/OtherUsers", "GET", pk, "ins_person", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.OtherUsers.del_household = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/OtherUsers", "GET", pk, "del_household", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.OtherUsers.ins_household = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/OtherUsers", "GET", pk, "ins_household", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.OtherUsers.del_person = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/OtherUsers", "GET", pk, "del_person", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.OtherUsers.del_user = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/OtherUsers", "GET", pk, "del_user", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.OtherUsers.check_plausibility = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/OtherUsers", "GET", pk, "check_plausibility", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.OtherUsers.wf1 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/OtherUsers", "GET", pk, "wf1", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.OtherUsers.wf2 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/OtherUsers", "GET", pk, "wf2", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.OtherUsers.wf3 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/OtherUsers", "GET", pk, "wf3", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class users.Register
Lino.users.Register.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/users/Register",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/users/Register','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/users/Register','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "iconCls": "x-tbar-arrow_join", "itemId": "merge_row", "menu_item_text": "Merge", "overflowText": "Merge", "panel_btn_handler": Lino.param_action_handler(Lino.contacts.Persons.merge_row), "tooltip": "Merge this object into another object of same class." }, { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "check_plausibility", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": "Check plausibility", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." }, { "auto_save": true, "itemId": "fix_problems", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": "Fix plausibility problems", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." } ], "menu_item_text": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": null, "xtype": "splitbutton" }, { "auto_save": true, "itemId": "update_widgets", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create or update the widgets for this user.") }, "menu_item_text": "Update widgets", "overflowText": "Update widgets", "panel_btn_handler": Lino.row_action_handler('update_widgets','GET',null), "text": "\u00a0\u26a1\u00a0" }, { "auto_save": true, "itemId": "change_password", "menu_item_text": "Change password", "overflowText": "Change password", "panel_btn_handler": Lino.param_action_handler(Lino.users.Users.change_password), "text": " <font size=\"4\">\u2731</font>" } ],
  cell_edit : true,
  title : "Users",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 60,
  ls_store_fields : [ { "name": "username" }, { "name": "user_type" }, 'user_typeHidden', { "name": "first_name" }, { "name": "last_name" }, { "name": "id", "type": "int" }, { "name": "email" }, { "name": "language" }, 'languageHidden', { "name": "url" }, { "name": "phone" }, { "name": "gsm" }, { "name": "fax" }, { "name": "country" }, 'countryHidden', { "name": "city" }, 'cityHidden', { "name": "zip_code" }, { "name": "region" }, 'regionHidden', { "name": "addr1" }, { "name": "street_prefix" }, { "name": "street" }, { "name": "street_no" }, { "name": "street_box" }, { "name": "addr2" }, { "name": "prefix" }, { "name": "name" }, { "name": "remarks" }, { "name": "title" }, { "name": "middle_name" }, { "name": "gender" }, 'genderHidden', { "name": "birth_date" }, { "name": "private", "type": "boolean" }, { "name": "modified" }, { "name": "created" }, { "name": "password" }, { "name": "last_login" }, { "name": "timezone" }, { "name": "initials" }, { "name": "callme_mode", "type": "boolean" }, { "name": "verification_code" }, { "name": "user_state" }, 'user_stateHidden', { "name": "access_class" }, 'access_classHidden', { "name": "event_type" }, 'event_typeHidden', { "name": "about_me" }, { "name": "name_column" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "created_natural" }, { "name": "age" }, { "name": "mti_navigator" }, { "name": "address_column" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 5,
  ls_grid_configs : [  ],
  content_type : 8,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.users.Register.detail;
    this.ls_insert_handler = Lino.users.Register.insert;
    var ww = this.containing_window;
    var username1645 = new Ext.form.TextField({ "maxLength": 30, "selectOnFocus": true });
    var user_type1646 = new Lino.ChoicesFieldElement({ "forceSelection": true, "selectOnFocus": true, "store": [['','<br>']].concat(Lino.users.UserTypes) });
    var first_name1647 = new Ext.form.TextField({ "maxLength": 200, "selectOnFocus": true });
    var last_name1648 = new Ext.form.TextField({ "maxLength": 200, "selectOnFocus": true });
    var id1649 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var email1650 = new Ext.form.TextField({ "hidden": true, "maxLength": 254, "selectOnFocus": true });
    var language1651 = new Lino.ChoicesFieldElement({ "hidden": true, "selectOnFocus": true, "store": [ [ "en-us", "American English" ] ] });
    var url1652 = new Lino.URLField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var phone1653 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var gsm1654 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var fax1655 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var country1656 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Country...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/users/Register/country" }) }) });
    var city1657 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Place...", "forceSelection": false, "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/users/Register/city" }) }) });
    var zip_code1658 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(10), "hidden": true, "maxLength": 10, "selectOnFocus": true });
    var region1659 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Place...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/users/Register/region" }) }) });
    var addr11660 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var street_prefix1661 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var street1662 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var street_no1663 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(10), "hidden": true, "maxLength": 10, "selectOnFocus": true });
    var street_box1664 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(10), "hidden": true, "maxLength": 10, "selectOnFocus": true });
    var addr21665 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var prefix1666 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var name1667 = new Ext.form.TextField({ "allowBlank": false, "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var remarks1668 = new Lino.RichTextPanel({ "containing_panel": this, "hidden": true, "selectOnFocus": true, "title": "About me" });
    var title1669 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var middle_name1670 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var gender1671 = new Lino.ChoicesFieldElement({ "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": [['','<br>']].concat(Lino.system.Genders) });
    var birth_date1672 = new Lino.IncompleteDateField({ "hidden": true, "selectOnFocus": true });
    var private1673 = new Ext.form.Checkbox({ "checked": false, "hidden": true, "selectOnFocus": true });
    var modified1674 = new Ext.form.DisplayField({ "disabled": true, "hidden": true, "value": "<br>" });
    var created1675 = new Ext.form.DisplayField({ "disabled": true, "hidden": true, "value": "<br>" });
    var password1676 = new Ext.form.TextField({ "allowBlank": false, "hidden": true, "maxLength": 128, "selectOnFocus": true });
    var last_login1677 = new Ext.form.DisplayField({ "hidden": true, "selectOnFocus": true, "value": "<br>" });
    var timezone1678 = new Lino.SimpleRemoteComboFieldElement({ "hidden": true, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/users/Register/timezone" }) }) });
    var initials1679 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(10), "hidden": true, "maxLength": 10, "selectOnFocus": true });
    var callme_mode1680 = new Ext.form.Checkbox({ "checked": true, "hidden": true, "selectOnFocus": true });
    var verification_code1681 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var user_state1682 = new Lino.ChoicesFieldElement({ "allowBlank": false, "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": Lino.users.UserStates });
    var access_class1683 = new Lino.ChoicesFieldElement({ "allowBlank": false, "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": Lino.cal.AccessClasses });
    var event_type1684 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Calendar entry type...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/users/Register/event_type" }) }) });
    var about_me_htmlbox1685 = new Lino.HtmlBoxPanel({ "always_enabled": true, "bodyStyle": "overflow-x:hidden;", "containing_panel": this, "hidden": true, "items": new Ext.BoxComponent({autoScroll:true}), "layout": "fit", "name": "about_me", "title": "About me", "value": "<br/>" });
    var name_column_disp1686 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var mobile_item_disp1687 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp1688 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp1689 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp1690 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var created_natural_disp1691 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var age_disp1692 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var mti_navigator_disp1693 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var address_column_disp1694 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
      city1657.setContextValue('country', record ? record.data['countryHidden'] : undefined);
      city1657.setContextValue('region', record ? record.data['regionHidden'] : undefined);
      region1659.setContextValue('country', record ? record.data['countryHidden'] : undefined);
      remarks1668.refresh();
      timezone1678.setContextValue('partner', record ? record.data['partner'] : undefined);
      about_me_htmlbox1685.refresh();
    };
    this.onRender = function(ct, position) {
      country1656.on('change',Lino.chooser_handler(city1657,'country'));
      region1659.on('change',Lino.chooser_handler(city1657,'region'));
      country1656.on('change',Lino.chooser_handler(region1659,'country'));
      Lino.users.Register.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "username", "editable": true, "editor": username1645, "filter": { "type": "string" }, "header": "Username", "sortable": true, "tooltip": "(users.Register.username) Must be unique or empty.\nLeaving this empty means that the user cannot log in.", "width": Lino.chars2width(22) }, { "colIndex": 1, "dataIndex": "user_type", "editable": true, "editor": user_type1646, "filter": { "type": "string" }, "header": "User type", "sortable": false, "tooltip": "(users.Register.user_type) The user_type of a user is what defines her or his permissions.", "width": Lino.chars2width(25) }, { "colIndex": 2, "dataIndex": "first_name", "editable": true, "editor": first_name1647, "filter": { "type": "string" }, "header": "First name", "sortable": true, "tooltip": "(users.Register.first_name) The first name, also known as given name.", "width": Lino.chars2width(22) }, { "colIndex": 3, "dataIndex": "last_name", "editable": true, "editor": last_name1648, "filter": { "type": "string" }, "header": "Last name", "sortable": true, "tooltip": "(users.Register.last_name) The last name, also known as family name.", "width": Lino.chars2width(22) }, { "align": "right", "colIndex": 4, "dataIndex": "id", "editable": true, "editor": id1649, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(users.Register.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 5, "dataIndex": "email", "editable": true, "editor": email1650, "filter": { "type": "string" }, "header": "e-mail address", "hidden": true, "sortable": true, "tooltip": "(users.Register.email) The primary email address.", "width": Lino.chars2width(22) }, { "colIndex": 6, "dataIndex": "language", "editable": true, "editor": language1651, "filter": { "type": "string" }, "header": "Language", "hidden": true, "sortable": false, "tooltip": "(users.Register.language) The language to use when communicating with this partner.", "width": Lino.chars2width(21) }, { "colIndex": 7, "dataIndex": "url", "editable": true, "editor": url1652, "filter": { "type": "string" }, "header": "URL", "hidden": true, "sortable": true, "tooltip": "(users.Register.url) ", "width": Lino.chars2width(22) }, { "colIndex": 8, "dataIndex": "phone", "editable": true, "editor": phone1653, "filter": { "type": "string" }, "header": "Phone", "hidden": true, "sortable": true, "tooltip": "(users.Register.phone) The primary phone number.  Note that Lino does not ignore\nformatting characters in phone numbers when searching.  For\nexample, if you enter \"087/12.34.56\" as a phone number, then a\nsearch for phone number containing \"1234\" will not find it.", "width": Lino.chars2width(22) }, { "colIndex": 9, "dataIndex": "gsm", "editable": true, "editor": gsm1654, "filter": { "type": "string" }, "header": "GSM", "hidden": true, "sortable": true, "tooltip": "(users.Register.gsm) The primary mobile phone number.", "width": Lino.chars2width(22) }, { "colIndex": 10, "dataIndex": "fax", "editable": true, "editor": fax1655, "filter": { "type": "string" }, "header": "Fax", "hidden": true, "sortable": true, "tooltip": "(users.Register.fax) ", "width": Lino.chars2width(22) }, { "colIndex": 11, "dataIndex": "country", "editable": true, "editor": country1656, "filter": { "type": "string" }, "header": "Country", "hidden": true, "renderer": Lino.fk_renderer('countryHidden','Lino.countries.Countries.detail'), "sortable": false, "tooltip": "(users.Register.country) ", "width": Lino.chars2width(21) }, { "colIndex": 12, "dataIndex": "city", "editable": true, "editor": city1657, "filter": { "type": "string" }, "header": "City", "hidden": true, "renderer": Lino.fk_renderer('cityHidden','Lino.countries.Places.detail'), "sortable": false, "tooltip": "(users.Register.city) A pointer to the Place which is used as city.", "width": Lino.chars2width(21) }, { "colIndex": 13, "dataIndex": "zip_code", "editable": true, "editor": zip_code1658, "filter": { "type": "string" }, "header": "Zip code", "hidden": true, "sortable": true, "tooltip": "(users.Register.zip_code) ", "width": Lino.chars2width(12) }, { "colIndex": 14, "dataIndex": "region", "editable": true, "editor": region1659, "filter": { "type": "string" }, "header": "County", "hidden": true, "renderer": Lino.fk_renderer('regionHidden','Lino.countries.Places.detail'), "sortable": false, "tooltip": "(users.Register.region) ", "width": Lino.chars2width(21) }, { "colIndex": 15, "dataIndex": "addr1", "editable": true, "editor": addr11660, "filter": { "type": "string" }, "header": "Address line before street", "hidden": true, "sortable": true, "tooltip": "(users.Register.addr1) Address line before street", "width": Lino.chars2width(22) }, { "colIndex": 16, "dataIndex": "street_prefix", "editable": true, "editor": street_prefix1661, "filter": { "type": "string" }, "header": "Street prefix", "hidden": true, "sortable": true, "tooltip": "(users.Register.street_prefix) Text to print before name of street, but to ignore for sorting.", "width": Lino.chars2width(22) }, { "colIndex": 17, "dataIndex": "street", "editable": true, "editor": street1662, "filter": { "type": "string" }, "header": "Street", "hidden": true, "sortable": true, "tooltip": "(users.Register.street) Name of street, without house number.", "width": Lino.chars2width(22) }, { "colIndex": 18, "dataIndex": "street_no", "editable": true, "editor": street_no1663, "filter": { "type": "string" }, "header": "No.", "hidden": true, "sortable": true, "tooltip": "(users.Register.street_no) House number.", "width": Lino.chars2width(12) }, { "colIndex": 19, "dataIndex": "street_box", "editable": true, "editor": street_box1664, "filter": { "type": "string" }, "header": "Box", "hidden": true, "sortable": true, "tooltip": "(users.Register.street_box) Text to print after street nuber on the same line.", "width": Lino.chars2width(12) }, { "colIndex": 20, "dataIndex": "addr2", "editable": true, "editor": addr21665, "filter": { "type": "string" }, "header": "Address line after street", "hidden": true, "sortable": true, "tooltip": "(users.Register.addr2) Address line to print below street line.", "width": Lino.chars2width(22) }, { "colIndex": 21, "dataIndex": "prefix", "editable": true, "editor": prefix1666, "filter": { "type": "string" }, "header": "Name prefix", "hidden": true, "sortable": true, "tooltip": "(users.Register.prefix) An optional name prefix. For organisations this is inserted\nbefore the name, for persons this is inserted between first\nname and last name (see\nlino.mixins.human.Human.get_last_name_prefix()).", "width": Lino.chars2width(22) }, { "colIndex": 22, "dataIndex": "name", "editable": true, "editor": name1667, "filter": { "type": "string" }, "header": "Name", "hidden": true, "sortable": true, "tooltip": "(users.Register.name) The full name of this partner. Used for alphabetic sorting.\nSubclasses may hide this field and fill it automatically,\ne.g. saving a Person will automatically set her\nname field to \"last_name, first_name\".", "width": Lino.chars2width(22) }, { "colIndex": 23, "dataIndex": "remarks", "editable": true, "editor": remarks1668, "filter": { "type": "string" }, "header": "About me", "hidden": true, "sortable": false, "tooltip": "(users.Register.remarks) ", "width": Lino.chars2width(61) }, { "colIndex": 24, "dataIndex": "title", "editable": true, "editor": title1669, "filter": { "type": "string" }, "header": "Title", "hidden": true, "sortable": true, "tooltip": "(users.Register.title) Used to specify a professional position or academic\nqualification like \"Dr.\" or \"PhD\".", "width": Lino.chars2width(22) }, { "colIndex": 25, "dataIndex": "middle_name", "editable": true, "editor": middle_name1670, "filter": { "type": "string" }, "header": "Middle name", "hidden": true, "sortable": true, "tooltip": "(users.Register.middle_name) A space-separated list of all middle names.", "width": Lino.chars2width(22) }, { "colIndex": 26, "dataIndex": "gender", "editable": true, "editor": gender1671, "filter": { "type": "string" }, "header": "Gender", "hidden": true, "sortable": false, "tooltip": "(users.Register.gender) The sex of this person (male or female).", "width": Lino.chars2width(10) }, { "colIndex": 27, "dataIndex": "birth_date", "editable": true, "editor": birth_date1672, "filter": { "type": "string" }, "header": "Birth date", "hidden": true, "sortable": true, "tooltip": "(users.Register.birth_date) Uncomplete dates are allowed, e.g. \n\"00.00.1980\" means \"some day in 1980\", \n\"00.07.1980\" means \"in July 1980\"\nor \"23.07.0000\" means \"on a 23th of July\".", "width": Lino.chars2width(13) }, { "colIndex": 28, "dataIndex": "private", "editable": true, "filter": { "type": "boolean" }, "header": "Private", "hidden": true, "sortable": false, "tooltip": "(users.Register.private) ", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 29, "dataIndex": "modified", "editable": false, "header": "Modified", "hidden": true, "sortable": true, "tooltip": "(users.Register.modified) ", "width": Lino.chars2width(17) }, { "colIndex": 30, "dataIndex": "created", "editable": false, "header": "Created", "hidden": true, "sortable": true, "tooltip": "(users.Register.created) The timestame when this object was created.", "width": Lino.chars2width(17) }, { "colIndex": 31, "dataIndex": "password", "editable": true, "editor": password1676, "filter": { "type": "string" }, "header": "password", "hidden": true, "sortable": true, "tooltip": "(users.Register.password) ", "width": Lino.chars2width(22) }, { "colIndex": 32, "dataIndex": "last_login", "editable": true, "editor": last_login1677, "header": "last login", "hidden": true, "sortable": true, "tooltip": "(users.Register.last_login) Not used in Lino.", "width": Lino.chars2width(17) }, { "colIndex": 33, "dataIndex": "timezone", "editable": true, "editor": timezone1678, "filter": { "type": "string" }, "header": "Time zone", "hidden": true, "sortable": false, "tooltip": "(users.Register.timezone) ", "width": Lino.chars2width(11) }, { "colIndex": 34, "dataIndex": "initials", "editable": true, "editor": initials1679, "filter": { "type": "string" }, "header": "Initials", "hidden": true, "sortable": true, "tooltip": "(users.Register.initials) The nickname or initials of this user. This does not need to\nbe unique but should provide a reasonably identifying\nfunction.", "width": Lino.chars2width(12) }, { "colIndex": 35, "dataIndex": "callme_mode", "editable": true, "filter": { "type": "boolean" }, "header": "Others may contact me", "hidden": true, "sortable": false, "tooltip": "(users.Register.callme_mode) Whether other users can see my contact data.", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 36, "dataIndex": "verification_code", "editable": true, "editor": verification_code1681, "filter": { "type": "string" }, "header": "verification code", "hidden": true, "sortable": true, "tooltip": "(users.Register.verification_code) A random string set for every new user. Used for\nonline_registration.", "width": Lino.chars2width(22) }, { "colIndex": 37, "dataIndex": "user_state", "editable": true, "editor": user_state1682, "filter": { "type": "string" }, "header": "User state", "hidden": true, "sortable": false, "tooltip": "(users.Register.user_state) The registration state of this user.", "width": Lino.chars2width(12) }, { "colIndex": 38, "dataIndex": "access_class", "editable": true, "editor": access_class1683, "filter": { "type": "string" }, "header": "Default access class", "hidden": true, "sortable": false, "tooltip": "(users.Register.access_class) The default access class for your calendar events and tasks.", "width": Lino.chars2width(13) }, { "colIndex": 39, "dataIndex": "event_type", "editable": true, "editor": event_type1684, "filter": { "type": "string" }, "header": "Default Event Type", "hidden": true, "renderer": Lino.fk_renderer('event_typeHidden','Lino.cal.EventTypes.detail'), "sortable": false, "tooltip": "(users.Register.event_type) The default event type for your calendar events.", "width": Lino.chars2width(21) }, { "colIndex": 40, "dataIndex": "about_me", "editable": false, "header": "About me", "hidden": true, "sortable": false, "tooltip": "(users.Register.about_me) ", "width": Lino.chars2width(31) }, { "colIndex": 41, "dataIndex": "name_column", "editable": false, "header": "Name", "hidden": true, "sortable": false, "tooltip": "(users.Register.name_column) ", "width": Lino.chars2width(16) }, { "colIndex": 42, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(users.Register.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 43, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(users.Register.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 44, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(users.Register.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 45, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(users.Register.workflow_buttons) ", "width": Lino.chars2width(31) }, { "colIndex": 46, "dataIndex": "created_natural", "editable": false, "header": "Created", "hidden": true, "sortable": false, "tooltip": "(users.Register.created_natural) ", "width": Lino.chars2width(31) }, { "colIndex": 47, "dataIndex": "age", "editable": false, "header": "Age", "hidden": true, "sortable": false, "tooltip": "(users.Register.age) ", "width": Lino.chars2width(31) }, { "colIndex": 48, "dataIndex": "mti_navigator", "editable": false, "header": "See as ", "hidden": true, "sortable": false, "tooltip": "(users.Register.mti_navigator) ", "width": Lino.chars2width(31) }, { "colIndex": 49, "dataIndex": "address_column", "editable": false, "header": "Address", "hidden": true, "sortable": false, "tooltip": "(users.Register.address_column) ", "width": Lino.chars2width(31) } ];
    Lino.users.Register.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.users.Register.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/Register", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.Register.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/Register", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.Register.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/Register", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.users.Register.insertPanel = Ext.extend(Lino.users.Register.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/users/Register",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.users.Register.detail;
    this.ls_insert_handler = Lino.users.Register.insert;
    Lino.users.Register.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.users.Register.insert = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.users.Register.insertPanel(p);
});
Lino.users.Register.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/Register", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.Register.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/Register", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.Register.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/Register", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.users.Register.detailPanel = Ext.extend(Lino.users.Users.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "iconCls": "x-tbar-arrow_join", "itemId": "merge_row", "menu_item_text": "Merge", "overflowText": "Merge", "panel_btn_handler": Lino.param_action_handler(Lino.contacts.Persons.merge_row), "tooltip": "Merge this object into another object of same class." }, { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "check_plausibility", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": "Check plausibility", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." }, { "auto_save": true, "itemId": "fix_problems", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": "Fix plausibility problems", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." } ], "menu_item_text": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": null, "xtype": "splitbutton" }, { "auto_save": true, "itemId": "update_widgets", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create or update the widgets for this user.") }, "menu_item_text": "Update widgets", "overflowText": "Update widgets", "panel_btn_handler": Lino.row_action_handler('update_widgets','GET',null), "text": "\u00a0\u26a1\u00a0" }, { "auto_save": true, "itemId": "change_password", "menu_item_text": "Change password", "overflowText": "Change password", "panel_btn_handler": Lino.param_action_handler(Lino.users.Users.change_password), "text": " <font size=\"4\">\u2731</font>" } ],
  ls_url: "/users/Register",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.users.Register.detail;
    this.ls_insert_handler = Lino.users.Register.insert;
    Lino.users.Register.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.users.Register.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.users.Register.detailPanel(p);
});
Lino.users.Register.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/Register", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.Register.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.users.Users.ParamsPanel({});
  return new Lino.users.Register.GridPanel(p);
});
Lino.users.Register.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/Register", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.Register.del_company = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/Register", "GET", pk, "del_company", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.Register.check_plausibility = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/Register", "GET", pk, "check_plausibility", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.Register.ins_company = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/Register", "GET", pk, "ins_company", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.Register.update_widgets = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/Register", "GET", pk, "update_widgets", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.Register.ins_partner = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/Register", "GET", pk, "ins_partner", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.Register.ins_user = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/Register", "GET", pk, "ins_user", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.Register.del_partner = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/Register", "GET", pk, "del_partner", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.Register.fix_problems = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/Register", "GET", pk, "fix_problems", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.Register.ins_person = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/Register", "GET", pk, "ins_person", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.Register.del_household = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/Register", "GET", pk, "del_household", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.Register.ins_household = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/Register", "GET", pk, "ins_household", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.Register.del_person = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/Register", "GET", pk, "del_person", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.Register.del_user = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/Register", "GET", pk, "del_user", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.Register.wf1 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/Register", "GET", pk, "wf1", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.Register.wf2 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/Register", "GET", pk, "wf2", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.Register.wf3 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/Register", "GET", pk, "wf3", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class users.NewUsers
Lino.users.NewUsers.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/users/NewUsers",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/users/NewUsers','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/users/NewUsers','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "iconCls": "x-tbar-arrow_join", "itemId": "merge_row", "menu_item_text": "Merge", "overflowText": "Merge", "panel_btn_handler": Lino.param_action_handler(Lino.contacts.Persons.merge_row), "tooltip": "Merge this object into another object of same class." }, { "auto_save": true, "itemId": "update_widgets", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create or update the widgets for this user.") }, "menu_item_text": "Update widgets", "overflowText": "Update widgets", "panel_btn_handler": Lino.row_action_handler('update_widgets','GET',null), "text": "\u00a0\u26a1\u00a0" }, { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "fix_problems", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": "Fix plausibility problems", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." }, { "auto_save": true, "itemId": "check_plausibility", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": "Check plausibility", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." } ], "menu_item_text": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": null, "xtype": "splitbutton" }, { "auto_save": true, "itemId": "change_password", "menu_item_text": "Change password", "overflowText": "Change password", "panel_btn_handler": Lino.param_action_handler(Lino.users.Users.change_password), "text": " <font size=\"4\">\u2731</font>" } ],
  cell_edit : true,
  title : "New user applications",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 60,
  ls_store_fields : [ { "name": "created" }, { "name": "first_name" }, { "name": "last_name" }, { "name": "username" }, { "name": "user_type" }, 'user_typeHidden', { "name": "workflow_buttons" }, { "name": "id", "type": "int" }, { "name": "email" }, { "name": "language" }, 'languageHidden', { "name": "url" }, { "name": "phone" }, { "name": "gsm" }, { "name": "fax" }, { "name": "country" }, 'countryHidden', { "name": "city" }, 'cityHidden', { "name": "zip_code" }, { "name": "region" }, 'regionHidden', { "name": "addr1" }, { "name": "street_prefix" }, { "name": "street" }, { "name": "street_no" }, { "name": "street_box" }, { "name": "addr2" }, { "name": "prefix" }, { "name": "name" }, { "name": "remarks" }, { "name": "title" }, { "name": "middle_name" }, { "name": "gender" }, 'genderHidden', { "name": "birth_date" }, { "name": "private", "type": "boolean" }, { "name": "modified" }, { "name": "password" }, { "name": "last_login" }, { "name": "timezone" }, { "name": "initials" }, { "name": "callme_mode", "type": "boolean" }, { "name": "verification_code" }, { "name": "user_state" }, 'user_stateHidden', { "name": "access_class" }, 'access_classHidden', { "name": "event_type" }, 'event_typeHidden', { "name": "about_me" }, { "name": "name_column" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "created_natural" }, { "name": "age" }, { "name": "mti_navigator" }, { "name": "address_column" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 7,
  ls_grid_configs : [  ],
  content_type : 8,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.users.NewUsers.detail;
    this.ls_insert_handler = Lino.users.NewUsers.insert;
    var ww = this.containing_window;
    var created3234 = new Ext.form.DisplayField({ "disabled": true, "value": "<br>" });
    var first_name3235 = new Ext.form.TextField({ "maxLength": 200, "selectOnFocus": true });
    var last_name3236 = new Ext.form.TextField({ "maxLength": 200, "selectOnFocus": true });
    var username3237 = new Ext.form.TextField({ "maxLength": 30, "selectOnFocus": true });
    var user_type3238 = new Lino.ChoicesFieldElement({ "forceSelection": true, "selectOnFocus": true, "store": [['','<br>']].concat(Lino.users.UserTypes) });
    var workflow_buttons_disp3239 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    var id3240 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var email3241 = new Ext.form.TextField({ "hidden": true, "maxLength": 254, "selectOnFocus": true });
    var language3242 = new Lino.ChoicesFieldElement({ "hidden": true, "selectOnFocus": true, "store": [ [ "en-us", "American English" ] ] });
    var url3243 = new Lino.URLField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var phone3244 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var gsm3245 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var fax3246 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var country3247 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Country...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/users/NewUsers/country" }) }) });
    var city3248 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Place...", "forceSelection": false, "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/users/NewUsers/city" }) }) });
    var zip_code3249 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(10), "hidden": true, "maxLength": 10, "selectOnFocus": true });
    var region3250 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Place...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/users/NewUsers/region" }) }) });
    var addr13251 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var street_prefix3252 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var street3253 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var street_no3254 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(10), "hidden": true, "maxLength": 10, "selectOnFocus": true });
    var street_box3255 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(10), "hidden": true, "maxLength": 10, "selectOnFocus": true });
    var addr23256 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var prefix3257 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var name3258 = new Ext.form.TextField({ "allowBlank": false, "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var remarks3259 = new Lino.RichTextPanel({ "containing_panel": this, "hidden": true, "selectOnFocus": true, "title": "About me" });
    var title3260 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var middle_name3261 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var gender3262 = new Lino.ChoicesFieldElement({ "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": [['','<br>']].concat(Lino.system.Genders) });
    var birth_date3263 = new Lino.IncompleteDateField({ "hidden": true, "selectOnFocus": true });
    var private3264 = new Ext.form.Checkbox({ "checked": false, "hidden": true, "selectOnFocus": true });
    var modified3265 = new Ext.form.DisplayField({ "disabled": true, "hidden": true, "value": "<br>" });
    var password3266 = new Ext.form.TextField({ "allowBlank": false, "hidden": true, "maxLength": 128, "selectOnFocus": true });
    var last_login3267 = new Ext.form.DisplayField({ "hidden": true, "selectOnFocus": true, "value": "<br>" });
    var timezone3268 = new Lino.SimpleRemoteComboFieldElement({ "hidden": true, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/users/NewUsers/timezone" }) }) });
    var initials3269 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(10), "hidden": true, "maxLength": 10, "selectOnFocus": true });
    var callme_mode3270 = new Ext.form.Checkbox({ "checked": true, "hidden": true, "selectOnFocus": true });
    var verification_code3271 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var user_state3272 = new Lino.ChoicesFieldElement({ "allowBlank": false, "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": Lino.users.UserStates });
    var access_class3273 = new Lino.ChoicesFieldElement({ "allowBlank": false, "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": Lino.cal.AccessClasses });
    var event_type3274 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Calendar entry type...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/users/NewUsers/event_type" }) }) });
    var about_me_htmlbox3275 = new Lino.HtmlBoxPanel({ "always_enabled": true, "bodyStyle": "overflow-x:hidden;", "containing_panel": this, "hidden": true, "items": new Ext.BoxComponent({autoScroll:true}), "layout": "fit", "name": "about_me", "title": "About me", "value": "<br/>" });
    var name_column_disp3276 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var mobile_item_disp3277 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp3278 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp3279 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var created_natural_disp3280 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var age_disp3281 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var mti_navigator_disp3282 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var address_column_disp3283 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
      city3248.setContextValue('country', record ? record.data['countryHidden'] : undefined);
      city3248.setContextValue('region', record ? record.data['regionHidden'] : undefined);
      region3250.setContextValue('country', record ? record.data['countryHidden'] : undefined);
      remarks3259.refresh();
      timezone3268.setContextValue('partner', record ? record.data['partner'] : undefined);
      about_me_htmlbox3275.refresh();
    };
    this.onRender = function(ct, position) {
      country3247.on('change',Lino.chooser_handler(city3248,'country'));
      region3250.on('change',Lino.chooser_handler(city3248,'region'));
      country3247.on('change',Lino.chooser_handler(region3250,'country'));
      Lino.users.NewUsers.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "created", "editable": false, "header": "Created", "sortable": true, "tooltip": "(users.NewUsers.created) The timestame when this object was created.", "width": Lino.chars2width(17) }, { "colIndex": 1, "dataIndex": "first_name", "editable": true, "editor": first_name3235, "filter": { "type": "string" }, "header": "First name", "sortable": true, "tooltip": "(users.NewUsers.first_name) The first name, also known as given name.", "width": Lino.chars2width(22) }, { "colIndex": 2, "dataIndex": "last_name", "editable": true, "editor": last_name3236, "filter": { "type": "string" }, "header": "Last name", "sortable": true, "tooltip": "(users.NewUsers.last_name) The last name, also known as family name.", "width": Lino.chars2width(22) }, { "colIndex": 3, "dataIndex": "username", "editable": true, "editor": username3237, "filter": { "type": "string" }, "header": "Username", "sortable": true, "tooltip": "(users.NewUsers.username) Must be unique or empty.\nLeaving this empty means that the user cannot log in.", "width": Lino.chars2width(22) }, { "colIndex": 4, "dataIndex": "user_type", "editable": true, "editor": user_type3238, "filter": { "type": "string" }, "header": "User type", "sortable": false, "tooltip": "(users.NewUsers.user_type) The user_type of a user is what defines her or his permissions.", "width": Lino.chars2width(25) }, { "colIndex": 5, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "sortable": false, "tooltip": "(users.NewUsers.workflow_buttons) ", "width": Lino.chars2width(31) }, { "align": "right", "colIndex": 6, "dataIndex": "id", "editable": true, "editor": id3240, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(users.NewUsers.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 7, "dataIndex": "email", "editable": true, "editor": email3241, "filter": { "type": "string" }, "header": "e-mail address", "hidden": true, "sortable": true, "tooltip": "(users.NewUsers.email) The primary email address.", "width": Lino.chars2width(22) }, { "colIndex": 8, "dataIndex": "language", "editable": true, "editor": language3242, "filter": { "type": "string" }, "header": "Language", "hidden": true, "sortable": false, "tooltip": "(users.NewUsers.language) The language to use when communicating with this partner.", "width": Lino.chars2width(21) }, { "colIndex": 9, "dataIndex": "url", "editable": true, "editor": url3243, "filter": { "type": "string" }, "header": "URL", "hidden": true, "sortable": true, "tooltip": "(users.NewUsers.url) ", "width": Lino.chars2width(22) }, { "colIndex": 10, "dataIndex": "phone", "editable": true, "editor": phone3244, "filter": { "type": "string" }, "header": "Phone", "hidden": true, "sortable": true, "tooltip": "(users.NewUsers.phone) The primary phone number.  Note that Lino does not ignore\nformatting characters in phone numbers when searching.  For\nexample, if you enter \"087/12.34.56\" as a phone number, then a\nsearch for phone number containing \"1234\" will not find it.", "width": Lino.chars2width(22) }, { "colIndex": 11, "dataIndex": "gsm", "editable": true, "editor": gsm3245, "filter": { "type": "string" }, "header": "GSM", "hidden": true, "sortable": true, "tooltip": "(users.NewUsers.gsm) The primary mobile phone number.", "width": Lino.chars2width(22) }, { "colIndex": 12, "dataIndex": "fax", "editable": true, "editor": fax3246, "filter": { "type": "string" }, "header": "Fax", "hidden": true, "sortable": true, "tooltip": "(users.NewUsers.fax) ", "width": Lino.chars2width(22) }, { "colIndex": 13, "dataIndex": "country", "editable": true, "editor": country3247, "filter": { "type": "string" }, "header": "Country", "hidden": true, "renderer": Lino.fk_renderer('countryHidden','Lino.countries.Countries.detail'), "sortable": false, "tooltip": "(users.NewUsers.country) ", "width": Lino.chars2width(21) }, { "colIndex": 14, "dataIndex": "city", "editable": true, "editor": city3248, "filter": { "type": "string" }, "header": "City", "hidden": true, "renderer": Lino.fk_renderer('cityHidden','Lino.countries.Places.detail'), "sortable": false, "tooltip": "(users.NewUsers.city) A pointer to the Place which is used as city.", "width": Lino.chars2width(21) }, { "colIndex": 15, "dataIndex": "zip_code", "editable": true, "editor": zip_code3249, "filter": { "type": "string" }, "header": "Zip code", "hidden": true, "sortable": true, "tooltip": "(users.NewUsers.zip_code) ", "width": Lino.chars2width(12) }, { "colIndex": 16, "dataIndex": "region", "editable": true, "editor": region3250, "filter": { "type": "string" }, "header": "County", "hidden": true, "renderer": Lino.fk_renderer('regionHidden','Lino.countries.Places.detail'), "sortable": false, "tooltip": "(users.NewUsers.region) ", "width": Lino.chars2width(21) }, { "colIndex": 17, "dataIndex": "addr1", "editable": true, "editor": addr13251, "filter": { "type": "string" }, "header": "Address line before street", "hidden": true, "sortable": true, "tooltip": "(users.NewUsers.addr1) Address line before street", "width": Lino.chars2width(22) }, { "colIndex": 18, "dataIndex": "street_prefix", "editable": true, "editor": street_prefix3252, "filter": { "type": "string" }, "header": "Street prefix", "hidden": true, "sortable": true, "tooltip": "(users.NewUsers.street_prefix) Text to print before name of street, but to ignore for sorting.", "width": Lino.chars2width(22) }, { "colIndex": 19, "dataIndex": "street", "editable": true, "editor": street3253, "filter": { "type": "string" }, "header": "Street", "hidden": true, "sortable": true, "tooltip": "(users.NewUsers.street) Name of street, without house number.", "width": Lino.chars2width(22) }, { "colIndex": 20, "dataIndex": "street_no", "editable": true, "editor": street_no3254, "filter": { "type": "string" }, "header": "No.", "hidden": true, "sortable": true, "tooltip": "(users.NewUsers.street_no) House number.", "width": Lino.chars2width(12) }, { "colIndex": 21, "dataIndex": "street_box", "editable": true, "editor": street_box3255, "filter": { "type": "string" }, "header": "Box", "hidden": true, "sortable": true, "tooltip": "(users.NewUsers.street_box) Text to print after street nuber on the same line.", "width": Lino.chars2width(12) }, { "colIndex": 22, "dataIndex": "addr2", "editable": true, "editor": addr23256, "filter": { "type": "string" }, "header": "Address line after street", "hidden": true, "sortable": true, "tooltip": "(users.NewUsers.addr2) Address line to print below street line.", "width": Lino.chars2width(22) }, { "colIndex": 23, "dataIndex": "prefix", "editable": true, "editor": prefix3257, "filter": { "type": "string" }, "header": "Name prefix", "hidden": true, "sortable": true, "tooltip": "(users.NewUsers.prefix) An optional name prefix. For organisations this is inserted\nbefore the name, for persons this is inserted between first\nname and last name (see\nlino.mixins.human.Human.get_last_name_prefix()).", "width": Lino.chars2width(22) }, { "colIndex": 24, "dataIndex": "name", "editable": true, "editor": name3258, "filter": { "type": "string" }, "header": "Name", "hidden": true, "sortable": true, "tooltip": "(users.NewUsers.name) The full name of this partner. Used for alphabetic sorting.\nSubclasses may hide this field and fill it automatically,\ne.g. saving a Person will automatically set her\nname field to \"last_name, first_name\".", "width": Lino.chars2width(22) }, { "colIndex": 25, "dataIndex": "remarks", "editable": true, "editor": remarks3259, "filter": { "type": "string" }, "header": "About me", "hidden": true, "sortable": false, "tooltip": "(users.NewUsers.remarks) ", "width": Lino.chars2width(61) }, { "colIndex": 26, "dataIndex": "title", "editable": true, "editor": title3260, "filter": { "type": "string" }, "header": "Title", "hidden": true, "sortable": true, "tooltip": "(users.NewUsers.title) Used to specify a professional position or academic\nqualification like \"Dr.\" or \"PhD\".", "width": Lino.chars2width(22) }, { "colIndex": 27, "dataIndex": "middle_name", "editable": true, "editor": middle_name3261, "filter": { "type": "string" }, "header": "Middle name", "hidden": true, "sortable": true, "tooltip": "(users.NewUsers.middle_name) A space-separated list of all middle names.", "width": Lino.chars2width(22) }, { "colIndex": 28, "dataIndex": "gender", "editable": true, "editor": gender3262, "filter": { "type": "string" }, "header": "Gender", "hidden": true, "sortable": false, "tooltip": "(users.NewUsers.gender) The sex of this person (male or female).", "width": Lino.chars2width(10) }, { "colIndex": 29, "dataIndex": "birth_date", "editable": true, "editor": birth_date3263, "filter": { "type": "string" }, "header": "Birth date", "hidden": true, "sortable": true, "tooltip": "(users.NewUsers.birth_date) Uncomplete dates are allowed, e.g. \n\"00.00.1980\" means \"some day in 1980\", \n\"00.07.1980\" means \"in July 1980\"\nor \"23.07.0000\" means \"on a 23th of July\".", "width": Lino.chars2width(13) }, { "colIndex": 30, "dataIndex": "private", "editable": true, "filter": { "type": "boolean" }, "header": "Private", "hidden": true, "sortable": false, "tooltip": "(users.NewUsers.private) ", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 31, "dataIndex": "modified", "editable": false, "header": "Modified", "hidden": true, "sortable": true, "tooltip": "(users.NewUsers.modified) ", "width": Lino.chars2width(17) }, { "colIndex": 32, "dataIndex": "password", "editable": true, "editor": password3266, "filter": { "type": "string" }, "header": "password", "hidden": true, "sortable": true, "tooltip": "(users.NewUsers.password) ", "width": Lino.chars2width(22) }, { "colIndex": 33, "dataIndex": "last_login", "editable": true, "editor": last_login3267, "header": "last login", "hidden": true, "sortable": true, "tooltip": "(users.NewUsers.last_login) Not used in Lino.", "width": Lino.chars2width(17) }, { "colIndex": 34, "dataIndex": "timezone", "editable": true, "editor": timezone3268, "filter": { "type": "string" }, "header": "Time zone", "hidden": true, "sortable": false, "tooltip": "(users.NewUsers.timezone) ", "width": Lino.chars2width(11) }, { "colIndex": 35, "dataIndex": "initials", "editable": true, "editor": initials3269, "filter": { "type": "string" }, "header": "Initials", "hidden": true, "sortable": true, "tooltip": "(users.NewUsers.initials) The nickname or initials of this user. This does not need to\nbe unique but should provide a reasonably identifying\nfunction.", "width": Lino.chars2width(12) }, { "colIndex": 36, "dataIndex": "callme_mode", "editable": true, "filter": { "type": "boolean" }, "header": "Others may contact me", "hidden": true, "sortable": false, "tooltip": "(users.NewUsers.callme_mode) Whether other users can see my contact data.", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 37, "dataIndex": "verification_code", "editable": true, "editor": verification_code3271, "filter": { "type": "string" }, "header": "verification code", "hidden": true, "sortable": true, "tooltip": "(users.NewUsers.verification_code) A random string set for every new user. Used for\nonline_registration.", "width": Lino.chars2width(22) }, { "colIndex": 38, "dataIndex": "user_state", "editable": true, "editor": user_state3272, "filter": { "type": "string" }, "header": "User state", "hidden": true, "sortable": false, "tooltip": "(users.NewUsers.user_state) The registration state of this user.", "width": Lino.chars2width(12) }, { "colIndex": 39, "dataIndex": "access_class", "editable": true, "editor": access_class3273, "filter": { "type": "string" }, "header": "Default access class", "hidden": true, "sortable": false, "tooltip": "(users.NewUsers.access_class) The default access class for your calendar events and tasks.", "width": Lino.chars2width(13) }, { "colIndex": 40, "dataIndex": "event_type", "editable": true, "editor": event_type3274, "filter": { "type": "string" }, "header": "Default Event Type", "hidden": true, "renderer": Lino.fk_renderer('event_typeHidden','Lino.cal.EventTypes.detail'), "sortable": false, "tooltip": "(users.NewUsers.event_type) The default event type for your calendar events.", "width": Lino.chars2width(21) }, { "colIndex": 41, "dataIndex": "about_me", "editable": false, "header": "About me", "hidden": true, "sortable": false, "tooltip": "(users.NewUsers.about_me) ", "width": Lino.chars2width(31) }, { "colIndex": 42, "dataIndex": "name_column", "editable": false, "header": "Name", "hidden": true, "sortable": false, "tooltip": "(users.NewUsers.name_column) ", "width": Lino.chars2width(16) }, { "colIndex": 43, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(users.NewUsers.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 44, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(users.NewUsers.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 45, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(users.NewUsers.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 46, "dataIndex": "created_natural", "editable": false, "header": "Created", "hidden": true, "sortable": false, "tooltip": "(users.NewUsers.created_natural) ", "width": Lino.chars2width(31) }, { "colIndex": 47, "dataIndex": "age", "editable": false, "header": "Age", "hidden": true, "sortable": false, "tooltip": "(users.NewUsers.age) ", "width": Lino.chars2width(31) }, { "colIndex": 48, "dataIndex": "mti_navigator", "editable": false, "header": "See as ", "hidden": true, "sortable": false, "tooltip": "(users.NewUsers.mti_navigator) ", "width": Lino.chars2width(31) }, { "colIndex": 49, "dataIndex": "address_column", "editable": false, "header": "Address", "hidden": true, "sortable": false, "tooltip": "(users.NewUsers.address_column) ", "width": Lino.chars2width(31) } ];
    Lino.users.NewUsers.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.users.NewUsers.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/NewUsers", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.NewUsers.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/NewUsers", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.NewUsers.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/NewUsers", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.users.NewUsers.insertPanel = Ext.extend(Lino.users.Users.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/users/NewUsers",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.users.NewUsers.detail;
    this.ls_insert_handler = Lino.users.NewUsers.insert;
    Lino.users.NewUsers.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.users.NewUsers.insert = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.users.NewUsers.insertPanel(p);
});
Lino.users.NewUsers.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/NewUsers", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.NewUsers.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/NewUsers", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.NewUsers.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/NewUsers", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.users.NewUsers.detailPanel = Ext.extend(Lino.users.Users.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "iconCls": "x-tbar-arrow_join", "itemId": "merge_row", "menu_item_text": "Merge", "overflowText": "Merge", "panel_btn_handler": Lino.param_action_handler(Lino.contacts.Persons.merge_row), "tooltip": "Merge this object into another object of same class." }, { "auto_save": true, "itemId": "update_widgets", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create or update the widgets for this user.") }, "menu_item_text": "Update widgets", "overflowText": "Update widgets", "panel_btn_handler": Lino.row_action_handler('update_widgets','GET',null), "text": "\u00a0\u26a1\u00a0" }, { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "fix_problems", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": "Fix plausibility problems", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." }, { "auto_save": true, "itemId": "check_plausibility", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": "Check plausibility", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." } ], "menu_item_text": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": null, "xtype": "splitbutton" }, { "auto_save": true, "itemId": "change_password", "menu_item_text": "Change password", "overflowText": "Change password", "panel_btn_handler": Lino.param_action_handler(Lino.users.Users.change_password), "text": " <font size=\"4\">\u2731</font>" } ],
  ls_url: "/users/NewUsers",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.users.NewUsers.detail;
    this.ls_insert_handler = Lino.users.NewUsers.insert;
    Lino.users.NewUsers.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.users.NewUsers.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.users.NewUsers.detailPanel(p);
});
Lino.users.NewUsers.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/NewUsers", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.NewUsers.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.users.Users.ParamsPanel({});
  return new Lino.users.NewUsers.GridPanel(p);
});
Lino.users.NewUsers.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/NewUsers", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.NewUsers.del_company = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/NewUsers", "GET", pk, "del_company", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.NewUsers.ins_company = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/NewUsers", "GET", pk, "ins_company", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.NewUsers.update_widgets = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/NewUsers", "GET", pk, "update_widgets", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.NewUsers.ins_partner = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/NewUsers", "GET", pk, "ins_partner", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.NewUsers.del_person = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/NewUsers", "GET", pk, "del_person", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.NewUsers.ins_user = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/NewUsers", "GET", pk, "ins_user", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.NewUsers.del_partner = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/NewUsers", "GET", pk, "del_partner", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.NewUsers.fix_problems = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/NewUsers", "GET", pk, "fix_problems", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.NewUsers.ins_person = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/NewUsers", "GET", pk, "ins_person", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.NewUsers.del_household = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/NewUsers", "GET", pk, "del_household", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.NewUsers.ins_household = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/NewUsers", "GET", pk, "ins_household", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.NewUsers.del_user = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/NewUsers", "GET", pk, "del_user", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.NewUsers.check_plausibility = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/NewUsers", "GET", pk, "check_plausibility", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.NewUsers.wf1 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/NewUsers", "GET", pk, "wf1", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.NewUsers.wf2 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/NewUsers", "GET", pk, "wf2", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.NewUsers.wf3 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/NewUsers", "GET", pk, "wf3", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class sessions.SessionTable
Lino.sessions.SessionTable.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/sessions/SessionTable",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/sessions/SessionTable','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/sessions/SessionTable','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "sessions",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 4,
  ls_store_fields : [ { "name": "session_key" }, { "name": "session_data" }, { "name": "expire_date" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 0,
  ls_grid_configs : [  ],
  content_type : 47,
  ls_id_property : "session_key",
  gc_name : 0,
  initComponent : function() {
    var ww = this.containing_window;
    var session_key3285 = new Ext.form.TextField({ "allowBlank": false, "maxLength": 40, "selectOnFocus": true });
    var session_data3286 = new Lino.RichTextPanel({ "allowBlank": false, "containing_panel": this, "selectOnFocus": true, "title": "session data" });
    var expire_date3287 = new Ext.form.DisplayField({ "allowBlank": false, "selectOnFocus": true, "value": "<br>" });
    this.before_row_edit = function(record) {
      session_data3286.refresh();
    };
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "session_key", "editable": true, "editor": session_key3285, "filter": { "type": "string" }, "header": "session key", "sortable": true, "tooltip": "(sessions.SessionTable.session_key) ", "width": Lino.chars2width(22) }, { "colIndex": 1, "dataIndex": "session_data", "editable": true, "editor": session_data3286, "filter": { "type": "string" }, "header": "session data", "sortable": false, "tooltip": "(sessions.SessionTable.session_data) ", "width": Lino.chars2width(61) }, { "colIndex": 2, "dataIndex": "expire_date", "editable": true, "editor": expire_date3287, "header": "expire date", "sortable": true, "tooltip": "(sessions.SessionTable.expire_date) ", "width": Lino.chars2width(17) } ];
    Lino.sessions.SessionTable.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.sessions.SessionTable.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/sessions/SessionTable", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.sessions.SessionTable.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/sessions/SessionTable", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.sessions.SessionTable.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/sessions/SessionTable", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.sessions.SessionTable.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/sessions/SessionTable", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.sessions.SessionTable.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/sessions/SessionTable", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.sessions.SessionTable.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/sessions/SessionTable", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.sessions.SessionTable.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.sessions.SessionTable.GridPanel(p);
});

// js_render_GridPanel_class countries.PlacesByPlace
Lino.countries.PlacesByPlace.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/countries/PlacesByPlace",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/countries/PlacesByPlace','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/countries/PlacesByPlace','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "itemId": "duplicate", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Duplicate the selected row.") }, "menu_item_text": "\u2687", "overflowText": "\u2687", "panel_btn_handler": Lino.row_action_handler('duplicate','GET',null), "text": " <font size=\"4\">\u2687</font>" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "iconCls": "x-tbar-arrow_join", "itemId": "merge_row", "menu_item_text": "Merge", "overflowText": "Merge", "panel_btn_handler": Lino.param_action_handler(Lino.countries.Places.merge_row), "tooltip": "Merge this object into another object of same class." }, { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "check_plausibility", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": "Check plausibility", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." }, { "auto_save": true, "itemId": "fix_problems", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": "Fix plausibility problems", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." } ], "menu_item_text": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": null, "xtype": "splitbutton" } ],
  cell_edit : true,
  title : "Subdivisions",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 16,
  ls_store_fields : [ { "name": "overview" }, { "name": "type" }, 'typeHidden', { "name": "zip_code" }, { "name": "id", "type": "int" }, { "name": "name" }, { "name": "country" }, 'countryHidden', { "name": "show_type", "type": "boolean" }, { "name": "children_summary" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "workflow_buttons" }, { "name": "parent" }, 'parentHidden', { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 4,
  ls_grid_configs : [  ],
  content_type : 2,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.countries.PlacesByPlace.detail;
    this.ls_insert_handler = Lino.countries.PlacesByPlace.insert;
    var ww = this.containing_window;
    var overview_disp1344 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    var type1345 = new Lino.RemoteComboFieldElement({ "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/countries/PlacesByPlace/type" }) }) });
    var zip_code1346 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(8), "maxLength": 8, "selectOnFocus": true });
    var id1347 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var name1348 = new Ext.form.TextField({ "allowBlank": false, "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var country1349 = new Lino.RemoteComboFieldElement({ "allowBlank": false, "emptyText": "Select a Country...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/countries/PlacesByPlace/country" }) }) });
    var show_type1350 = new Ext.form.Checkbox({ "checked": false, "hidden": true, "selectOnFocus": true });
    var children_summary_disp1351 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var mobile_item_disp1352 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp1353 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp1354 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var parent1355 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Place...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/countries/PlacesByPlace/parent" }) }) });
    this.before_row_edit = function(record) {
      type1345.setContextValue('country', record ? record.data['countryHidden'] : undefined);
    };
    this.onRender = function(ct, position) {
      country1349.on('change',Lino.chooser_handler(type1345,'country'));
      Lino.countries.PlacesByPlace.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "overview", "editable": false, "header": "overview", "sortable": false, "tooltip": "(countries.PlacesByPlace.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 1, "dataIndex": "type", "editable": true, "editor": type1345, "filter": { "type": "string" }, "header": "Place Type", "sortable": false, "tooltip": "(countries.PlacesByPlace.type) ", "width": Lino.chars2width(11) }, { "colIndex": 2, "dataIndex": "zip_code", "editable": true, "editor": zip_code1346, "filter": { "type": "string" }, "header": "zip code", "sortable": true, "tooltip": "(countries.PlacesByPlace.zip_code) ", "width": Lino.chars2width(10) }, { "align": "right", "colIndex": 3, "dataIndex": "id", "editable": true, "editor": id1347, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(countries.PlacesByPlace.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 4, "dataIndex": "name", "editable": true, "editor": name1348, "filter": { "type": "string" }, "header": "Designation", "hidden": true, "sortable": true, "tooltip": "(countries.PlacesByPlace.name) ", "width": Lino.chars2width(22) }, { "colIndex": 5, "dataIndex": "country", "editable": true, "editor": country1349, "filter": { "type": "string" }, "header": "Country", "hidden": true, "renderer": Lino.fk_renderer('countryHidden','Lino.countries.Countries.detail'), "sortable": false, "tooltip": "(countries.PlacesByPlace.country) ", "width": Lino.chars2width(21) }, { "colIndex": 6, "dataIndex": "show_type", "editable": true, "filter": { "type": "boolean" }, "header": "Show type", "hidden": true, "sortable": false, "tooltip": "(countries.PlacesByPlace.show_type) ", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 7, "dataIndex": "children_summary", "editable": false, "header": "Children", "hidden": true, "sortable": false, "tooltip": "(countries.PlacesByPlace.children_summary) ", "width": Lino.chars2width(31) }, { "colIndex": 8, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(countries.PlacesByPlace.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 9, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(countries.PlacesByPlace.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 10, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(countries.PlacesByPlace.workflow_buttons) ", "width": Lino.chars2width(31) }, { "colIndex": 11, "dataIndex": "parent", "editable": true, "editor": parent1355, "filter": { "type": "string" }, "header": "Part of", "hidden": true, "renderer": Lino.fk_renderer('parentHidden','Lino.countries.Places.detail'), "sortable": false, "tooltip": "(countries.PlacesByPlace.parent) The superordinate geographic place of which this place is a part.", "width": Lino.chars2width(21) } ];
    Lino.countries.PlacesByPlace.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.countries.PlacesByPlace.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/countries/PlacesByPlace", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.countries.PlacesByPlace.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/countries/PlacesByPlace", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.countries.PlacesByPlace.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/countries/PlacesByPlace", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.countries.PlacesByPlace.insertPanel = Ext.extend(Lino.countries.Places.DetailFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/countries/PlacesByPlace",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.countries.PlacesByPlace.detail;
    this.ls_insert_handler = Lino.countries.PlacesByPlace.insert;
    Lino.countries.PlacesByPlace.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.countries.PlacesByPlace.insert = new Lino.WindowAction({  }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.countries.PlacesByPlace.insertPanel(p);
});
Lino.countries.PlacesByPlace.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/countries/PlacesByPlace", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.countries.PlacesByPlace.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/countries/PlacesByPlace", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.countries.PlacesByPlace.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/countries/PlacesByPlace", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.countries.PlacesByPlace.duplicate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/countries/PlacesByPlace", "GET", pk, "duplicate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.countries.PlacesByPlace.detailPanel = Ext.extend(Lino.countries.Places.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "itemId": "duplicate", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Duplicate the selected row.") }, "menu_item_text": "\u2687", "overflowText": "\u2687", "panel_btn_handler": Lino.row_action_handler('duplicate','GET',null), "text": " <font size=\"4\">\u2687</font>" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "iconCls": "x-tbar-arrow_join", "itemId": "merge_row", "menu_item_text": "Merge", "overflowText": "Merge", "panel_btn_handler": Lino.param_action_handler(Lino.countries.Places.merge_row), "tooltip": "Merge this object into another object of same class." }, { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "check_plausibility", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": "Check plausibility", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." }, { "auto_save": true, "itemId": "fix_problems", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": "Fix plausibility problems", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." } ], "menu_item_text": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": null, "xtype": "splitbutton" } ],
  ls_url: "/countries/PlacesByPlace",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.countries.PlacesByPlace.detail;
    this.ls_insert_handler = Lino.countries.PlacesByPlace.insert;
    Lino.countries.PlacesByPlace.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.countries.PlacesByPlace.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.countries.PlacesByPlace.detailPanel(p);
});
Lino.countries.PlacesByPlace.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/countries/PlacesByPlace", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.countries.PlacesByPlace.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.countries.PlacesByPlace.GridPanel(p);
});
Lino.countries.PlacesByPlace.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/countries/PlacesByPlace", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.countries.PlacesByPlace.check_plausibility = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/countries/PlacesByPlace", "GET", pk, "check_plausibility", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.countries.PlacesByPlace.fix_problems = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/countries/PlacesByPlace", "GET", pk, "fix_problems", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class countries.PlacesByCountry
Lino.countries.PlacesByCountry.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/countries/PlacesByCountry",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/countries/PlacesByCountry','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/countries/PlacesByCountry','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "itemId": "duplicate", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Duplicate the selected row.") }, "menu_item_text": "\u2687", "overflowText": "\u2687", "panel_btn_handler": Lino.row_action_handler('duplicate','GET',null), "text": " <font size=\"4\">\u2687</font>" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "iconCls": "x-tbar-arrow_join", "itemId": "merge_row", "menu_item_text": "Merge", "overflowText": "Merge", "panel_btn_handler": Lino.param_action_handler(Lino.countries.Places.merge_row), "tooltip": "Merge this object into another object of same class." }, { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "check_plausibility", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": "Check plausibility", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." }, { "auto_save": true, "itemId": "fix_problems", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": "Fix plausibility problems", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." } ], "menu_item_text": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": null, "xtype": "splitbutton" } ],
  cell_edit : true,
  title : "Places",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 16,
  ls_store_fields : [ { "name": "name" }, { "name": "type" }, 'typeHidden', { "name": "zip_code" }, { "name": "id", "type": "int" }, { "name": "parent" }, 'parentHidden', { "name": "show_type", "type": "boolean" }, { "name": "children_summary" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "country" }, 'countryHidden', { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 4,
  ls_grid_configs : [  ],
  content_type : 2,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.countries.PlacesByCountry.detail;
    this.ls_insert_handler = Lino.countries.PlacesByCountry.insert;
    var ww = this.containing_window;
    var name1234 = new Ext.form.TextField({ "allowBlank": false, "maxLength": 200, "selectOnFocus": true });
    var type1235 = new Lino.RemoteComboFieldElement({ "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/countries/PlacesByCountry/type" }) }) });
    var zip_code1236 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(8), "maxLength": 8, "selectOnFocus": true });
    var id1237 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var parent1238 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Place...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/countries/PlacesByCountry/parent" }) }) });
    var show_type1239 = new Ext.form.Checkbox({ "checked": false, "hidden": true, "selectOnFocus": true });
    var children_summary_disp1240 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var mobile_item_disp1241 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp1242 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp1243 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp1244 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var country1245 = new Lino.RemoteComboFieldElement({ "allowBlank": false, "emptyText": "Select a Country...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/countries/PlacesByCountry/country" }) }) });
    this.before_row_edit = function(record) {
      var bp = this.get_base_params();
      type1235.setContextValue('mk',bp['mk']);
      type1235.setContextValue('mt',bp['mt']);
    };
    this.onRender = function(ct, position) {
      country1245.on('change',Lino.chooser_handler(type1235,'country'));
      Lino.countries.PlacesByCountry.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "name", "editable": true, "editor": name1234, "filter": { "type": "string" }, "header": "Designation", "sortable": true, "tooltip": "(countries.PlacesByCountry.name) ", "width": Lino.chars2width(22) }, { "colIndex": 1, "dataIndex": "type", "editable": true, "editor": type1235, "filter": { "type": "string" }, "header": "Place Type", "sortable": false, "tooltip": "(countries.PlacesByCountry.type) ", "width": Lino.chars2width(11) }, { "colIndex": 2, "dataIndex": "zip_code", "editable": true, "editor": zip_code1236, "filter": { "type": "string" }, "header": "zip code", "sortable": true, "tooltip": "(countries.PlacesByCountry.zip_code) ", "width": Lino.chars2width(10) }, { "align": "right", "colIndex": 3, "dataIndex": "id", "editable": true, "editor": id1237, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(countries.PlacesByCountry.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 4, "dataIndex": "parent", "editable": true, "editor": parent1238, "filter": { "type": "string" }, "header": "Part of", "hidden": true, "renderer": Lino.fk_renderer('parentHidden','Lino.countries.Places.detail'), "sortable": false, "tooltip": "(countries.PlacesByCountry.parent) The superordinate geographic place of which this place is a part.", "width": Lino.chars2width(21) }, { "colIndex": 5, "dataIndex": "show_type", "editable": true, "filter": { "type": "boolean" }, "header": "Show type", "hidden": true, "sortable": false, "tooltip": "(countries.PlacesByCountry.show_type) ", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 6, "dataIndex": "children_summary", "editable": false, "header": "Children", "hidden": true, "sortable": false, "tooltip": "(countries.PlacesByCountry.children_summary) ", "width": Lino.chars2width(31) }, { "colIndex": 7, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(countries.PlacesByCountry.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 8, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(countries.PlacesByCountry.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 9, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(countries.PlacesByCountry.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 10, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(countries.PlacesByCountry.workflow_buttons) ", "width": Lino.chars2width(31) }, { "colIndex": 11, "dataIndex": "country", "editable": true, "editor": country1245, "filter": { "type": "string" }, "header": "Country", "hidden": true, "renderer": Lino.fk_renderer('countryHidden','Lino.countries.Countries.detail'), "sortable": false, "tooltip": "(countries.PlacesByCountry.country) ", "width": Lino.chars2width(21) } ];
    Lino.countries.PlacesByCountry.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.countries.PlacesByCountry.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/countries/PlacesByCountry", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.countries.PlacesByCountry.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/countries/PlacesByCountry", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.countries.PlacesByCountry.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/countries/PlacesByCountry", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.countries.PlacesByCountry.insertPanel = Ext.extend(Lino.countries.Places.DetailFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/countries/PlacesByCountry",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.countries.PlacesByCountry.detail;
    this.ls_insert_handler = Lino.countries.PlacesByCountry.insert;
    Lino.countries.PlacesByCountry.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.countries.PlacesByCountry.insert = new Lino.WindowAction({  }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.countries.PlacesByCountry.insertPanel(p);
});
Lino.countries.PlacesByCountry.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/countries/PlacesByCountry", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.countries.PlacesByCountry.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/countries/PlacesByCountry", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.countries.PlacesByCountry.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/countries/PlacesByCountry", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.countries.PlacesByCountry.duplicate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/countries/PlacesByCountry", "GET", pk, "duplicate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.countries.PlacesByCountry.detailPanel = Ext.extend(Lino.countries.Places.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "itemId": "duplicate", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Duplicate the selected row.") }, "menu_item_text": "\u2687", "overflowText": "\u2687", "panel_btn_handler": Lino.row_action_handler('duplicate','GET',null), "text": " <font size=\"4\">\u2687</font>" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "iconCls": "x-tbar-arrow_join", "itemId": "merge_row", "menu_item_text": "Merge", "overflowText": "Merge", "panel_btn_handler": Lino.param_action_handler(Lino.countries.Places.merge_row), "tooltip": "Merge this object into another object of same class." }, { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "check_plausibility", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": "Check plausibility", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." }, { "auto_save": true, "itemId": "fix_problems", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": "Fix plausibility problems", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." } ], "menu_item_text": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": null, "xtype": "splitbutton" } ],
  ls_url: "/countries/PlacesByCountry",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.countries.PlacesByCountry.detail;
    this.ls_insert_handler = Lino.countries.PlacesByCountry.insert;
    Lino.countries.PlacesByCountry.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.countries.PlacesByCountry.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.countries.PlacesByCountry.detailPanel(p);
});
Lino.countries.PlacesByCountry.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/countries/PlacesByCountry", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.countries.PlacesByCountry.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.countries.PlacesByCountry.GridPanel(p);
});
Lino.countries.PlacesByCountry.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/countries/PlacesByCountry", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.countries.PlacesByCountry.check_plausibility = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/countries/PlacesByCountry", "GET", pk, "check_plausibility", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.countries.PlacesByCountry.fix_problems = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/countries/PlacesByCountry", "GET", pk, "fix_problems", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class contacts.PartnersByCity
Lino.contacts.PartnersByCity.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/contacts/PartnersByCity",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/contacts/PartnersByCity','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/contacts/PartnersByCity','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "Partners",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 32,
  ls_store_fields : [ { "name": "address_column" }, { "name": "name" }, { "name": "id", "type": "int" }, { "name": "email" }, { "name": "language" }, 'languageHidden', { "name": "url" }, { "name": "phone" }, { "name": "gsm" }, { "name": "fax" }, { "name": "country" }, 'countryHidden', { "name": "zip_code" }, { "name": "region" }, 'regionHidden', { "name": "addr1" }, { "name": "street_prefix" }, { "name": "street" }, { "name": "street_no" }, { "name": "street_box" }, { "name": "addr2" }, { "name": "prefix" }, { "name": "remarks" }, { "name": "name_column" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "mti_navigator" }, { "name": "city" }, 'cityHidden', { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 2,
  ls_grid_configs : [  ],
  content_type : 8,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.contacts.PartnersByCity.detail;
    this.ls_insert_handler = Lino.contacts.PartnersByCity.insert;
    var ww = this.containing_window;
    var address_column_disp1284 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    var name1285 = new Ext.form.TextField({ "allowBlank": false, "maxLength": 200, "selectOnFocus": true });
    var id1286 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var email1287 = new Ext.form.TextField({ "hidden": true, "maxLength": 254, "selectOnFocus": true });
    var language1288 = new Lino.ChoicesFieldElement({ "hidden": true, "selectOnFocus": true, "store": [ [ "en-us", "American English" ] ] });
    var url1289 = new Lino.URLField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var phone1290 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var gsm1291 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var fax1292 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var country1293 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Country...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/contacts/PartnersByCity/country" }) }) });
    var zip_code1294 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(10), "hidden": true, "maxLength": 10, "selectOnFocus": true });
    var region1295 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Place...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/contacts/PartnersByCity/region" }) }) });
    var addr11296 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var street_prefix1297 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var street1298 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var street_no1299 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(10), "hidden": true, "maxLength": 10, "selectOnFocus": true });
    var street_box1300 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(10), "hidden": true, "maxLength": 10, "selectOnFocus": true });
    var addr21301 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var prefix1302 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var remarks1303 = new Lino.RichTextPanel({ "containing_panel": this, "hidden": true, "selectOnFocus": true, "title": "About me" });
    var name_column_disp1304 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var mobile_item_disp1305 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp1306 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp1307 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp1308 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var mti_navigator_disp1309 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var city1310 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Place...", "forceSelection": false, "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/contacts/PartnersByCity/city" }) }) });
    this.before_row_edit = function(record) {
      region1295.setContextValue('country', record ? record.data['countryHidden'] : undefined);
      remarks1303.refresh();
      city1310.setContextValue('country', record ? record.data['countryHidden'] : undefined);
      city1310.setContextValue('region', record ? record.data['regionHidden'] : undefined);
    };
    this.onRender = function(ct, position) {
      country1293.on('change',Lino.chooser_handler(region1295,'country'));
      country1293.on('change',Lino.chooser_handler(city1310,'country'));
      region1295.on('change',Lino.chooser_handler(city1310,'region'));
      Lino.contacts.PartnersByCity.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "address_column", "editable": false, "header": "Address", "sortable": false, "tooltip": "(contacts.PartnersByCity.address_column) ", "width": Lino.chars2width(31) }, { "colIndex": 1, "dataIndex": "name", "editable": true, "editor": name1285, "filter": { "type": "string" }, "header": "Name", "sortable": true, "tooltip": "(contacts.PartnersByCity.name) The full name of this partner. Used for alphabetic sorting.\nSubclasses may hide this field and fill it automatically,\ne.g. saving a Person will automatically set her\nname field to \"last_name, first_name\".", "width": Lino.chars2width(22) }, { "align": "right", "colIndex": 2, "dataIndex": "id", "editable": true, "editor": id1286, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(contacts.PartnersByCity.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 3, "dataIndex": "email", "editable": true, "editor": email1287, "filter": { "type": "string" }, "header": "e-mail address", "hidden": true, "sortable": true, "tooltip": "(contacts.PartnersByCity.email) The primary email address.", "width": Lino.chars2width(22) }, { "colIndex": 4, "dataIndex": "language", "editable": true, "editor": language1288, "filter": { "type": "string" }, "header": "Language", "hidden": true, "sortable": false, "tooltip": "(contacts.PartnersByCity.language) The language to use when communicating with this partner.", "width": Lino.chars2width(21) }, { "colIndex": 5, "dataIndex": "url", "editable": true, "editor": url1289, "filter": { "type": "string" }, "header": "URL", "hidden": true, "sortable": true, "tooltip": "(contacts.PartnersByCity.url) ", "width": Lino.chars2width(22) }, { "colIndex": 6, "dataIndex": "phone", "editable": true, "editor": phone1290, "filter": { "type": "string" }, "header": "Phone", "hidden": true, "sortable": true, "tooltip": "(contacts.PartnersByCity.phone) The primary phone number.  Note that Lino does not ignore\nformatting characters in phone numbers when searching.  For\nexample, if you enter \"087/12.34.56\" as a phone number, then a\nsearch for phone number containing \"1234\" will not find it.", "width": Lino.chars2width(22) }, { "colIndex": 7, "dataIndex": "gsm", "editable": true, "editor": gsm1291, "filter": { "type": "string" }, "header": "GSM", "hidden": true, "sortable": true, "tooltip": "(contacts.PartnersByCity.gsm) The primary mobile phone number.", "width": Lino.chars2width(22) }, { "colIndex": 8, "dataIndex": "fax", "editable": true, "editor": fax1292, "filter": { "type": "string" }, "header": "Fax", "hidden": true, "sortable": true, "tooltip": "(contacts.PartnersByCity.fax) ", "width": Lino.chars2width(22) }, { "colIndex": 9, "dataIndex": "country", "editable": true, "editor": country1293, "filter": { "type": "string" }, "header": "Country", "hidden": true, "renderer": Lino.fk_renderer('countryHidden','Lino.countries.Countries.detail'), "sortable": false, "tooltip": "(contacts.PartnersByCity.country) ", "width": Lino.chars2width(21) }, { "colIndex": 10, "dataIndex": "zip_code", "editable": true, "editor": zip_code1294, "filter": { "type": "string" }, "header": "Zip code", "hidden": true, "sortable": true, "tooltip": "(contacts.PartnersByCity.zip_code) ", "width": Lino.chars2width(12) }, { "colIndex": 11, "dataIndex": "region", "editable": true, "editor": region1295, "filter": { "type": "string" }, "header": "County", "hidden": true, "renderer": Lino.fk_renderer('regionHidden','Lino.countries.Places.detail'), "sortable": false, "tooltip": "(contacts.PartnersByCity.region) ", "width": Lino.chars2width(21) }, { "colIndex": 12, "dataIndex": "addr1", "editable": true, "editor": addr11296, "filter": { "type": "string" }, "header": "Address line before street", "hidden": true, "sortable": true, "tooltip": "(contacts.PartnersByCity.addr1) Address line before street", "width": Lino.chars2width(22) }, { "colIndex": 13, "dataIndex": "street_prefix", "editable": true, "editor": street_prefix1297, "filter": { "type": "string" }, "header": "Street prefix", "hidden": true, "sortable": true, "tooltip": "(contacts.PartnersByCity.street_prefix) Text to print before name of street, but to ignore for sorting.", "width": Lino.chars2width(22) }, { "colIndex": 14, "dataIndex": "street", "editable": true, "editor": street1298, "filter": { "type": "string" }, "header": "Street", "hidden": true, "sortable": true, "tooltip": "(contacts.PartnersByCity.street) Name of street, without house number.", "width": Lino.chars2width(22) }, { "colIndex": 15, "dataIndex": "street_no", "editable": true, "editor": street_no1299, "filter": { "type": "string" }, "header": "No.", "hidden": true, "sortable": true, "tooltip": "(contacts.PartnersByCity.street_no) House number.", "width": Lino.chars2width(12) }, { "colIndex": 16, "dataIndex": "street_box", "editable": true, "editor": street_box1300, "filter": { "type": "string" }, "header": "Box", "hidden": true, "sortable": true, "tooltip": "(contacts.PartnersByCity.street_box) Text to print after street nuber on the same line.", "width": Lino.chars2width(12) }, { "colIndex": 17, "dataIndex": "addr2", "editable": true, "editor": addr21301, "filter": { "type": "string" }, "header": "Address line after street", "hidden": true, "sortable": true, "tooltip": "(contacts.PartnersByCity.addr2) Address line to print below street line.", "width": Lino.chars2width(22) }, { "colIndex": 18, "dataIndex": "prefix", "editable": true, "editor": prefix1302, "filter": { "type": "string" }, "header": "Name prefix", "hidden": true, "sortable": true, "tooltip": "(contacts.PartnersByCity.prefix) An optional name prefix. For organisations this is inserted\nbefore the name, for persons this is inserted between first\nname and last name (see\nlino.mixins.human.Human.get_last_name_prefix()).", "width": Lino.chars2width(22) }, { "colIndex": 19, "dataIndex": "remarks", "editable": true, "editor": remarks1303, "filter": { "type": "string" }, "header": "About me", "hidden": true, "sortable": false, "tooltip": "(contacts.PartnersByCity.remarks) ", "width": Lino.chars2width(61) }, { "colIndex": 20, "dataIndex": "name_column", "editable": false, "header": "Name", "hidden": true, "sortable": false, "tooltip": "(contacts.PartnersByCity.name_column) ", "width": Lino.chars2width(31) }, { "colIndex": 21, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(contacts.PartnersByCity.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 22, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(contacts.PartnersByCity.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 23, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(contacts.PartnersByCity.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 24, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(contacts.PartnersByCity.workflow_buttons) ", "width": Lino.chars2width(31) }, { "colIndex": 25, "dataIndex": "mti_navigator", "editable": false, "header": "See as ", "hidden": true, "sortable": false, "tooltip": "(contacts.PartnersByCity.mti_navigator) ", "width": Lino.chars2width(31) }, { "colIndex": 26, "dataIndex": "city", "editable": true, "editor": city1310, "filter": { "type": "string" }, "header": "City", "hidden": true, "renderer": Lino.fk_renderer('cityHidden','Lino.countries.Places.detail'), "sortable": false, "tooltip": "(contacts.PartnersByCity.city) A pointer to the Place which is used as city.", "width": Lino.chars2width(21) } ];
    Lino.contacts.PartnersByCity.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.contacts.PartnersByCity.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/PartnersByCity", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.PartnersByCity.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/PartnersByCity", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.PartnersByCity.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/PartnersByCity", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.contacts.PartnersByCity.insertPanel = Ext.extend(Lino.contacts.Partners.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/contacts/PartnersByCity",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.contacts.PartnersByCity.detail;
    this.ls_insert_handler = Lino.contacts.PartnersByCity.insert;
    Lino.contacts.PartnersByCity.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.contacts.PartnersByCity.insert = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.contacts.PartnersByCity.insertPanel(p);
});
Lino.contacts.PartnersByCity.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/PartnersByCity", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.PartnersByCity.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/PartnersByCity", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.PartnersByCity.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/PartnersByCity", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.contacts.PartnersByCity.detailPanel = Ext.extend(Lino.contacts.Partners.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  ls_url: "/contacts/PartnersByCity",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.contacts.PartnersByCity.detail;
    this.ls_insert_handler = Lino.contacts.PartnersByCity.insert;
    Lino.contacts.PartnersByCity.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.contacts.PartnersByCity.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.contacts.PartnersByCity.detailPanel(p);
});
Lino.contacts.PartnersByCity.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/PartnersByCity", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.PartnersByCity.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.contacts.Partners.ParamsPanel({});
  return new Lino.contacts.PartnersByCity.GridPanel(p);
});
Lino.contacts.PartnersByCity.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/PartnersByCity", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.PartnersByCity.ins_company = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/PartnersByCity", "GET", pk, "ins_company", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.PartnersByCity.ins_user = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/PartnersByCity", "GET", pk, "ins_user", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.PartnersByCity.del_partner = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/PartnersByCity", "GET", pk, "del_partner", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.PartnersByCity.del_company = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/PartnersByCity", "GET", pk, "del_company", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.PartnersByCity.ins_partner = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/PartnersByCity", "GET", pk, "ins_partner", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.PartnersByCity.del_person = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/PartnersByCity", "GET", pk, "del_person", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.PartnersByCity.ins_person = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/PartnersByCity", "GET", pk, "ins_person", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.PartnersByCity.ins_household = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/PartnersByCity", "GET", pk, "ins_household", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.PartnersByCity.del_user = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/PartnersByCity", "GET", pk, "del_user", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.PartnersByCity.del_household = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/PartnersByCity", "GET", pk, "del_household", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class contacts.PartnersByCountry
Lino.contacts.PartnersByCountry.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/contacts/PartnersByCountry",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/contacts/PartnersByCountry','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/contacts/PartnersByCountry','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "Partners",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 32,
  ls_store_fields : [ { "name": "city" }, 'cityHidden', { "name": "street" }, { "name": "street_no" }, { "name": "name" }, { "name": "language" }, 'languageHidden', { "name": "id", "type": "int" }, { "name": "email" }, { "name": "url" }, { "name": "phone" }, { "name": "gsm" }, { "name": "fax" }, { "name": "zip_code" }, { "name": "region" }, 'regionHidden', { "name": "addr1" }, { "name": "street_prefix" }, { "name": "street_box" }, { "name": "addr2" }, { "name": "prefix" }, { "name": "remarks" }, { "name": "name_column" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "mti_navigator" }, { "name": "address_column" }, { "name": "country" }, 'countryHidden', { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 7,
  ls_grid_configs : [  ],
  content_type : 8,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.contacts.PartnersByCountry.detail;
    this.ls_insert_handler = Lino.contacts.PartnersByCountry.insert;
    var ww = this.containing_window;
    var city3289 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Place...", "forceSelection": false, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/contacts/PartnersByCountry/city" }) }) });
    var street3290 = new Ext.form.TextField({ "maxLength": 200, "selectOnFocus": true });
    var street_no3291 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(10), "maxLength": 10, "selectOnFocus": true });
    var name3292 = new Ext.form.TextField({ "allowBlank": false, "maxLength": 200, "selectOnFocus": true });
    var language3293 = new Lino.ChoicesFieldElement({ "selectOnFocus": true, "store": [ [ "en-us", "American English" ] ] });
    var id3294 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var email3295 = new Ext.form.TextField({ "hidden": true, "maxLength": 254, "selectOnFocus": true });
    var url3296 = new Lino.URLField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var phone3297 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var gsm3298 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var fax3299 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var zip_code3300 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(10), "hidden": true, "maxLength": 10, "selectOnFocus": true });
    var region3301 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Place...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/contacts/PartnersByCountry/region" }) }) });
    var addr13302 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var street_prefix3303 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var street_box3304 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(10), "hidden": true, "maxLength": 10, "selectOnFocus": true });
    var addr23305 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var prefix3306 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var remarks3307 = new Lino.RichTextPanel({ "containing_panel": this, "hidden": true, "selectOnFocus": true, "title": "About me" });
    var name_column_disp3308 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var mobile_item_disp3309 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp3310 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp3311 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp3312 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var mti_navigator_disp3313 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var address_column_disp3314 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var country3315 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Country...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/contacts/PartnersByCountry/country" }) }) });
    this.before_row_edit = function(record) {
      var bp = this.get_base_params();
      city3289.setContextValue('mk',bp['mk']);
      city3289.setContextValue('mt',bp['mt']);
      city3289.setContextValue('region', record ? record.data['regionHidden'] : undefined);
      var bp = this.get_base_params();
      region3301.setContextValue('mk',bp['mk']);
      region3301.setContextValue('mt',bp['mt']);
      remarks3307.refresh();
    };
    this.onRender = function(ct, position) {
      country3315.on('change',Lino.chooser_handler(city3289,'country'));
      region3301.on('change',Lino.chooser_handler(city3289,'region'));
      country3315.on('change',Lino.chooser_handler(region3301,'country'));
      Lino.contacts.PartnersByCountry.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "city", "editable": true, "editor": city3289, "filter": { "type": "string" }, "header": "City", "renderer": Lino.fk_renderer('cityHidden','Lino.countries.Places.detail'), "sortable": false, "tooltip": "(contacts.PartnersByCountry.city) A pointer to the Place which is used as city.", "width": Lino.chars2width(21) }, { "colIndex": 1, "dataIndex": "street", "editable": true, "editor": street3290, "filter": { "type": "string" }, "header": "Street", "sortable": true, "tooltip": "(contacts.PartnersByCountry.street) Name of street, without house number.", "width": Lino.chars2width(22) }, { "colIndex": 2, "dataIndex": "street_no", "editable": true, "editor": street_no3291, "filter": { "type": "string" }, "header": "No.", "sortable": true, "tooltip": "(contacts.PartnersByCountry.street_no) House number.", "width": Lino.chars2width(12) }, { "colIndex": 3, "dataIndex": "name", "editable": true, "editor": name3292, "filter": { "type": "string" }, "header": "Name", "sortable": true, "tooltip": "(contacts.PartnersByCountry.name) The full name of this partner. Used for alphabetic sorting.\nSubclasses may hide this field and fill it automatically,\ne.g. saving a Person will automatically set her\nname field to \"last_name, first_name\".", "width": Lino.chars2width(22) }, { "colIndex": 4, "dataIndex": "language", "editable": true, "editor": language3293, "filter": { "type": "string" }, "header": "Language", "sortable": false, "tooltip": "(contacts.PartnersByCountry.language) The language to use when communicating with this partner.", "width": Lino.chars2width(21) }, { "align": "right", "colIndex": 5, "dataIndex": "id", "editable": true, "editor": id3294, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(contacts.PartnersByCountry.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 6, "dataIndex": "email", "editable": true, "editor": email3295, "filter": { "type": "string" }, "header": "e-mail address", "hidden": true, "sortable": true, "tooltip": "(contacts.PartnersByCountry.email) The primary email address.", "width": Lino.chars2width(22) }, { "colIndex": 7, "dataIndex": "url", "editable": true, "editor": url3296, "filter": { "type": "string" }, "header": "URL", "hidden": true, "sortable": true, "tooltip": "(contacts.PartnersByCountry.url) ", "width": Lino.chars2width(22) }, { "colIndex": 8, "dataIndex": "phone", "editable": true, "editor": phone3297, "filter": { "type": "string" }, "header": "Phone", "hidden": true, "sortable": true, "tooltip": "(contacts.PartnersByCountry.phone) The primary phone number.  Note that Lino does not ignore\nformatting characters in phone numbers when searching.  For\nexample, if you enter \"087/12.34.56\" as a phone number, then a\nsearch for phone number containing \"1234\" will not find it.", "width": Lino.chars2width(22) }, { "colIndex": 9, "dataIndex": "gsm", "editable": true, "editor": gsm3298, "filter": { "type": "string" }, "header": "GSM", "hidden": true, "sortable": true, "tooltip": "(contacts.PartnersByCountry.gsm) The primary mobile phone number.", "width": Lino.chars2width(22) }, { "colIndex": 10, "dataIndex": "fax", "editable": true, "editor": fax3299, "filter": { "type": "string" }, "header": "Fax", "hidden": true, "sortable": true, "tooltip": "(contacts.PartnersByCountry.fax) ", "width": Lino.chars2width(22) }, { "colIndex": 11, "dataIndex": "zip_code", "editable": true, "editor": zip_code3300, "filter": { "type": "string" }, "header": "Zip code", "hidden": true, "sortable": true, "tooltip": "(contacts.PartnersByCountry.zip_code) ", "width": Lino.chars2width(12) }, { "colIndex": 12, "dataIndex": "region", "editable": true, "editor": region3301, "filter": { "type": "string" }, "header": "County", "hidden": true, "renderer": Lino.fk_renderer('regionHidden','Lino.countries.Places.detail'), "sortable": false, "tooltip": "(contacts.PartnersByCountry.region) ", "width": Lino.chars2width(21) }, { "colIndex": 13, "dataIndex": "addr1", "editable": true, "editor": addr13302, "filter": { "type": "string" }, "header": "Address line before street", "hidden": true, "sortable": true, "tooltip": "(contacts.PartnersByCountry.addr1) Address line before street", "width": Lino.chars2width(22) }, { "colIndex": 14, "dataIndex": "street_prefix", "editable": true, "editor": street_prefix3303, "filter": { "type": "string" }, "header": "Street prefix", "hidden": true, "sortable": true, "tooltip": "(contacts.PartnersByCountry.street_prefix) Text to print before name of street, but to ignore for sorting.", "width": Lino.chars2width(22) }, { "colIndex": 15, "dataIndex": "street_box", "editable": true, "editor": street_box3304, "filter": { "type": "string" }, "header": "Box", "hidden": true, "sortable": true, "tooltip": "(contacts.PartnersByCountry.street_box) Text to print after street nuber on the same line.", "width": Lino.chars2width(12) }, { "colIndex": 16, "dataIndex": "addr2", "editable": true, "editor": addr23305, "filter": { "type": "string" }, "header": "Address line after street", "hidden": true, "sortable": true, "tooltip": "(contacts.PartnersByCountry.addr2) Address line to print below street line.", "width": Lino.chars2width(22) }, { "colIndex": 17, "dataIndex": "prefix", "editable": true, "editor": prefix3306, "filter": { "type": "string" }, "header": "Name prefix", "hidden": true, "sortable": true, "tooltip": "(contacts.PartnersByCountry.prefix) An optional name prefix. For organisations this is inserted\nbefore the name, for persons this is inserted between first\nname and last name (see\nlino.mixins.human.Human.get_last_name_prefix()).", "width": Lino.chars2width(22) }, { "colIndex": 18, "dataIndex": "remarks", "editable": true, "editor": remarks3307, "filter": { "type": "string" }, "header": "About me", "hidden": true, "sortable": false, "tooltip": "(contacts.PartnersByCountry.remarks) ", "width": Lino.chars2width(61) }, { "colIndex": 19, "dataIndex": "name_column", "editable": false, "header": "Name", "hidden": true, "sortable": false, "tooltip": "(contacts.PartnersByCountry.name_column) ", "width": Lino.chars2width(31) }, { "colIndex": 20, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(contacts.PartnersByCountry.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 21, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(contacts.PartnersByCountry.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 22, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(contacts.PartnersByCountry.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 23, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(contacts.PartnersByCountry.workflow_buttons) ", "width": Lino.chars2width(31) }, { "colIndex": 24, "dataIndex": "mti_navigator", "editable": false, "header": "See as ", "hidden": true, "sortable": false, "tooltip": "(contacts.PartnersByCountry.mti_navigator) ", "width": Lino.chars2width(31) }, { "colIndex": 25, "dataIndex": "address_column", "editable": false, "header": "Address", "hidden": true, "sortable": false, "tooltip": "(contacts.PartnersByCountry.address_column) ", "width": Lino.chars2width(31) }, { "colIndex": 26, "dataIndex": "country", "editable": true, "editor": country3315, "filter": { "type": "string" }, "header": "Country", "hidden": true, "renderer": Lino.fk_renderer('countryHidden','Lino.countries.Countries.detail'), "sortable": false, "tooltip": "(contacts.PartnersByCountry.country) ", "width": Lino.chars2width(21) } ];
    Lino.contacts.PartnersByCountry.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.contacts.PartnersByCountry.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/PartnersByCountry", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.PartnersByCountry.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/PartnersByCountry", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.PartnersByCountry.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/PartnersByCountry", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.contacts.PartnersByCountry.insertPanel = Ext.extend(Lino.contacts.Partners.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/contacts/PartnersByCountry",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.contacts.PartnersByCountry.detail;
    this.ls_insert_handler = Lino.contacts.PartnersByCountry.insert;
    Lino.contacts.PartnersByCountry.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.contacts.PartnersByCountry.insert = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.contacts.PartnersByCountry.insertPanel(p);
});
Lino.contacts.PartnersByCountry.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/PartnersByCountry", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.PartnersByCountry.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/PartnersByCountry", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.PartnersByCountry.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/PartnersByCountry", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.contacts.PartnersByCountry.detailPanel = Ext.extend(Lino.contacts.Partners.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  ls_url: "/contacts/PartnersByCountry",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.contacts.PartnersByCountry.detail;
    this.ls_insert_handler = Lino.contacts.PartnersByCountry.insert;
    Lino.contacts.PartnersByCountry.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.contacts.PartnersByCountry.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.contacts.PartnersByCountry.detailPanel(p);
});
Lino.contacts.PartnersByCountry.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/PartnersByCountry", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.PartnersByCountry.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.contacts.Partners.ParamsPanel({});
  return new Lino.contacts.PartnersByCountry.GridPanel(p);
});
Lino.contacts.PartnersByCountry.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/PartnersByCountry", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.PartnersByCountry.ins_company = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/PartnersByCountry", "GET", pk, "ins_company", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.PartnersByCountry.ins_user = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/PartnersByCountry", "GET", pk, "ins_user", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.PartnersByCountry.del_partner = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/PartnersByCountry", "GET", pk, "del_partner", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.PartnersByCountry.del_company = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/PartnersByCountry", "GET", pk, "del_company", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.PartnersByCountry.ins_partner = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/PartnersByCountry", "GET", pk, "ins_partner", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.PartnersByCountry.del_person = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/PartnersByCountry", "GET", pk, "del_person", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.PartnersByCountry.ins_person = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/PartnersByCountry", "GET", pk, "ins_person", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.PartnersByCountry.ins_household = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/PartnersByCountry", "GET", pk, "ins_household", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.PartnersByCountry.del_user = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/PartnersByCountry", "GET", pk, "del_user", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.PartnersByCountry.del_household = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/PartnersByCountry", "GET", pk, "del_household", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class contacts.RolesByCompany
Lino.contacts.RolesByCompany.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/contacts/RolesByCompany",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/contacts/RolesByCompany','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/contacts/RolesByCompany','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "Contact persons",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 12,
  ls_store_fields : [ { "name": "person" }, 'personHidden', { "name": "type" }, 'typeHidden', { "name": "id", "type": "int" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "company" }, 'companyHidden', { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 4,
  ls_grid_configs : [  ],
  content_type : 7,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    var ww = this.containing_window;
    var person937 = new Lino.RemoteComboFieldElement({ "allowBlank": false, "emptyText": "Select a Person...", "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/contacts/RolesByCompany/person" }) }) });
    var type938 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Function...", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/contacts/RolesByCompany/type" }) }) });
    var id939 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var mobile_item_disp940 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp941 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp942 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp943 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var company944 = new Lino.RemoteComboFieldElement({ "allowBlank": false, "emptyText": "Select a Organization...", "hidden": true, "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/contacts/RolesByCompany/company" }) }) });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "person", "editable": true, "editor": person937, "filter": { "type": "string" }, "header": "Person", "renderer": Lino.fk_renderer('personHidden','Lino.contacts.Persons.detail'), "sortable": false, "tooltip": "(contacts.RolesByCompany.person) The person having this role in this company.", "width": Lino.chars2width(21) }, { "colIndex": 1, "dataIndex": "type", "editable": true, "editor": type938, "filter": { "type": "string" }, "header": "Contact Role", "sortable": false, "tooltip": "(contacts.RolesByCompany.type) The role of this person in this company.", "width": Lino.chars2width(21) }, { "align": "right", "colIndex": 2, "dataIndex": "id", "editable": true, "editor": id939, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(contacts.RolesByCompany.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 3, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(contacts.RolesByCompany.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 4, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(contacts.RolesByCompany.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 5, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(contacts.RolesByCompany.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 6, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(contacts.RolesByCompany.workflow_buttons) ", "width": Lino.chars2width(31) }, { "colIndex": 7, "dataIndex": "company", "editable": true, "editor": company944, "filter": { "type": "string" }, "header": "Organization", "hidden": true, "renderer": Lino.fk_renderer('companyHidden','Lino.contacts.Companies.detail'), "sortable": false, "tooltip": "(contacts.RolesByCompany.company) The company where this person has a role.", "width": Lino.chars2width(21) } ];
    Lino.contacts.RolesByCompany.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.contacts.RolesByCompany.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/RolesByCompany", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.RolesByCompany.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/RolesByCompany", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.RolesByCompany.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/RolesByCompany", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.RolesByCompany.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/RolesByCompany", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.RolesByCompany.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/RolesByCompany", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.RolesByCompany.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/RolesByCompany", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.RolesByCompany.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.contacts.RolesByCompany.GridPanel(p);
});

// js_render_GridPanel_class contacts.RolesByPerson
Lino.contacts.RolesByPerson.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/contacts/RolesByPerson",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/contacts/RolesByPerson','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/contacts/RolesByPerson','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "Contact for",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 12,
  ls_store_fields : [ { "name": "company" }, 'companyHidden', { "name": "type" }, 'typeHidden', { "name": "id", "type": "int" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "person" }, 'personHidden', { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 4,
  ls_grid_configs : [  ],
  content_type : 7,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    var ww = this.containing_window;
    var company263 = new Lino.RemoteComboFieldElement({ "allowBlank": false, "emptyText": "Select a Organization...", "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/contacts/RolesByPerson/company" }) }) });
    var type264 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Function...", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/contacts/RolesByPerson/type" }) }) });
    var id265 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var mobile_item_disp266 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp267 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp268 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp269 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var person270 = new Lino.RemoteComboFieldElement({ "allowBlank": false, "emptyText": "Select a Person...", "hidden": true, "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/contacts/RolesByPerson/person" }) }) });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "company", "editable": true, "editor": company263, "filter": { "type": "string" }, "header": "Organization", "renderer": Lino.fk_renderer('companyHidden','Lino.contacts.Companies.detail'), "sortable": false, "tooltip": "(contacts.RolesByPerson.company) The company where this person has a role.", "width": Lino.chars2width(21) }, { "colIndex": 1, "dataIndex": "type", "editable": true, "editor": type264, "filter": { "type": "string" }, "header": "Contact Role", "sortable": false, "tooltip": "(contacts.RolesByPerson.type) The role of this person in this company.", "width": Lino.chars2width(21) }, { "align": "right", "colIndex": 2, "dataIndex": "id", "editable": true, "editor": id265, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(contacts.RolesByPerson.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 3, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(contacts.RolesByPerson.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 4, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(contacts.RolesByPerson.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 5, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(contacts.RolesByPerson.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 6, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(contacts.RolesByPerson.workflow_buttons) ", "width": Lino.chars2width(31) }, { "colIndex": 7, "dataIndex": "person", "editable": true, "editor": person270, "filter": { "type": "string" }, "header": "Person", "hidden": true, "renderer": Lino.fk_renderer('personHidden','Lino.contacts.Persons.detail'), "sortable": false, "tooltip": "(contacts.RolesByPerson.person) The person having this role in this company.", "width": Lino.chars2width(21) } ];
    Lino.contacts.RolesByPerson.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.contacts.RolesByPerson.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/RolesByPerson", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.RolesByPerson.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/RolesByPerson", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.RolesByPerson.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/RolesByPerson", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.RolesByPerson.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/RolesByPerson", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.RolesByPerson.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/RolesByPerson", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.RolesByPerson.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/RolesByPerson", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.RolesByPerson.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.contacts.RolesByPerson.GridPanel(p);
});

// js_render_GridPanel_class contacts.CompaniesByCompany
Lino.contacts.CompaniesByCompany.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/contacts/CompaniesByCompany",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/contacts/CompaniesByCompany','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/contacts/CompaniesByCompany','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "itemId": "duplicate", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Duplicate the selected row.") }, "menu_item_text": "\u2687", "overflowText": "\u2687", "panel_btn_handler": Lino.row_action_handler('duplicate','GET',null), "text": " <font size=\"4\">\u2687</font>" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "iconCls": "x-tbar-arrow_join", "itemId": "merge_row", "menu_item_text": "Merge", "overflowText": "Merge", "panel_btn_handler": Lino.param_action_handler(Lino.contacts.Companies.merge_row), "tooltip": "Merge this object into another object of same class." } ],
  cell_edit : true,
  title : "Child organisations",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 38,
  ls_store_fields : [ { "name": "name_column" }, { "name": "email" }, { "name": "id", "type": "int" }, { "name": "language" }, 'languageHidden', { "name": "url" }, { "name": "phone" }, { "name": "gsm" }, { "name": "fax" }, { "name": "country" }, 'countryHidden', { "name": "city" }, 'cityHidden', { "name": "zip_code" }, { "name": "region" }, 'regionHidden', { "name": "addr1" }, { "name": "street_prefix" }, { "name": "street" }, { "name": "street_no" }, { "name": "street_box" }, { "name": "addr2" }, { "name": "prefix" }, { "name": "name" }, { "name": "remarks" }, { "name": "type" }, 'typeHidden', { "name": "private", "type": "boolean" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "mti_navigator" }, { "name": "address_column" }, { "name": "children_summary" }, { "name": "parent" }, 'parentHidden', { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 2,
  ls_grid_configs : [  ],
  content_type : 8,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.contacts.CompaniesByCompany.detail;
    this.ls_insert_handler = Lino.contacts.CompaniesByCompany.insert;
    var ww = this.containing_window;
    var name_column_disp983 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    var email984 = new Ext.form.TextField({ "maxLength": 254, "selectOnFocus": true });
    var id985 = new Ext.form.NumberField({ "selectOnFocus": true });
    var language986 = new Lino.ChoicesFieldElement({ "hidden": true, "selectOnFocus": true, "store": [ [ "en-us", "American English" ] ] });
    var url987 = new Lino.URLField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var phone988 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var gsm989 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var fax990 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var country991 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Country...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/contacts/CompaniesByCompany/country" }) }) });
    var city992 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Place...", "forceSelection": false, "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/contacts/CompaniesByCompany/city" }) }) });
    var zip_code993 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(10), "hidden": true, "maxLength": 10, "selectOnFocus": true });
    var region994 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Place...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/contacts/CompaniesByCompany/region" }) }) });
    var addr1995 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var street_prefix996 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var street997 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var street_no998 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(10), "hidden": true, "maxLength": 10, "selectOnFocus": true });
    var street_box999 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(10), "hidden": true, "maxLength": 10, "selectOnFocus": true });
    var addr21000 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var prefix1001 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var name1002 = new Ext.form.TextField({ "allowBlank": false, "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var remarks1003 = new Lino.RichTextPanel({ "containing_panel": this, "hidden": true, "selectOnFocus": true, "title": "About me" });
    var type1004 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Organization type...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/contacts/CompaniesByCompany/type" }) }) });
    var private1005 = new Ext.form.Checkbox({ "checked": false, "hidden": true, "selectOnFocus": true });
    var mobile_item_disp1006 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp1007 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp1008 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp1009 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var mti_navigator_disp1010 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var address_column_disp1011 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var children_summary_disp1012 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var parent1013 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Organization...", "hidden": true, "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/contacts/CompaniesByCompany/parent" }) }) });
    this.before_row_edit = function(record) {
      city992.setContextValue('country', record ? record.data['countryHidden'] : undefined);
      city992.setContextValue('region', record ? record.data['regionHidden'] : undefined);
      region994.setContextValue('country', record ? record.data['countryHidden'] : undefined);
      remarks1003.refresh();
    };
    this.onRender = function(ct, position) {
      country991.on('change',Lino.chooser_handler(city992,'country'));
      region994.on('change',Lino.chooser_handler(city992,'region'));
      country991.on('change',Lino.chooser_handler(region994,'country'));
      Lino.contacts.CompaniesByCompany.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "name_column", "editable": false, "header": "Name", "sortable": false, "tooltip": "(contacts.CompaniesByCompany.name_column) ", "width": Lino.chars2width(31) }, { "colIndex": 1, "dataIndex": "email", "editable": true, "editor": email984, "filter": { "type": "string" }, "header": "e-mail address", "sortable": true, "tooltip": "(contacts.CompaniesByCompany.email) The primary email address.", "width": Lino.chars2width(22) }, { "align": "right", "colIndex": 2, "dataIndex": "id", "editable": true, "editor": id985, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "sortable": true, "tooltip": "(contacts.CompaniesByCompany.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 3, "dataIndex": "language", "editable": true, "editor": language986, "filter": { "type": "string" }, "header": "Language", "hidden": true, "sortable": false, "tooltip": "(contacts.CompaniesByCompany.language) The language to use when communicating with this partner.", "width": Lino.chars2width(21) }, { "colIndex": 4, "dataIndex": "url", "editable": true, "editor": url987, "filter": { "type": "string" }, "header": "URL", "hidden": true, "sortable": true, "tooltip": "(contacts.CompaniesByCompany.url) ", "width": Lino.chars2width(22) }, { "colIndex": 5, "dataIndex": "phone", "editable": true, "editor": phone988, "filter": { "type": "string" }, "header": "Phone", "hidden": true, "sortable": true, "tooltip": "(contacts.CompaniesByCompany.phone) The primary phone number.  Note that Lino does not ignore\nformatting characters in phone numbers when searching.  For\nexample, if you enter \"087/12.34.56\" as a phone number, then a\nsearch for phone number containing \"1234\" will not find it.", "width": Lino.chars2width(22) }, { "colIndex": 6, "dataIndex": "gsm", "editable": true, "editor": gsm989, "filter": { "type": "string" }, "header": "GSM", "hidden": true, "sortable": true, "tooltip": "(contacts.CompaniesByCompany.gsm) The primary mobile phone number.", "width": Lino.chars2width(22) }, { "colIndex": 7, "dataIndex": "fax", "editable": true, "editor": fax990, "filter": { "type": "string" }, "header": "Fax", "hidden": true, "sortable": true, "tooltip": "(contacts.CompaniesByCompany.fax) ", "width": Lino.chars2width(22) }, { "colIndex": 8, "dataIndex": "country", "editable": true, "editor": country991, "filter": { "type": "string" }, "header": "Country", "hidden": true, "renderer": Lino.fk_renderer('countryHidden','Lino.countries.Countries.detail'), "sortable": false, "tooltip": "(contacts.CompaniesByCompany.country) ", "width": Lino.chars2width(21) }, { "colIndex": 9, "dataIndex": "city", "editable": true, "editor": city992, "filter": { "type": "string" }, "header": "City", "hidden": true, "renderer": Lino.fk_renderer('cityHidden','Lino.countries.Places.detail'), "sortable": false, "tooltip": "(contacts.CompaniesByCompany.city) A pointer to the Place which is used as city.", "width": Lino.chars2width(21) }, { "colIndex": 10, "dataIndex": "zip_code", "editable": true, "editor": zip_code993, "filter": { "type": "string" }, "header": "Zip code", "hidden": true, "sortable": true, "tooltip": "(contacts.CompaniesByCompany.zip_code) ", "width": Lino.chars2width(12) }, { "colIndex": 11, "dataIndex": "region", "editable": true, "editor": region994, "filter": { "type": "string" }, "header": "County", "hidden": true, "renderer": Lino.fk_renderer('regionHidden','Lino.countries.Places.detail'), "sortable": false, "tooltip": "(contacts.CompaniesByCompany.region) ", "width": Lino.chars2width(21) }, { "colIndex": 12, "dataIndex": "addr1", "editable": true, "editor": addr1995, "filter": { "type": "string" }, "header": "Address line before street", "hidden": true, "sortable": true, "tooltip": "(contacts.CompaniesByCompany.addr1) Address line before street", "width": Lino.chars2width(22) }, { "colIndex": 13, "dataIndex": "street_prefix", "editable": true, "editor": street_prefix996, "filter": { "type": "string" }, "header": "Street prefix", "hidden": true, "sortable": true, "tooltip": "(contacts.CompaniesByCompany.street_prefix) Text to print before name of street, but to ignore for sorting.", "width": Lino.chars2width(22) }, { "colIndex": 14, "dataIndex": "street", "editable": true, "editor": street997, "filter": { "type": "string" }, "header": "Street", "hidden": true, "sortable": true, "tooltip": "(contacts.CompaniesByCompany.street) Name of street, without house number.", "width": Lino.chars2width(22) }, { "colIndex": 15, "dataIndex": "street_no", "editable": true, "editor": street_no998, "filter": { "type": "string" }, "header": "No.", "hidden": true, "sortable": true, "tooltip": "(contacts.CompaniesByCompany.street_no) House number.", "width": Lino.chars2width(12) }, { "colIndex": 16, "dataIndex": "street_box", "editable": true, "editor": street_box999, "filter": { "type": "string" }, "header": "Box", "hidden": true, "sortable": true, "tooltip": "(contacts.CompaniesByCompany.street_box) Text to print after street nuber on the same line.", "width": Lino.chars2width(12) }, { "colIndex": 17, "dataIndex": "addr2", "editable": true, "editor": addr21000, "filter": { "type": "string" }, "header": "Address line after street", "hidden": true, "sortable": true, "tooltip": "(contacts.CompaniesByCompany.addr2) Address line to print below street line.", "width": Lino.chars2width(22) }, { "colIndex": 18, "dataIndex": "prefix", "editable": true, "editor": prefix1001, "filter": { "type": "string" }, "header": "Name prefix", "hidden": true, "sortable": true, "tooltip": "(contacts.CompaniesByCompany.prefix) An optional name prefix. For organisations this is inserted\nbefore the name, for persons this is inserted between first\nname and last name (see\nlino.mixins.human.Human.get_last_name_prefix()).", "width": Lino.chars2width(22) }, { "colIndex": 19, "dataIndex": "name", "editable": true, "editor": name1002, "filter": { "type": "string" }, "header": "Name", "hidden": true, "sortable": true, "tooltip": "(contacts.CompaniesByCompany.name) The full name of this partner. Used for alphabetic sorting.\nSubclasses may hide this field and fill it automatically,\ne.g. saving a Person will automatically set her\nname field to \"last_name, first_name\".", "width": Lino.chars2width(22) }, { "colIndex": 20, "dataIndex": "remarks", "editable": true, "editor": remarks1003, "filter": { "type": "string" }, "header": "About me", "hidden": true, "sortable": false, "tooltip": "(contacts.CompaniesByCompany.remarks) ", "width": Lino.chars2width(61) }, { "colIndex": 21, "dataIndex": "type", "editable": true, "editor": type1004, "filter": { "type": "string" }, "header": "Organization type", "hidden": true, "sortable": false, "tooltip": "(contacts.CompaniesByCompany.type) Pointer to the CompanyType.", "width": Lino.chars2width(21) }, { "colIndex": 22, "dataIndex": "private", "editable": true, "filter": { "type": "boolean" }, "header": "Private", "hidden": true, "sortable": false, "tooltip": "(contacts.CompaniesByCompany.private) ", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 23, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(contacts.CompaniesByCompany.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 24, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(contacts.CompaniesByCompany.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 25, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(contacts.CompaniesByCompany.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 26, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(contacts.CompaniesByCompany.workflow_buttons) ", "width": Lino.chars2width(31) }, { "colIndex": 27, "dataIndex": "mti_navigator", "editable": false, "header": "See as ", "hidden": true, "sortable": false, "tooltip": "(contacts.CompaniesByCompany.mti_navigator) ", "width": Lino.chars2width(31) }, { "colIndex": 28, "dataIndex": "address_column", "editable": false, "header": "Address", "hidden": true, "sortable": false, "tooltip": "(contacts.CompaniesByCompany.address_column) ", "width": Lino.chars2width(31) }, { "colIndex": 29, "dataIndex": "children_summary", "editable": false, "header": "Children", "hidden": true, "sortable": false, "tooltip": "(contacts.CompaniesByCompany.children_summary) ", "width": Lino.chars2width(31) }, { "colIndex": 30, "dataIndex": "parent", "editable": true, "editor": parent1013, "filter": { "type": "string" }, "header": "Parent", "hidden": true, "renderer": Lino.fk_renderer('parentHidden','Lino.contacts.Companies.detail'), "sortable": false, "tooltip": "(contacts.CompaniesByCompany.parent) ", "width": Lino.chars2width(21) } ];
    Lino.contacts.CompaniesByCompany.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.contacts.CompaniesByCompany.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/CompaniesByCompany", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.CompaniesByCompany.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/CompaniesByCompany", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.CompaniesByCompany.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/CompaniesByCompany", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.contacts.CompaniesByCompany.insertPanel = Ext.extend(Lino.contacts.Companies.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/contacts/CompaniesByCompany",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.contacts.CompaniesByCompany.detail;
    this.ls_insert_handler = Lino.contacts.CompaniesByCompany.insert;
    Lino.contacts.CompaniesByCompany.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.contacts.CompaniesByCompany.insert = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.contacts.CompaniesByCompany.insertPanel(p);
});
Lino.contacts.CompaniesByCompany.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/CompaniesByCompany", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.CompaniesByCompany.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/CompaniesByCompany", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.CompaniesByCompany.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/CompaniesByCompany", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.CompaniesByCompany.duplicate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/CompaniesByCompany", "GET", pk, "duplicate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.contacts.CompaniesByCompany.detailPanel = Ext.extend(Lino.contacts.Companies.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "itemId": "duplicate", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Duplicate the selected row.") }, "menu_item_text": "\u2687", "overflowText": "\u2687", "panel_btn_handler": Lino.row_action_handler('duplicate','GET',null), "text": " <font size=\"4\">\u2687</font>" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "iconCls": "x-tbar-arrow_join", "itemId": "merge_row", "menu_item_text": "Merge", "overflowText": "Merge", "panel_btn_handler": Lino.param_action_handler(Lino.contacts.Companies.merge_row), "tooltip": "Merge this object into another object of same class." } ],
  ls_url: "/contacts/CompaniesByCompany",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.contacts.CompaniesByCompany.detail;
    this.ls_insert_handler = Lino.contacts.CompaniesByCompany.insert;
    Lino.contacts.CompaniesByCompany.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.contacts.CompaniesByCompany.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.contacts.CompaniesByCompany.detailPanel(p);
});
Lino.contacts.CompaniesByCompany.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/CompaniesByCompany", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.CompaniesByCompany.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.contacts.Partners.ParamsPanel({});
  return new Lino.contacts.CompaniesByCompany.GridPanel(p);
});
Lino.contacts.CompaniesByCompany.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/CompaniesByCompany", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.CompaniesByCompany.ins_company = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/CompaniesByCompany", "GET", pk, "ins_company", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.CompaniesByCompany.ins_user = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/CompaniesByCompany", "GET", pk, "ins_user", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.CompaniesByCompany.del_partner = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/CompaniesByCompany", "GET", pk, "del_partner", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.CompaniesByCompany.del_company = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/CompaniesByCompany", "GET", pk, "del_company", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.CompaniesByCompany.ins_partner = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/CompaniesByCompany", "GET", pk, "ins_partner", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.CompaniesByCompany.del_person = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/CompaniesByCompany", "GET", pk, "del_person", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.CompaniesByCompany.ins_person = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/CompaniesByCompany", "GET", pk, "ins_person", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.CompaniesByCompany.ins_household = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/CompaniesByCompany", "GET", pk, "ins_household", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.CompaniesByCompany.del_user = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/CompaniesByCompany", "GET", pk, "del_user", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.CompaniesByCompany.del_household = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/CompaniesByCompany", "GET", pk, "del_household", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class plausibility.ProblemsByChecker
Lino.plausibility.ProblemsByChecker.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true },
  ls_url : "/plausibility/ProblemsByChecker",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/plausibility/ProblemsByChecker','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/plausibility/ProblemsByChecker','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "update_problem", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('update_problem','GET',null), "text": "Check plausibility", "tooltip": "Check plausibility" }, { "auto_save": true, "itemId": "fix_problem", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problem','GET',null), "text": "Fix plausibility problems", "tooltip": "Fix plausibility problems" } ], "menu_item_text": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('update_problem','GET',null), "text": null, "xtype": "splitbutton" } ],
  cell_edit : false,
  title : "Plausibility problems",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disable_editing : true,
  disabled_actions_index : 15,
  ls_store_fields : [ { "name": "user" }, 'userHidden', { "name": "owner" }, { "name": "message" }, { "name": "id", "type": "int" }, { "name": "owner_type" }, 'owner_typeHidden', { "name": "owner_id" }, 'owner_idHidden', { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "checker" }, 'checkerHidden', { "name": "disabled_actions" } ],
  pk_index : 4,
  ls_grid_configs : [  ],
  content_type : 14,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.plausibility.ProblemsByChecker.detail;
    var ww = this.containing_window;
    var user701 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a User...", "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/plausibility/ProblemsByChecker/user" }) }) });
    var owner_disp702 = new Ext.form.DisplayField({ "disabled": true });
    var message703 = new Ext.form.TextField({ "allowBlank": false, "maxLength": 250, "selectOnFocus": true });
    var id704 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var owner_type705 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a content type...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/plausibility/ProblemsByChecker/owner_type" }) }) });
    var owner_id706 = new Lino.RemoteComboFieldElement({ "hidden": true, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/plausibility/ProblemsByChecker/owner_id" }) }) });
    var mobile_item_disp707 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp708 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp709 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp710 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var checker711 = new Lino.ChoicesFieldElement({ "allowBlank": false, "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": Lino.plausibility.Checkers });
    this.before_row_edit = function(record) {
    };
    this.onRender = function(ct, position) {
      owner_type705.on('change',Lino.chooser_handler(owner_id706,'owner_type'));
      Lino.plausibility.ProblemsByChecker.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "user", "editable": true, "editor": user701, "filter": { "type": "string" }, "header": "Responsible", "renderer": Lino.fk_renderer('userHidden','Lino.users.Users.detail'), "sortable": false, "tooltip": "(plausibility.ProblemsByChecker.user) The user reponsible\nfor fixing this problem.", "width": Lino.chars2width(11) }, { "colIndex": 1, "dataIndex": "owner", "editable": false, "header": "Controlled by", "sortable": false, "tooltip": "(plausibility.ProblemsByChecker.owner) ", "width": Lino.chars2width(11) }, { "colIndex": 2, "dataIndex": "message", "editable": true, "editor": message703, "filter": { "type": "string" }, "header": "Message", "sortable": true, "tooltip": "(plausibility.ProblemsByChecker.message) The message text. This is a concatenation of all messages that\nwere yeld by the checker.", "width": Lino.chars2width(51) }, { "align": "right", "colIndex": 3, "dataIndex": "id", "editable": true, "editor": id704, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(plausibility.ProblemsByChecker.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 4, "dataIndex": "owner_type", "editable": true, "editor": owner_type705, "filter": { "type": "string" }, "header": "Controlled by (type)", "hidden": true, "renderer": Lino.fk_renderer('owner_typeHidden','Lino.gfks.ContentTypes.detail'), "sortable": false, "tooltip": "(plausibility.ProblemsByChecker.owner_type) ", "width": Lino.chars2width(21) }, { "colIndex": 5, "dataIndex": "owner_id", "editable": true, "editor": owner_id706, "filter": { "type": "string" }, "header": "Controlled by (object)", "hidden": true, "sortable": false, "tooltip": "(plausibility.ProblemsByChecker.owner_id) ", "width": Lino.chars2width(11) }, { "colIndex": 6, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(plausibility.ProblemsByChecker.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 7, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(plausibility.ProblemsByChecker.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 8, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(plausibility.ProblemsByChecker.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 9, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(plausibility.ProblemsByChecker.workflow_buttons) ", "width": Lino.chars2width(31) }, { "colIndex": 10, "dataIndex": "checker", "editable": true, "editor": checker711, "filter": { "type": "string" }, "header": "Plausibility checker", "hidden": true, "sortable": false, "tooltip": "(plausibility.ProblemsByChecker.checker) The Checker which reported\nthis problem.", "width": Lino.chars2width(11) } ];
    Lino.plausibility.ProblemsByChecker.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.plausibility.ProblemsByChecker.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/plausibility/ProblemsByChecker", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.plausibility.ProblemsByChecker.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/plausibility/ProblemsByChecker", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.plausibility.ProblemsByChecker.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/plausibility/ProblemsByChecker", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.plausibility.ProblemsByChecker.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/plausibility/ProblemsByChecker", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.plausibility.ProblemsByChecker.detailPanel = Ext.extend(Lino.plausibility.Problems.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "update_problem", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('update_problem','GET',null), "text": "Check plausibility", "tooltip": "Check plausibility" }, { "auto_save": true, "itemId": "fix_problem", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problem','GET',null), "text": "Fix plausibility problems", "tooltip": "Fix plausibility problems" } ], "menu_item_text": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('update_problem','GET',null), "text": null, "xtype": "splitbutton" } ],
  ls_url: "/plausibility/ProblemsByChecker",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.plausibility.ProblemsByChecker.detail;
    Lino.plausibility.ProblemsByChecker.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.plausibility.ProblemsByChecker.detail = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(70) }, function(){
  var p = { "is_main_window": true };
  return new Lino.plausibility.ProblemsByChecker.detailPanel(p);
});
Lino.plausibility.ProblemsByChecker.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.plausibility.Problems.ParamsPanel({});
  return new Lino.plausibility.ProblemsByChecker.GridPanel(p);
});
Lino.plausibility.ProblemsByChecker.update_problem = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/plausibility/ProblemsByChecker", "GET", pk, "update_problem", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.plausibility.ProblemsByChecker.fix_problem = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/plausibility/ProblemsByChecker", "GET", pk, "fix_problem", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class cal.SubscriptionsByUser
Lino.cal.SubscriptionsByUser.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/cal/SubscriptionsByUser",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/cal/SubscriptionsByUser','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/cal/SubscriptionsByUser','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "Subscriptions",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 11,
  ls_store_fields : [ { "name": "id", "type": "int" }, { "name": "calendar" }, 'calendarHidden', { "name": "is_hidden", "type": "boolean" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "user" }, 'userHidden', { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 0,
  ls_grid_configs : [  ],
  content_type : 26,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    var ww = this.containing_window;
    var id3317 = new Ext.form.NumberField({ "selectOnFocus": true });
    var calendar3318 = new Lino.RemoteComboFieldElement({ "allowBlank": false, "emptyText": "Select a Calendar...", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/SubscriptionsByUser/calendar" }) }) });
    var is_hidden3319 = new Ext.form.Checkbox({ "checked": false, "selectOnFocus": true });
    var mobile_item_disp3320 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp3321 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp3322 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp3323 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var user3324 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a User...", "hidden": true, "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/SubscriptionsByUser/user" }) }) });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "align": "right", "colIndex": 0, "dataIndex": "id", "editable": true, "editor": id3317, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "sortable": true, "tooltip": "(cal.SubscriptionsByUser.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 1, "dataIndex": "calendar", "editable": true, "editor": calendar3318, "filter": { "type": "string" }, "header": "Calendar", "renderer": Lino.fk_renderer('calendarHidden','Lino.cal.Calendars.detail'), "sortable": false, "tooltip": "(cal.SubscriptionsByUser.calendar) The calendar you want to subscribe to.", "width": Lino.chars2width(21) }, { "colIndex": 2, "dataIndex": "is_hidden", "editable": true, "filter": { "type": "boolean" }, "header": "hidden", "sortable": false, "tooltip": "(cal.SubscriptionsByUser.is_hidden) Whether this subscription should \"\n        \"initially be displayed as a hidden calendar.", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 3, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.SubscriptionsByUser.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 4, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.SubscriptionsByUser.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 5, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(cal.SubscriptionsByUser.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 6, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(cal.SubscriptionsByUser.workflow_buttons) ", "width": Lino.chars2width(31) }, { "colIndex": 7, "dataIndex": "user", "editable": true, "editor": user3324, "filter": { "type": "string" }, "header": "Author", "hidden": true, "renderer": Lino.fk_renderer('userHidden','Lino.users.Users.detail'), "sortable": false, "tooltip": "(cal.SubscriptionsByUser.user) ", "width": Lino.chars2width(21) } ];
    Lino.cal.SubscriptionsByUser.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.SubscriptionsByUser.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/SubscriptionsByUser", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.SubscriptionsByUser.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/SubscriptionsByUser", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.SubscriptionsByUser.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/SubscriptionsByUser", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.SubscriptionsByUser.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/SubscriptionsByUser", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.SubscriptionsByUser.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/SubscriptionsByUser", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.SubscriptionsByUser.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/SubscriptionsByUser", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.SubscriptionsByUser.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.cal.Subscriptions.ParamsPanel({});
  return new Lino.cal.SubscriptionsByUser.GridPanel(p);
});

// js_render_GridPanel_class cal.SubscriptionsByCalendar
Lino.cal.SubscriptionsByCalendar.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/cal/SubscriptionsByCalendar",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/cal/SubscriptionsByCalendar','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/cal/SubscriptionsByCalendar','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "Subscriptions",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 11,
  ls_store_fields : [ { "name": "id", "type": "int" }, { "name": "user" }, 'userHidden', { "name": "is_hidden", "type": "boolean" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "calendar" }, 'calendarHidden', { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 0,
  ls_grid_configs : [  ],
  content_type : 26,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    var ww = this.containing_window;
    var id1152 = new Ext.form.NumberField({ "selectOnFocus": true });
    var user1153 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a User...", "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/SubscriptionsByCalendar/user" }) }) });
    var is_hidden1154 = new Ext.form.Checkbox({ "checked": false, "selectOnFocus": true });
    var mobile_item_disp1155 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp1156 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp1157 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp1158 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var calendar1159 = new Lino.RemoteComboFieldElement({ "allowBlank": false, "emptyText": "Select a Calendar...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/SubscriptionsByCalendar/calendar" }) }) });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "align": "right", "colIndex": 0, "dataIndex": "id", "editable": true, "editor": id1152, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "sortable": true, "tooltip": "(cal.SubscriptionsByCalendar.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 1, "dataIndex": "user", "editable": true, "editor": user1153, "filter": { "type": "string" }, "header": "Author", "renderer": Lino.fk_renderer('userHidden','Lino.users.Users.detail'), "sortable": false, "tooltip": "(cal.SubscriptionsByCalendar.user) ", "width": Lino.chars2width(21) }, { "colIndex": 2, "dataIndex": "is_hidden", "editable": true, "filter": { "type": "boolean" }, "header": "hidden", "sortable": false, "tooltip": "(cal.SubscriptionsByCalendar.is_hidden) Whether this subscription should \"\n        \"initially be displayed as a hidden calendar.", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 3, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.SubscriptionsByCalendar.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 4, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.SubscriptionsByCalendar.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 5, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(cal.SubscriptionsByCalendar.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 6, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(cal.SubscriptionsByCalendar.workflow_buttons) ", "width": Lino.chars2width(31) }, { "colIndex": 7, "dataIndex": "calendar", "editable": true, "editor": calendar1159, "filter": { "type": "string" }, "header": "Calendar", "hidden": true, "renderer": Lino.fk_renderer('calendarHidden','Lino.cal.Calendars.detail'), "sortable": false, "tooltip": "(cal.SubscriptionsByCalendar.calendar) The calendar you want to subscribe to.", "width": Lino.chars2width(21) } ];
    Lino.cal.SubscriptionsByCalendar.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.SubscriptionsByCalendar.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/SubscriptionsByCalendar", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.SubscriptionsByCalendar.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/SubscriptionsByCalendar", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.SubscriptionsByCalendar.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/SubscriptionsByCalendar", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.SubscriptionsByCalendar.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/SubscriptionsByCalendar", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.SubscriptionsByCalendar.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/SubscriptionsByCalendar", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.SubscriptionsByCalendar.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/SubscriptionsByCalendar", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.SubscriptionsByCalendar.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.cal.Subscriptions.ParamsPanel({});
  return new Lino.cal.SubscriptionsByCalendar.GridPanel(p);
});

// js_render_GridPanel_class cal.TasksByUser
Lino.cal.TasksByUser.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/cal/TasksByUser",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/cal/TasksByUser','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/cal/TasksByUser','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "Tasks",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 29,
  ls_store_fields : [ { "dateFormat": "d.m.Y", "name": "start_date", "type": "date" }, { "name": "summary" }, { "name": "workflow_buttons" }, { "name": "id", "type": "int" }, { "name": "modified" }, { "name": "created" }, { "name": "start_time" }, { "name": "owner_type" }, 'owner_typeHidden', { "name": "owner_id" }, 'owner_idHidden', { "name": "description" }, { "name": "access_class" }, 'access_classHidden', { "name": "sequence", "type": "int", "useNull": true }, { "name": "auto_type", "type": "int", "useNull": true }, { "dateFormat": "d.m.Y", "name": "due_date", "type": "date" }, { "name": "due_time" }, { "name": "percent", "type": "int", "useNull": true }, { "name": "state" }, 'stateHidden', { "name": "owner" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "created_natural" }, { "name": "user" }, 'userHidden', { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 3,
  ls_grid_configs : [  ],
  content_type : 15,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.TasksByUser.detail;
    this.ls_insert_handler = Lino.cal.TasksByUser.insert;
    var ww = this.containing_window;
    var start_date3326 = new Lino.DateField({ "selectOnFocus": true });
    var summary3327 = new Ext.form.TextField({ "maxLength": 200, "selectOnFocus": true });
    var workflow_buttons_disp3328 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    var id3329 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var modified3330 = new Ext.form.DisplayField({ "disabled": true, "hidden": true, "value": "<br>" });
    var created3331 = new Ext.form.DisplayField({ "disabled": true, "hidden": true, "value": "<br>" });
    var start_time3332 = new Lino.TimeField({ "hidden": true, "selectOnFocus": true });
    var owner_type3333 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a content type...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/TasksByUser/owner_type" }) }) });
    var owner_id3334 = new Lino.RemoteComboFieldElement({ "hidden": true, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/TasksByUser/owner_id" }) }) });
    var description3335 = new Ext.form.TextArea({ "growMax": 2000, "hidden": true, "selectOnFocus": true });
    var access_class3336 = new Lino.ChoicesFieldElement({ "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": [['','<br>']].concat(Lino.cal.AccessClasses) });
    var sequence3337 = new Ext.form.NumberField({ "allowBlank": false, "hidden": true, "selectOnFocus": true, "value": 0 });
    var auto_type3338 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var due_date3339 = new Lino.DateField({ "hidden": true, "selectOnFocus": true });
    var due_time3340 = new Lino.TimeField({ "hidden": true, "selectOnFocus": true });
    var percent3341 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var state3342 = new Lino.ChoicesFieldElement({ "allowBlank": false, "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": Lino.cal.TaskStates });
    var owner_disp3343 = new Ext.form.DisplayField({ "disabled": true, "hidden": true });
    var mobile_item_disp3344 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp3345 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp3346 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var created_natural_disp3347 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var user3348 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a User...", "hidden": true, "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/TasksByUser/user" }) }) });
    this.before_row_edit = function(record) {
      owner_id3334.setContextValue('owner_type', record ? record.data['owner_typeHidden'] : undefined);
    };
    this.onRender = function(ct, position) {
      owner_type3333.on('change',Lino.chooser_handler(owner_id3334,'owner_type'));
      Lino.cal.TasksByUser.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "start_date", "editable": true, "editor": start_date3326, "filter": { "dateFormat": "d.m.Y", "type": "date" }, "format": "d.m.Y", "header": "Start date", "sortable": true, "tooltip": "(cal.TasksByUser.start_date) ", "width": Lino.chars2width(14), "xtype": "datecolumn" }, { "colIndex": 1, "dataIndex": "summary", "editable": true, "editor": summary3327, "filter": { "type": "string" }, "header": "Short description", "sortable": true, "tooltip": "(cal.TasksByUser.summary) ", "width": Lino.chars2width(22) }, { "colIndex": 2, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "sortable": false, "tooltip": "(cal.TasksByUser.workflow_buttons) ", "width": Lino.chars2width(31) }, { "align": "right", "colIndex": 3, "dataIndex": "id", "editable": true, "editor": id3329, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(cal.TasksByUser.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 4, "dataIndex": "modified", "editable": false, "header": "Modified", "hidden": true, "sortable": true, "tooltip": "(cal.TasksByUser.modified) ", "width": Lino.chars2width(17) }, { "colIndex": 5, "dataIndex": "created", "editable": false, "header": "Created", "hidden": true, "sortable": true, "tooltip": "(cal.TasksByUser.created) The timestame when this object was created.", "width": Lino.chars2width(17) }, { "colIndex": 6, "dataIndex": "start_time", "editable": true, "editor": start_time3332, "header": "Start time", "hidden": true, "sortable": true, "tooltip": "(cal.TasksByUser.start_time) ", "width": Lino.chars2width(9) }, { "colIndex": 7, "dataIndex": "owner_type", "editable": true, "editor": owner_type3333, "filter": { "type": "string" }, "header": "Controlled by (type)", "hidden": true, "renderer": Lino.fk_renderer('owner_typeHidden','Lino.gfks.ContentTypes.detail'), "sortable": false, "tooltip": "(cal.TasksByUser.owner_type) ", "width": Lino.chars2width(21) }, { "colIndex": 8, "dataIndex": "owner_id", "editable": true, "editor": owner_id3334, "filter": { "type": "string" }, "header": "Controlled by (object)", "hidden": true, "sortable": false, "tooltip": "(cal.TasksByUser.owner_id) ", "width": Lino.chars2width(11) }, { "colIndex": 9, "dataIndex": "description", "editable": true, "editor": description3335, "filter": { "type": "string" }, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.TasksByUser.description) ", "width": Lino.chars2width(61) }, { "colIndex": 10, "dataIndex": "access_class", "editable": true, "editor": access_class3336, "filter": { "type": "string" }, "header": "Access Class", "hidden": true, "sortable": false, "tooltip": "(cal.TasksByUser.access_class) Whether this is private, public or between.", "width": Lino.chars2width(13) }, { "align": "right", "colIndex": 11, "dataIndex": "sequence", "editable": true, "editor": sequence3337, "filter": { "type": "numeric" }, "format": "0", "header": "Revision", "hidden": true, "sortable": true, "tooltip": "(cal.TasksByUser.sequence) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "align": "right", "colIndex": 12, "dataIndex": "auto_type", "editable": true, "editor": auto_type3338, "filter": { "type": "numeric" }, "format": "0", "header": "No.", "hidden": true, "sortable": true, "tooltip": "(cal.TasksByUser.auto_type) Contains the sequence number if this is an automatically\ngenerated component. Otherwise this field is empty.", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 13, "dataIndex": "due_date", "editable": true, "editor": due_date3339, "filter": { "dateFormat": "d.m.Y", "type": "date" }, "format": "d.m.Y", "header": "Due date", "hidden": true, "sortable": true, "tooltip": "(cal.TasksByUser.due_date) ", "width": Lino.chars2width(14), "xtype": "datecolumn" }, { "colIndex": 14, "dataIndex": "due_time", "editable": true, "editor": due_time3340, "header": "Due time", "hidden": true, "sortable": true, "tooltip": "(cal.TasksByUser.due_time) ", "width": Lino.chars2width(9) }, { "align": "right", "colIndex": 15, "dataIndex": "percent", "editable": true, "editor": percent3341, "filter": { "type": "numeric" }, "format": "0", "header": "Duration value", "hidden": true, "sortable": true, "tooltip": "(cal.TasksByUser.percent) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 16, "dataIndex": "state", "editable": true, "editor": state3342, "filter": { "type": "string" }, "header": "State", "hidden": true, "sortable": false, "tooltip": "(cal.TasksByUser.state) The state of this Task. one of TaskStates.", "width": Lino.chars2width(13) }, { "colIndex": 17, "dataIndex": "owner", "editable": false, "header": "Controlled by", "hidden": true, "sortable": false, "tooltip": "(cal.TasksByUser.owner) ", "width": Lino.chars2width(11) }, { "colIndex": 18, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.TasksByUser.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 19, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.TasksByUser.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 20, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(cal.TasksByUser.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 21, "dataIndex": "created_natural", "editable": false, "header": "Created", "hidden": true, "sortable": false, "tooltip": "(cal.TasksByUser.created_natural) ", "width": Lino.chars2width(31) }, { "colIndex": 22, "dataIndex": "user", "editable": true, "editor": user3348, "filter": { "type": "string" }, "header": "Author", "hidden": true, "renderer": Lino.fk_renderer('userHidden','Lino.users.Users.detail'), "sortable": false, "tooltip": "(cal.TasksByUser.user) ", "width": Lino.chars2width(21) } ];
    Lino.cal.TasksByUser.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.TasksByUser.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/TasksByUser", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.TasksByUser.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/TasksByUser", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.TasksByUser.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/TasksByUser", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.cal.TasksByUser.insertPanel = Ext.extend(Lino.cal.Tasks.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/cal/TasksByUser",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.TasksByUser.detail;
    this.ls_insert_handler = Lino.cal.TasksByUser.insert;
    Lino.cal.TasksByUser.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.TasksByUser.insert = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(50) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.cal.TasksByUser.insertPanel(p);
});
Lino.cal.TasksByUser.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/TasksByUser", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.TasksByUser.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/TasksByUser", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.TasksByUser.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/TasksByUser", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.cal.TasksByUser.detailPanel = Ext.extend(Lino.cal.Tasks.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  ls_url: "/cal/TasksByUser",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.TasksByUser.detail;
    this.ls_insert_handler = Lino.cal.TasksByUser.insert;
    Lino.cal.TasksByUser.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.TasksByUser.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.cal.TasksByUser.detailPanel(p);
});
Lino.cal.TasksByUser.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/TasksByUser", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.TasksByUser.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.cal.Tasks.ParamsPanel({});
  return new Lino.cal.TasksByUser.GridPanel(p);
});
Lino.cal.TasksByUser.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/TasksByUser", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.TasksByUser.wf1 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/TasksByUser", "GET", pk, "wf1", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.TasksByUser.wf2 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/TasksByUser", "GET", pk, "wf2", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.TasksByUser.wf3 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/TasksByUser", "GET", pk, "wf3", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.TasksByUser.wf4 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/TasksByUser", "GET", pk, "wf4", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class cal.GuestsByEvent
Lino.cal.GuestsByEvent.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/cal/GuestsByEvent",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/cal/GuestsByEvent','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/cal/GuestsByEvent','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "Presences",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 16,
  ls_store_fields : [ { "name": "partner" }, 'partnerHidden', { "name": "role" }, 'roleHidden', { "name": "remark" }, { "name": "workflow_buttons" }, { "name": "id", "type": "int" }, { "name": "state" }, 'stateHidden', { "name": "event_summary" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "event" }, 'eventHidden', { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 6,
  ls_grid_configs : [  ],
  content_type : 21,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.GuestsByEvent.detail;
    this.ls_insert_handler = Lino.cal.GuestsByEvent.insert;
    var ww = this.containing_window;
    var partner458 = new Lino.RemoteComboFieldElement({ "allowBlank": false, "emptyText": "Select a Person...", "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/GuestsByEvent/partner" }) }) });
    var role459 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Guest Role...", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/GuestsByEvent/role" }) }) });
    var remark460 = new Ext.form.TextField({ "maxLength": 200, "selectOnFocus": true });
    var workflow_buttons_disp461 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    var id462 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var state463 = new Lino.ChoicesFieldElement({ "allowBlank": false, "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": Lino.cal.GuestStates });
    var event_summary_disp464 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var mobile_item_disp465 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp466 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp467 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var event468 = new Lino.RemoteComboFieldElement({ "allowBlank": false, "emptyText": "Select a Calendar entry...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/GuestsByEvent/event" }) }) });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "partner", "editable": true, "editor": partner458, "filter": { "type": "string" }, "header": "Person", "renderer": Lino.fk_renderer('partnerHidden','Lino.contacts.Persons.detail'), "sortable": false, "tooltip": "(cal.GuestsByEvent.partner) The partner to which this presence applies.", "width": Lino.chars2width(21) }, { "colIndex": 1, "dataIndex": "role", "editable": true, "editor": role459, "filter": { "type": "string" }, "header": "Role", "renderer": Lino.fk_renderer('roleHidden','Lino.cal.GuestRoles.detail'), "sortable": false, "tooltip": "(cal.GuestsByEvent.role) The role of this partner in this presence.", "width": Lino.chars2width(21) }, { "colIndex": 2, "dataIndex": "remark", "editable": true, "editor": remark460, "filter": { "type": "string" }, "header": "Remark", "sortable": true, "tooltip": "(cal.GuestsByEvent.remark) ", "width": Lino.chars2width(22) }, { "colIndex": 3, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "sortable": false, "tooltip": "(cal.GuestsByEvent.workflow_buttons) ", "width": Lino.chars2width(31) }, { "align": "right", "colIndex": 4, "dataIndex": "id", "editable": true, "editor": id462, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(cal.GuestsByEvent.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 5, "dataIndex": "state", "editable": true, "editor": state463, "filter": { "type": "string" }, "header": "State", "hidden": true, "sortable": false, "tooltip": "(cal.GuestsByEvent.state) The state of this presence.", "width": Lino.chars2width(11) }, { "colIndex": 6, "dataIndex": "event_summary", "editable": false, "header": "Event", "hidden": true, "sortable": false, "tooltip": "(cal.GuestsByEvent.event_summary) ", "width": Lino.chars2width(31) }, { "colIndex": 7, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.GuestsByEvent.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 8, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.GuestsByEvent.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 9, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(cal.GuestsByEvent.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 10, "dataIndex": "event", "editable": true, "editor": event468, "filter": { "type": "string" }, "header": "Calendar entry", "hidden": true, "renderer": Lino.fk_renderer('eventHidden','Lino.cal.OneEvent.detail'), "sortable": false, "tooltip": "(cal.GuestsByEvent.event) The calendar event to which this presence applies.", "width": Lino.chars2width(21) } ];
    Lino.cal.GuestsByEvent.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.GuestsByEvent.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/GuestsByEvent", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.GuestsByEvent.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/GuestsByEvent", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.GuestsByEvent.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/GuestsByEvent", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.cal.GuestsByEvent.insertPanel = Ext.extend(Lino.cal.Guests.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/cal/GuestsByEvent",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.GuestsByEvent.detail;
    this.ls_insert_handler = Lino.cal.GuestsByEvent.insert;
    Lino.cal.GuestsByEvent.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.GuestsByEvent.insert = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.cal.GuestsByEvent.insertPanel(p);
});
Lino.cal.GuestsByEvent.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/GuestsByEvent", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.GuestsByEvent.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/GuestsByEvent", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.GuestsByEvent.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/GuestsByEvent", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.cal.GuestsByEvent.detailPanel = Ext.extend(Lino.cal.Guests.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  ls_url: "/cal/GuestsByEvent",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.GuestsByEvent.detail;
    this.ls_insert_handler = Lino.cal.GuestsByEvent.insert;
    Lino.cal.GuestsByEvent.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.GuestsByEvent.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.cal.GuestsByEvent.detailPanel(p);
});
Lino.cal.GuestsByEvent.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/GuestsByEvent", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.GuestsByEvent.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.cal.Guests.ParamsPanel({});
  return new Lino.cal.GuestsByEvent.GridPanel(p);
});
Lino.cal.GuestsByEvent.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/GuestsByEvent", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.GuestsByEvent.wf1 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/GuestsByEvent", "GET", pk, "wf1", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.GuestsByEvent.wf2 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/GuestsByEvent", "GET", pk, "wf2", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.GuestsByEvent.wf3 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/GuestsByEvent", "GET", pk, "wf3", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.GuestsByEvent.wf4 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/GuestsByEvent", "GET", pk, "wf4", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class cal.GuestsByRole
Lino.cal.GuestsByRole.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/cal/GuestsByRole",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/cal/GuestsByRole','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/cal/GuestsByRole','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "Presences",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 16,
  ls_store_fields : [ { "name": "partner" }, 'partnerHidden', { "name": "role" }, 'roleHidden', { "name": "workflow_buttons" }, { "name": "remark" }, { "name": "event" }, 'eventHidden', { "name": "id", "type": "int" }, { "name": "state" }, 'stateHidden', { "name": "event_summary" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 8,
  ls_grid_configs : [  ],
  content_type : 21,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.GuestsByRole.detail;
    this.ls_insert_handler = Lino.cal.GuestsByRole.insert;
    var ww = this.containing_window;
    var partner1113 = new Lino.RemoteComboFieldElement({ "allowBlank": false, "emptyText": "Select a Person...", "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/GuestsByRole/partner" }) }) });
    var role1114 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Guest Role...", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/GuestsByRole/role" }) }) });
    var workflow_buttons_disp1115 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    var remark1116 = new Ext.form.TextField({ "maxLength": 200, "selectOnFocus": true });
    var event1117 = new Lino.RemoteComboFieldElement({ "allowBlank": false, "emptyText": "Select a Calendar entry...", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/GuestsByRole/event" }) }) });
    var id1118 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var state1119 = new Lino.ChoicesFieldElement({ "allowBlank": false, "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": Lino.cal.GuestStates });
    var event_summary_disp1120 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var mobile_item_disp1121 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp1122 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp1123 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "partner", "editable": true, "editor": partner1113, "filter": { "type": "string" }, "header": "Person", "renderer": Lino.fk_renderer('partnerHidden','Lino.contacts.Persons.detail'), "sortable": false, "tooltip": "(cal.GuestsByRole.partner) The partner to which this presence applies.", "width": Lino.chars2width(21) }, { "colIndex": 1, "dataIndex": "role", "editable": true, "editor": role1114, "filter": { "type": "string" }, "header": "Role", "renderer": Lino.fk_renderer('roleHidden','Lino.cal.GuestRoles.detail'), "sortable": false, "tooltip": "(cal.GuestsByRole.role) The role of this partner in this presence.", "width": Lino.chars2width(21) }, { "colIndex": 2, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "sortable": false, "tooltip": "(cal.GuestsByRole.workflow_buttons) ", "width": Lino.chars2width(31) }, { "colIndex": 3, "dataIndex": "remark", "editable": true, "editor": remark1116, "filter": { "type": "string" }, "header": "Remark", "sortable": true, "tooltip": "(cal.GuestsByRole.remark) ", "width": Lino.chars2width(22) }, { "colIndex": 4, "dataIndex": "event", "editable": true, "editor": event1117, "filter": { "type": "string" }, "header": "Calendar entry", "renderer": Lino.fk_renderer('eventHidden','Lino.cal.OneEvent.detail'), "sortable": false, "tooltip": "(cal.GuestsByRole.event) The calendar event to which this presence applies.", "width": Lino.chars2width(21) }, { "align": "right", "colIndex": 5, "dataIndex": "id", "editable": true, "editor": id1118, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(cal.GuestsByRole.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 6, "dataIndex": "state", "editable": true, "editor": state1119, "filter": { "type": "string" }, "header": "State", "hidden": true, "sortable": false, "tooltip": "(cal.GuestsByRole.state) The state of this presence.", "width": Lino.chars2width(11) }, { "colIndex": 7, "dataIndex": "event_summary", "editable": false, "header": "Event", "hidden": true, "sortable": false, "tooltip": "(cal.GuestsByRole.event_summary) ", "width": Lino.chars2width(31) }, { "colIndex": 8, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.GuestsByRole.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 9, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.GuestsByRole.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 10, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(cal.GuestsByRole.overview) ", "width": Lino.chars2width(31) } ];
    Lino.cal.GuestsByRole.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.GuestsByRole.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/GuestsByRole", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.GuestsByRole.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/GuestsByRole", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.GuestsByRole.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/GuestsByRole", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.cal.GuestsByRole.insertPanel = Ext.extend(Lino.cal.Guests.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/cal/GuestsByRole",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.GuestsByRole.detail;
    this.ls_insert_handler = Lino.cal.GuestsByRole.insert;
    Lino.cal.GuestsByRole.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.GuestsByRole.insert = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.cal.GuestsByRole.insertPanel(p);
});
Lino.cal.GuestsByRole.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/GuestsByRole", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.GuestsByRole.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/GuestsByRole", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.GuestsByRole.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/GuestsByRole", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.cal.GuestsByRole.detailPanel = Ext.extend(Lino.cal.Guests.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  ls_url: "/cal/GuestsByRole",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.GuestsByRole.detail;
    this.ls_insert_handler = Lino.cal.GuestsByRole.insert;
    Lino.cal.GuestsByRole.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.GuestsByRole.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.cal.GuestsByRole.detailPanel(p);
});
Lino.cal.GuestsByRole.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/GuestsByRole", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.GuestsByRole.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.cal.Guests.ParamsPanel({});
  return new Lino.cal.GuestsByRole.GridPanel(p);
});
Lino.cal.GuestsByRole.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/GuestsByRole", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.GuestsByRole.wf1 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/GuestsByRole", "GET", pk, "wf1", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.GuestsByRole.wf2 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/GuestsByRole", "GET", pk, "wf2", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.GuestsByRole.wf3 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/GuestsByRole", "GET", pk, "wf3", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.GuestsByRole.wf4 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/GuestsByRole", "GET", pk, "wf4", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class cal.GuestsByPartner
Lino.cal.GuestsByPartner.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/cal/GuestsByPartner",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/cal/GuestsByPartner','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/cal/GuestsByPartner','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "Presences",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 4,
  ls_store_fields : [ { "name": "event__when_text" }, { "name": "workflow_buttons" }, { "name": "id", "type": "int" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 2,
  ls_grid_configs : [  ],
  content_type : 21,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.GuestsByPartner.detail;
    this.ls_insert_handler = Lino.cal.GuestsByPartner.insert;
    var ww = this.containing_window;
    var event__when_text_disp3350 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "sortable": false, "value": "<br/>" });
    var workflow_buttons_disp3351 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "event__when_text", "editable": false, "header": "When", "sortable": false, "tooltip": "(cal.GuestsByPartner.event__when_text) ", "width": Lino.chars2width(31) }, { "colIndex": 1, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "sortable": false, "tooltip": "(cal.GuestsByPartner.workflow_buttons) ", "width": Lino.chars2width(31) } ];
    Lino.cal.GuestsByPartner.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.GuestsByPartner.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/GuestsByPartner", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.GuestsByPartner.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/GuestsByPartner", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.GuestsByPartner.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/GuestsByPartner", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.cal.GuestsByPartner.insertPanel = Ext.extend(Lino.cal.Guests.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/cal/GuestsByPartner",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.GuestsByPartner.detail;
    this.ls_insert_handler = Lino.cal.GuestsByPartner.insert;
    Lino.cal.GuestsByPartner.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.GuestsByPartner.insert = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.cal.GuestsByPartner.insertPanel(p);
});
Lino.cal.GuestsByPartner.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/GuestsByPartner", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.GuestsByPartner.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/GuestsByPartner", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.GuestsByPartner.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/GuestsByPartner", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.cal.GuestsByPartner.detailPanel = Ext.extend(Lino.cal.Guests.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  ls_url: "/cal/GuestsByPartner",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.GuestsByPartner.detail;
    this.ls_insert_handler = Lino.cal.GuestsByPartner.insert;
    Lino.cal.GuestsByPartner.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.GuestsByPartner.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.cal.GuestsByPartner.detailPanel(p);
});
Lino.cal.GuestsByPartner.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/GuestsByPartner", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.GuestsByPartner.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.cal.Guests.ParamsPanel({});
  return new Lino.cal.GuestsByPartner.GridPanel(p);
});
Lino.cal.GuestsByPartner.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/GuestsByPartner", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.GuestsByPartner.wf1 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/GuestsByPartner", "GET", pk, "wf1", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.GuestsByPartner.wf2 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/GuestsByPartner", "GET", pk, "wf2", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.GuestsByPartner.wf3 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/GuestsByPartner", "GET", pk, "wf3", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.GuestsByPartner.wf4 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/GuestsByPartner", "GET", pk, "wf4", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class cal.EntriesByType
Lino.cal.EntriesByType.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/cal/EntriesByType",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/cal/EntriesByType','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/cal/EntriesByType','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "itemId": "duplicate", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Duplicate the selected row.") }, "menu_item_text": "\u2687", "overflowText": "\u2687", "panel_btn_handler": Lino.row_action_handler('duplicate','GET',null), "text": " <font size=\"4\">\u2687</font>" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "iconCls": "x-tbar-printer", "itemId": "do_print", "menu_item_text": "Print", "overflowText": "Print", "panel_btn_handler": Lino.row_action_handler('do_print','POST',null), "tooltip": "A print action which uses a cache for the generated printable\ndocument and builds is only when it doesn't yet exist." }, { "auto_save": true, "iconCls": "x-tbar-printer_delete", "itemId": "do_clear_cache", "menu_item_text": "Clear cache", "overflowText": "Clear cache", "panel_btn_handler": Lino.row_action_handler('do_clear_cache','GET',null), "tooltip": "Defines the Clear cache button on a Printable record." }, { "auto_save": true, "itemId": "show_conflicting", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Show events conflicting with this one.") }, "menu_item_text": "\u00a0\u2694\u00a0", "overflowText": "\u00a0\u2694\u00a0", "panel_btn_handler": Lino.row_action_handler('show_conflicting','GET',null), "text": "\u00a0\u2694\u00a0" }, { "auto_save": true, "iconCls": "x-tbar-calendar", "itemId": "show_today", "menu_item_text": "Today", "overflowText": "Today", "panel_btn_handler": Lino.row_action_handler('show_today','GET',null), "tooltip": "Show all calendar events of the same day." }, { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "check_plausibility", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": "Check plausibility", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." }, { "auto_save": true, "itemId": "fix_problems", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": "Fix plausibility problems", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." } ], "menu_item_text": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": null, "xtype": "splitbutton" }, { "auto_save": true, "itemId": "update_guests", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Populate or update the list of participants for this entry\naccording to the suggestions.") }, "menu_item_text": "Update Guests", "overflowText": "Update Guests", "panel_btn_handler": Lino.row_action_handler('update_guests','GET',null), "text": "\u00a0\u2637\u00a0" }, { "auto_save": true, "iconCls": "x-tbar-script_add", "itemId": "create_postings", "menu_item_text": "Create posting", "overflowText": "Create posting", "panel_btn_handler": Lino.row_action_handler('create_postings','GET',null), "tooltip": "Create classical mail postings from this" }, { "auto_save": true, "iconCls": "x-tbar-email_add", "itemId": "create_mail", "menu_item_text": "Create email", "overflowText": "Create email", "panel_btn_handler": Lino.row_action_handler('create_mail','GET',null), "tooltip": "Create an email from this" }, { "auto_save": true, "itemId": "update_events", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create or update the automatic events controlled by this generator.") }, "menu_item_text": "Update Events", "overflowText": "Update Events", "panel_btn_handler": Lino.row_action_handler('update_events','GET',null), "text": "\u00a0\u26a1\u00a0" } ],
  cell_edit : true,
  title : "Calendar entries",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 48,
  ls_store_fields : [ { "name": "when_text" }, { "name": "user" }, 'userHidden', { "name": "summary" }, { "name": "event_type" }, 'event_typeHidden', { "name": "id", "type": "int" }, { "name": "modified" }, { "name": "created" }, { "dateFormat": "d.m.Y", "name": "start_date", "type": "date" }, { "name": "start_time" }, { "dateFormat": "d.m.Y", "name": "end_date", "type": "date" }, { "name": "end_time" }, { "name": "build_time" }, { "name": "build_method" }, 'build_methodHidden', { "name": "assigned_to" }, 'assigned_toHidden', { "name": "owner_type" }, 'owner_typeHidden', { "name": "owner_id" }, 'owner_idHidden', { "name": "description" }, { "name": "access_class" }, 'access_classHidden', { "name": "sequence", "type": "int", "useNull": true }, { "name": "auto_type", "type": "int", "useNull": true }, { "name": "transparent", "type": "boolean" }, { "name": "room" }, 'roomHidden', { "name": "priority" }, 'priorityHidden', { "name": "state" }, 'stateHidden', { "name": "owner" }, { "name": "calendar" }, 'calendarHidden', { "name": "when_html" }, { "name": "reminder" }, { "name": "all_day", "type": "boolean" }, { "name": "url" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "created_natural" }, { "name": "duration" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 6,
  ls_grid_configs : [  ],
  content_type : 19,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.EntriesByType.detail;
    this.ls_insert_handler = Lino.cal.EntriesByType.insert;
    var ww = this.containing_window;
    var when_text_disp394 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    var user395 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a User...", "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/EntriesByType/user" }) }) });
    var summary396 = new Ext.form.TextField({ "maxLength": 200, "selectOnFocus": true });
    var event_type397 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Calendar entry type...", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/EntriesByType/event_type" }) }) });
    var id398 = new Ext.form.NumberField({ "selectOnFocus": true });
    var modified399 = new Ext.form.DisplayField({ "disabled": true, "hidden": true, "value": "<br>" });
    var created400 = new Ext.form.DisplayField({ "disabled": true, "hidden": true, "value": "<br>" });
    var start_date401 = new Lino.DateField({ "hidden": true, "selectOnFocus": true });
    var start_time402 = new Lino.TimeField({ "hidden": true, "selectOnFocus": true });
    var end_date403 = new Lino.DateField({ "hidden": true, "selectOnFocus": true });
    var end_time404 = new Lino.TimeField({ "hidden": true, "selectOnFocus": true });
    var build_time405 = new Ext.form.DisplayField({ "disabled": true, "hidden": true, "value": "<br>" });
    var build_method406 = new Lino.ChoicesFieldElement({ "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": [['','<br>']].concat(Lino.printing.BuildMethods) });
    var assigned_to407 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a User...", "hidden": true, "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/EntriesByType/assigned_to" }) }) });
    var owner_type408 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a content type...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/EntriesByType/owner_type" }) }) });
    var owner_id409 = new Lino.RemoteComboFieldElement({ "hidden": true, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/EntriesByType/owner_id" }) }) });
    var description410 = new Ext.form.TextArea({ "growMax": 2000, "hidden": true, "selectOnFocus": true });
    var access_class411 = new Lino.ChoicesFieldElement({ "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": [['','<br>']].concat(Lino.cal.AccessClasses) });
    var sequence412 = new Ext.form.NumberField({ "allowBlank": false, "hidden": true, "selectOnFocus": true, "value": 0 });
    var auto_type413 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var transparent414 = new Ext.form.Checkbox({ "checked": false, "hidden": true, "selectOnFocus": true });
    var room415 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Room...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/EntriesByType/room" }) }) });
    var priority416 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Priority...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/EntriesByType/priority" }) }) });
    var state417 = new Lino.ChoicesFieldElement({ "allowBlank": false, "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": Lino.cal.EntryStates });
    var owner_disp418 = new Ext.form.DisplayField({ "disabled": true, "hidden": true });
    var calendar419 = new Lino.RemoteComboFieldElement({ "disabled": true, "emptyText": "Select a Calendar...", "hidden": true, "pageSize": 20, "store": new Lino.ComplexRemoteComboStore({  }) });
    var when_html_disp420 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var reminder_disp421 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var all_day422 = new Ext.form.Checkbox({ "hidden": true, "selectOnFocus": true });
    var url_disp423 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var mobile_item_disp424 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp425 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp426 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp427 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var created_natural_disp428 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var duration429 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(6), "disabled": true, "hidden": true, "maxLength": 6 });
    this.before_row_edit = function(record) {
      owner_id409.setContextValue('owner_type', record ? record.data['owner_typeHidden'] : undefined);
    };
    this.onRender = function(ct, position) {
      owner_type408.on('change',Lino.chooser_handler(owner_id409,'owner_type'));
      Lino.cal.EntriesByType.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "when_text", "editable": false, "header": "When", "sortable": false, "tooltip": "(cal.EntriesByType.when_text) ", "width": Lino.chars2width(21) }, { "colIndex": 1, "dataIndex": "user", "editable": true, "editor": user395, "filter": { "type": "string" }, "header": "Responsible user", "renderer": Lino.fk_renderer('userHidden','Lino.users.Users.detail'), "sortable": false, "tooltip": "(cal.EntriesByType.user) The responsible user.", "width": Lino.chars2width(21) }, { "colIndex": 2, "dataIndex": "summary", "editable": true, "editor": summary396, "filter": { "type": "string" }, "header": "Short description", "sortable": true, "tooltip": "(cal.EntriesByType.summary) A one-line descriptive text.", "width": Lino.chars2width(22) }, { "colIndex": 3, "dataIndex": "event_type", "editable": true, "editor": event_type397, "filter": { "type": "string" }, "header": "Calendar entry type", "renderer": Lino.fk_renderer('event_typeHidden','Lino.cal.EventTypes.detail'), "sortable": false, "tooltip": "(cal.EntriesByType.event_type) The type of this entry. Every calendar entry should have this\nfield pointing to a given EventType, which holds\nextended configurable information about this entry.", "width": Lino.chars2width(21) }, { "align": "right", "colIndex": 4, "dataIndex": "id", "editable": true, "editor": id398, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "sortable": true, "tooltip": "(cal.EntriesByType.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 5, "dataIndex": "modified", "editable": false, "header": "Modified", "hidden": true, "sortable": true, "tooltip": "(cal.EntriesByType.modified) ", "width": Lino.chars2width(17) }, { "colIndex": 6, "dataIndex": "created", "editable": false, "header": "Created", "hidden": true, "sortable": true, "tooltip": "(cal.EntriesByType.created) The timestame when this object was created.", "width": Lino.chars2width(17) }, { "colIndex": 7, "dataIndex": "start_date", "editable": true, "editor": start_date401, "filter": { "dateFormat": "d.m.Y", "type": "date" }, "format": "d.m.Y", "header": "Start date", "hidden": true, "sortable": true, "tooltip": "(cal.EntriesByType.start_date) ", "width": Lino.chars2width(14), "xtype": "datecolumn" }, { "colIndex": 8, "dataIndex": "start_time", "editable": true, "editor": start_time402, "header": "Start time", "hidden": true, "sortable": true, "tooltip": "(cal.EntriesByType.start_time) ", "width": Lino.chars2width(9) }, { "colIndex": 9, "dataIndex": "end_date", "editable": true, "editor": end_date403, "filter": { "dateFormat": "d.m.Y", "type": "date" }, "format": "d.m.Y", "header": "End Date", "hidden": true, "sortable": true, "tooltip": "(cal.EntriesByType.end_date) ", "width": Lino.chars2width(14), "xtype": "datecolumn" }, { "colIndex": 10, "dataIndex": "end_time", "editable": true, "editor": end_time404, "header": "End Time", "hidden": true, "sortable": true, "tooltip": "(cal.EntriesByType.end_time) These four fields define the duration of this entry.\nOnly start_date is mandatory.", "width": Lino.chars2width(9) }, { "colIndex": 11, "dataIndex": "build_time", "editable": false, "header": "build time", "hidden": true, "sortable": true, "tooltip": "(cal.EntriesByType.build_time) Timestamp of the built target file. Contains None\nif no build hasn't been called yet.", "width": Lino.chars2width(17) }, { "colIndex": 12, "dataIndex": "build_method", "editable": true, "editor": build_method406, "filter": { "type": "string" }, "header": "Build method", "hidden": true, "sortable": false, "tooltip": "(cal.EntriesByType.build_method) ", "width": Lino.chars2width(24) }, { "colIndex": 13, "dataIndex": "assigned_to", "editable": true, "editor": assigned_to407, "filter": { "type": "string" }, "header": "Assigned to", "hidden": true, "renderer": Lino.fk_renderer('assigned_toHidden','Lino.users.Users.detail'), "sortable": false, "tooltip": "(cal.EntriesByType.assigned_to) Another user who is expected to take responsibility for this\nentry.", "width": Lino.chars2width(21) }, { "colIndex": 14, "dataIndex": "owner_type", "editable": true, "editor": owner_type408, "filter": { "type": "string" }, "header": "Controlled by (type)", "hidden": true, "renderer": Lino.fk_renderer('owner_typeHidden','Lino.gfks.ContentTypes.detail'), "sortable": false, "tooltip": "(cal.EntriesByType.owner_type) ", "width": Lino.chars2width(21) }, { "colIndex": 15, "dataIndex": "owner_id", "editable": true, "editor": owner_id409, "filter": { "type": "string" }, "header": "Controlled by (object)", "hidden": true, "sortable": false, "tooltip": "(cal.EntriesByType.owner_id) ", "width": Lino.chars2width(11) }, { "colIndex": 16, "dataIndex": "description", "editable": true, "editor": description410, "filter": { "type": "string" }, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.EntriesByType.description) A longer descriptive text.", "width": Lino.chars2width(61) }, { "colIndex": 17, "dataIndex": "access_class", "editable": true, "editor": access_class411, "filter": { "type": "string" }, "header": "Access Class", "hidden": true, "sortable": false, "tooltip": "(cal.EntriesByType.access_class) Whether this is private, public or between.", "width": Lino.chars2width(13) }, { "align": "right", "colIndex": 18, "dataIndex": "sequence", "editable": true, "editor": sequence412, "filter": { "type": "numeric" }, "format": "0", "header": "Revision", "hidden": true, "sortable": true, "tooltip": "(cal.EntriesByType.sequence) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "align": "right", "colIndex": 19, "dataIndex": "auto_type", "editable": true, "editor": auto_type413, "filter": { "type": "numeric" }, "format": "0", "header": "No.", "hidden": true, "sortable": true, "tooltip": "(cal.EntriesByType.auto_type) Contains the sequence number if this is an automatically\ngenerated component. Otherwise this field is empty.", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 20, "dataIndex": "transparent", "editable": true, "filter": { "type": "boolean" }, "header": "Transparent", "hidden": true, "sortable": false, "tooltip": "(cal.EntriesByType.transparent) Indicates that this entry shouldn't prevent other entries at\nthe same time.", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 21, "dataIndex": "room", "editable": true, "editor": room415, "filter": { "type": "string" }, "header": "Room", "hidden": true, "renderer": Lino.fk_renderer('roomHidden','Lino.cal.Rooms.detail'), "sortable": false, "tooltip": "(cal.EntriesByType.room) ", "width": Lino.chars2width(21) }, { "colIndex": 22, "dataIndex": "priority", "editable": true, "editor": priority416, "filter": { "type": "string" }, "header": "Priority", "hidden": true, "sortable": false, "tooltip": "(cal.EntriesByType.priority) ", "width": Lino.chars2width(21) }, { "colIndex": 23, "dataIndex": "state", "editable": true, "editor": state417, "filter": { "type": "string" }, "header": "State", "hidden": true, "sortable": false, "tooltip": "(cal.EntriesByType.state) The state of this entry. The state can change according to\nrules defined by the workflow, that's why we sometimes refer\nto it as the life cycle.", "width": Lino.chars2width(14) }, { "colIndex": 24, "dataIndex": "owner", "editable": false, "header": "Controlled by", "hidden": true, "sortable": false, "tooltip": "(cal.EntriesByType.owner) ", "width": Lino.chars2width(11) }, { "colIndex": 25, "dataIndex": "calendar", "editable": false, "header": "Calendar", "hidden": true, "renderer": Lino.fk_renderer('calendarHidden','Lino.cal.Calendars.detail'), "sortable": false, "tooltip": "(cal.EntriesByType.calendar) ", "width": Lino.chars2width(21) }, { "colIndex": 26, "dataIndex": "when_html", "editable": false, "header": "When", "hidden": true, "sortable": false, "tooltip": "(cal.EntriesByType.when_html) ", "width": Lino.chars2width(31) }, { "colIndex": 27, "dataIndex": "reminder", "editable": false, "header": "Reminder", "hidden": true, "sortable": false, "tooltip": "(cal.EntriesByType.reminder) ", "width": Lino.chars2width(31) }, { "colIndex": 28, "dataIndex": "all_day", "editable": true, "header": "all day", "hidden": true, "sortable": false, "tooltip": "(cal.EntriesByType.all_day) ", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 29, "dataIndex": "url", "editable": false, "header": "Link URL", "hidden": true, "sortable": false, "tooltip": "(cal.EntriesByType.url) ", "width": Lino.chars2width(31) }, { "colIndex": 30, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.EntriesByType.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 31, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.EntriesByType.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 32, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(cal.EntriesByType.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 33, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(cal.EntriesByType.workflow_buttons) ", "width": Lino.chars2width(31) }, { "colIndex": 34, "dataIndex": "created_natural", "editable": false, "header": "Created", "hidden": true, "sortable": false, "tooltip": "(cal.EntriesByType.created_natural) ", "width": Lino.chars2width(31) }, { "align": "right", "colIndex": 35, "dataIndex": "duration", "editable": false, "format": "", "header": "Duration", "hidden": true, "sortable": false, "tooltip": "(cal.EntriesByType.duration) ", "width": Lino.chars2width(8) } ];
    Lino.cal.EntriesByType.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.EntriesByType.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByType", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByType.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByType", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByType.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByType", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.cal.EntriesByType.insertPanel = Ext.extend(Lino.cal.Events.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/cal/EntriesByType",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.EntriesByType.detail;
    this.ls_insert_handler = Lino.cal.EntriesByType.insert;
    Lino.cal.EntriesByType.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.EntriesByType.insert = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.cal.EntriesByType.insertPanel(p);
});
Lino.cal.EntriesByType.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByType", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByType.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByType", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByType.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByType", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByType.duplicate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByType", "GET", pk, "duplicate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.cal.EntriesByType.detailPanel = Ext.extend(Lino.cal.Events.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "itemId": "duplicate", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Duplicate the selected row.") }, "menu_item_text": "\u2687", "overflowText": "\u2687", "panel_btn_handler": Lino.row_action_handler('duplicate','GET',null), "text": " <font size=\"4\">\u2687</font>" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "iconCls": "x-tbar-printer", "itemId": "do_print", "menu_item_text": "Print", "overflowText": "Print", "panel_btn_handler": Lino.row_action_handler('do_print','POST',null), "tooltip": "A print action which uses a cache for the generated printable\ndocument and builds is only when it doesn't yet exist." }, { "auto_save": true, "iconCls": "x-tbar-printer_delete", "itemId": "do_clear_cache", "menu_item_text": "Clear cache", "overflowText": "Clear cache", "panel_btn_handler": Lino.row_action_handler('do_clear_cache','GET',null), "tooltip": "Defines the Clear cache button on a Printable record." }, { "auto_save": true, "itemId": "show_conflicting", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Show events conflicting with this one.") }, "menu_item_text": "\u00a0\u2694\u00a0", "overflowText": "\u00a0\u2694\u00a0", "panel_btn_handler": Lino.row_action_handler('show_conflicting','GET',null), "text": "\u00a0\u2694\u00a0" }, { "auto_save": true, "iconCls": "x-tbar-calendar", "itemId": "show_today", "menu_item_text": "Today", "overflowText": "Today", "panel_btn_handler": Lino.row_action_handler('show_today','GET',null), "tooltip": "Show all calendar events of the same day." }, { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "check_plausibility", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": "Check plausibility", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." }, { "auto_save": true, "itemId": "fix_problems", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": "Fix plausibility problems", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." } ], "menu_item_text": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": null, "xtype": "splitbutton" }, { "auto_save": true, "itemId": "update_guests", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Populate or update the list of participants for this entry\naccording to the suggestions.") }, "menu_item_text": "Update Guests", "overflowText": "Update Guests", "panel_btn_handler": Lino.row_action_handler('update_guests','GET',null), "text": "\u00a0\u2637\u00a0" }, { "auto_save": true, "iconCls": "x-tbar-script_add", "itemId": "create_postings", "menu_item_text": "Create posting", "overflowText": "Create posting", "panel_btn_handler": Lino.row_action_handler('create_postings','GET',null), "tooltip": "Create classical mail postings from this" }, { "auto_save": true, "iconCls": "x-tbar-email_add", "itemId": "create_mail", "menu_item_text": "Create email", "overflowText": "Create email", "panel_btn_handler": Lino.row_action_handler('create_mail','GET',null), "tooltip": "Create an email from this" }, { "auto_save": true, "itemId": "update_events", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create or update the automatic events controlled by this generator.") }, "menu_item_text": "Update Events", "overflowText": "Update Events", "panel_btn_handler": Lino.row_action_handler('update_events','GET',null), "text": "\u00a0\u26a1\u00a0" } ],
  ls_url: "/cal/EntriesByType",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.EntriesByType.detail;
    this.ls_insert_handler = Lino.cal.EntriesByType.insert;
    Lino.cal.EntriesByType.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.EntriesByType.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.cal.EntriesByType.detailPanel(p);
});
Lino.cal.EntriesByType.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByType", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByType.do_print = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByType", "POST", pk, "do_print", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByType.do_clear_cache = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByType", "GET", pk, "do_clear_cache", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByType.show_conflicting = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByType", "GET", pk, "show_conflicting", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByType.show_today = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByType", "GET", pk, "show_today", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByType.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.cal.Events.ParamsPanel({});
  return new Lino.cal.EntriesByType.GridPanel(p);
});
Lino.cal.EntriesByType.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByType", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByType.check_plausibility = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByType", "GET", pk, "check_plausibility", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByType.update_guests = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByType", "GET", pk, "update_guests", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByType.fix_problems = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByType", "GET", pk, "fix_problems", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByType.create_postings = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByType", "GET", pk, "create_postings", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByType.take = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByType", "GET", pk, "take", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByType.assign_to_me = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByType", "GET", pk, "assign_to_me", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByType.move_next = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByType", "GET", pk, "move_next", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByType.create_mail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByType", "GET", pk, "create_mail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByType.update_events = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByType", "GET", pk, "update_events", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByType.reset_event = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByType", "GET", pk, "reset_event", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByType.wf2 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByType", "GET", pk, "wf2", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByType.wf3 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByType", "GET", pk, "wf3", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class cal.ConflictingEvents
Lino.cal.ConflictingEvents.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/cal/ConflictingEvents",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/cal/ConflictingEvents','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/cal/ConflictingEvents','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "itemId": "duplicate", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Duplicate the selected row.") }, "menu_item_text": "\u2687", "overflowText": "\u2687", "panel_btn_handler": Lino.row_action_handler('duplicate','GET',null), "text": " <font size=\"4\">\u2687</font>" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "iconCls": "x-tbar-printer", "itemId": "do_print", "menu_item_text": "Print", "overflowText": "Print", "panel_btn_handler": Lino.row_action_handler('do_print','POST',null), "tooltip": "A print action which uses a cache for the generated printable\ndocument and builds is only when it doesn't yet exist." }, { "auto_save": true, "iconCls": "x-tbar-printer_delete", "itemId": "do_clear_cache", "menu_item_text": "Clear cache", "overflowText": "Clear cache", "panel_btn_handler": Lino.row_action_handler('do_clear_cache','GET',null), "tooltip": "Defines the Clear cache button on a Printable record." }, { "auto_save": true, "itemId": "show_conflicting", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Show events conflicting with this one.") }, "menu_item_text": "\u00a0\u2694\u00a0", "overflowText": "\u00a0\u2694\u00a0", "panel_btn_handler": Lino.row_action_handler('show_conflicting','GET',null), "text": "\u00a0\u2694\u00a0" }, { "auto_save": true, "iconCls": "x-tbar-calendar", "itemId": "show_today", "menu_item_text": "Today", "overflowText": "Today", "panel_btn_handler": Lino.row_action_handler('show_today','GET',null), "tooltip": "Show all calendar events of the same day." }, { "auto_save": true, "iconCls": "x-tbar-script_add", "itemId": "create_postings", "menu_item_text": "Create posting", "overflowText": "Create posting", "panel_btn_handler": Lino.row_action_handler('create_postings','GET',null), "tooltip": "Create classical mail postings from this" }, { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "check_plausibility", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": "Check plausibility", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." }, { "auto_save": true, "itemId": "fix_problems", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": "Fix plausibility problems", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." } ], "menu_item_text": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": null, "xtype": "splitbutton" }, { "auto_save": true, "itemId": "update_guests", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Populate or update the list of participants for this entry\naccording to the suggestions.") }, "menu_item_text": "Update Guests", "overflowText": "Update Guests", "panel_btn_handler": Lino.row_action_handler('update_guests','GET',null), "text": "\u00a0\u2637\u00a0" }, { "auto_save": true, "iconCls": "x-tbar-email_add", "itemId": "create_mail", "menu_item_text": "Create email", "overflowText": "Create email", "panel_btn_handler": Lino.row_action_handler('create_mail','GET',null), "tooltip": "Create an email from this" }, { "auto_save": true, "itemId": "update_events", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create or update the automatic events controlled by this generator.") }, "menu_item_text": "Update Events", "overflowText": "Update Events", "panel_btn_handler": Lino.row_action_handler('update_events','GET',null), "text": "\u00a0\u26a1\u00a0" } ],
  cell_edit : true,
  title : "\u00a0\u2694\u00a0",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 48,
  ls_store_fields : [ { "dateFormat": "d.m.Y", "name": "start_date", "type": "date" }, { "name": "start_time" }, { "name": "end_time" }, { "name": "room" }, 'roomHidden', { "name": "user" }, 'userHidden', { "name": "id", "type": "int" }, { "name": "modified" }, { "name": "created" }, { "dateFormat": "d.m.Y", "name": "end_date", "type": "date" }, { "name": "build_time" }, { "name": "build_method" }, 'build_methodHidden', { "name": "assigned_to" }, 'assigned_toHidden', { "name": "owner_type" }, 'owner_typeHidden', { "name": "owner_id" }, 'owner_idHidden', { "name": "summary" }, { "name": "description" }, { "name": "access_class" }, 'access_classHidden', { "name": "sequence", "type": "int", "useNull": true }, { "name": "auto_type", "type": "int", "useNull": true }, { "name": "event_type" }, 'event_typeHidden', { "name": "transparent", "type": "boolean" }, { "name": "priority" }, 'priorityHidden', { "name": "state" }, 'stateHidden', { "name": "owner" }, { "name": "calendar" }, 'calendarHidden', { "name": "when_html" }, { "name": "reminder" }, { "name": "when_text" }, { "name": "all_day", "type": "boolean" }, { "name": "url" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "created_natural" }, { "name": "duration" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 7,
  ls_grid_configs : [  ],
  content_type : 19,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.ConflictingEvents.detail;
    this.ls_insert_handler = Lino.cal.ConflictingEvents.insert;
    var ww = this.containing_window;
    var start_date3353 = new Lino.DateField({ "selectOnFocus": true });
    var start_time3354 = new Lino.TimeField({ "selectOnFocus": true });
    var end_time3355 = new Lino.TimeField({ "selectOnFocus": true });
    var room3356 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Room...", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/ConflictingEvents/room" }) }) });
    var user3357 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a User...", "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/ConflictingEvents/user" }) }) });
    var id3358 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var modified3359 = new Ext.form.DisplayField({ "disabled": true, "hidden": true, "value": "<br>" });
    var created3360 = new Ext.form.DisplayField({ "disabled": true, "hidden": true, "value": "<br>" });
    var end_date3361 = new Lino.DateField({ "hidden": true, "selectOnFocus": true });
    var build_time3362 = new Ext.form.DisplayField({ "disabled": true, "hidden": true, "value": "<br>" });
    var build_method3363 = new Lino.ChoicesFieldElement({ "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": [['','<br>']].concat(Lino.printing.BuildMethods) });
    var assigned_to3364 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a User...", "hidden": true, "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/ConflictingEvents/assigned_to" }) }) });
    var owner_type3365 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a content type...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/ConflictingEvents/owner_type" }) }) });
    var owner_id3366 = new Lino.RemoteComboFieldElement({ "hidden": true, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/ConflictingEvents/owner_id" }) }) });
    var summary3367 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var description3368 = new Ext.form.TextArea({ "growMax": 2000, "hidden": true, "selectOnFocus": true });
    var access_class3369 = new Lino.ChoicesFieldElement({ "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": [['','<br>']].concat(Lino.cal.AccessClasses) });
    var sequence3370 = new Ext.form.NumberField({ "allowBlank": false, "hidden": true, "selectOnFocus": true, "value": 0 });
    var auto_type3371 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var event_type3372 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Calendar entry type...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/ConflictingEvents/event_type" }) }) });
    var transparent3373 = new Ext.form.Checkbox({ "checked": false, "hidden": true, "selectOnFocus": true });
    var priority3374 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Priority...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/ConflictingEvents/priority" }) }) });
    var state3375 = new Lino.ChoicesFieldElement({ "allowBlank": false, "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": Lino.cal.EntryStates });
    var owner_disp3376 = new Ext.form.DisplayField({ "disabled": true, "hidden": true });
    var calendar3377 = new Lino.RemoteComboFieldElement({ "disabled": true, "emptyText": "Select a Calendar...", "hidden": true, "pageSize": 20, "store": new Lino.ComplexRemoteComboStore({  }) });
    var when_html_disp3378 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var reminder_disp3379 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var when_text_disp3380 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var all_day3381 = new Ext.form.Checkbox({ "hidden": true, "selectOnFocus": true });
    var url_disp3382 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var mobile_item_disp3383 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp3384 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp3385 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp3386 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var created_natural_disp3387 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var duration3388 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(6), "disabled": true, "hidden": true, "maxLength": 6 });
    this.before_row_edit = function(record) {
      owner_id3366.setContextValue('owner_type', record ? record.data['owner_typeHidden'] : undefined);
    };
    this.onRender = function(ct, position) {
      owner_type3365.on('change',Lino.chooser_handler(owner_id3366,'owner_type'));
      Lino.cal.ConflictingEvents.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "start_date", "editable": true, "editor": start_date3353, "filter": { "dateFormat": "d.m.Y", "type": "date" }, "format": "d.m.Y", "header": "Start date", "sortable": true, "tooltip": "(cal.ConflictingEvents.start_date) ", "width": Lino.chars2width(14), "xtype": "datecolumn" }, { "colIndex": 1, "dataIndex": "start_time", "editable": true, "editor": start_time3354, "header": "Start time", "sortable": true, "tooltip": "(cal.ConflictingEvents.start_time) ", "width": Lino.chars2width(9) }, { "colIndex": 2, "dataIndex": "end_time", "editable": true, "editor": end_time3355, "header": "End Time", "sortable": true, "tooltip": "(cal.ConflictingEvents.end_time) These four fields define the duration of this entry.\nOnly start_date is mandatory.", "width": Lino.chars2width(9) }, { "colIndex": 3, "dataIndex": "room", "editable": true, "editor": room3356, "filter": { "type": "string" }, "header": "Room", "renderer": Lino.fk_renderer('roomHidden','Lino.cal.Rooms.detail'), "sortable": false, "tooltip": "(cal.ConflictingEvents.room) ", "width": Lino.chars2width(21) }, { "colIndex": 4, "dataIndex": "user", "editable": true, "editor": user3357, "filter": { "type": "string" }, "header": "Responsible user", "renderer": Lino.fk_renderer('userHidden','Lino.users.Users.detail'), "sortable": false, "tooltip": "(cal.ConflictingEvents.user) The responsible user.", "width": Lino.chars2width(21) }, { "align": "right", "colIndex": 5, "dataIndex": "id", "editable": true, "editor": id3358, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(cal.ConflictingEvents.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 6, "dataIndex": "modified", "editable": false, "header": "Modified", "hidden": true, "sortable": true, "tooltip": "(cal.ConflictingEvents.modified) ", "width": Lino.chars2width(17) }, { "colIndex": 7, "dataIndex": "created", "editable": false, "header": "Created", "hidden": true, "sortable": true, "tooltip": "(cal.ConflictingEvents.created) The timestame when this object was created.", "width": Lino.chars2width(17) }, { "colIndex": 8, "dataIndex": "end_date", "editable": true, "editor": end_date3361, "filter": { "dateFormat": "d.m.Y", "type": "date" }, "format": "d.m.Y", "header": "End Date", "hidden": true, "sortable": true, "tooltip": "(cal.ConflictingEvents.end_date) ", "width": Lino.chars2width(14), "xtype": "datecolumn" }, { "colIndex": 9, "dataIndex": "build_time", "editable": false, "header": "build time", "hidden": true, "sortable": true, "tooltip": "(cal.ConflictingEvents.build_time) Timestamp of the built target file. Contains None\nif no build hasn't been called yet.", "width": Lino.chars2width(17) }, { "colIndex": 10, "dataIndex": "build_method", "editable": true, "editor": build_method3363, "filter": { "type": "string" }, "header": "Build method", "hidden": true, "sortable": false, "tooltip": "(cal.ConflictingEvents.build_method) ", "width": Lino.chars2width(24) }, { "colIndex": 11, "dataIndex": "assigned_to", "editable": true, "editor": assigned_to3364, "filter": { "type": "string" }, "header": "Assigned to", "hidden": true, "renderer": Lino.fk_renderer('assigned_toHidden','Lino.users.Users.detail'), "sortable": false, "tooltip": "(cal.ConflictingEvents.assigned_to) Another user who is expected to take responsibility for this\nentry.", "width": Lino.chars2width(21) }, { "colIndex": 12, "dataIndex": "owner_type", "editable": true, "editor": owner_type3365, "filter": { "type": "string" }, "header": "Controlled by (type)", "hidden": true, "renderer": Lino.fk_renderer('owner_typeHidden','Lino.gfks.ContentTypes.detail'), "sortable": false, "tooltip": "(cal.ConflictingEvents.owner_type) ", "width": Lino.chars2width(21) }, { "colIndex": 13, "dataIndex": "owner_id", "editable": true, "editor": owner_id3366, "filter": { "type": "string" }, "header": "Controlled by (object)", "hidden": true, "sortable": false, "tooltip": "(cal.ConflictingEvents.owner_id) ", "width": Lino.chars2width(11) }, { "colIndex": 14, "dataIndex": "summary", "editable": true, "editor": summary3367, "filter": { "type": "string" }, "header": "Short description", "hidden": true, "sortable": true, "tooltip": "(cal.ConflictingEvents.summary) A one-line descriptive text.", "width": Lino.chars2width(22) }, { "colIndex": 15, "dataIndex": "description", "editable": true, "editor": description3368, "filter": { "type": "string" }, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.ConflictingEvents.description) A longer descriptive text.", "width": Lino.chars2width(61) }, { "colIndex": 16, "dataIndex": "access_class", "editable": true, "editor": access_class3369, "filter": { "type": "string" }, "header": "Access Class", "hidden": true, "sortable": false, "tooltip": "(cal.ConflictingEvents.access_class) Whether this is private, public or between.", "width": Lino.chars2width(13) }, { "align": "right", "colIndex": 17, "dataIndex": "sequence", "editable": true, "editor": sequence3370, "filter": { "type": "numeric" }, "format": "0", "header": "Revision", "hidden": true, "sortable": true, "tooltip": "(cal.ConflictingEvents.sequence) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "align": "right", "colIndex": 18, "dataIndex": "auto_type", "editable": true, "editor": auto_type3371, "filter": { "type": "numeric" }, "format": "0", "header": "No.", "hidden": true, "sortable": true, "tooltip": "(cal.ConflictingEvents.auto_type) Contains the sequence number if this is an automatically\ngenerated component. Otherwise this field is empty.", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 19, "dataIndex": "event_type", "editable": true, "editor": event_type3372, "filter": { "type": "string" }, "header": "Calendar entry type", "hidden": true, "renderer": Lino.fk_renderer('event_typeHidden','Lino.cal.EventTypes.detail'), "sortable": false, "tooltip": "(cal.ConflictingEvents.event_type) The type of this entry. Every calendar entry should have this\nfield pointing to a given EventType, which holds\nextended configurable information about this entry.", "width": Lino.chars2width(21) }, { "colIndex": 20, "dataIndex": "transparent", "editable": true, "filter": { "type": "boolean" }, "header": "Transparent", "hidden": true, "sortable": false, "tooltip": "(cal.ConflictingEvents.transparent) Indicates that this entry shouldn't prevent other entries at\nthe same time.", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 21, "dataIndex": "priority", "editable": true, "editor": priority3374, "filter": { "type": "string" }, "header": "Priority", "hidden": true, "sortable": false, "tooltip": "(cal.ConflictingEvents.priority) ", "width": Lino.chars2width(21) }, { "colIndex": 22, "dataIndex": "state", "editable": true, "editor": state3375, "filter": { "type": "string" }, "header": "State", "hidden": true, "sortable": false, "tooltip": "(cal.ConflictingEvents.state) The state of this entry. The state can change according to\nrules defined by the workflow, that's why we sometimes refer\nto it as the life cycle.", "width": Lino.chars2width(14) }, { "colIndex": 23, "dataIndex": "owner", "editable": false, "header": "Controlled by", "hidden": true, "sortable": false, "tooltip": "(cal.ConflictingEvents.owner) ", "width": Lino.chars2width(11) }, { "colIndex": 24, "dataIndex": "calendar", "editable": false, "header": "Calendar", "hidden": true, "renderer": Lino.fk_renderer('calendarHidden','Lino.cal.Calendars.detail'), "sortable": false, "tooltip": "(cal.ConflictingEvents.calendar) ", "width": Lino.chars2width(21) }, { "colIndex": 25, "dataIndex": "when_html", "editable": false, "header": "When", "hidden": true, "sortable": false, "tooltip": "(cal.ConflictingEvents.when_html) ", "width": Lino.chars2width(31) }, { "colIndex": 26, "dataIndex": "reminder", "editable": false, "header": "Reminder", "hidden": true, "sortable": false, "tooltip": "(cal.ConflictingEvents.reminder) ", "width": Lino.chars2width(31) }, { "colIndex": 27, "dataIndex": "when_text", "editable": false, "header": "When", "hidden": true, "sortable": false, "tooltip": "(cal.ConflictingEvents.when_text) ", "width": Lino.chars2width(31) }, { "colIndex": 28, "dataIndex": "all_day", "editable": true, "header": "all day", "hidden": true, "sortable": false, "tooltip": "(cal.ConflictingEvents.all_day) ", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 29, "dataIndex": "url", "editable": false, "header": "Link URL", "hidden": true, "sortable": false, "tooltip": "(cal.ConflictingEvents.url) ", "width": Lino.chars2width(31) }, { "colIndex": 30, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.ConflictingEvents.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 31, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.ConflictingEvents.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 32, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(cal.ConflictingEvents.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 33, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(cal.ConflictingEvents.workflow_buttons) ", "width": Lino.chars2width(31) }, { "colIndex": 34, "dataIndex": "created_natural", "editable": false, "header": "Created", "hidden": true, "sortable": false, "tooltip": "(cal.ConflictingEvents.created_natural) ", "width": Lino.chars2width(31) }, { "align": "right", "colIndex": 35, "dataIndex": "duration", "editable": false, "format": "", "header": "Duration", "hidden": true, "sortable": false, "tooltip": "(cal.ConflictingEvents.duration) ", "width": Lino.chars2width(8) } ];
    Lino.cal.ConflictingEvents.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.ConflictingEvents.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/ConflictingEvents", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.ConflictingEvents.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/ConflictingEvents", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.ConflictingEvents.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/ConflictingEvents", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.cal.ConflictingEvents.insertPanel = Ext.extend(Lino.cal.Events.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/cal/ConflictingEvents",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.ConflictingEvents.detail;
    this.ls_insert_handler = Lino.cal.ConflictingEvents.insert;
    Lino.cal.ConflictingEvents.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.ConflictingEvents.insert = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.cal.ConflictingEvents.insertPanel(p);
});
Lino.cal.ConflictingEvents.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/ConflictingEvents", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.ConflictingEvents.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/ConflictingEvents", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.ConflictingEvents.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/ConflictingEvents", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.ConflictingEvents.duplicate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/ConflictingEvents", "GET", pk, "duplicate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.cal.ConflictingEvents.detailPanel = Ext.extend(Lino.cal.Events.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "itemId": "duplicate", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Duplicate the selected row.") }, "menu_item_text": "\u2687", "overflowText": "\u2687", "panel_btn_handler": Lino.row_action_handler('duplicate','GET',null), "text": " <font size=\"4\">\u2687</font>" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "iconCls": "x-tbar-printer", "itemId": "do_print", "menu_item_text": "Print", "overflowText": "Print", "panel_btn_handler": Lino.row_action_handler('do_print','POST',null), "tooltip": "A print action which uses a cache for the generated printable\ndocument and builds is only when it doesn't yet exist." }, { "auto_save": true, "iconCls": "x-tbar-printer_delete", "itemId": "do_clear_cache", "menu_item_text": "Clear cache", "overflowText": "Clear cache", "panel_btn_handler": Lino.row_action_handler('do_clear_cache','GET',null), "tooltip": "Defines the Clear cache button on a Printable record." }, { "auto_save": true, "itemId": "show_conflicting", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Show events conflicting with this one.") }, "menu_item_text": "\u00a0\u2694\u00a0", "overflowText": "\u00a0\u2694\u00a0", "panel_btn_handler": Lino.row_action_handler('show_conflicting','GET',null), "text": "\u00a0\u2694\u00a0" }, { "auto_save": true, "iconCls": "x-tbar-calendar", "itemId": "show_today", "menu_item_text": "Today", "overflowText": "Today", "panel_btn_handler": Lino.row_action_handler('show_today','GET',null), "tooltip": "Show all calendar events of the same day." }, { "auto_save": true, "iconCls": "x-tbar-script_add", "itemId": "create_postings", "menu_item_text": "Create posting", "overflowText": "Create posting", "panel_btn_handler": Lino.row_action_handler('create_postings','GET',null), "tooltip": "Create classical mail postings from this" }, { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "check_plausibility", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": "Check plausibility", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." }, { "auto_save": true, "itemId": "fix_problems", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": "Fix plausibility problems", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." } ], "menu_item_text": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": null, "xtype": "splitbutton" }, { "auto_save": true, "itemId": "update_guests", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Populate or update the list of participants for this entry\naccording to the suggestions.") }, "menu_item_text": "Update Guests", "overflowText": "Update Guests", "panel_btn_handler": Lino.row_action_handler('update_guests','GET',null), "text": "\u00a0\u2637\u00a0" }, { "auto_save": true, "iconCls": "x-tbar-email_add", "itemId": "create_mail", "menu_item_text": "Create email", "overflowText": "Create email", "panel_btn_handler": Lino.row_action_handler('create_mail','GET',null), "tooltip": "Create an email from this" }, { "auto_save": true, "itemId": "update_events", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create or update the automatic events controlled by this generator.") }, "menu_item_text": "Update Events", "overflowText": "Update Events", "panel_btn_handler": Lino.row_action_handler('update_events','GET',null), "text": "\u00a0\u26a1\u00a0" } ],
  ls_url: "/cal/ConflictingEvents",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.ConflictingEvents.detail;
    this.ls_insert_handler = Lino.cal.ConflictingEvents.insert;
    Lino.cal.ConflictingEvents.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.ConflictingEvents.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.cal.ConflictingEvents.detailPanel(p);
});
Lino.cal.ConflictingEvents.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/ConflictingEvents", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.ConflictingEvents.do_print = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/ConflictingEvents", "POST", pk, "do_print", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.ConflictingEvents.do_clear_cache = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/ConflictingEvents", "GET", pk, "do_clear_cache", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.ConflictingEvents.show_conflicting = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/ConflictingEvents", "GET", pk, "show_conflicting", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.ConflictingEvents.show_today = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/ConflictingEvents", "GET", pk, "show_today", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.ConflictingEvents.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.cal.Events.ParamsPanel({});
  return new Lino.cal.ConflictingEvents.GridPanel(p);
});
Lino.cal.ConflictingEvents.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/ConflictingEvents", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.ConflictingEvents.create_postings = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/ConflictingEvents", "GET", pk, "create_postings", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.ConflictingEvents.check_plausibility = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/ConflictingEvents", "GET", pk, "check_plausibility", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.ConflictingEvents.update_guests = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/ConflictingEvents", "GET", pk, "update_guests", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.ConflictingEvents.fix_problems = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/ConflictingEvents", "GET", pk, "fix_problems", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.ConflictingEvents.take = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/ConflictingEvents", "GET", pk, "take", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.ConflictingEvents.assign_to_me = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/ConflictingEvents", "GET", pk, "assign_to_me", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.ConflictingEvents.move_next = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/ConflictingEvents", "GET", pk, "move_next", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.ConflictingEvents.create_mail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/ConflictingEvents", "GET", pk, "create_mail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.ConflictingEvents.update_events = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/ConflictingEvents", "GET", pk, "update_events", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.ConflictingEvents.reset_event = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/ConflictingEvents", "GET", pk, "reset_event", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.ConflictingEvents.wf2 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/ConflictingEvents", "GET", pk, "wf2", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.ConflictingEvents.wf3 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/ConflictingEvents", "GET", pk, "wf3", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class cal.EntriesByRoom
Lino.cal.EntriesByRoom.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/cal/EntriesByRoom",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/cal/EntriesByRoom','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/cal/EntriesByRoom','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "itemId": "duplicate", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Duplicate the selected row.") }, "menu_item_text": "\u2687", "overflowText": "\u2687", "panel_btn_handler": Lino.row_action_handler('duplicate','GET',null), "text": " <font size=\"4\">\u2687</font>" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "iconCls": "x-tbar-printer", "itemId": "do_print", "menu_item_text": "Print", "overflowText": "Print", "panel_btn_handler": Lino.row_action_handler('do_print','POST',null), "tooltip": "A print action which uses a cache for the generated printable\ndocument and builds is only when it doesn't yet exist." }, { "auto_save": true, "iconCls": "x-tbar-printer_delete", "itemId": "do_clear_cache", "menu_item_text": "Clear cache", "overflowText": "Clear cache", "panel_btn_handler": Lino.row_action_handler('do_clear_cache','GET',null), "tooltip": "Defines the Clear cache button on a Printable record." }, { "auto_save": true, "itemId": "show_conflicting", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Show events conflicting with this one.") }, "menu_item_text": "\u00a0\u2694\u00a0", "overflowText": "\u00a0\u2694\u00a0", "panel_btn_handler": Lino.row_action_handler('show_conflicting','GET',null), "text": "\u00a0\u2694\u00a0" }, { "auto_save": true, "iconCls": "x-tbar-calendar", "itemId": "show_today", "menu_item_text": "Today", "overflowText": "Today", "panel_btn_handler": Lino.row_action_handler('show_today','GET',null), "tooltip": "Show all calendar events of the same day." }, { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "check_plausibility", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": "Check plausibility", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." }, { "auto_save": true, "itemId": "fix_problems", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": "Fix plausibility problems", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." } ], "menu_item_text": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": null, "xtype": "splitbutton" }, { "auto_save": true, "itemId": "update_guests", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Populate or update the list of participants for this entry\naccording to the suggestions.") }, "menu_item_text": "Update Guests", "overflowText": "Update Guests", "panel_btn_handler": Lino.row_action_handler('update_guests','GET',null), "text": "\u00a0\u2637\u00a0" }, { "auto_save": true, "iconCls": "x-tbar-email_add", "itemId": "create_mail", "menu_item_text": "Create email", "overflowText": "Create email", "panel_btn_handler": Lino.row_action_handler('create_mail','GET',null), "tooltip": "Create an email from this" }, { "auto_save": true, "iconCls": "x-tbar-script_add", "itemId": "create_postings", "menu_item_text": "Create posting", "overflowText": "Create posting", "panel_btn_handler": Lino.row_action_handler('create_postings','GET',null), "tooltip": "Create classical mail postings from this" }, { "auto_save": true, "itemId": "update_events", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create or update the automatic events controlled by this generator.") }, "menu_item_text": "Update Events", "overflowText": "Update Events", "panel_btn_handler": Lino.row_action_handler('update_events','GET',null), "text": "\u00a0\u26a1\u00a0" } ],
  cell_edit : true,
  title : "Calendar entries",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 48,
  ls_store_fields : [ { "name": "when_text" }, { "name": "user" }, 'userHidden', { "name": "summary" }, { "name": "event_type" }, 'event_typeHidden', { "name": "id", "type": "int" }, { "name": "modified" }, { "name": "created" }, { "dateFormat": "d.m.Y", "name": "start_date", "type": "date" }, { "name": "start_time" }, { "dateFormat": "d.m.Y", "name": "end_date", "type": "date" }, { "name": "end_time" }, { "name": "build_time" }, { "name": "build_method" }, 'build_methodHidden', { "name": "assigned_to" }, 'assigned_toHidden', { "name": "owner_type" }, 'owner_typeHidden', { "name": "owner_id" }, 'owner_idHidden', { "name": "description" }, { "name": "access_class" }, 'access_classHidden', { "name": "sequence", "type": "int", "useNull": true }, { "name": "auto_type", "type": "int", "useNull": true }, { "name": "transparent", "type": "boolean" }, { "name": "priority" }, 'priorityHidden', { "name": "state" }, 'stateHidden', { "name": "owner" }, { "name": "calendar" }, 'calendarHidden', { "name": "when_html" }, { "name": "reminder" }, { "name": "all_day", "type": "boolean" }, { "name": "url" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "created_natural" }, { "name": "duration" }, { "name": "room" }, 'roomHidden', { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 6,
  ls_grid_configs : [  ],
  content_type : 19,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.EntriesByRoom.detail;
    this.ls_insert_handler = Lino.cal.EntriesByRoom.insert;
    var ww = this.containing_window;
    var when_text_disp1510 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    var user1511 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a User...", "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/EntriesByRoom/user" }) }) });
    var summary1512 = new Ext.form.TextField({ "maxLength": 200, "selectOnFocus": true });
    var event_type1513 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Calendar entry type...", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/EntriesByRoom/event_type" }) }) });
    var id1514 = new Ext.form.NumberField({ "selectOnFocus": true });
    var modified1515 = new Ext.form.DisplayField({ "disabled": true, "hidden": true, "value": "<br>" });
    var created1516 = new Ext.form.DisplayField({ "disabled": true, "hidden": true, "value": "<br>" });
    var start_date1517 = new Lino.DateField({ "hidden": true, "selectOnFocus": true });
    var start_time1518 = new Lino.TimeField({ "hidden": true, "selectOnFocus": true });
    var end_date1519 = new Lino.DateField({ "hidden": true, "selectOnFocus": true });
    var end_time1520 = new Lino.TimeField({ "hidden": true, "selectOnFocus": true });
    var build_time1521 = new Ext.form.DisplayField({ "disabled": true, "hidden": true, "value": "<br>" });
    var build_method1522 = new Lino.ChoicesFieldElement({ "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": [['','<br>']].concat(Lino.printing.BuildMethods) });
    var assigned_to1523 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a User...", "hidden": true, "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/EntriesByRoom/assigned_to" }) }) });
    var owner_type1524 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a content type...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/EntriesByRoom/owner_type" }) }) });
    var owner_id1525 = new Lino.RemoteComboFieldElement({ "hidden": true, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/EntriesByRoom/owner_id" }) }) });
    var description1526 = new Ext.form.TextArea({ "growMax": 2000, "hidden": true, "selectOnFocus": true });
    var access_class1527 = new Lino.ChoicesFieldElement({ "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": [['','<br>']].concat(Lino.cal.AccessClasses) });
    var sequence1528 = new Ext.form.NumberField({ "allowBlank": false, "hidden": true, "selectOnFocus": true, "value": 0 });
    var auto_type1529 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var transparent1530 = new Ext.form.Checkbox({ "checked": false, "hidden": true, "selectOnFocus": true });
    var priority1531 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Priority...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/EntriesByRoom/priority" }) }) });
    var state1532 = new Lino.ChoicesFieldElement({ "allowBlank": false, "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": Lino.cal.EntryStates });
    var owner_disp1533 = new Ext.form.DisplayField({ "disabled": true, "hidden": true });
    var calendar1534 = new Lino.RemoteComboFieldElement({ "disabled": true, "emptyText": "Select a Calendar...", "hidden": true, "pageSize": 20, "store": new Lino.ComplexRemoteComboStore({  }) });
    var when_html_disp1535 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var reminder_disp1536 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var all_day1537 = new Ext.form.Checkbox({ "hidden": true, "selectOnFocus": true });
    var url_disp1538 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var mobile_item_disp1539 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp1540 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp1541 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp1542 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var created_natural_disp1543 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var duration1544 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(6), "disabled": true, "hidden": true, "maxLength": 6 });
    var room1545 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Room...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/EntriesByRoom/room" }) }) });
    this.before_row_edit = function(record) {
      owner_id1525.setContextValue('owner_type', record ? record.data['owner_typeHidden'] : undefined);
    };
    this.onRender = function(ct, position) {
      owner_type1524.on('change',Lino.chooser_handler(owner_id1525,'owner_type'));
      Lino.cal.EntriesByRoom.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "when_text", "editable": false, "header": "When", "sortable": false, "tooltip": "(cal.EntriesByRoom.when_text) ", "width": Lino.chars2width(21) }, { "colIndex": 1, "dataIndex": "user", "editable": true, "editor": user1511, "filter": { "type": "string" }, "header": "Responsible user", "renderer": Lino.fk_renderer('userHidden','Lino.users.Users.detail'), "sortable": false, "tooltip": "(cal.EntriesByRoom.user) The responsible user.", "width": Lino.chars2width(21) }, { "colIndex": 2, "dataIndex": "summary", "editable": true, "editor": summary1512, "filter": { "type": "string" }, "header": "Short description", "sortable": true, "tooltip": "(cal.EntriesByRoom.summary) A one-line descriptive text.", "width": Lino.chars2width(22) }, { "colIndex": 3, "dataIndex": "event_type", "editable": true, "editor": event_type1513, "filter": { "type": "string" }, "header": "Calendar entry type", "renderer": Lino.fk_renderer('event_typeHidden','Lino.cal.EventTypes.detail'), "sortable": false, "tooltip": "(cal.EntriesByRoom.event_type) The type of this entry. Every calendar entry should have this\nfield pointing to a given EventType, which holds\nextended configurable information about this entry.", "width": Lino.chars2width(21) }, { "align": "right", "colIndex": 4, "dataIndex": "id", "editable": true, "editor": id1514, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "sortable": true, "tooltip": "(cal.EntriesByRoom.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 5, "dataIndex": "modified", "editable": false, "header": "Modified", "hidden": true, "sortable": true, "tooltip": "(cal.EntriesByRoom.modified) ", "width": Lino.chars2width(17) }, { "colIndex": 6, "dataIndex": "created", "editable": false, "header": "Created", "hidden": true, "sortable": true, "tooltip": "(cal.EntriesByRoom.created) The timestame when this object was created.", "width": Lino.chars2width(17) }, { "colIndex": 7, "dataIndex": "start_date", "editable": true, "editor": start_date1517, "filter": { "dateFormat": "d.m.Y", "type": "date" }, "format": "d.m.Y", "header": "Start date", "hidden": true, "sortable": true, "tooltip": "(cal.EntriesByRoom.start_date) ", "width": Lino.chars2width(14), "xtype": "datecolumn" }, { "colIndex": 8, "dataIndex": "start_time", "editable": true, "editor": start_time1518, "header": "Start time", "hidden": true, "sortable": true, "tooltip": "(cal.EntriesByRoom.start_time) ", "width": Lino.chars2width(9) }, { "colIndex": 9, "dataIndex": "end_date", "editable": true, "editor": end_date1519, "filter": { "dateFormat": "d.m.Y", "type": "date" }, "format": "d.m.Y", "header": "End Date", "hidden": true, "sortable": true, "tooltip": "(cal.EntriesByRoom.end_date) ", "width": Lino.chars2width(14), "xtype": "datecolumn" }, { "colIndex": 10, "dataIndex": "end_time", "editable": true, "editor": end_time1520, "header": "End Time", "hidden": true, "sortable": true, "tooltip": "(cal.EntriesByRoom.end_time) These four fields define the duration of this entry.\nOnly start_date is mandatory.", "width": Lino.chars2width(9) }, { "colIndex": 11, "dataIndex": "build_time", "editable": false, "header": "build time", "hidden": true, "sortable": true, "tooltip": "(cal.EntriesByRoom.build_time) Timestamp of the built target file. Contains None\nif no build hasn't been called yet.", "width": Lino.chars2width(17) }, { "colIndex": 12, "dataIndex": "build_method", "editable": true, "editor": build_method1522, "filter": { "type": "string" }, "header": "Build method", "hidden": true, "sortable": false, "tooltip": "(cal.EntriesByRoom.build_method) ", "width": Lino.chars2width(24) }, { "colIndex": 13, "dataIndex": "assigned_to", "editable": true, "editor": assigned_to1523, "filter": { "type": "string" }, "header": "Assigned to", "hidden": true, "renderer": Lino.fk_renderer('assigned_toHidden','Lino.users.Users.detail'), "sortable": false, "tooltip": "(cal.EntriesByRoom.assigned_to) Another user who is expected to take responsibility for this\nentry.", "width": Lino.chars2width(21) }, { "colIndex": 14, "dataIndex": "owner_type", "editable": true, "editor": owner_type1524, "filter": { "type": "string" }, "header": "Controlled by (type)", "hidden": true, "renderer": Lino.fk_renderer('owner_typeHidden','Lino.gfks.ContentTypes.detail'), "sortable": false, "tooltip": "(cal.EntriesByRoom.owner_type) ", "width": Lino.chars2width(21) }, { "colIndex": 15, "dataIndex": "owner_id", "editable": true, "editor": owner_id1525, "filter": { "type": "string" }, "header": "Controlled by (object)", "hidden": true, "sortable": false, "tooltip": "(cal.EntriesByRoom.owner_id) ", "width": Lino.chars2width(11) }, { "colIndex": 16, "dataIndex": "description", "editable": true, "editor": description1526, "filter": { "type": "string" }, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.EntriesByRoom.description) A longer descriptive text.", "width": Lino.chars2width(61) }, { "colIndex": 17, "dataIndex": "access_class", "editable": true, "editor": access_class1527, "filter": { "type": "string" }, "header": "Access Class", "hidden": true, "sortable": false, "tooltip": "(cal.EntriesByRoom.access_class) Whether this is private, public or between.", "width": Lino.chars2width(13) }, { "align": "right", "colIndex": 18, "dataIndex": "sequence", "editable": true, "editor": sequence1528, "filter": { "type": "numeric" }, "format": "0", "header": "Revision", "hidden": true, "sortable": true, "tooltip": "(cal.EntriesByRoom.sequence) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "align": "right", "colIndex": 19, "dataIndex": "auto_type", "editable": true, "editor": auto_type1529, "filter": { "type": "numeric" }, "format": "0", "header": "No.", "hidden": true, "sortable": true, "tooltip": "(cal.EntriesByRoom.auto_type) Contains the sequence number if this is an automatically\ngenerated component. Otherwise this field is empty.", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 20, "dataIndex": "transparent", "editable": true, "filter": { "type": "boolean" }, "header": "Transparent", "hidden": true, "sortable": false, "tooltip": "(cal.EntriesByRoom.transparent) Indicates that this entry shouldn't prevent other entries at\nthe same time.", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 21, "dataIndex": "priority", "editable": true, "editor": priority1531, "filter": { "type": "string" }, "header": "Priority", "hidden": true, "sortable": false, "tooltip": "(cal.EntriesByRoom.priority) ", "width": Lino.chars2width(21) }, { "colIndex": 22, "dataIndex": "state", "editable": true, "editor": state1532, "filter": { "type": "string" }, "header": "State", "hidden": true, "sortable": false, "tooltip": "(cal.EntriesByRoom.state) The state of this entry. The state can change according to\nrules defined by the workflow, that's why we sometimes refer\nto it as the life cycle.", "width": Lino.chars2width(14) }, { "colIndex": 23, "dataIndex": "owner", "editable": false, "header": "Controlled by", "hidden": true, "sortable": false, "tooltip": "(cal.EntriesByRoom.owner) ", "width": Lino.chars2width(11) }, { "colIndex": 24, "dataIndex": "calendar", "editable": false, "header": "Calendar", "hidden": true, "renderer": Lino.fk_renderer('calendarHidden','Lino.cal.Calendars.detail'), "sortable": false, "tooltip": "(cal.EntriesByRoom.calendar) ", "width": Lino.chars2width(21) }, { "colIndex": 25, "dataIndex": "when_html", "editable": false, "header": "When", "hidden": true, "sortable": false, "tooltip": "(cal.EntriesByRoom.when_html) ", "width": Lino.chars2width(31) }, { "colIndex": 26, "dataIndex": "reminder", "editable": false, "header": "Reminder", "hidden": true, "sortable": false, "tooltip": "(cal.EntriesByRoom.reminder) ", "width": Lino.chars2width(31) }, { "colIndex": 27, "dataIndex": "all_day", "editable": true, "header": "all day", "hidden": true, "sortable": false, "tooltip": "(cal.EntriesByRoom.all_day) ", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 28, "dataIndex": "url", "editable": false, "header": "Link URL", "hidden": true, "sortable": false, "tooltip": "(cal.EntriesByRoom.url) ", "width": Lino.chars2width(31) }, { "colIndex": 29, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.EntriesByRoom.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 30, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.EntriesByRoom.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 31, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(cal.EntriesByRoom.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 32, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(cal.EntriesByRoom.workflow_buttons) ", "width": Lino.chars2width(31) }, { "colIndex": 33, "dataIndex": "created_natural", "editable": false, "header": "Created", "hidden": true, "sortable": false, "tooltip": "(cal.EntriesByRoom.created_natural) ", "width": Lino.chars2width(31) }, { "align": "right", "colIndex": 34, "dataIndex": "duration", "editable": false, "format": "", "header": "Duration", "hidden": true, "sortable": false, "tooltip": "(cal.EntriesByRoom.duration) ", "width": Lino.chars2width(8) }, { "colIndex": 35, "dataIndex": "room", "editable": true, "editor": room1545, "filter": { "type": "string" }, "header": "Room", "hidden": true, "renderer": Lino.fk_renderer('roomHidden','Lino.cal.Rooms.detail'), "sortable": false, "tooltip": "(cal.EntriesByRoom.room) ", "width": Lino.chars2width(21) } ];
    Lino.cal.EntriesByRoom.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.EntriesByRoom.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByRoom", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByRoom.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByRoom", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByRoom.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByRoom", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.cal.EntriesByRoom.insertPanel = Ext.extend(Lino.cal.Events.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/cal/EntriesByRoom",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.EntriesByRoom.detail;
    this.ls_insert_handler = Lino.cal.EntriesByRoom.insert;
    Lino.cal.EntriesByRoom.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.EntriesByRoom.insert = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.cal.EntriesByRoom.insertPanel(p);
});
Lino.cal.EntriesByRoom.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByRoom", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByRoom.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByRoom", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByRoom.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByRoom", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByRoom.duplicate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByRoom", "GET", pk, "duplicate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.cal.EntriesByRoom.detailPanel = Ext.extend(Lino.cal.Events.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "itemId": "duplicate", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Duplicate the selected row.") }, "menu_item_text": "\u2687", "overflowText": "\u2687", "panel_btn_handler": Lino.row_action_handler('duplicate','GET',null), "text": " <font size=\"4\">\u2687</font>" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "iconCls": "x-tbar-printer", "itemId": "do_print", "menu_item_text": "Print", "overflowText": "Print", "panel_btn_handler": Lino.row_action_handler('do_print','POST',null), "tooltip": "A print action which uses a cache for the generated printable\ndocument and builds is only when it doesn't yet exist." }, { "auto_save": true, "iconCls": "x-tbar-printer_delete", "itemId": "do_clear_cache", "menu_item_text": "Clear cache", "overflowText": "Clear cache", "panel_btn_handler": Lino.row_action_handler('do_clear_cache','GET',null), "tooltip": "Defines the Clear cache button on a Printable record." }, { "auto_save": true, "itemId": "show_conflicting", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Show events conflicting with this one.") }, "menu_item_text": "\u00a0\u2694\u00a0", "overflowText": "\u00a0\u2694\u00a0", "panel_btn_handler": Lino.row_action_handler('show_conflicting','GET',null), "text": "\u00a0\u2694\u00a0" }, { "auto_save": true, "iconCls": "x-tbar-calendar", "itemId": "show_today", "menu_item_text": "Today", "overflowText": "Today", "panel_btn_handler": Lino.row_action_handler('show_today','GET',null), "tooltip": "Show all calendar events of the same day." }, { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "check_plausibility", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": "Check plausibility", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." }, { "auto_save": true, "itemId": "fix_problems", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": "Fix plausibility problems", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." } ], "menu_item_text": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": null, "xtype": "splitbutton" }, { "auto_save": true, "itemId": "update_guests", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Populate or update the list of participants for this entry\naccording to the suggestions.") }, "menu_item_text": "Update Guests", "overflowText": "Update Guests", "panel_btn_handler": Lino.row_action_handler('update_guests','GET',null), "text": "\u00a0\u2637\u00a0" }, { "auto_save": true, "iconCls": "x-tbar-email_add", "itemId": "create_mail", "menu_item_text": "Create email", "overflowText": "Create email", "panel_btn_handler": Lino.row_action_handler('create_mail','GET',null), "tooltip": "Create an email from this" }, { "auto_save": true, "iconCls": "x-tbar-script_add", "itemId": "create_postings", "menu_item_text": "Create posting", "overflowText": "Create posting", "panel_btn_handler": Lino.row_action_handler('create_postings','GET',null), "tooltip": "Create classical mail postings from this" }, { "auto_save": true, "itemId": "update_events", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create or update the automatic events controlled by this generator.") }, "menu_item_text": "Update Events", "overflowText": "Update Events", "panel_btn_handler": Lino.row_action_handler('update_events','GET',null), "text": "\u00a0\u26a1\u00a0" } ],
  ls_url: "/cal/EntriesByRoom",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.EntriesByRoom.detail;
    this.ls_insert_handler = Lino.cal.EntriesByRoom.insert;
    Lino.cal.EntriesByRoom.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.EntriesByRoom.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.cal.EntriesByRoom.detailPanel(p);
});
Lino.cal.EntriesByRoom.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByRoom", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByRoom.do_print = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByRoom", "POST", pk, "do_print", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByRoom.do_clear_cache = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByRoom", "GET", pk, "do_clear_cache", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByRoom.show_conflicting = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByRoom", "GET", pk, "show_conflicting", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByRoom.show_today = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByRoom", "GET", pk, "show_today", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByRoom.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.cal.Events.ParamsPanel({});
  return new Lino.cal.EntriesByRoom.GridPanel(p);
});
Lino.cal.EntriesByRoom.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByRoom", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByRoom.check_plausibility = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByRoom", "GET", pk, "check_plausibility", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByRoom.update_guests = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByRoom", "GET", pk, "update_guests", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByRoom.fix_problems = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByRoom", "GET", pk, "fix_problems", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByRoom.move_next = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByRoom", "GET", pk, "move_next", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByRoom.assign_to_me = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByRoom", "GET", pk, "assign_to_me", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByRoom.create_mail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByRoom", "GET", pk, "create_mail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByRoom.create_postings = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByRoom", "GET", pk, "create_postings", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByRoom.take = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByRoom", "GET", pk, "take", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByRoom.update_events = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByRoom", "GET", pk, "update_events", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByRoom.reset_event = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByRoom", "GET", pk, "reset_event", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByRoom.wf2 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByRoom", "GET", pk, "wf2", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByRoom.wf3 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByRoom", "GET", pk, "wf3", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class addresses.AddressesByPartner
Lino.addresses.AddressesByPartner.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/addresses/AddressesByPartner",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/addresses/AddressesByPartner','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/addresses/AddressesByPartner','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "Addresses",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 28,
  ls_store_fields : [ { "name": "address_type" }, 'address_typeHidden', { "name": "remark" }, { "name": "address_column" }, { "name": "primary", "type": "boolean" }, { "name": "id", "type": "int" }, { "name": "country" }, 'countryHidden', { "name": "city" }, 'cityHidden', { "name": "zip_code" }, { "name": "region" }, 'regionHidden', { "name": "addr1" }, { "name": "street_prefix" }, { "name": "street" }, { "name": "street_no" }, { "name": "street_box" }, { "name": "addr2" }, { "name": "data_source" }, 'data_sourceHidden', { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "partner" }, 'partnerHidden', { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 5,
  ls_grid_configs : [  ],
  content_type : 27,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.addresses.AddressesByPartner.detail;
    this.ls_insert_handler = Lino.addresses.AddressesByPartner.insert;
    var ww = this.containing_window;
    var address_type3390 = new Lino.ChoicesFieldElement({ "allowBlank": false, "forceSelection": true, "selectOnFocus": true, "store": Lino.addresses.AddressTypes });
    var remark3391 = new Ext.form.TextField({ "maxLength": 50, "selectOnFocus": true });
    var address_column_disp3392 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    var primary3393 = new Ext.form.Checkbox({ "checked": false, "selectOnFocus": true });
    var id3394 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var country3395 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Country...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/addresses/AddressesByPartner/country" }) }) });
    var city3396 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Place...", "forceSelection": false, "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/addresses/AddressesByPartner/city" }) }) });
    var zip_code3397 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(10), "hidden": true, "maxLength": 10, "selectOnFocus": true });
    var region3398 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Place...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/addresses/AddressesByPartner/region" }) }) });
    var addr13399 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var street_prefix3400 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var street3401 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var street_no3402 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(10), "hidden": true, "maxLength": 10, "selectOnFocus": true });
    var street_box3403 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(10), "hidden": true, "maxLength": 10, "selectOnFocus": true });
    var addr23404 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var data_source3405 = new Lino.ChoicesFieldElement({ "disabled": true, "forceSelection": true, "hidden": true, "store": Lino.addresses.DataSources });
    var mobile_item_disp3406 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp3407 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp3408 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp3409 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var partner3410 = new Lino.RemoteComboFieldElement({ "allowBlank": false, "emptyText": "Select a Person...", "hidden": true, "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/addresses/AddressesByPartner/partner" }) }) });
    this.before_row_edit = function(record) {
      city3396.setContextValue('country', record ? record.data['countryHidden'] : undefined);
      city3396.setContextValue('region', record ? record.data['regionHidden'] : undefined);
      region3398.setContextValue('country', record ? record.data['countryHidden'] : undefined);
    };
    this.onRender = function(ct, position) {
      country3395.on('change',Lino.chooser_handler(city3396,'country'));
      region3398.on('change',Lino.chooser_handler(city3396,'region'));
      country3395.on('change',Lino.chooser_handler(region3398,'country'));
      Lino.addresses.AddressesByPartner.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "address_type", "editable": true, "editor": address_type3390, "filter": { "type": "string" }, "header": "Address type", "sortable": false, "tooltip": "(addresses.AddressesByPartner.address_type) ", "width": Lino.chars2width(11) }, { "colIndex": 1, "dataIndex": "remark", "editable": true, "editor": remark3391, "filter": { "type": "string" }, "header": "Remark", "sortable": true, "tooltip": "(addresses.AddressesByPartner.remark) ", "width": Lino.chars2width(11) }, { "colIndex": 2, "dataIndex": "address_column", "editable": false, "header": "Address", "sortable": false, "tooltip": "(addresses.AddressesByPartner.address_column) ", "width": Lino.chars2width(31) }, { "colIndex": 3, "dataIndex": "primary", "editable": true, "filter": { "type": "boolean" }, "header": "Primary", "sortable": false, "tooltip": "(addresses.AddressesByPartner.primary) Checking this field will automatically uncheck any previous primary addresses and update the partner's address data fields.", "width": Lino.chars2width(6), "xtype": "checkcolumn" }, { "align": "right", "colIndex": 4, "dataIndex": "id", "editable": true, "editor": id3394, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(addresses.AddressesByPartner.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 5, "dataIndex": "country", "editable": true, "editor": country3395, "filter": { "type": "string" }, "header": "Country", "hidden": true, "renderer": Lino.fk_renderer('countryHidden','Lino.countries.Countries.detail'), "sortable": false, "tooltip": "(addresses.AddressesByPartner.country) ", "width": Lino.chars2width(21) }, { "colIndex": 6, "dataIndex": "city", "editable": true, "editor": city3396, "filter": { "type": "string" }, "header": "City", "hidden": true, "renderer": Lino.fk_renderer('cityHidden','Lino.countries.Places.detail'), "sortable": false, "tooltip": "(addresses.AddressesByPartner.city) A pointer to the Place which is used as city.", "width": Lino.chars2width(21) }, { "colIndex": 7, "dataIndex": "zip_code", "editable": true, "editor": zip_code3397, "filter": { "type": "string" }, "header": "Zip code", "hidden": true, "sortable": true, "tooltip": "(addresses.AddressesByPartner.zip_code) ", "width": Lino.chars2width(12) }, { "colIndex": 8, "dataIndex": "region", "editable": true, "editor": region3398, "filter": { "type": "string" }, "header": "County", "hidden": true, "renderer": Lino.fk_renderer('regionHidden','Lino.countries.Places.detail'), "sortable": false, "tooltip": "(addresses.AddressesByPartner.region) ", "width": Lino.chars2width(21) }, { "colIndex": 9, "dataIndex": "addr1", "editable": true, "editor": addr13399, "filter": { "type": "string" }, "header": "Address line before street", "hidden": true, "sortable": true, "tooltip": "(addresses.AddressesByPartner.addr1) Address line before street", "width": Lino.chars2width(22) }, { "colIndex": 10, "dataIndex": "street_prefix", "editable": true, "editor": street_prefix3400, "filter": { "type": "string" }, "header": "Street prefix", "hidden": true, "sortable": true, "tooltip": "(addresses.AddressesByPartner.street_prefix) Text to print before name of street, but to ignore for sorting.", "width": Lino.chars2width(22) }, { "colIndex": 11, "dataIndex": "street", "editable": true, "editor": street3401, "filter": { "type": "string" }, "header": "Street", "hidden": true, "sortable": true, "tooltip": "(addresses.AddressesByPartner.street) Name of street, without house number.", "width": Lino.chars2width(22) }, { "colIndex": 12, "dataIndex": "street_no", "editable": true, "editor": street_no3402, "filter": { "type": "string" }, "header": "No.", "hidden": true, "sortable": true, "tooltip": "(addresses.AddressesByPartner.street_no) House number.", "width": Lino.chars2width(12) }, { "colIndex": 13, "dataIndex": "street_box", "editable": true, "editor": street_box3403, "filter": { "type": "string" }, "header": "Box", "hidden": true, "sortable": true, "tooltip": "(addresses.AddressesByPartner.street_box) Text to print after street nuber on the same line.", "width": Lino.chars2width(12) }, { "colIndex": 14, "dataIndex": "addr2", "editable": true, "editor": addr23404, "filter": { "type": "string" }, "header": "Address line after street", "hidden": true, "sortable": true, "tooltip": "(addresses.AddressesByPartner.addr2) Address line to print below street line.", "width": Lino.chars2width(22) }, { "colIndex": 15, "dataIndex": "data_source", "editable": false, "filter": { "type": "string" }, "header": "Data source", "hidden": true, "sortable": false, "tooltip": "(addresses.AddressesByPartner.data_source) Pointer to choicelists.DataSources.", "width": Lino.chars2width(20) }, { "colIndex": 16, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(addresses.AddressesByPartner.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 17, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(addresses.AddressesByPartner.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 18, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(addresses.AddressesByPartner.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 19, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(addresses.AddressesByPartner.workflow_buttons) ", "width": Lino.chars2width(31) }, { "colIndex": 20, "dataIndex": "partner", "editable": true, "editor": partner3410, "filter": { "type": "string" }, "header": "Person", "hidden": true, "renderer": Lino.fk_renderer('partnerHidden','Lino.contacts.Persons.detail'), "sortable": false, "tooltip": "(addresses.AddressesByPartner.partner) ", "width": Lino.chars2width(21) } ];
    Lino.addresses.AddressesByPartner.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.addresses.AddressesByPartner.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/addresses/AddressesByPartner", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.addresses.AddressesByPartner.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/addresses/AddressesByPartner", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.addresses.AddressesByPartner.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/addresses/AddressesByPartner", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.addresses.AddressesByPartner.insertPanel = Ext.extend(Lino.addresses.Addresses.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/addresses/AddressesByPartner",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.addresses.AddressesByPartner.detail;
    this.ls_insert_handler = Lino.addresses.AddressesByPartner.insert;
    Lino.addresses.AddressesByPartner.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.addresses.AddressesByPartner.insert = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.addresses.AddressesByPartner.insertPanel(p);
});
Lino.addresses.AddressesByPartner.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/addresses/AddressesByPartner", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.addresses.AddressesByPartner.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/addresses/AddressesByPartner", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.addresses.AddressesByPartner.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/addresses/AddressesByPartner", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.addresses.AddressesByPartner.detailPanel = Ext.extend(Lino.addresses.Addresses.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  ls_url: "/addresses/AddressesByPartner",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.addresses.AddressesByPartner.detail;
    this.ls_insert_handler = Lino.addresses.AddressesByPartner.insert;
    Lino.addresses.AddressesByPartner.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.addresses.AddressesByPartner.detail = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "is_main_window": true };
  return new Lino.addresses.AddressesByPartner.detailPanel(p);
});
Lino.addresses.AddressesByPartner.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/addresses/AddressesByPartner", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.addresses.AddressesByPartner.grid = new Lino.WindowAction({ "draggable": true, "height": Lino.rows2height(20), "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(80) }, function(){
  var p = { "is_main_window": true };
  return new Lino.addresses.AddressesByPartner.GridPanel(p);
});
Lino.addresses.AddressesByPartner.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/addresses/AddressesByPartner", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class addresses.AddressesByCity
Lino.addresses.AddressesByCity.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/addresses/AddressesByCity",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/addresses/AddressesByCity','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/addresses/AddressesByCity','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "Addresses",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 28,
  ls_store_fields : [ { "name": "address_type" }, 'address_typeHidden', { "name": "partner" }, 'partnerHidden', { "name": "remark" }, { "name": "street" }, { "name": "primary", "type": "boolean" }, { "name": "id", "type": "int" }, { "name": "country" }, 'countryHidden', { "name": "zip_code" }, { "name": "region" }, 'regionHidden', { "name": "addr1" }, { "name": "street_prefix" }, { "name": "street_no" }, { "name": "street_box" }, { "name": "addr2" }, { "name": "data_source" }, 'data_sourceHidden', { "name": "address_column" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "city" }, 'cityHidden', { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 7,
  ls_grid_configs : [  ],
  content_type : 27,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.addresses.AddressesByCity.detail;
    this.ls_insert_handler = Lino.addresses.AddressesByCity.insert;
    var ww = this.containing_window;
    var address_type1261 = new Lino.ChoicesFieldElement({ "allowBlank": false, "forceSelection": true, "selectOnFocus": true, "store": Lino.addresses.AddressTypes });
    var partner1262 = new Lino.RemoteComboFieldElement({ "allowBlank": false, "emptyText": "Select a Person...", "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/addresses/AddressesByCity/partner" }) }) });
    var remark1263 = new Ext.form.TextField({ "maxLength": 50, "selectOnFocus": true });
    var street1264 = new Ext.form.TextField({ "maxLength": 200, "selectOnFocus": true });
    var primary1265 = new Ext.form.Checkbox({ "checked": false, "selectOnFocus": true });
    var id1266 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var country1267 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Country...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/addresses/AddressesByCity/country" }) }) });
    var zip_code1268 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(10), "hidden": true, "maxLength": 10, "selectOnFocus": true });
    var region1269 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Place...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/addresses/AddressesByCity/region" }) }) });
    var addr11270 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var street_prefix1271 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var street_no1272 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(10), "hidden": true, "maxLength": 10, "selectOnFocus": true });
    var street_box1273 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(10), "hidden": true, "maxLength": 10, "selectOnFocus": true });
    var addr21274 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var data_source1275 = new Lino.ChoicesFieldElement({ "disabled": true, "forceSelection": true, "hidden": true, "store": Lino.addresses.DataSources });
    var address_column_disp1276 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var mobile_item_disp1277 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp1278 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp1279 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp1280 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var city1281 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Place...", "forceSelection": false, "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/addresses/AddressesByCity/city" }) }) });
    this.before_row_edit = function(record) {
      region1269.setContextValue('country', record ? record.data['countryHidden'] : undefined);
      city1281.setContextValue('country', record ? record.data['countryHidden'] : undefined);
      city1281.setContextValue('region', record ? record.data['regionHidden'] : undefined);
    };
    this.onRender = function(ct, position) {
      country1267.on('change',Lino.chooser_handler(region1269,'country'));
      country1267.on('change',Lino.chooser_handler(city1281,'country'));
      region1269.on('change',Lino.chooser_handler(city1281,'region'));
      Lino.addresses.AddressesByCity.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "address_type", "editable": true, "editor": address_type1261, "filter": { "type": "string" }, "header": "Address type", "sortable": false, "tooltip": "(addresses.AddressesByCity.address_type) ", "width": Lino.chars2width(11) }, { "colIndex": 1, "dataIndex": "partner", "editable": true, "editor": partner1262, "filter": { "type": "string" }, "header": "Person", "renderer": Lino.fk_renderer('partnerHidden','Lino.contacts.Persons.detail'), "sortable": false, "tooltip": "(addresses.AddressesByCity.partner) ", "width": Lino.chars2width(21) }, { "colIndex": 2, "dataIndex": "remark", "editable": true, "editor": remark1263, "filter": { "type": "string" }, "header": "Remark", "sortable": true, "tooltip": "(addresses.AddressesByCity.remark) ", "width": Lino.chars2width(11) }, { "colIndex": 3, "dataIndex": "street", "editable": true, "editor": street1264, "filter": { "type": "string" }, "header": "Street", "sortable": true, "tooltip": "(addresses.AddressesByCity.street) Name of street, without house number.", "width": Lino.chars2width(22) }, { "colIndex": 4, "dataIndex": "primary", "editable": true, "filter": { "type": "boolean" }, "header": "Primary", "sortable": false, "tooltip": "(addresses.AddressesByCity.primary) Checking this field will automatically uncheck any previous primary addresses and update the partner's address data fields.", "width": Lino.chars2width(6), "xtype": "checkcolumn" }, { "align": "right", "colIndex": 5, "dataIndex": "id", "editable": true, "editor": id1266, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(addresses.AddressesByCity.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 6, "dataIndex": "country", "editable": true, "editor": country1267, "filter": { "type": "string" }, "header": "Country", "hidden": true, "renderer": Lino.fk_renderer('countryHidden','Lino.countries.Countries.detail'), "sortable": false, "tooltip": "(addresses.AddressesByCity.country) ", "width": Lino.chars2width(21) }, { "colIndex": 7, "dataIndex": "zip_code", "editable": true, "editor": zip_code1268, "filter": { "type": "string" }, "header": "Zip code", "hidden": true, "sortable": true, "tooltip": "(addresses.AddressesByCity.zip_code) ", "width": Lino.chars2width(12) }, { "colIndex": 8, "dataIndex": "region", "editable": true, "editor": region1269, "filter": { "type": "string" }, "header": "County", "hidden": true, "renderer": Lino.fk_renderer('regionHidden','Lino.countries.Places.detail'), "sortable": false, "tooltip": "(addresses.AddressesByCity.region) ", "width": Lino.chars2width(21) }, { "colIndex": 9, "dataIndex": "addr1", "editable": true, "editor": addr11270, "filter": { "type": "string" }, "header": "Address line before street", "hidden": true, "sortable": true, "tooltip": "(addresses.AddressesByCity.addr1) Address line before street", "width": Lino.chars2width(22) }, { "colIndex": 10, "dataIndex": "street_prefix", "editable": true, "editor": street_prefix1271, "filter": { "type": "string" }, "header": "Street prefix", "hidden": true, "sortable": true, "tooltip": "(addresses.AddressesByCity.street_prefix) Text to print before name of street, but to ignore for sorting.", "width": Lino.chars2width(22) }, { "colIndex": 11, "dataIndex": "street_no", "editable": true, "editor": street_no1272, "filter": { "type": "string" }, "header": "No.", "hidden": true, "sortable": true, "tooltip": "(addresses.AddressesByCity.street_no) House number.", "width": Lino.chars2width(12) }, { "colIndex": 12, "dataIndex": "street_box", "editable": true, "editor": street_box1273, "filter": { "type": "string" }, "header": "Box", "hidden": true, "sortable": true, "tooltip": "(addresses.AddressesByCity.street_box) Text to print after street nuber on the same line.", "width": Lino.chars2width(12) }, { "colIndex": 13, "dataIndex": "addr2", "editable": true, "editor": addr21274, "filter": { "type": "string" }, "header": "Address line after street", "hidden": true, "sortable": true, "tooltip": "(addresses.AddressesByCity.addr2) Address line to print below street line.", "width": Lino.chars2width(22) }, { "colIndex": 14, "dataIndex": "data_source", "editable": false, "filter": { "type": "string" }, "header": "Data source", "hidden": true, "sortable": false, "tooltip": "(addresses.AddressesByCity.data_source) Pointer to choicelists.DataSources.", "width": Lino.chars2width(20) }, { "colIndex": 15, "dataIndex": "address_column", "editable": false, "header": "Address", "hidden": true, "sortable": false, "tooltip": "(addresses.AddressesByCity.address_column) ", "width": Lino.chars2width(31) }, { "colIndex": 16, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(addresses.AddressesByCity.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 17, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(addresses.AddressesByCity.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 18, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(addresses.AddressesByCity.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 19, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(addresses.AddressesByCity.workflow_buttons) ", "width": Lino.chars2width(31) }, { "colIndex": 20, "dataIndex": "city", "editable": true, "editor": city1281, "filter": { "type": "string" }, "header": "City", "hidden": true, "renderer": Lino.fk_renderer('cityHidden','Lino.countries.Places.detail'), "sortable": false, "tooltip": "(addresses.AddressesByCity.city) A pointer to the Place which is used as city.", "width": Lino.chars2width(21) } ];
    Lino.addresses.AddressesByCity.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.addresses.AddressesByCity.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/addresses/AddressesByCity", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.addresses.AddressesByCity.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/addresses/AddressesByCity", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.addresses.AddressesByCity.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/addresses/AddressesByCity", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.addresses.AddressesByCity.insertPanel = Ext.extend(Lino.addresses.Addresses.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/addresses/AddressesByCity",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.addresses.AddressesByCity.detail;
    this.ls_insert_handler = Lino.addresses.AddressesByCity.insert;
    Lino.addresses.AddressesByCity.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.addresses.AddressesByCity.insert = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.addresses.AddressesByCity.insertPanel(p);
});
Lino.addresses.AddressesByCity.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/addresses/AddressesByCity", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.addresses.AddressesByCity.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/addresses/AddressesByCity", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.addresses.AddressesByCity.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/addresses/AddressesByCity", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.addresses.AddressesByCity.detailPanel = Ext.extend(Lino.addresses.Addresses.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  ls_url: "/addresses/AddressesByCity",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.addresses.AddressesByCity.detail;
    this.ls_insert_handler = Lino.addresses.AddressesByCity.insert;
    Lino.addresses.AddressesByCity.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.addresses.AddressesByCity.detail = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "is_main_window": true };
  return new Lino.addresses.AddressesByCity.detailPanel(p);
});
Lino.addresses.AddressesByCity.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/addresses/AddressesByCity", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.addresses.AddressesByCity.grid = new Lino.WindowAction({ "draggable": true, "height": Lino.rows2height(20), "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(80) }, function(){
  var p = { "is_main_window": true };
  return new Lino.addresses.AddressesByCity.GridPanel(p);
});
Lino.addresses.AddressesByCity.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/addresses/AddressesByCity", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class phones.ContactDetailsByPartner
Lino.phones.ContactDetailsByPartner.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/phones/ContactDetailsByPartner",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/phones/ContactDetailsByPartner','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/phones/ContactDetailsByPartner','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "Contact Details",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 20,
  ls_store_fields : [ { "name": "detail_type" }, 'detail_typeHidden', { "name": "remark" }, { "name": "overview" }, { "name": "primary", "type": "boolean" }, { "name": "id", "type": "int" }, { "name": "email" }, { "name": "language" }, 'languageHidden', { "name": "url" }, { "name": "phone" }, { "name": "gsm" }, { "name": "fax" }, { "name": "value" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "workflow_buttons" }, { "name": "partner" }, 'partnerHidden', { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 5,
  ls_grid_configs : [  ],
  content_type : 28,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.phones.ContactDetailsByPartner.detail;
    this.ls_insert_handler = Lino.phones.ContactDetailsByPartner.insert;
    var ww = this.containing_window;
    var detail_type3412 = new Lino.ChoicesFieldElement({ "allowBlank": false, "forceSelection": true, "selectOnFocus": true, "store": Lino.phones.ContactDetailTypes });
    var remark3413 = new Ext.form.TextField({ "maxLength": 200, "selectOnFocus": true });
    var overview_disp3414 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    var primary3415 = new Ext.form.Checkbox({ "checked": false, "selectOnFocus": true });
    var id3416 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var email3417 = new Ext.form.TextField({ "hidden": true, "maxLength": 254, "selectOnFocus": true });
    var language3418 = new Lino.ChoicesFieldElement({ "hidden": true, "selectOnFocus": true, "store": [ [ "en-us", "American English" ] ] });
    var url3419 = new Lino.URLField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var phone3420 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var gsm3421 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var fax3422 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var value3423 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var mobile_item_disp3424 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp3425 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp3426 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var partner3427 = new Lino.RemoteComboFieldElement({ "allowBlank": false, "emptyText": "Select a Partner...", "hidden": true, "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/phones/ContactDetailsByPartner/partner" }) }) });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "detail_type", "editable": true, "editor": detail_type3412, "filter": { "type": "string" }, "header": "Contact Detail Type", "sortable": false, "tooltip": "(phones.ContactDetailsByPartner.detail_type) ", "width": Lino.chars2width(11) }, { "colIndex": 1, "dataIndex": "remark", "editable": true, "editor": remark3413, "filter": { "type": "string" }, "header": "Remark", "sortable": true, "tooltip": "(phones.ContactDetailsByPartner.remark) ", "width": Lino.chars2width(11) }, { "colIndex": 2, "dataIndex": "overview", "editable": false, "header": "overview", "sortable": false, "tooltip": "(phones.ContactDetailsByPartner.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 3, "dataIndex": "primary", "editable": true, "filter": { "type": "boolean" }, "header": "Primary", "sortable": false, "tooltip": "(phones.ContactDetailsByPartner.primary) ", "width": Lino.chars2width(6), "xtype": "checkcolumn" }, { "align": "right", "colIndex": 4, "dataIndex": "id", "editable": true, "editor": id3416, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(phones.ContactDetailsByPartner.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 5, "dataIndex": "email", "editable": true, "editor": email3417, "filter": { "type": "string" }, "header": "e-mail address", "hidden": true, "sortable": true, "tooltip": "(phones.ContactDetailsByPartner.email) ", "width": Lino.chars2width(22) }, { "colIndex": 6, "dataIndex": "language", "editable": true, "editor": language3418, "filter": { "type": "string" }, "header": "Language", "hidden": true, "sortable": false, "tooltip": "(phones.ContactDetailsByPartner.language) ", "width": Lino.chars2width(21) }, { "colIndex": 7, "dataIndex": "url", "editable": true, "editor": url3419, "filter": { "type": "string" }, "header": "URL", "hidden": true, "sortable": true, "tooltip": "(phones.ContactDetailsByPartner.url) ", "width": Lino.chars2width(22) }, { "colIndex": 8, "dataIndex": "phone", "editable": true, "editor": phone3420, "filter": { "type": "string" }, "header": "Phone", "hidden": true, "sortable": true, "tooltip": "(phones.ContactDetailsByPartner.phone) ", "width": Lino.chars2width(22) }, { "colIndex": 9, "dataIndex": "gsm", "editable": true, "editor": gsm3421, "filter": { "type": "string" }, "header": "GSM", "hidden": true, "sortable": true, "tooltip": "(phones.ContactDetailsByPartner.gsm) ", "width": Lino.chars2width(22) }, { "colIndex": 10, "dataIndex": "fax", "editable": true, "editor": fax3422, "filter": { "type": "string" }, "header": "Fax", "hidden": true, "sortable": true, "tooltip": "(phones.ContactDetailsByPartner.fax) ", "width": Lino.chars2width(22) }, { "colIndex": 11, "dataIndex": "value", "editable": true, "editor": value3423, "filter": { "type": "string" }, "header": "Value", "hidden": true, "sortable": true, "tooltip": "(phones.ContactDetailsByPartner.value) ", "width": Lino.chars2width(22) }, { "colIndex": 12, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(phones.ContactDetailsByPartner.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 13, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(phones.ContactDetailsByPartner.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 14, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(phones.ContactDetailsByPartner.workflow_buttons) ", "width": Lino.chars2width(31) }, { "colIndex": 15, "dataIndex": "partner", "editable": true, "editor": partner3427, "filter": { "type": "string" }, "header": "Partner", "hidden": true, "renderer": Lino.fk_renderer('partnerHidden','Lino.contacts.Partners.detail'), "sortable": false, "tooltip": "(phones.ContactDetailsByPartner.partner) ", "width": Lino.chars2width(21) } ];
    Lino.phones.ContactDetailsByPartner.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.phones.ContactDetailsByPartner.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/phones/ContactDetailsByPartner", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.phones.ContactDetailsByPartner.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/phones/ContactDetailsByPartner", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.phones.ContactDetailsByPartner.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/phones/ContactDetailsByPartner", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.phones.ContactDetailsByPartner.insertPanel = Ext.extend(Lino.phones.ContactDetails.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/phones/ContactDetailsByPartner",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.phones.ContactDetailsByPartner.detail;
    this.ls_insert_handler = Lino.phones.ContactDetailsByPartner.insert;
    Lino.phones.ContactDetailsByPartner.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.phones.ContactDetailsByPartner.insert = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.phones.ContactDetailsByPartner.insertPanel(p);
});
Lino.phones.ContactDetailsByPartner.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/phones/ContactDetailsByPartner", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.phones.ContactDetailsByPartner.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/phones/ContactDetailsByPartner", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.phones.ContactDetailsByPartner.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/phones/ContactDetailsByPartner", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.phones.ContactDetailsByPartner.detailPanel = Ext.extend(Lino.phones.ContactDetails.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  ls_url: "/phones/ContactDetailsByPartner",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.phones.ContactDetailsByPartner.detail;
    this.ls_insert_handler = Lino.phones.ContactDetailsByPartner.insert;
    Lino.phones.ContactDetailsByPartner.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.phones.ContactDetailsByPartner.detail = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "is_main_window": true };
  return new Lino.phones.ContactDetailsByPartner.detailPanel(p);
});
Lino.phones.ContactDetailsByPartner.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/phones/ContactDetailsByPartner", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.phones.ContactDetailsByPartner.grid = new Lino.WindowAction({ "draggable": true, "height": Lino.rows2height(20), "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(80) }, function(){
  var p = { "is_main_window": true };
  return new Lino.phones.ContactDetailsByPartner.GridPanel(p);
});
Lino.phones.ContactDetailsByPartner.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/phones/ContactDetailsByPartner", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class households.HouseholdsByType
Lino.households.HouseholdsByType.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/households/HouseholdsByType",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/households/HouseholdsByType','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/households/HouseholdsByType','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "iconCls": "x-tbar-lightning", "itemId": "populate_members", "menu_item_text": "Populate", "overflowText": "Populate", "panel_btn_handler": Lino.row_action_handler('populate_members','GET',null), "tooltip": "Populate" } ],
  cell_edit : true,
  title : "Households",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 34,
  ls_store_fields : [ { "name": "name" }, { "name": "email" }, { "name": "language" }, 'languageHidden', { "name": "url" }, { "name": "phone" }, { "name": "gsm" }, { "name": "fax" }, { "name": "country" }, 'countryHidden', { "name": "city" }, 'cityHidden', { "name": "zip_code" }, { "name": "region" }, 'regionHidden', { "name": "addr1" }, { "name": "street_prefix" }, { "name": "street" }, { "name": "street_no" }, { "name": "street_box" }, { "name": "addr2" }, { "name": "prefix" }, { "name": "remarks" }, { "name": "name_column" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "mti_navigator" }, { "name": "address_column" }, { "name": "id", "type": "int" }, { "name": "type" }, 'typeHidden', { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 30,
  ls_grid_configs : [  ],
  content_type : 8,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.households.HouseholdsByType.detail;
    this.ls_insert_handler = Lino.households.HouseholdsByType.insert;
    var ww = this.containing_window;
    var name716 = new Ext.form.TextField({ "allowBlank": false, "maxLength": 200, "selectOnFocus": true });
    var email717 = new Ext.form.TextField({ "maxLength": 254, "selectOnFocus": true });
    var language718 = new Lino.ChoicesFieldElement({ "hidden": true, "selectOnFocus": true, "store": [ [ "en-us", "American English" ] ] });
    var url719 = new Lino.URLField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var phone720 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var gsm721 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var fax722 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var country723 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Country...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/households/HouseholdsByType/country" }) }) });
    var city724 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Place...", "forceSelection": false, "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/households/HouseholdsByType/city" }) }) });
    var zip_code725 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(10), "hidden": true, "maxLength": 10, "selectOnFocus": true });
    var region726 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Place...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/households/HouseholdsByType/region" }) }) });
    var addr1727 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var street_prefix728 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var street729 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var street_no730 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(10), "hidden": true, "maxLength": 10, "selectOnFocus": true });
    var street_box731 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(10), "hidden": true, "maxLength": 10, "selectOnFocus": true });
    var addr2732 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var prefix733 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var remarks734 = new Lino.RichTextPanel({ "containing_panel": this, "hidden": true, "selectOnFocus": true, "title": "About me" });
    var name_column_disp735 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var mobile_item_disp736 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp737 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp738 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp739 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var mti_navigator_disp740 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var address_column_disp741 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var id742 = new Ext.form.NumberField({ "selectOnFocus": true });
    var type743 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Household Type...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/households/HouseholdsByType/type" }) }) });
    this.before_row_edit = function(record) {
      city724.setContextValue('country', record ? record.data['countryHidden'] : undefined);
      city724.setContextValue('region', record ? record.data['regionHidden'] : undefined);
      region726.setContextValue('country', record ? record.data['countryHidden'] : undefined);
      remarks734.refresh();
    };
    this.onRender = function(ct, position) {
      country723.on('change',Lino.chooser_handler(city724,'country'));
      region726.on('change',Lino.chooser_handler(city724,'region'));
      country723.on('change',Lino.chooser_handler(region726,'country'));
      Lino.households.HouseholdsByType.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "name", "editable": true, "editor": name716, "filter": { "type": "string" }, "header": "Name", "sortable": true, "tooltip": "(households.HouseholdsByType.name) The full name of this partner. Used for alphabetic sorting.\nSubclasses may hide this field and fill it automatically,\ne.g. saving a Person will automatically set her\nname field to \"last_name, first_name\".", "width": Lino.chars2width(22) }, { "colIndex": 1, "dataIndex": "email", "editable": true, "editor": email717, "filter": { "type": "string" }, "header": "e-mail address", "sortable": true, "tooltip": "(households.HouseholdsByType.email) The primary email address.", "width": Lino.chars2width(22) }, { "colIndex": 2, "dataIndex": "language", "editable": true, "editor": language718, "filter": { "type": "string" }, "header": "Language", "hidden": true, "sortable": false, "tooltip": "(households.HouseholdsByType.language) The language to use when communicating with this partner.", "width": Lino.chars2width(21) }, { "colIndex": 3, "dataIndex": "url", "editable": true, "editor": url719, "filter": { "type": "string" }, "header": "URL", "hidden": true, "sortable": true, "tooltip": "(households.HouseholdsByType.url) ", "width": Lino.chars2width(22) }, { "colIndex": 4, "dataIndex": "phone", "editable": true, "editor": phone720, "filter": { "type": "string" }, "header": "Phone", "hidden": true, "sortable": true, "tooltip": "(households.HouseholdsByType.phone) The primary phone number.  Note that Lino does not ignore\nformatting characters in phone numbers when searching.  For\nexample, if you enter \"087/12.34.56\" as a phone number, then a\nsearch for phone number containing \"1234\" will not find it.", "width": Lino.chars2width(22) }, { "colIndex": 5, "dataIndex": "gsm", "editable": true, "editor": gsm721, "filter": { "type": "string" }, "header": "GSM", "hidden": true, "sortable": true, "tooltip": "(households.HouseholdsByType.gsm) The primary mobile phone number.", "width": Lino.chars2width(22) }, { "colIndex": 6, "dataIndex": "fax", "editable": true, "editor": fax722, "filter": { "type": "string" }, "header": "Fax", "hidden": true, "sortable": true, "tooltip": "(households.HouseholdsByType.fax) ", "width": Lino.chars2width(22) }, { "colIndex": 7, "dataIndex": "country", "editable": true, "editor": country723, "filter": { "type": "string" }, "header": "Country", "hidden": true, "renderer": Lino.fk_renderer('countryHidden','Lino.countries.Countries.detail'), "sortable": false, "tooltip": "(households.HouseholdsByType.country) ", "width": Lino.chars2width(21) }, { "colIndex": 8, "dataIndex": "city", "editable": true, "editor": city724, "filter": { "type": "string" }, "header": "City", "hidden": true, "renderer": Lino.fk_renderer('cityHidden','Lino.countries.Places.detail'), "sortable": false, "tooltip": "(households.HouseholdsByType.city) A pointer to the Place which is used as city.", "width": Lino.chars2width(21) }, { "colIndex": 9, "dataIndex": "zip_code", "editable": true, "editor": zip_code725, "filter": { "type": "string" }, "header": "Zip code", "hidden": true, "sortable": true, "tooltip": "(households.HouseholdsByType.zip_code) ", "width": Lino.chars2width(12) }, { "colIndex": 10, "dataIndex": "region", "editable": true, "editor": region726, "filter": { "type": "string" }, "header": "County", "hidden": true, "renderer": Lino.fk_renderer('regionHidden','Lino.countries.Places.detail'), "sortable": false, "tooltip": "(households.HouseholdsByType.region) ", "width": Lino.chars2width(21) }, { "colIndex": 11, "dataIndex": "addr1", "editable": true, "editor": addr1727, "filter": { "type": "string" }, "header": "Address line before street", "hidden": true, "sortable": true, "tooltip": "(households.HouseholdsByType.addr1) Address line before street", "width": Lino.chars2width(22) }, { "colIndex": 12, "dataIndex": "street_prefix", "editable": true, "editor": street_prefix728, "filter": { "type": "string" }, "header": "Street prefix", "hidden": true, "sortable": true, "tooltip": "(households.HouseholdsByType.street_prefix) Text to print before name of street, but to ignore for sorting.", "width": Lino.chars2width(22) }, { "colIndex": 13, "dataIndex": "street", "editable": true, "editor": street729, "filter": { "type": "string" }, "header": "Street", "hidden": true, "sortable": true, "tooltip": "(households.HouseholdsByType.street) Name of street, without house number.", "width": Lino.chars2width(22) }, { "colIndex": 14, "dataIndex": "street_no", "editable": true, "editor": street_no730, "filter": { "type": "string" }, "header": "No.", "hidden": true, "sortable": true, "tooltip": "(households.HouseholdsByType.street_no) House number.", "width": Lino.chars2width(12) }, { "colIndex": 15, "dataIndex": "street_box", "editable": true, "editor": street_box731, "filter": { "type": "string" }, "header": "Box", "hidden": true, "sortable": true, "tooltip": "(households.HouseholdsByType.street_box) Text to print after street nuber on the same line.", "width": Lino.chars2width(12) }, { "colIndex": 16, "dataIndex": "addr2", "editable": true, "editor": addr2732, "filter": { "type": "string" }, "header": "Address line after street", "hidden": true, "sortable": true, "tooltip": "(households.HouseholdsByType.addr2) Address line to print below street line.", "width": Lino.chars2width(22) }, { "colIndex": 17, "dataIndex": "prefix", "editable": true, "editor": prefix733, "filter": { "type": "string" }, "header": "Name prefix", "hidden": true, "sortable": true, "tooltip": "(households.HouseholdsByType.prefix) An optional name prefix. For organisations this is inserted\nbefore the name, for persons this is inserted between first\nname and last name (see\nlino.mixins.human.Human.get_last_name_prefix()).", "width": Lino.chars2width(22) }, { "colIndex": 18, "dataIndex": "remarks", "editable": true, "editor": remarks734, "filter": { "type": "string" }, "header": "About me", "hidden": true, "sortable": false, "tooltip": "(households.HouseholdsByType.remarks) ", "width": Lino.chars2width(61) }, { "colIndex": 19, "dataIndex": "name_column", "editable": false, "header": "Name", "hidden": true, "sortable": false, "tooltip": "(households.HouseholdsByType.name_column) ", "width": Lino.chars2width(31) }, { "colIndex": 20, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(households.HouseholdsByType.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 21, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(households.HouseholdsByType.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 22, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(households.HouseholdsByType.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 23, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(households.HouseholdsByType.workflow_buttons) ", "width": Lino.chars2width(31) }, { "colIndex": 24, "dataIndex": "mti_navigator", "editable": false, "header": "See as ", "hidden": true, "sortable": false, "tooltip": "(households.HouseholdsByType.mti_navigator) ", "width": Lino.chars2width(31) }, { "colIndex": 25, "dataIndex": "address_column", "editable": false, "header": "Address", "hidden": true, "sortable": false, "tooltip": "(households.HouseholdsByType.address_column) ", "width": Lino.chars2width(31) }, { "align": "right", "colIndex": 26, "dataIndex": "id", "editable": true, "editor": id742, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "sortable": true, "tooltip": "(households.HouseholdsByType.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 27, "dataIndex": "type", "editable": true, "editor": type743, "filter": { "type": "string" }, "header": "Household Type", "hidden": true, "renderer": Lino.fk_renderer('typeHidden','Lino.households.Types.detail'), "sortable": false, "tooltip": "(households.HouseholdsByType.type) ", "width": Lino.chars2width(21) } ];
    Lino.households.HouseholdsByType.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.households.HouseholdsByType.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/HouseholdsByType", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.households.HouseholdsByType.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/HouseholdsByType", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.households.HouseholdsByType.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/HouseholdsByType", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.households.HouseholdsByType.insertPanel = Ext.extend(Lino.contacts.Partners.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/households/HouseholdsByType",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.households.HouseholdsByType.detail;
    this.ls_insert_handler = Lino.households.HouseholdsByType.insert;
    Lino.households.HouseholdsByType.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.households.HouseholdsByType.insert = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.households.HouseholdsByType.insertPanel(p);
});
Lino.households.HouseholdsByType.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/HouseholdsByType", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.households.HouseholdsByType.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/HouseholdsByType", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.households.HouseholdsByType.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/HouseholdsByType", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.households.HouseholdsByType.detailPanel = Ext.extend(Lino.households.Households.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "iconCls": "x-tbar-lightning", "itemId": "populate_members", "menu_item_text": "Populate", "overflowText": "Populate", "panel_btn_handler": Lino.row_action_handler('populate_members','GET',null), "tooltip": "Populate" } ],
  ls_url: "/households/HouseholdsByType",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.households.HouseholdsByType.detail;
    this.ls_insert_handler = Lino.households.HouseholdsByType.insert;
    Lino.households.HouseholdsByType.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.households.HouseholdsByType.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.households.HouseholdsByType.detailPanel(p);
});
Lino.households.HouseholdsByType.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/HouseholdsByType", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.households.HouseholdsByType.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.contacts.Partners.ParamsPanel({});
  return new Lino.households.HouseholdsByType.GridPanel(p);
});
Lino.households.HouseholdsByType.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/HouseholdsByType", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.households.HouseholdsByType.ins_partner = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/HouseholdsByType", "GET", pk, "ins_partner", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.households.HouseholdsByType.del_company = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/HouseholdsByType", "GET", pk, "del_company", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.households.HouseholdsByType.populate_members = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/HouseholdsByType", "GET", pk, "populate_members", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.households.HouseholdsByType.ins_company = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/HouseholdsByType", "GET", pk, "ins_company", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.households.HouseholdsByType.ins_user = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/HouseholdsByType", "GET", pk, "ins_user", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.households.HouseholdsByType.del_partner = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/HouseholdsByType", "GET", pk, "del_partner", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.households.HouseholdsByType.del_person = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/HouseholdsByType", "GET", pk, "del_person", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.households.HouseholdsByType.ins_person = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/HouseholdsByType", "GET", pk, "ins_person", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.households.HouseholdsByType.del_household = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/HouseholdsByType", "GET", pk, "del_household", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.households.HouseholdsByType.ins_household = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/HouseholdsByType", "GET", pk, "ins_household", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.households.HouseholdsByType.del_user = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/HouseholdsByType", "GET", pk, "del_user", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class households.MembersByHousehold
Lino.households.MembersByHousehold.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/households/MembersByHousehold",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/households/MembersByHousehold','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/households/MembersByHousehold','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "itemId": "set_primary", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Make this the primary household.") }, "menu_item_text": "set_primary", "overflowText": "set_primary", "panel_btn_handler": Lino.row_action_handler('set_primary','GET',null), "text": "set_primary" } ],
  cell_edit : true,
  title : "Household Members",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 25,
  ls_store_fields : [ { "name": "age" }, { "name": "role" }, 'roleHidden', { "name": "dependency" }, 'dependencyHidden', { "name": "person" }, 'personHidden', { "name": "first_name" }, { "name": "last_name" }, { "name": "birth_date" }, { "name": "gender" }, 'genderHidden', { "name": "id", "type": "int" }, { "dateFormat": "d.m.Y", "name": "start_date", "type": "date" }, { "dateFormat": "d.m.Y", "name": "end_date", "type": "date" }, { "name": "title" }, { "name": "middle_name" }, { "name": "primary", "type": "boolean" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "household" }, 'householdHidden', { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 12,
  ls_grid_configs : [  ],
  content_type : 29,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    var ww = this.containing_window;
    var age_disp788 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    var role789 = new Lino.ChoicesFieldElement({ "forceSelection": true, "selectOnFocus": true, "store": [['','<br>']].concat(Lino.households.MemberRoles) });
    var dependency790 = new Lino.ChoicesFieldElement({ "allowBlank": false, "forceSelection": true, "selectOnFocus": true, "store": Lino.households.MemberDependencies });
    var person791 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Person...", "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/households/MembersByHousehold/person" }) }) });
    var first_name792 = new Ext.form.TextField({ "maxLength": 200, "selectOnFocus": true });
    var last_name793 = new Ext.form.TextField({ "maxLength": 200, "selectOnFocus": true });
    var birth_date794 = new Lino.IncompleteDateField({ "selectOnFocus": true });
    var gender795 = new Lino.ChoicesFieldElement({ "forceSelection": true, "selectOnFocus": true, "store": [['','<br>']].concat(Lino.system.Genders) });
    var id796 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var start_date797 = new Lino.DateField({ "hidden": true, "selectOnFocus": true });
    var end_date798 = new Lino.DateField({ "hidden": true, "selectOnFocus": true });
    var title799 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var middle_name800 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var primary801 = new Ext.form.Checkbox({ "checked": false, "hidden": true, "selectOnFocus": true });
    var mobile_item_disp802 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp803 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp804 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp805 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var household806 = new Lino.RemoteComboFieldElement({ "allowBlank": false, "emptyText": "Select a Household...", "hidden": true, "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/households/MembersByHousehold/household" }) }) });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "age", "editable": false, "header": "Age", "sortable": false, "tooltip": "(households.MembersByHousehold.age) ", "width": Lino.chars2width(11) }, { "colIndex": 1, "dataIndex": "role", "editable": true, "editor": role789, "filter": { "type": "string" }, "header": "Role", "sortable": false, "tooltip": "(households.MembersByHousehold.role) ", "width": Lino.chars2width(21) }, { "colIndex": 2, "dataIndex": "dependency", "editable": true, "editor": dependency790, "filter": { "type": "string" }, "header": "Dependency", "sortable": false, "tooltip": "(households.MembersByHousehold.dependency) ", "width": Lino.chars2width(20) }, { "colIndex": 3, "dataIndex": "person", "editable": true, "editor": person791, "filter": { "type": "string" }, "header": "Person", "renderer": Lino.fk_renderer('personHidden','Lino.contacts.Persons.detail'), "sortable": false, "tooltip": "(households.MembersByHousehold.person) ", "width": Lino.chars2width(21) }, { "colIndex": 4, "dataIndex": "first_name", "editable": true, "editor": first_name792, "filter": { "type": "string" }, "header": "First name", "sortable": true, "tooltip": "(households.MembersByHousehold.first_name) The first name, also known as given name.", "width": Lino.chars2width(22) }, { "colIndex": 5, "dataIndex": "last_name", "editable": true, "editor": last_name793, "filter": { "type": "string" }, "header": "Last name", "sortable": true, "tooltip": "(households.MembersByHousehold.last_name) The last name, also known as family name.", "width": Lino.chars2width(22) }, { "colIndex": 6, "dataIndex": "birth_date", "editable": true, "editor": birth_date794, "filter": { "type": "string" }, "header": "Birth date", "sortable": true, "tooltip": "(households.MembersByHousehold.birth_date) Uncomplete dates are allowed, e.g. \n\"00.00.1980\" means \"some day in 1980\", \n\"00.07.1980\" means \"in July 1980\"\nor \"23.07.0000\" means \"on a 23th of July\".", "width": Lino.chars2width(13) }, { "colIndex": 7, "dataIndex": "gender", "editable": true, "editor": gender795, "filter": { "type": "string" }, "header": "Gender", "sortable": false, "tooltip": "(households.MembersByHousehold.gender) The sex of this person (male or female).", "width": Lino.chars2width(10) }, { "align": "right", "colIndex": 8, "dataIndex": "id", "editable": true, "editor": id796, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(households.MembersByHousehold.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 9, "dataIndex": "start_date", "editable": true, "editor": start_date797, "filter": { "dateFormat": "d.m.Y", "type": "date" }, "format": "d.m.Y", "header": "Start date", "hidden": true, "sortable": true, "tooltip": "(households.MembersByHousehold.start_date) Since when this membership exists. This is usually empty.", "width": Lino.chars2width(14), "xtype": "datecolumn" }, { "colIndex": 10, "dataIndex": "end_date", "editable": true, "editor": end_date798, "filter": { "dateFormat": "d.m.Y", "type": "date" }, "format": "d.m.Y", "header": "End date", "hidden": true, "sortable": true, "tooltip": "(households.MembersByHousehold.end_date) Until when this membership exists.", "width": Lino.chars2width(14), "xtype": "datecolumn" }, { "colIndex": 11, "dataIndex": "title", "editable": true, "editor": title799, "filter": { "type": "string" }, "header": "Title", "hidden": true, "sortable": true, "tooltip": "(households.MembersByHousehold.title) Used to specify a professional position or academic\nqualification like \"Dr.\" or \"PhD\".", "width": Lino.chars2width(22) }, { "colIndex": 12, "dataIndex": "middle_name", "editable": true, "editor": middle_name800, "filter": { "type": "string" }, "header": "Middle name", "hidden": true, "sortable": true, "tooltip": "(households.MembersByHousehold.middle_name) A space-separated list of all middle names.", "width": Lino.chars2width(22) }, { "colIndex": 13, "dataIndex": "primary", "editable": true, "filter": { "type": "boolean" }, "header": "Primary", "hidden": true, "sortable": false, "tooltip": "(households.MembersByHousehold.primary) Whether this is the primary household of this person. Checking this field will automatically disable any other primary memberships.", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 14, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(households.MembersByHousehold.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 15, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(households.MembersByHousehold.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 16, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(households.MembersByHousehold.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 17, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(households.MembersByHousehold.workflow_buttons) ", "width": Lino.chars2width(31) }, { "colIndex": 18, "dataIndex": "household", "editable": true, "editor": household806, "filter": { "type": "string" }, "header": "Household", "hidden": true, "renderer": Lino.fk_renderer('householdHidden','Lino.households.Households.detail'), "sortable": false, "tooltip": "(households.MembersByHousehold.household) ", "width": Lino.chars2width(21) } ];
    Lino.households.MembersByHousehold.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.households.MembersByHousehold.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/MembersByHousehold", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.households.MembersByHousehold.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/MembersByHousehold", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.households.MembersByHousehold.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/MembersByHousehold", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.households.MembersByHousehold.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/MembersByHousehold", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.households.MembersByHousehold.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/MembersByHousehold", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.households.MembersByHousehold.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/MembersByHousehold", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.households.MembersByHousehold.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.households.Members.ParamsPanel({});
  return new Lino.households.MembersByHousehold.GridPanel(p);
});
Lino.households.MembersByHousehold.set_primary = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/MembersByHousehold", "GET", pk, "set_primary", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class households.SiblingsByPerson
Lino.households.SiblingsByPerson.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/households/SiblingsByPerson",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/households/SiblingsByPerson','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/households/SiblingsByPerson','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "itemId": "set_primary", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Make this the primary household.") }, "menu_item_text": "set_primary", "overflowText": "set_primary", "panel_btn_handler": Lino.row_action_handler('set_primary','GET',null), "text": "set_primary" } ],
  cell_edit : true,
  title : "Household composition",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 25,
  ls_store_fields : [ { "name": "age" }, { "name": "role" }, 'roleHidden', { "name": "dependency" }, 'dependencyHidden', { "name": "person" }, 'personHidden', { "name": "first_name" }, { "name": "last_name" }, { "name": "birth_date" }, { "name": "gender" }, 'genderHidden', { "name": "id", "type": "int" }, { "dateFormat": "d.m.Y", "name": "start_date", "type": "date" }, { "dateFormat": "d.m.Y", "name": "end_date", "type": "date" }, { "name": "title" }, { "name": "middle_name" }, { "name": "household" }, 'householdHidden', { "name": "primary", "type": "boolean" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 12,
  ls_grid_configs : [  ],
  content_type : 29,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    var ww = this.containing_window;
    var age_disp290 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    var role291 = new Lino.ChoicesFieldElement({ "forceSelection": true, "selectOnFocus": true, "store": [['','<br>']].concat(Lino.households.MemberRoles) });
    var dependency292 = new Lino.ChoicesFieldElement({ "allowBlank": false, "forceSelection": true, "selectOnFocus": true, "store": Lino.households.MemberDependencies });
    var person293 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Person...", "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/households/SiblingsByPerson/person" }) }) });
    var first_name294 = new Ext.form.TextField({ "maxLength": 200, "selectOnFocus": true });
    var last_name295 = new Ext.form.TextField({ "maxLength": 200, "selectOnFocus": true });
    var birth_date296 = new Lino.IncompleteDateField({ "selectOnFocus": true });
    var gender297 = new Lino.ChoicesFieldElement({ "forceSelection": true, "selectOnFocus": true, "store": [['','<br>']].concat(Lino.system.Genders) });
    var id298 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var start_date299 = new Lino.DateField({ "hidden": true, "selectOnFocus": true });
    var end_date300 = new Lino.DateField({ "hidden": true, "selectOnFocus": true });
    var title301 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var middle_name302 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var household303 = new Lino.RemoteComboFieldElement({ "allowBlank": false, "emptyText": "Select a Household...", "hidden": true, "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/households/SiblingsByPerson/household" }) }) });
    var primary304 = new Ext.form.Checkbox({ "checked": false, "hidden": true, "selectOnFocus": true });
    var mobile_item_disp305 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp306 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp307 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp308 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "age", "editable": false, "header": "Age", "sortable": false, "tooltip": "(households.SiblingsByPerson.age) ", "width": Lino.chars2width(11) }, { "colIndex": 1, "dataIndex": "role", "editable": true, "editor": role291, "filter": { "type": "string" }, "header": "Role", "sortable": false, "tooltip": "(households.SiblingsByPerson.role) ", "width": Lino.chars2width(21) }, { "colIndex": 2, "dataIndex": "dependency", "editable": true, "editor": dependency292, "filter": { "type": "string" }, "header": "Dependency", "sortable": false, "tooltip": "(households.SiblingsByPerson.dependency) ", "width": Lino.chars2width(20) }, { "colIndex": 3, "dataIndex": "person", "editable": true, "editor": person293, "filter": { "type": "string" }, "header": "Person", "renderer": Lino.fk_renderer('personHidden','Lino.contacts.Persons.detail'), "sortable": false, "tooltip": "(households.SiblingsByPerson.person) ", "width": Lino.chars2width(21) }, { "colIndex": 4, "dataIndex": "first_name", "editable": true, "editor": first_name294, "filter": { "type": "string" }, "header": "First name", "sortable": true, "tooltip": "(households.SiblingsByPerson.first_name) The first name, also known as given name.", "width": Lino.chars2width(22) }, { "colIndex": 5, "dataIndex": "last_name", "editable": true, "editor": last_name295, "filter": { "type": "string" }, "header": "Last name", "sortable": true, "tooltip": "(households.SiblingsByPerson.last_name) The last name, also known as family name.", "width": Lino.chars2width(22) }, { "colIndex": 6, "dataIndex": "birth_date", "editable": true, "editor": birth_date296, "filter": { "type": "string" }, "header": "Birth date", "sortable": true, "tooltip": "(households.SiblingsByPerson.birth_date) Uncomplete dates are allowed, e.g. \n\"00.00.1980\" means \"some day in 1980\", \n\"00.07.1980\" means \"in July 1980\"\nor \"23.07.0000\" means \"on a 23th of July\".", "width": Lino.chars2width(13) }, { "colIndex": 7, "dataIndex": "gender", "editable": true, "editor": gender297, "filter": { "type": "string" }, "header": "Gender", "sortable": false, "tooltip": "(households.SiblingsByPerson.gender) The sex of this person (male or female).", "width": Lino.chars2width(10) }, { "align": "right", "colIndex": 8, "dataIndex": "id", "editable": true, "editor": id298, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(households.SiblingsByPerson.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 9, "dataIndex": "start_date", "editable": true, "editor": start_date299, "filter": { "dateFormat": "d.m.Y", "type": "date" }, "format": "d.m.Y", "header": "Start date", "hidden": true, "sortable": true, "tooltip": "(households.SiblingsByPerson.start_date) Since when this membership exists. This is usually empty.", "width": Lino.chars2width(14), "xtype": "datecolumn" }, { "colIndex": 10, "dataIndex": "end_date", "editable": true, "editor": end_date300, "filter": { "dateFormat": "d.m.Y", "type": "date" }, "format": "d.m.Y", "header": "End date", "hidden": true, "sortable": true, "tooltip": "(households.SiblingsByPerson.end_date) Until when this membership exists.", "width": Lino.chars2width(14), "xtype": "datecolumn" }, { "colIndex": 11, "dataIndex": "title", "editable": true, "editor": title301, "filter": { "type": "string" }, "header": "Title", "hidden": true, "sortable": true, "tooltip": "(households.SiblingsByPerson.title) Used to specify a professional position or academic\nqualification like \"Dr.\" or \"PhD\".", "width": Lino.chars2width(22) }, { "colIndex": 12, "dataIndex": "middle_name", "editable": true, "editor": middle_name302, "filter": { "type": "string" }, "header": "Middle name", "hidden": true, "sortable": true, "tooltip": "(households.SiblingsByPerson.middle_name) A space-separated list of all middle names.", "width": Lino.chars2width(22) }, { "colIndex": 13, "dataIndex": "household", "editable": true, "editor": household303, "filter": { "type": "string" }, "header": "Household", "hidden": true, "renderer": Lino.fk_renderer('householdHidden','Lino.households.Households.detail'), "sortable": false, "tooltip": "(households.SiblingsByPerson.household) ", "width": Lino.chars2width(21) }, { "colIndex": 14, "dataIndex": "primary", "editable": true, "filter": { "type": "boolean" }, "header": "Primary", "hidden": true, "sortable": false, "tooltip": "(households.SiblingsByPerson.primary) Whether this is the primary household of this person. Checking this field will automatically disable any other primary memberships.", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 15, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(households.SiblingsByPerson.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 16, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(households.SiblingsByPerson.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 17, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(households.SiblingsByPerson.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 18, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(households.SiblingsByPerson.workflow_buttons) ", "width": Lino.chars2width(31) } ];
    Lino.households.SiblingsByPerson.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.households.SiblingsByPerson.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/SiblingsByPerson", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.households.SiblingsByPerson.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/SiblingsByPerson", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.households.SiblingsByPerson.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/SiblingsByPerson", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.households.SiblingsByPerson.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/SiblingsByPerson", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.households.SiblingsByPerson.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/SiblingsByPerson", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.households.SiblingsByPerson.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/SiblingsByPerson", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.households.SiblingsByPerson.grid = new Lino.WindowAction({ "draggable": true, "height": Lino.rows2height(20), "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(100) }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.households.Members.ParamsPanel({});
  return new Lino.households.SiblingsByPerson.GridPanel(p);
});
Lino.households.SiblingsByPerson.set_primary = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/SiblingsByPerson", "GET", pk, "set_primary", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class households.MembersByPerson
Lino.households.MembersByPerson.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/households/MembersByPerson",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/households/MembersByPerson','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/households/MembersByPerson','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "itemId": "set_primary", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Make this the primary household.") }, "menu_item_text": "set_primary", "overflowText": "set_primary", "panel_btn_handler": Lino.row_action_handler('set_primary','GET',null), "text": "set_primary" } ],
  cell_edit : true,
  title : "Household memberships",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 25,
  ls_store_fields : [ { "name": "household" }, 'householdHidden', { "name": "role" }, 'roleHidden', { "name": "primary", "type": "boolean" }, { "dateFormat": "d.m.Y", "name": "start_date", "type": "date" }, { "dateFormat": "d.m.Y", "name": "end_date", "type": "date" }, { "name": "id", "type": "int" }, { "name": "title" }, { "name": "first_name" }, { "name": "middle_name" }, { "name": "last_name" }, { "name": "gender" }, 'genderHidden', { "name": "birth_date" }, { "name": "dependency" }, 'dependencyHidden', { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "age" }, { "name": "person" }, 'personHidden', { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 7,
  ls_grid_configs : [  ],
  content_type : 29,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    var ww = this.containing_window;
    var household3429 = new Lino.RemoteComboFieldElement({ "allowBlank": false, "emptyText": "Select a Household...", "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/households/MembersByPerson/household" }) }) });
    var role3430 = new Lino.ChoicesFieldElement({ "forceSelection": true, "selectOnFocus": true, "store": [['','<br>']].concat(Lino.households.MemberRoles) });
    var primary3431 = new Ext.form.Checkbox({ "checked": false, "selectOnFocus": true });
    var start_date3432 = new Lino.DateField({ "selectOnFocus": true });
    var end_date3433 = new Lino.DateField({ "selectOnFocus": true });
    var id3434 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var title3435 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var first_name3436 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var middle_name3437 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var last_name3438 = new Ext.form.TextField({ "hidden": true, "maxLength": 200, "selectOnFocus": true });
    var gender3439 = new Lino.ChoicesFieldElement({ "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": [['','<br>']].concat(Lino.system.Genders) });
    var birth_date3440 = new Lino.IncompleteDateField({ "hidden": true, "selectOnFocus": true });
    var dependency3441 = new Lino.ChoicesFieldElement({ "allowBlank": false, "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": Lino.households.MemberDependencies });
    var mobile_item_disp3442 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp3443 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp3444 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp3445 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var age_disp3446 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var person3447 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Person...", "hidden": true, "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/households/MembersByPerson/person" }) }) });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "household", "editable": true, "editor": household3429, "filter": { "type": "string" }, "header": "Household", "renderer": Lino.fk_renderer('householdHidden','Lino.households.Households.detail'), "sortable": false, "tooltip": "(households.MembersByPerson.household) ", "width": Lino.chars2width(21) }, { "colIndex": 1, "dataIndex": "role", "editable": true, "editor": role3430, "filter": { "type": "string" }, "header": "Role", "sortable": false, "tooltip": "(households.MembersByPerson.role) ", "width": Lino.chars2width(21) }, { "colIndex": 2, "dataIndex": "primary", "editable": true, "filter": { "type": "boolean" }, "header": "Primary", "sortable": false, "tooltip": "(households.MembersByPerson.primary) Whether this is the primary household of this person. Checking this field will automatically disable any other primary memberships.", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 3, "dataIndex": "start_date", "editable": true, "editor": start_date3432, "filter": { "dateFormat": "d.m.Y", "type": "date" }, "format": "d.m.Y", "header": "Start date", "sortable": true, "tooltip": "(households.MembersByPerson.start_date) Since when this membership exists. This is usually empty.", "width": Lino.chars2width(14), "xtype": "datecolumn" }, { "colIndex": 4, "dataIndex": "end_date", "editable": true, "editor": end_date3433, "filter": { "dateFormat": "d.m.Y", "type": "date" }, "format": "d.m.Y", "header": "End date", "sortable": true, "tooltip": "(households.MembersByPerson.end_date) Until when this membership exists.", "width": Lino.chars2width(14), "xtype": "datecolumn" }, { "align": "right", "colIndex": 5, "dataIndex": "id", "editable": true, "editor": id3434, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(households.MembersByPerson.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 6, "dataIndex": "title", "editable": true, "editor": title3435, "filter": { "type": "string" }, "header": "Title", "hidden": true, "sortable": true, "tooltip": "(households.MembersByPerson.title) Used to specify a professional position or academic\nqualification like \"Dr.\" or \"PhD\".", "width": Lino.chars2width(22) }, { "colIndex": 7, "dataIndex": "first_name", "editable": true, "editor": first_name3436, "filter": { "type": "string" }, "header": "First name", "hidden": true, "sortable": true, "tooltip": "(households.MembersByPerson.first_name) The first name, also known as given name.", "width": Lino.chars2width(22) }, { "colIndex": 8, "dataIndex": "middle_name", "editable": true, "editor": middle_name3437, "filter": { "type": "string" }, "header": "Middle name", "hidden": true, "sortable": true, "tooltip": "(households.MembersByPerson.middle_name) A space-separated list of all middle names.", "width": Lino.chars2width(22) }, { "colIndex": 9, "dataIndex": "last_name", "editable": true, "editor": last_name3438, "filter": { "type": "string" }, "header": "Last name", "hidden": true, "sortable": true, "tooltip": "(households.MembersByPerson.last_name) The last name, also known as family name.", "width": Lino.chars2width(22) }, { "colIndex": 10, "dataIndex": "gender", "editable": true, "editor": gender3439, "filter": { "type": "string" }, "header": "Gender", "hidden": true, "sortable": false, "tooltip": "(households.MembersByPerson.gender) The sex of this person (male or female).", "width": Lino.chars2width(10) }, { "colIndex": 11, "dataIndex": "birth_date", "editable": true, "editor": birth_date3440, "filter": { "type": "string" }, "header": "Birth date", "hidden": true, "sortable": true, "tooltip": "(households.MembersByPerson.birth_date) Uncomplete dates are allowed, e.g. \n\"00.00.1980\" means \"some day in 1980\", \n\"00.07.1980\" means \"in July 1980\"\nor \"23.07.0000\" means \"on a 23th of July\".", "width": Lino.chars2width(13) }, { "colIndex": 12, "dataIndex": "dependency", "editable": true, "editor": dependency3441, "filter": { "type": "string" }, "header": "Dependency", "hidden": true, "sortable": false, "tooltip": "(households.MembersByPerson.dependency) ", "width": Lino.chars2width(20) }, { "colIndex": 13, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(households.MembersByPerson.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 14, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(households.MembersByPerson.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 15, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(households.MembersByPerson.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 16, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(households.MembersByPerson.workflow_buttons) ", "width": Lino.chars2width(31) }, { "colIndex": 17, "dataIndex": "age", "editable": false, "header": "Age", "hidden": true, "sortable": false, "tooltip": "(households.MembersByPerson.age) ", "width": Lino.chars2width(31) }, { "colIndex": 18, "dataIndex": "person", "editable": true, "editor": person3447, "filter": { "type": "string" }, "header": "Person", "hidden": true, "renderer": Lino.fk_renderer('personHidden','Lino.contacts.Persons.detail'), "sortable": false, "tooltip": "(households.MembersByPerson.person) ", "width": Lino.chars2width(21) } ];
    Lino.households.MembersByPerson.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.households.MembersByPerson.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/MembersByPerson", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.households.MembersByPerson.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/MembersByPerson", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.households.MembersByPerson.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/MembersByPerson", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.households.MembersByPerson.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/MembersByPerson", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.households.MembersByPerson.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/MembersByPerson", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.households.MembersByPerson.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/MembersByPerson", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.households.MembersByPerson.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.households.Members.ParamsPanel({});
  return new Lino.households.MembersByPerson.GridPanel(p);
});
Lino.households.MembersByPerson.set_primary = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/MembersByPerson", "GET", pk, "set_primary", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class humanlinks.LinksByHuman
Lino.humanlinks.LinksByHuman.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/humanlinks/LinksByHuman",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/humanlinks/LinksByHuman','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/humanlinks/LinksByHuman','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "Human Links",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 7,
  ls_store_fields : [ { "name": "parent" }, 'parentHidden', { "name": "type_as_parent" }, { "name": "child" }, 'childHidden', { "name": "id", "type": "int" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 5,
  ls_grid_configs : [  ],
  content_type : 32,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.humanlinks.LinksByHuman.detail;
    this.ls_insert_handler = Lino.humanlinks.LinksByHuman.insert;
    var ww = this.containing_window;
    var parent3449 = new Lino.RemoteComboFieldElement({ "allowBlank": false, "emptyText": "Select a Person...", "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/humanlinks/LinksByHuman/parent" }) }) });
    var type_as_parent_disp3450 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    var child3451 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Person...", "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/humanlinks/LinksByHuman/child" }) }) });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "parent", "editable": true, "editor": parent3449, "filter": { "type": "string" }, "header": "Who is...", "renderer": Lino.fk_renderer('parentHidden','Lino.contacts.Persons.detail'), "sortable": false, "tooltip": "(humanlinks.LinksByHuman.parent) Pointer to the person who is \"parent\".", "width": Lino.chars2width(21) }, { "colIndex": 1, "dataIndex": "type_as_parent", "editable": false, "header": "Type", "sortable": false, "tooltip": "(humanlinks.LinksByHuman.type_as_parent) ", "width": Lino.chars2width(11) }, { "colIndex": 2, "dataIndex": "child", "editable": true, "editor": child3451, "filter": { "type": "string" }, "header": "To whom...", "renderer": Lino.fk_renderer('childHidden','Lino.contacts.Persons.detail'), "sortable": false, "tooltip": "(humanlinks.LinksByHuman.child) Pointer to the person who is \"child\".", "width": Lino.chars2width(21) } ];
    Lino.humanlinks.LinksByHuman.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.humanlinks.LinksByHuman.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/humanlinks/LinksByHuman", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.humanlinks.LinksByHuman.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/humanlinks/LinksByHuman", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.humanlinks.LinksByHuman.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/humanlinks/LinksByHuman", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.humanlinks.LinksByHuman.insertPanel = Ext.extend(Lino.humanlinks.Links.DetailFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/humanlinks/LinksByHuman",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.humanlinks.LinksByHuman.detail;
    this.ls_insert_handler = Lino.humanlinks.LinksByHuman.insert;
    Lino.humanlinks.LinksByHuman.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.humanlinks.LinksByHuman.insert = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(40) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.humanlinks.LinksByHuman.insertPanel(p);
});
Lino.humanlinks.LinksByHuman.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/humanlinks/LinksByHuman", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.humanlinks.LinksByHuman.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/humanlinks/LinksByHuman", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.humanlinks.LinksByHuman.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/humanlinks/LinksByHuman", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.humanlinks.LinksByHuman.detailPanel = Ext.extend(Lino.humanlinks.Links.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  ls_url: "/humanlinks/LinksByHuman",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.humanlinks.LinksByHuman.detail;
    this.ls_insert_handler = Lino.humanlinks.LinksByHuman.insert;
    Lino.humanlinks.LinksByHuman.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.humanlinks.LinksByHuman.detail = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(40) }, function(){
  var p = { "is_main_window": true };
  return new Lino.humanlinks.LinksByHuman.detailPanel(p);
});
Lino.humanlinks.LinksByHuman.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/humanlinks/LinksByHuman", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.humanlinks.LinksByHuman.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.humanlinks.LinksByHuman.GridPanel(p);
});
Lino.humanlinks.LinksByHuman.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/humanlinks/LinksByHuman", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class topics.TopicsByGroup
Lino.topics.TopicsByGroup.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/topics/TopicsByGroup",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/topics/TopicsByGroup','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/topics/TopicsByGroup','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "Topics",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 11,
  ls_store_fields : [ { "name": "ref" }, { "name": "name" }, { "name": "topic_group" }, 'topic_groupHidden', { "name": "id", "type": "int" }, { "name": "description" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 4,
  ls_grid_configs : [  ],
  content_type : 34,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.topics.TopicsByGroup.detail;
    this.ls_insert_handler = Lino.topics.TopicsByGroup.insert;
    var ww = this.containing_window;
    var ref871 = new Ext.form.TextField({ "maxLength": 40, "selectOnFocus": true });
    var name872 = new Ext.form.TextField({ "allowBlank": false, "maxLength": 200, "selectOnFocus": true });
    var topic_group873 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Topic group...", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/topics/TopicsByGroup/topic_group" }) }) });
    var id874 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var description875 = new Lino.RichTextPanel({ "containing_panel": this, "hidden": true, "selectOnFocus": true, "title": "Long description" });
    var mobile_item_disp876 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp877 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp878 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp879 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
      description875.refresh();
    };
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "ref", "editable": true, "editor": ref871, "filter": { "type": "string" }, "header": "Reference", "sortable": true, "tooltip": "(topics.TopicsByGroup.ref) The reference. This must be either empty or unique.", "width": Lino.chars2width(22) }, { "colIndex": 1, "dataIndex": "name", "editable": true, "editor": name872, "filter": { "type": "string" }, "header": "Designation", "sortable": true, "tooltip": "(topics.TopicsByGroup.name) ", "width": Lino.chars2width(22) }, { "colIndex": 2, "dataIndex": "topic_group", "editable": true, "editor": topic_group873, "filter": { "type": "string" }, "header": "Topic group", "renderer": Lino.fk_renderer('topic_groupHidden','Lino.topics.TopicGroups.detail'), "sortable": false, "tooltip": "(topics.TopicsByGroup.topic_group) ", "width": Lino.chars2width(21) }, { "align": "right", "colIndex": 3, "dataIndex": "id", "editable": true, "editor": id874, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(topics.TopicsByGroup.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 4, "dataIndex": "description", "editable": true, "editor": description875, "filter": { "type": "string" }, "header": "Long description", "hidden": true, "sortable": false, "tooltip": "(topics.TopicsByGroup.description) ", "width": Lino.chars2width(61) }, { "colIndex": 5, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(topics.TopicsByGroup.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 6, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(topics.TopicsByGroup.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 7, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(topics.TopicsByGroup.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 8, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(topics.TopicsByGroup.workflow_buttons) ", "width": Lino.chars2width(31) } ];
    Lino.topics.TopicsByGroup.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.topics.TopicsByGroup.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/topics/TopicsByGroup", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.topics.TopicsByGroup.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/topics/TopicsByGroup", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.topics.TopicsByGroup.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/topics/TopicsByGroup", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.topics.TopicsByGroup.insertPanel = Ext.extend(Lino.topics.Topics.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/topics/TopicsByGroup",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.topics.TopicsByGroup.detail;
    this.ls_insert_handler = Lino.topics.TopicsByGroup.insert;
    Lino.topics.TopicsByGroup.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.topics.TopicsByGroup.insert = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.topics.TopicsByGroup.insertPanel(p);
});
Lino.topics.TopicsByGroup.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/topics/TopicsByGroup", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.topics.TopicsByGroup.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/topics/TopicsByGroup", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.topics.TopicsByGroup.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/topics/TopicsByGroup", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.topics.TopicsByGroup.detailPanel = Ext.extend(Lino.topics.Topics.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  ls_url: "/topics/TopicsByGroup",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.topics.TopicsByGroup.detail;
    this.ls_insert_handler = Lino.topics.TopicsByGroup.insert;
    Lino.topics.TopicsByGroup.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.topics.TopicsByGroup.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.topics.TopicsByGroup.detailPanel(p);
});
Lino.topics.TopicsByGroup.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/topics/TopicsByGroup", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.topics.TopicsByGroup.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.topics.TopicsByGroup.GridPanel(p);
});
Lino.topics.TopicsByGroup.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/topics/TopicsByGroup", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class topics.InterestsByPartner
Lino.topics.InterestsByPartner.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/topics/InterestsByPartner",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/topics/InterestsByPartner','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/topics/InterestsByPartner','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "Interests",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 16,
  ls_store_fields : [ { "name": "topic" }, 'topicHidden', { "name": "id", "type": "int" }, { "name": "owner_type" }, 'owner_typeHidden', { "name": "owner_id" }, 'owner_idHidden', { "name": "remark" }, { "name": "owner" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "partner" }, 'partnerHidden', { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 2,
  ls_grid_configs : [  ],
  content_type : 35,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    var ww = this.containing_window;
    var topic3453 = new Lino.RemoteComboFieldElement({ "allowBlank": false, "emptyText": "Select a Topic...", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/topics/InterestsByPartner/topic" }) }) });
    var id3454 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var owner_type3455 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a content type...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/topics/InterestsByPartner/owner_type" }) }) });
    var owner_id3456 = new Lino.RemoteComboFieldElement({ "hidden": true, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/topics/InterestsByPartner/owner_id" }) }) });
    var remark3457 = new Ext.form.TextArea({ "growMax": 2000, "hidden": true, "selectOnFocus": true });
    var owner_disp3458 = new Ext.form.DisplayField({ "disabled": true, "hidden": true });
    var mobile_item_disp3459 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp3460 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp3461 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp3462 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var partner3463 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Partner...", "hidden": true, "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/topics/InterestsByPartner/partner" }) }) });
    this.before_row_edit = function(record) {
      owner_id3456.setContextValue('owner_type', record ? record.data['owner_typeHidden'] : undefined);
    };
    this.onRender = function(ct, position) {
      owner_type3455.on('change',Lino.chooser_handler(owner_id3456,'owner_type'));
      Lino.topics.InterestsByPartner.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "topic", "editable": true, "editor": topic3453, "filter": { "type": "string" }, "header": "Topic", "renderer": Lino.fk_renderer('topicHidden','Lino.topics.Topics.detail'), "sortable": false, "tooltip": "(topics.InterestsByPartner.topic) ", "width": Lino.chars2width(21) }, { "align": "right", "colIndex": 1, "dataIndex": "id", "editable": true, "editor": id3454, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(topics.InterestsByPartner.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 2, "dataIndex": "owner_type", "editable": true, "editor": owner_type3455, "filter": { "type": "string" }, "header": "Controlled by (type)", "hidden": true, "renderer": Lino.fk_renderer('owner_typeHidden','Lino.gfks.ContentTypes.detail'), "sortable": false, "tooltip": "(topics.InterestsByPartner.owner_type) ", "width": Lino.chars2width(21) }, { "colIndex": 3, "dataIndex": "owner_id", "editable": true, "editor": owner_id3456, "filter": { "type": "string" }, "header": "Controlled by (object)", "hidden": true, "sortable": false, "tooltip": "(topics.InterestsByPartner.owner_id) ", "width": Lino.chars2width(11) }, { "colIndex": 4, "dataIndex": "remark", "editable": true, "editor": remark3457, "filter": { "type": "string" }, "header": "Remark", "hidden": true, "sortable": false, "tooltip": "(topics.InterestsByPartner.remark) ", "width": Lino.chars2width(61) }, { "colIndex": 5, "dataIndex": "owner", "editable": false, "header": "Controlled by", "hidden": true, "sortable": false, "tooltip": "(topics.InterestsByPartner.owner) ", "width": Lino.chars2width(11) }, { "colIndex": 6, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(topics.InterestsByPartner.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 7, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(topics.InterestsByPartner.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 8, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(topics.InterestsByPartner.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 9, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(topics.InterestsByPartner.workflow_buttons) ", "width": Lino.chars2width(31) }, { "colIndex": 10, "dataIndex": "partner", "editable": true, "editor": partner3463, "filter": { "type": "string" }, "header": "Partner", "hidden": true, "renderer": Lino.fk_renderer('partnerHidden','Lino.contacts.Partners.detail'), "sortable": false, "tooltip": "(topics.InterestsByPartner.partner) ", "width": Lino.chars2width(21) } ];
    Lino.topics.InterestsByPartner.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.topics.InterestsByPartner.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/topics/InterestsByPartner", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.topics.InterestsByPartner.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/topics/InterestsByPartner", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.topics.InterestsByPartner.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/topics/InterestsByPartner", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.topics.InterestsByPartner.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/topics/InterestsByPartner", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.topics.InterestsByPartner.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/topics/InterestsByPartner", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.topics.InterestsByPartner.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/topics/InterestsByPartner", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.topics.InterestsByPartner.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.topics.InterestsByPartner.GridPanel(p);
});

// js_render_GridPanel_class topics.InterestsByTopic
Lino.topics.InterestsByTopic.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/topics/InterestsByTopic",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/topics/InterestsByTopic','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/topics/InterestsByTopic','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "Interests",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 16,
  ls_store_fields : [ { "name": "owner" }, { "name": "id", "type": "int" }, { "name": "owner_type" }, 'owner_typeHidden', { "name": "owner_id" }, 'owner_idHidden', { "name": "remark" }, { "name": "partner" }, 'partnerHidden', { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "topic" }, 'topicHidden', { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 1,
  ls_grid_configs : [  ],
  content_type : 35,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    var ww = this.containing_window;
    var owner_disp891 = new Ext.form.DisplayField({ "disabled": true });
    var id892 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var owner_type893 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a content type...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/topics/InterestsByTopic/owner_type" }) }) });
    var owner_id894 = new Lino.RemoteComboFieldElement({ "hidden": true, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/topics/InterestsByTopic/owner_id" }) }) });
    var remark895 = new Ext.form.TextArea({ "growMax": 2000, "hidden": true, "selectOnFocus": true });
    var partner896 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Partner...", "hidden": true, "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/topics/InterestsByTopic/partner" }) }) });
    var mobile_item_disp897 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp898 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp899 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp900 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var topic901 = new Lino.RemoteComboFieldElement({ "allowBlank": false, "emptyText": "Select a Topic...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/topics/InterestsByTopic/topic" }) }) });
    this.before_row_edit = function(record) {
      owner_id894.setContextValue('owner_type', record ? record.data['owner_typeHidden'] : undefined);
    };
    this.onRender = function(ct, position) {
      owner_type893.on('change',Lino.chooser_handler(owner_id894,'owner_type'));
      Lino.topics.InterestsByTopic.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "owner", "editable": false, "header": "Controlled by", "sortable": false, "tooltip": "(topics.InterestsByTopic.owner) ", "width": Lino.chars2width(11) }, { "align": "right", "colIndex": 1, "dataIndex": "id", "editable": true, "editor": id892, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(topics.InterestsByTopic.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 2, "dataIndex": "owner_type", "editable": true, "editor": owner_type893, "filter": { "type": "string" }, "header": "Controlled by (type)", "hidden": true, "renderer": Lino.fk_renderer('owner_typeHidden','Lino.gfks.ContentTypes.detail'), "sortable": false, "tooltip": "(topics.InterestsByTopic.owner_type) ", "width": Lino.chars2width(21) }, { "colIndex": 3, "dataIndex": "owner_id", "editable": true, "editor": owner_id894, "filter": { "type": "string" }, "header": "Controlled by (object)", "hidden": true, "sortable": false, "tooltip": "(topics.InterestsByTopic.owner_id) ", "width": Lino.chars2width(11) }, { "colIndex": 4, "dataIndex": "remark", "editable": true, "editor": remark895, "filter": { "type": "string" }, "header": "Remark", "hidden": true, "sortable": false, "tooltip": "(topics.InterestsByTopic.remark) ", "width": Lino.chars2width(61) }, { "colIndex": 5, "dataIndex": "partner", "editable": true, "editor": partner896, "filter": { "type": "string" }, "header": "Partner", "hidden": true, "renderer": Lino.fk_renderer('partnerHidden','Lino.contacts.Partners.detail'), "sortable": false, "tooltip": "(topics.InterestsByTopic.partner) ", "width": Lino.chars2width(21) }, { "colIndex": 6, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(topics.InterestsByTopic.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 7, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(topics.InterestsByTopic.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 8, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(topics.InterestsByTopic.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 9, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(topics.InterestsByTopic.workflow_buttons) ", "width": Lino.chars2width(31) }, { "colIndex": 10, "dataIndex": "topic", "editable": true, "editor": topic901, "filter": { "type": "string" }, "header": "Topic", "hidden": true, "renderer": Lino.fk_renderer('topicHidden','Lino.topics.Topics.detail'), "sortable": false, "tooltip": "(topics.InterestsByTopic.topic) ", "width": Lino.chars2width(21) } ];
    Lino.topics.InterestsByTopic.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.topics.InterestsByTopic.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/topics/InterestsByTopic", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.topics.InterestsByTopic.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/topics/InterestsByTopic", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.topics.InterestsByTopic.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/topics/InterestsByTopic", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.topics.InterestsByTopic.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/topics/InterestsByTopic", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.topics.InterestsByTopic.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/topics/InterestsByTopic", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.topics.InterestsByTopic.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/topics/InterestsByTopic", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.topics.InterestsByTopic.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.topics.InterestsByTopic.GridPanel(p);
});

// js_render_GridPanel_class lists.MembersByList
Lino.lists.MembersByList.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/lists/MembersByList",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/lists/MembersByList','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/lists/MembersByList','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "itemId": "duplicate", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Duplicate the selected row.") }, "menu_item_text": "\u2687", "overflowText": "\u2687", "panel_btn_handler": Lino.row_action_handler('duplicate','GET',null), "text": " <font size=\"4\">\u2687</font>" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "itemId": "move_up", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Move this row one row upwards.") }, "menu_item_text": "\u25b2", "overflowText": "\u25b2", "panel_btn_handler": Lino.row_action_handler('move_up','GET',null), "text": " <font size=\"4\">\u25b2</font>" }, { "auto_save": true, "itemId": "move_down", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Move this row one row downwards.") }, "menu_item_text": "\u25bc", "overflowText": "\u25bc", "panel_btn_handler": Lino.row_action_handler('move_down','GET',null), "text": " <font size=\"4\">\u25bc</font>" } ],
  cell_edit : true,
  title : "Members",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 13,
  ls_store_fields : [ { "name": "seqno", "type": "int", "useNull": true }, { "name": "partner" }, 'partnerHidden', { "name": "remark" }, { "name": "workflow_buttons" }, { "name": "id", "type": "int" }, { "name": "move_buttons" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "list" }, 'listHidden', { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 5,
  ls_grid_configs : [  ],
  content_type : 37,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    var ww = this.containing_window;
    var seqno822 = new Ext.form.NumberField({ "selectOnFocus": true });
    var partner823 = new Lino.RemoteComboFieldElement({ "allowBlank": false, "emptyText": "Select a Partner...", "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/lists/MembersByList/partner" }) }) });
    var remark824 = new Ext.form.TextField({ "maxLength": 200, "selectOnFocus": true });
    var workflow_buttons_disp825 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    var id826 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var move_buttons_disp827 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var mobile_item_disp828 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp829 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp830 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var list831 = new Lino.RemoteComboFieldElement({ "allowBlank": false, "emptyText": "Select a Partner List...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/lists/MembersByList/list" }) }) });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "align": "right", "colIndex": 0, "dataIndex": "seqno", "editable": true, "editor": seqno822, "filter": { "type": "numeric" }, "format": "0", "header": "No.", "sortable": true, "tooltip": "(lists.MembersByList.seqno) The sequence number of this item with its parent.", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 1, "dataIndex": "partner", "editable": true, "editor": partner823, "filter": { "type": "string" }, "header": "Partner", "renderer": Lino.fk_renderer('partnerHidden','Lino.contacts.Partners.detail'), "sortable": false, "tooltip": "(lists.MembersByList.partner) ", "width": Lino.chars2width(21) }, { "colIndex": 2, "dataIndex": "remark", "editable": true, "editor": remark824, "filter": { "type": "string" }, "header": "Remark", "sortable": true, "tooltip": "(lists.MembersByList.remark) ", "width": Lino.chars2width(22) }, { "colIndex": 3, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "sortable": false, "tooltip": "(lists.MembersByList.workflow_buttons) ", "width": Lino.chars2width(31) }, { "align": "right", "colIndex": 4, "dataIndex": "id", "editable": true, "editor": id826, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(lists.MembersByList.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 5, "dataIndex": "move_buttons", "editable": false, "header": "Move", "hidden": true, "sortable": false, "tooltip": "(lists.MembersByList.move_buttons) ", "width": Lino.chars2width(6) }, { "colIndex": 6, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(lists.MembersByList.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 7, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(lists.MembersByList.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 8, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(lists.MembersByList.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 9, "dataIndex": "list", "editable": true, "editor": list831, "filter": { "type": "string" }, "header": "Partner List", "hidden": true, "renderer": Lino.fk_renderer('listHidden','Lino.lists.Lists.detail'), "sortable": false, "tooltip": "(lists.MembersByList.list) ", "width": Lino.chars2width(21) } ];
    Lino.lists.MembersByList.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.lists.MembersByList.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/lists/MembersByList", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.lists.MembersByList.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/lists/MembersByList", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.lists.MembersByList.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/lists/MembersByList", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.lists.MembersByList.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/lists/MembersByList", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.lists.MembersByList.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/lists/MembersByList", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.lists.MembersByList.duplicate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/lists/MembersByList", "GET", pk, "duplicate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.lists.MembersByList.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/lists/MembersByList", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.lists.MembersByList.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.lists.MembersByList.GridPanel(p);
});
Lino.lists.MembersByList.move_up = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/lists/MembersByList", "GET", pk, "move_up", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.lists.MembersByList.move_down = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/lists/MembersByList", "GET", pk, "move_down", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class lists.MembersByPartner
Lino.lists.MembersByPartner.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/lists/MembersByPartner",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/lists/MembersByPartner','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/lists/MembersByPartner','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "itemId": "duplicate", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Duplicate the selected row.") }, "menu_item_text": "\u2687", "overflowText": "\u2687", "panel_btn_handler": Lino.row_action_handler('duplicate','GET',null), "text": " <font size=\"4\">\u2687</font>" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "itemId": "move_up", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Move this row one row upwards.") }, "menu_item_text": "\u25b2", "overflowText": "\u25b2", "panel_btn_handler": Lino.row_action_handler('move_up','GET',null), "text": " <font size=\"4\">\u25b2</font>" }, { "auto_save": true, "itemId": "move_down", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Move this row one row downwards.") }, "menu_item_text": "\u25bc", "overflowText": "\u25bc", "panel_btn_handler": Lino.row_action_handler('move_down','GET',null), "text": " <font size=\"4\">\u25bc</font>" } ],
  cell_edit : true,
  title : "List memberships",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 13,
  ls_store_fields : [ { "name": "list" }, 'listHidden', { "name": "remark" }, { "name": "id", "type": "int" }, { "name": "seqno", "type": "int", "useNull": true }, { "name": "move_buttons" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "partner" }, 'partnerHidden', { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 3,
  ls_grid_configs : [  ],
  content_type : 37,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    var ww = this.containing_window;
    var list273 = new Lino.RemoteComboFieldElement({ "allowBlank": false, "emptyText": "Select a Partner List...", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/lists/MembersByPartner/list" }) }) });
    var remark274 = new Ext.form.TextField({ "maxLength": 200, "selectOnFocus": true });
    var id275 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var seqno276 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var move_buttons_disp277 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var mobile_item_disp278 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp279 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp280 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp281 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var partner282 = new Lino.RemoteComboFieldElement({ "allowBlank": false, "emptyText": "Select a Partner...", "hidden": true, "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/lists/MembersByPartner/partner" }) }) });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "list", "editable": true, "editor": list273, "filter": { "type": "string" }, "header": "Partner List", "renderer": Lino.fk_renderer('listHidden','Lino.lists.Lists.detail'), "sortable": false, "tooltip": "(lists.MembersByPartner.list) ", "width": Lino.chars2width(21) }, { "colIndex": 1, "dataIndex": "remark", "editable": true, "editor": remark274, "filter": { "type": "string" }, "header": "Remark", "sortable": true, "tooltip": "(lists.MembersByPartner.remark) ", "width": Lino.chars2width(22) }, { "align": "right", "colIndex": 2, "dataIndex": "id", "editable": true, "editor": id275, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(lists.MembersByPartner.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "align": "right", "colIndex": 3, "dataIndex": "seqno", "editable": true, "editor": seqno276, "filter": { "type": "numeric" }, "format": "0", "header": "No.", "hidden": true, "sortable": true, "tooltip": "(lists.MembersByPartner.seqno) The sequence number of this item with its parent.", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 4, "dataIndex": "move_buttons", "editable": false, "header": "Move", "hidden": true, "sortable": false, "tooltip": "(lists.MembersByPartner.move_buttons) ", "width": Lino.chars2width(6) }, { "colIndex": 5, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(lists.MembersByPartner.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 6, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(lists.MembersByPartner.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 7, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(lists.MembersByPartner.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 8, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(lists.MembersByPartner.workflow_buttons) ", "width": Lino.chars2width(31) }, { "colIndex": 9, "dataIndex": "partner", "editable": true, "editor": partner282, "filter": { "type": "string" }, "header": "Partner", "hidden": true, "renderer": Lino.fk_renderer('partnerHidden','Lino.contacts.Partners.detail'), "sortable": false, "tooltip": "(lists.MembersByPartner.partner) ", "width": Lino.chars2width(21) } ];
    Lino.lists.MembersByPartner.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.lists.MembersByPartner.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/lists/MembersByPartner", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.lists.MembersByPartner.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/lists/MembersByPartner", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.lists.MembersByPartner.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/lists/MembersByPartner", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.lists.MembersByPartner.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/lists/MembersByPartner", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.lists.MembersByPartner.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/lists/MembersByPartner", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.lists.MembersByPartner.duplicate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/lists/MembersByPartner", "GET", pk, "duplicate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.lists.MembersByPartner.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/lists/MembersByPartner", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.lists.MembersByPartner.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.lists.MembersByPartner.GridPanel(p);
});
Lino.lists.MembersByPartner.move_up = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/lists/MembersByPartner", "GET", pk, "move_up", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.lists.MembersByPartner.move_down = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/lists/MembersByPartner", "GET", pk, "move_down", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class blogs.EntriesByType
Lino.blogs.EntriesByType.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/blogs/EntriesByType",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/blogs/EntriesByType','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/blogs/EntriesByType','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "Blog Entries",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 24,
  ls_store_fields : [ { "dateFormat": "d.m.Y", "name": "pub_date", "type": "date" }, { "name": "title" }, { "name": "user" }, 'userHidden', { "name": "id", "type": "int" }, { "name": "owner_type" }, 'owner_typeHidden', { "name": "owner_id" }, 'owner_idHidden', { "name": "body" }, { "name": "body_preview" }, { "name": "pub_time" }, { "name": "language" }, 'languageHidden', { "name": "owner" }, { "name": "add_interest" }, 'add_interestHidden', { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "entry_type" }, 'entry_typeHidden', { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 4,
  ls_grid_configs : [  ],
  content_type : 39,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.blogs.EntriesByType.detail;
    this.ls_insert_handler = Lino.blogs.EntriesByType.insert;
    var ww = this.containing_window;
    var pub_date1620 = new Lino.DateField({ "selectOnFocus": true });
    var title1621 = new Ext.form.TextField({ "maxLength": 200, "selectOnFocus": true });
    var user1622 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a User...", "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/blogs/EntriesByType/user" }) }) });
    var id1623 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var owner_type1624 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a content type...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/blogs/EntriesByType/owner_type" }) }) });
    var owner_id1625 = new Lino.RemoteComboFieldElement({ "hidden": true, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/blogs/EntriesByType/owner_id" }) }) });
    var body1626 = new Lino.RichTextPanel({ "containing_panel": this, "hidden": true, "selectOnFocus": true, "title": "Body" });
    var body_preview1627 = new Lino.RichTextPanel({ "containing_panel": this, "disabled": true, "hidden": true, "title": "Preview" });
    var pub_time1628 = new Lino.TimeField({ "hidden": true, "selectOnFocus": true });
    var language1629 = new Lino.ChoicesFieldElement({ "hidden": true, "selectOnFocus": true, "store": [ [ "en-us", "American English" ] ] });
    var owner_disp1630 = new Ext.form.DisplayField({ "disabled": true, "hidden": true });
    var add_interest1631 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Topic...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/blogs/EntriesByType/add_interest" }) }) });
    var mobile_item_disp1632 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp1633 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp1634 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp1635 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var entry_type1636 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Blog Entry Type...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/blogs/EntriesByType/entry_type" }) }) });
    this.before_row_edit = function(record) {
      owner_id1625.setContextValue('owner_type', record ? record.data['owner_typeHidden'] : undefined);
      body1626.refresh();
      body_preview1627.refresh();
    };
    this.onRender = function(ct, position) {
      owner_type1624.on('change',Lino.chooser_handler(owner_id1625,'owner_type'));
      Lino.blogs.EntriesByType.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "pub_date", "editable": true, "editor": pub_date1620, "filter": { "dateFormat": "d.m.Y", "type": "date" }, "format": "d.m.Y", "header": "Publication date", "sortable": true, "tooltip": "(blogs.EntriesByType.pub_date) ", "width": Lino.chars2width(14), "xtype": "datecolumn" }, { "colIndex": 1, "dataIndex": "title", "editable": true, "editor": title1621, "filter": { "type": "string" }, "header": "Heading", "sortable": true, "tooltip": "(blogs.EntriesByType.title) ", "width": Lino.chars2width(22) }, { "colIndex": 2, "dataIndex": "user", "editable": true, "editor": user1622, "filter": { "type": "string" }, "header": "Author", "renderer": Lino.fk_renderer('userHidden','Lino.users.Users.detail'), "sortable": false, "tooltip": "(blogs.EntriesByType.user) ", "width": Lino.chars2width(21) }, { "align": "right", "colIndex": 3, "dataIndex": "id", "editable": true, "editor": id1623, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(blogs.EntriesByType.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 4, "dataIndex": "owner_type", "editable": true, "editor": owner_type1624, "filter": { "type": "string" }, "header": "Controlled by (type)", "hidden": true, "renderer": Lino.fk_renderer('owner_typeHidden','Lino.gfks.ContentTypes.detail'), "sortable": false, "tooltip": "(blogs.EntriesByType.owner_type) ", "width": Lino.chars2width(21) }, { "colIndex": 5, "dataIndex": "owner_id", "editable": true, "editor": owner_id1625, "filter": { "type": "string" }, "header": "Controlled by (object)", "hidden": true, "sortable": false, "tooltip": "(blogs.EntriesByType.owner_id) ", "width": Lino.chars2width(11) }, { "colIndex": 6, "dataIndex": "body", "editable": true, "editor": body1626, "filter": { "type": "string" }, "header": "Body", "hidden": true, "sortable": false, "tooltip": "(blogs.EntriesByType.body) ", "width": Lino.chars2width(61) }, { "colIndex": 7, "dataIndex": "body_preview", "editable": false, "filter": { "type": "string" }, "header": "Preview", "hidden": true, "sortable": false, "tooltip": "(blogs.EntriesByType.body_preview) ", "width": Lino.chars2width(61) }, { "colIndex": 8, "dataIndex": "pub_time", "editable": true, "editor": pub_time1628, "header": "Publication time", "hidden": true, "sortable": true, "tooltip": "(blogs.EntriesByType.pub_time) ", "width": Lino.chars2width(9) }, { "colIndex": 9, "dataIndex": "language", "editable": true, "editor": language1629, "filter": { "type": "string" }, "header": "Language", "hidden": true, "sortable": false, "tooltip": "(blogs.EntriesByType.language) ", "width": Lino.chars2width(21) }, { "colIndex": 10, "dataIndex": "owner", "editable": false, "header": "Controlled by", "hidden": true, "sortable": false, "tooltip": "(blogs.EntriesByType.owner) ", "width": Lino.chars2width(11) }, { "colIndex": 11, "dataIndex": "add_interest", "editable": true, "editor": add_interest1631, "header": "Add interest", "hidden": true, "renderer": Lino.fk_renderer('add_interestHidden','Lino.topics.Topics.detail'), "sortable": false, "tooltip": "(blogs.EntriesByType.add_interest) ", "width": Lino.chars2width(21) }, { "colIndex": 12, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(blogs.EntriesByType.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 13, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(blogs.EntriesByType.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 14, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(blogs.EntriesByType.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 15, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(blogs.EntriesByType.workflow_buttons) ", "width": Lino.chars2width(31) }, { "colIndex": 16, "dataIndex": "entry_type", "editable": true, "editor": entry_type1636, "filter": { "type": "string" }, "header": "Blog Entry Type", "hidden": true, "renderer": Lino.fk_renderer('entry_typeHidden','Lino.blogs.EntryTypes.detail'), "sortable": false, "tooltip": "(blogs.EntriesByType.entry_type) ", "width": Lino.chars2width(21) } ];
    Lino.blogs.EntriesByType.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.blogs.EntriesByType.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/blogs/EntriesByType", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.blogs.EntriesByType.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/blogs/EntriesByType", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.blogs.EntriesByType.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/blogs/EntriesByType", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.blogs.EntriesByType.insertPanel = Ext.extend(Lino.blogs.Entries.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/blogs/EntriesByType",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.blogs.EntriesByType.detail;
    this.ls_insert_handler = Lino.blogs.EntriesByType.insert;
    Lino.blogs.EntriesByType.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.blogs.EntriesByType.insert = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.blogs.EntriesByType.insertPanel(p);
});
Lino.blogs.EntriesByType.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/blogs/EntriesByType", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.blogs.EntriesByType.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/blogs/EntriesByType", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.blogs.EntriesByType.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/blogs/EntriesByType", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.blogs.EntriesByType.detailPanel = Ext.extend(Lino.blogs.Entries.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  ls_url: "/blogs/EntriesByType",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.blogs.EntriesByType.detail;
    this.ls_insert_handler = Lino.blogs.EntriesByType.insert;
    Lino.blogs.EntriesByType.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.blogs.EntriesByType.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.blogs.EntriesByType.detailPanel(p);
});
Lino.blogs.EntriesByType.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/blogs/EntriesByType", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.blogs.EntriesByType.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.blogs.Entries.ParamsPanel({});
  return new Lino.blogs.EntriesByType.GridPanel(p);
});
Lino.blogs.EntriesByType.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/blogs/EntriesByType", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class excerpts.ExcerptsByType
Lino.excerpts.ExcerptsByType.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/excerpts/ExcerptsByType",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/excerpts/ExcerptsByType','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/excerpts/ExcerptsByType','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "itemId": "duplicate", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Duplicate the selected row.") }, "menu_item_text": "\u2687", "overflowText": "\u2687", "panel_btn_handler": Lino.row_action_handler('duplicate','GET',null), "text": " <font size=\"4\">\u2687</font>" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "iconCls": "x-tbar-printer", "itemId": "do_print", "menu_item_text": "Print", "overflowText": "Print", "panel_btn_handler": Lino.row_action_handler('do_print','POST',null), "tooltip": "A print action which uses a cache for the generated printable\ndocument and builds is only when it doesn't yet exist." }, { "auto_save": true, "iconCls": "x-tbar-printer_delete", "itemId": "do_clear_cache", "menu_item_text": "Clear cache", "overflowText": "Clear cache", "panel_btn_handler": Lino.row_action_handler('do_clear_cache','GET',null), "tooltip": "Defines the Clear cache button on a Printable record." }, { "auto_save": true, "iconCls": "x-tbar-script_add", "itemId": "create_postings", "menu_item_text": "Create posting", "overflowText": "Create posting", "panel_btn_handler": Lino.row_action_handler('create_postings','GET',null), "tooltip": "Create classical mail postings from this" }, { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "check_plausibility", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": "Check plausibility", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." }, { "auto_save": true, "itemId": "fix_problems", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": "Fix plausibility problems", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." } ], "menu_item_text": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": null, "xtype": "splitbutton" }, { "auto_save": true, "iconCls": "x-tbar-email_add", "itemId": "create_mail", "menu_item_text": "Create email", "overflowText": "Create email", "panel_btn_handler": Lino.row_action_handler('create_mail','GET',null), "tooltip": "Create an email from this" } ],
  cell_edit : true,
  title : "Excerpts",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 28,
  ls_store_fields : [ { "name": "build_time" }, { "name": "owner" }, { "name": "user" }, 'userHidden', { "name": "id", "type": "int" }, { "name": "build_method" }, 'build_methodHidden', { "name": "company" }, 'companyHidden', { "name": "contact_person" }, 'contact_personHidden', { "name": "contact_role" }, 'contact_roleHidden', { "name": "owner_type" }, 'owner_typeHidden', { "name": "owner_id" }, 'owner_idHidden', { "name": "language" }, 'languageHidden', { "name": "body_template_content" }, { "name": "preview" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "excerpt_type" }, 'excerpt_typeHidden', { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 4,
  ls_grid_configs : [  ],
  content_type : 42,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.excerpts.ExcerptsByType.detail;
    var ww = this.containing_window;
    var build_time1412 = new Ext.form.DisplayField({ "disabled": true, "value": "<br>" });
    var owner_disp1413 = new Ext.form.DisplayField({ "disabled": true });
    var user1414 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a User...", "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/excerpts/ExcerptsByType/user" }) }) });
    var id1415 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var build_method1416 = new Lino.ChoicesFieldElement({ "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": [['','<br>']].concat(Lino.printing.BuildMethods) });
    var company1417 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Organization...", "hidden": true, "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/excerpts/ExcerptsByType/company" }) }) });
    var contact_person1418 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Person...", "hidden": true, "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/excerpts/ExcerptsByType/contact_person" }) }) });
    var contact_role1419 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Function...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/excerpts/ExcerptsByType/contact_role" }) }) });
    var owner_type1420 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a content type...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/excerpts/ExcerptsByType/owner_type" }) }) });
    var owner_id1421 = new Lino.RemoteComboFieldElement({ "hidden": true, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/excerpts/ExcerptsByType/owner_id" }) }) });
    var language1422 = new Lino.ChoicesFieldElement({ "hidden": true, "selectOnFocus": true, "store": [ [ "en-us", "American English" ] ] });
    var body_template_content1423 = new Lino.RichTextPanel({ "containing_panel": this, "disabled": true, "hidden": true, "title": "Body template" });
    var preview_htmlbox1424 = new Lino.HtmlBoxPanel({ "always_enabled": true, "bodyStyle": "overflow-x:hidden;", "containing_panel": this, "hidden": true, "items": new Ext.BoxComponent({autoScroll:true}), "layout": "fit", "name": "preview", "title": "Preview", "value": "<br/>" });
    var mobile_item_disp1425 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp1426 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp1427 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp1428 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var excerpt_type1429 = new Lino.RemoteComboFieldElement({ "allowBlank": false, "emptyText": "Select a Excerpt Type...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/excerpts/ExcerptsByType/excerpt_type" }) }) });
    this.before_row_edit = function(record) {
      contact_person1418.setContextValue('company', record ? record.data['companyHidden'] : undefined);
      owner_id1421.setContextValue('owner_type', record ? record.data['owner_typeHidden'] : undefined);
      body_template_content1423.refresh();
      preview_htmlbox1424.refresh();
      excerpt_type1429.setContextValue('owner', record ? record.data['owner'] : undefined);
    };
    this.onRender = function(ct, position) {
      company1417.on('change',Lino.chooser_handler(contact_person1418,'company'));
      owner_type1420.on('change',Lino.chooser_handler(owner_id1421,'owner_type'));
      owner_disp1413.on('change',Lino.chooser_handler(excerpt_type1429,'owner'));
      Lino.excerpts.ExcerptsByType.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "build_time", "editable": false, "header": "build time", "sortable": true, "tooltip": "(excerpts.ExcerptsByType.build_time) Timestamp of the built target file. Contains None\nif no build hasn't been called yet.", "width": Lino.chars2width(17) }, { "colIndex": 1, "dataIndex": "owner", "editable": false, "header": "Controlled by", "sortable": false, "tooltip": "(excerpts.ExcerptsByType.owner) The object being printed by this excerpt.\nSee Controllable.owner.", "width": Lino.chars2width(11) }, { "colIndex": 2, "dataIndex": "user", "editable": true, "editor": user1414, "filter": { "type": "string" }, "header": "Author", "renderer": Lino.fk_renderer('userHidden','Lino.users.Users.detail'), "sortable": false, "tooltip": "(excerpts.ExcerptsByType.user) ", "width": Lino.chars2width(21) }, { "align": "right", "colIndex": 3, "dataIndex": "id", "editable": true, "editor": id1415, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(excerpts.ExcerptsByType.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 4, "dataIndex": "build_method", "editable": true, "editor": build_method1416, "filter": { "type": "string" }, "header": "Build method", "hidden": true, "sortable": false, "tooltip": "(excerpts.ExcerptsByType.build_method) ", "width": Lino.chars2width(24) }, { "colIndex": 5, "dataIndex": "company", "editable": true, "editor": company1417, "filter": { "type": "string" }, "header": "Recipient (Organization)", "hidden": true, "renderer": Lino.fk_renderer('companyHidden','Lino.contacts.Companies.detail'), "sortable": false, "tooltip": "(excerpts.ExcerptsByType.company) The optional company of the recipient of this\nexcerpt.  See ContactRelated.company.", "width": Lino.chars2width(21) }, { "colIndex": 6, "dataIndex": "contact_person", "editable": true, "editor": contact_person1418, "filter": { "type": "string" }, "header": "Recipient (Person)", "hidden": true, "renderer": Lino.fk_renderer('contact_personHidden','Lino.contacts.Persons.detail'), "sortable": false, "tooltip": "(excerpts.ExcerptsByType.contact_person) The optional contact person of the recipient of this\nexcerpt.  See ContactRelated.contact_person.", "width": Lino.chars2width(21) }, { "colIndex": 7, "dataIndex": "contact_role", "editable": true, "editor": contact_role1419, "filter": { "type": "string" }, "header": "represented as", "hidden": true, "sortable": false, "tooltip": "(excerpts.ExcerptsByType.contact_role) The optional Role\nof the contact_person within company.", "width": Lino.chars2width(21) }, { "colIndex": 8, "dataIndex": "owner_type", "editable": true, "editor": owner_type1420, "filter": { "type": "string" }, "header": "Controlled by (type)", "hidden": true, "renderer": Lino.fk_renderer('owner_typeHidden','Lino.gfks.ContentTypes.detail'), "sortable": false, "tooltip": "(excerpts.ExcerptsByType.owner_type) ", "width": Lino.chars2width(21) }, { "colIndex": 9, "dataIndex": "owner_id", "editable": true, "editor": owner_id1421, "filter": { "type": "string" }, "header": "Controlled by (object)", "hidden": true, "sortable": false, "tooltip": "(excerpts.ExcerptsByType.owner_id) ", "width": Lino.chars2width(11) }, { "colIndex": 10, "dataIndex": "language", "editable": true, "editor": language1422, "filter": { "type": "string" }, "header": "Language", "hidden": true, "sortable": false, "tooltip": "(excerpts.ExcerptsByType.language) The language used for printing this excerpt.", "width": Lino.chars2width(21) }, { "colIndex": 11, "dataIndex": "body_template_content", "editable": false, "header": "Body template", "hidden": true, "sortable": false, "tooltip": "(excerpts.ExcerptsByType.body_template_content) ", "width": Lino.chars2width(61) }, { "colIndex": 12, "dataIndex": "preview", "editable": false, "header": "Preview", "hidden": true, "sortable": false, "tooltip": "(excerpts.ExcerptsByType.preview) ", "width": Lino.chars2width(31) }, { "colIndex": 13, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(excerpts.ExcerptsByType.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 14, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(excerpts.ExcerptsByType.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 15, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(excerpts.ExcerptsByType.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 16, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(excerpts.ExcerptsByType.workflow_buttons) ", "width": Lino.chars2width(31) }, { "colIndex": 17, "dataIndex": "excerpt_type", "editable": true, "editor": excerpt_type1429, "filter": { "type": "string" }, "header": "Excerpt Type", "hidden": true, "renderer": Lino.fk_renderer('excerpt_typeHidden','Lino.excerpts.ExcerptTypes.detail'), "sortable": false, "tooltip": "(excerpts.ExcerptsByType.excerpt_type) The type of this excerpt (ForeignKey to ExcerptType).", "width": Lino.chars2width(21) } ];
    Lino.excerpts.ExcerptsByType.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.excerpts.ExcerptsByType.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/ExcerptsByType", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.ExcerptsByType.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/ExcerptsByType", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.ExcerptsByType.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/ExcerptsByType", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.ExcerptsByType.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/ExcerptsByType", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.ExcerptsByType.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/ExcerptsByType", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.ExcerptsByType.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/ExcerptsByType", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.ExcerptsByType.duplicate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/ExcerptsByType", "GET", pk, "duplicate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.excerpts.ExcerptsByType.detailPanel = Ext.extend(Lino.excerpts.Excerpts.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "itemId": "duplicate", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Duplicate the selected row.") }, "menu_item_text": "\u2687", "overflowText": "\u2687", "panel_btn_handler": Lino.row_action_handler('duplicate','GET',null), "text": " <font size=\"4\">\u2687</font>" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "iconCls": "x-tbar-printer", "itemId": "do_print", "menu_item_text": "Print", "overflowText": "Print", "panel_btn_handler": Lino.row_action_handler('do_print','POST',null), "tooltip": "A print action which uses a cache for the generated printable\ndocument and builds is only when it doesn't yet exist." }, { "auto_save": true, "iconCls": "x-tbar-printer_delete", "itemId": "do_clear_cache", "menu_item_text": "Clear cache", "overflowText": "Clear cache", "panel_btn_handler": Lino.row_action_handler('do_clear_cache','GET',null), "tooltip": "Defines the Clear cache button on a Printable record." }, { "auto_save": true, "iconCls": "x-tbar-script_add", "itemId": "create_postings", "menu_item_text": "Create posting", "overflowText": "Create posting", "panel_btn_handler": Lino.row_action_handler('create_postings','GET',null), "tooltip": "Create classical mail postings from this" }, { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "check_plausibility", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": "Check plausibility", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." }, { "auto_save": true, "itemId": "fix_problems", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": "Fix plausibility problems", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." } ], "menu_item_text": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": null, "xtype": "splitbutton" }, { "auto_save": true, "iconCls": "x-tbar-email_add", "itemId": "create_mail", "menu_item_text": "Create email", "overflowText": "Create email", "panel_btn_handler": Lino.row_action_handler('create_mail','GET',null), "tooltip": "Create an email from this" } ],
  ls_url: "/excerpts/ExcerptsByType",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.excerpts.ExcerptsByType.detail;
    Lino.excerpts.ExcerptsByType.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.excerpts.ExcerptsByType.detail = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(80) }, function(){
  var p = { "is_main_window": true };
  return new Lino.excerpts.ExcerptsByType.detailPanel(p);
});
Lino.excerpts.ExcerptsByType.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/ExcerptsByType", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.ExcerptsByType.do_print = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/ExcerptsByType", "POST", pk, "do_print", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.ExcerptsByType.do_clear_cache = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/ExcerptsByType", "GET", pk, "do_clear_cache", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.ExcerptsByType.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.excerpts.Excerpts.ParamsPanel({});
  return new Lino.excerpts.ExcerptsByType.GridPanel(p);
});
Lino.excerpts.ExcerptsByType.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/ExcerptsByType", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.ExcerptsByType.create_postings = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/ExcerptsByType", "GET", pk, "create_postings", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.ExcerptsByType.check_plausibility = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/ExcerptsByType", "GET", pk, "check_plausibility", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.ExcerptsByType.create_mail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/ExcerptsByType", "GET", pk, "create_mail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.ExcerptsByType.fix_problems = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/ExcerptsByType", "GET", pk, "fix_problems", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class comments.CommentsByType
Lino.comments.CommentsByType.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/comments/CommentsByType",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/comments/CommentsByType','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/comments/CommentsByType','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "Comments",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 22,
  ls_store_fields : [ { "name": "short_text" }, { "name": "created" }, { "name": "user" }, 'userHidden', { "name": "id", "type": "int" }, { "name": "modified" }, { "name": "owner_type" }, 'owner_typeHidden', { "name": "owner_id" }, 'owner_idHidden', { "name": "reply_to" }, 'reply_toHidden', { "name": "more_text" }, { "name": "owner" }, { "name": "created_natural" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "comment_type" }, 'comment_typeHidden', { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 4,
  ls_grid_configs : [  ],
  content_type : 44,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.comments.CommentsByType.detail;
    this.ls_insert_handler = Lino.comments.CommentsByType.insert;
    var ww = this.containing_window;
    var short_text3465 = new Lino.RichTextPanel({ "allowBlank": false, "containing_panel": this, "selectOnFocus": true, "title": "Short text" });
    var created3466 = new Ext.form.DisplayField({ "disabled": true, "value": "<br>" });
    var user3467 = new Lino.RemoteComboFieldElement({ "disabled": true, "emptyText": "Select a User...", "pageSize": 20, "preferred_width": 15, "store": new Lino.ComplexRemoteComboStore({  }) });
    var id3468 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var modified3469 = new Ext.form.DisplayField({ "disabled": true, "hidden": true, "value": "<br>" });
    var owner_type3470 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a content type...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/comments/CommentsByType/owner_type" }) }) });
    var owner_id3471 = new Lino.RemoteComboFieldElement({ "hidden": true, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/comments/CommentsByType/owner_id" }) }) });
    var reply_to3472 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Comment...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/comments/CommentsByType/reply_to" }) }) });
    var more_text3473 = new Lino.RichTextPanel({ "containing_panel": this, "hidden": true, "selectOnFocus": true, "title": "More text" });
    var owner_disp3474 = new Ext.form.DisplayField({ "disabled": true, "hidden": true });
    var created_natural_disp3475 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var mobile_item_disp3476 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp3477 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp3478 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp3479 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var comment_type3480 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Comment Type...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/comments/CommentsByType/comment_type" }) }) });
    this.before_row_edit = function(record) {
      short_text3465.refresh();
      owner_id3471.setContextValue('owner_type', record ? record.data['owner_typeHidden'] : undefined);
      more_text3473.refresh();
    };
    this.onRender = function(ct, position) {
      owner_type3470.on('change',Lino.chooser_handler(owner_id3471,'owner_type'));
      Lino.comments.CommentsByType.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "short_text", "editable": true, "editor": short_text3465, "filter": { "type": "string" }, "header": "Short text", "sortable": false, "tooltip": "(comments.CommentsByType.short_text) A short \"abstract\" of your comment. This should not be more\nthan one paragraph.", "width": Lino.chars2width(61) }, { "colIndex": 1, "dataIndex": "created", "editable": false, "header": "Created", "sortable": true, "tooltip": "(comments.CommentsByType.created) The timestame when this object was created.", "width": Lino.chars2width(17) }, { "colIndex": 2, "dataIndex": "user", "editable": false, "filter": { "type": "string" }, "header": "Author", "renderer": Lino.fk_renderer('userHidden','Lino.users.Users.detail'), "sortable": false, "tooltip": "(comments.CommentsByType.user) ", "width": Lino.chars2width(21) }, { "align": "right", "colIndex": 3, "dataIndex": "id", "editable": true, "editor": id3468, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(comments.CommentsByType.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 4, "dataIndex": "modified", "editable": false, "header": "Modified", "hidden": true, "sortable": true, "tooltip": "(comments.CommentsByType.modified) ", "width": Lino.chars2width(17) }, { "colIndex": 5, "dataIndex": "owner_type", "editable": true, "editor": owner_type3470, "filter": { "type": "string" }, "header": "Controlled by (type)", "hidden": true, "renderer": Lino.fk_renderer('owner_typeHidden','Lino.gfks.ContentTypes.detail'), "sortable": false, "tooltip": "(comments.CommentsByType.owner_type) ", "width": Lino.chars2width(21) }, { "colIndex": 6, "dataIndex": "owner_id", "editable": true, "editor": owner_id3471, "filter": { "type": "string" }, "header": "Controlled by (object)", "hidden": true, "sortable": false, "tooltip": "(comments.CommentsByType.owner_id) ", "width": Lino.chars2width(11) }, { "colIndex": 7, "dataIndex": "reply_to", "editable": true, "editor": reply_to3472, "filter": { "type": "string" }, "header": "Reply to", "hidden": true, "renderer": Lino.fk_renderer('reply_toHidden','Lino.comments.Comments.detail'), "sortable": false, "tooltip": "(comments.CommentsByType.reply_to) ", "width": Lino.chars2width(21) }, { "colIndex": 8, "dataIndex": "more_text", "editable": true, "editor": more_text3473, "filter": { "type": "string" }, "header": "More text", "hidden": true, "sortable": false, "tooltip": "(comments.CommentsByType.more_text) ", "width": Lino.chars2width(61) }, { "colIndex": 9, "dataIndex": "owner", "editable": false, "header": "Controlled by", "hidden": true, "sortable": false, "tooltip": "(comments.CommentsByType.owner) ", "width": Lino.chars2width(11) }, { "colIndex": 10, "dataIndex": "created_natural", "editable": false, "header": "Created", "hidden": true, "sortable": false, "tooltip": "(comments.CommentsByType.created_natural) ", "width": Lino.chars2width(31) }, { "colIndex": 11, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(comments.CommentsByType.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 12, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(comments.CommentsByType.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 13, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(comments.CommentsByType.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 14, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(comments.CommentsByType.workflow_buttons) ", "width": Lino.chars2width(31) }, { "colIndex": 15, "dataIndex": "comment_type", "editable": true, "editor": comment_type3480, "filter": { "type": "string" }, "header": "Comment Type", "hidden": true, "renderer": Lino.fk_renderer('comment_typeHidden','Lino.comments.CommentTypes.detail'), "sortable": false, "tooltip": "(comments.CommentsByType.comment_type) ", "width": Lino.chars2width(21) } ];
    Lino.comments.CommentsByType.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.comments.CommentsByType.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/comments/CommentsByType", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.comments.CommentsByType.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/comments/CommentsByType", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.comments.CommentsByType.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/comments/CommentsByType", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.comments.CommentsByType.insertPanel = Ext.extend(Lino.comments.Comments.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/comments/CommentsByType",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.comments.CommentsByType.detail;
    this.ls_insert_handler = Lino.comments.CommentsByType.insert;
    Lino.comments.CommentsByType.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.comments.CommentsByType.insert = new Lino.WindowAction({ "draggable": true, "height": Lino.rows2height(10), "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.comments.CommentsByType.insertPanel(p);
});
Lino.comments.CommentsByType.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/comments/CommentsByType", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.comments.CommentsByType.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/comments/CommentsByType", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.comments.CommentsByType.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/comments/CommentsByType", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.comments.CommentsByType.detailPanel = Ext.extend(Lino.comments.Comments.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  ls_url: "/comments/CommentsByType",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.comments.CommentsByType.detail;
    this.ls_insert_handler = Lino.comments.CommentsByType.insert;
    Lino.comments.CommentsByType.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.comments.CommentsByType.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.comments.CommentsByType.detailPanel(p);
});
Lino.comments.CommentsByType.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/comments/CommentsByType", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.comments.CommentsByType.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.comments.Comments.ParamsPanel({});
  return new Lino.comments.CommentsByType.GridPanel(p);
});
Lino.comments.CommentsByType.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/comments/CommentsByType", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class dashboard.WidgetsByUser
Lino.dashboard.WidgetsByUser.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/dashboard/WidgetsByUser",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/dashboard/WidgetsByUser','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/dashboard/WidgetsByUser','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "itemId": "duplicate", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Duplicate the selected row.") }, "menu_item_text": "\u2687", "overflowText": "\u2687", "panel_btn_handler": Lino.row_action_handler('duplicate','GET',null), "text": " <font size=\"4\">\u2687</font>" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "itemId": "move_up", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Move this row one row upwards.") }, "menu_item_text": "\u25b2", "overflowText": "\u25b2", "panel_btn_handler": Lino.row_action_handler('move_up','GET',null), "text": " <font size=\"4\">\u25b2</font>" }, { "auto_save": true, "itemId": "move_down", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Move this row one row downwards.") }, "menu_item_text": "\u25bc", "overflowText": "\u25bc", "panel_btn_handler": Lino.row_action_handler('move_down','GET',null), "text": " <font size=\"4\">\u25bc</font>" } ],
  cell_edit : true,
  title : "Dashboard",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 13,
  ls_store_fields : [ { "name": "seqno", "type": "int", "useNull": true }, { "name": "move_buttons" }, { "name": "title" }, { "name": "visible", "type": "boolean" }, { "name": "id", "type": "int" }, { "name": "item_name" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "user" }, 'userHidden', { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 4,
  ls_grid_configs : [  ],
  content_type : 46,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    var ww = this.containing_window;
    var seqno3482 = new Ext.form.NumberField({ "selectOnFocus": true });
    var move_buttons_disp3483 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    var title_disp3484 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    var visible3485 = new Ext.form.Checkbox({ "checked": true, "selectOnFocus": true });
    var id3486 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var item_name3487 = new Lino.SimpleRemoteComboFieldElement({ "allowBlank": false, "hidden": true, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/dashboard/WidgetsByUser/item_name" }) }) });
    var mobile_item_disp3488 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp3489 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp3490 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp3491 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var user3492 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a User...", "hidden": true, "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/dashboard/WidgetsByUser/user" }) }) });
    this.before_row_edit = function(record) {
      var bp = this.get_base_params();
      item_name3487.setContextValue('mk',bp['mk']);
      item_name3487.setContextValue('mt',bp['mt']);
    };
    this.onRender = function(ct, position) {
      user3492.on('change',Lino.chooser_handler(item_name3487,'user'));
      Lino.dashboard.WidgetsByUser.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "align": "right", "colIndex": 0, "dataIndex": "seqno", "editable": true, "editor": seqno3482, "filter": { "type": "numeric" }, "format": "0", "header": "No.", "sortable": true, "tooltip": "(dashboard.WidgetsByUser.seqno) The sequence number of this item with its parent.", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 1, "dataIndex": "move_buttons", "editable": false, "header": "Move", "sortable": false, "tooltip": "(dashboard.WidgetsByUser.move_buttons) ", "width": Lino.chars2width(6) }, { "colIndex": 2, "dataIndex": "title", "editable": false, "header": "Label", "sortable": false, "tooltip": "(dashboard.WidgetsByUser.title) ", "width": Lino.chars2width(31) }, { "colIndex": 3, "dataIndex": "visible", "editable": true, "filter": { "type": "boolean" }, "header": "Visible", "sortable": false, "tooltip": "(dashboard.WidgetsByUser.visible) ", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "align": "right", "colIndex": 4, "dataIndex": "id", "editable": true, "editor": id3486, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(dashboard.WidgetsByUser.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 5, "dataIndex": "item_name", "editable": true, "editor": item_name3487, "filter": { "type": "string" }, "header": "Resource", "hidden": true, "sortable": false, "tooltip": "(dashboard.WidgetsByUser.item_name) ", "width": Lino.chars2width(11) }, { "colIndex": 6, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(dashboard.WidgetsByUser.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 7, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(dashboard.WidgetsByUser.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 8, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(dashboard.WidgetsByUser.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 9, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(dashboard.WidgetsByUser.workflow_buttons) ", "width": Lino.chars2width(31) }, { "colIndex": 10, "dataIndex": "user", "editable": true, "editor": user3492, "filter": { "type": "string" }, "header": "Author", "hidden": true, "renderer": Lino.fk_renderer('userHidden','Lino.users.Users.detail'), "sortable": false, "tooltip": "(dashboard.WidgetsByUser.user) ", "width": Lino.chars2width(21) } ];
    Lino.dashboard.WidgetsByUser.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.dashboard.WidgetsByUser.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/dashboard/WidgetsByUser", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.dashboard.WidgetsByUser.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/dashboard/WidgetsByUser", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.dashboard.WidgetsByUser.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/dashboard/WidgetsByUser", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.dashboard.WidgetsByUser.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/dashboard/WidgetsByUser", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.dashboard.WidgetsByUser.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/dashboard/WidgetsByUser", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.dashboard.WidgetsByUser.duplicate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/dashboard/WidgetsByUser", "GET", pk, "duplicate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.dashboard.WidgetsByUser.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/dashboard/WidgetsByUser", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.dashboard.WidgetsByUser.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.dashboard.Widgets.ParamsPanel({});
  return new Lino.dashboard.WidgetsByUser.GridPanel(p);
});
Lino.dashboard.WidgetsByUser.move_up = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/dashboard/WidgetsByUser", "GET", pk, "move_up", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.dashboard.WidgetsByUser.move_down = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/dashboard/WidgetsByUser", "GET", pk, "move_down", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class users.AuthoritiesGiven
Lino.users.AuthoritiesGiven.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/users/AuthoritiesGiven",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/users/AuthoritiesGiven','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/users/AuthoritiesGiven','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "Authorities given",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 4,
  ls_store_fields : [ { "name": "authorized" }, 'authorizedHidden', { "name": "id", "type": "int" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 2,
  ls_grid_configs : [  ],
  content_type : 11,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    var ww = this.containing_window;
    var authorized1103 = new Lino.RemoteComboFieldElement({ "allowBlank": false, "emptyText": "Select a User...", "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/users/AuthoritiesGiven/authorized" }) }) });
    this.before_row_edit = function(record) {
      var bp = this.get_base_params();
      authorized1103.setContextValue('mk',bp['mk']);
      authorized1103.setContextValue('mt',bp['mt']);
    };
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "authorized", "editable": true, "editor": authorized1103, "filter": { "type": "string" }, "header": "User", "renderer": Lino.fk_renderer('authorizedHidden','Lino.users.Users.detail'), "sortable": false, "tooltip": "(users.AuthoritiesGiven.authorized) The user who gets the right to represent the author", "width": Lino.chars2width(21) } ];
    Lino.users.AuthoritiesGiven.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.users.AuthoritiesGiven.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/AuthoritiesGiven", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.AuthoritiesGiven.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/AuthoritiesGiven", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.AuthoritiesGiven.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/AuthoritiesGiven", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.AuthoritiesGiven.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/AuthoritiesGiven", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.AuthoritiesGiven.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/AuthoritiesGiven", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.AuthoritiesGiven.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/AuthoritiesGiven", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.AuthoritiesGiven.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.users.Authorities.ParamsPanel({});
  return new Lino.users.AuthoritiesGiven.GridPanel(p);
});

// js_render_GridPanel_class users.AuthoritiesTaken
Lino.users.AuthoritiesTaken.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/users/AuthoritiesTaken",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/users/AuthoritiesTaken','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/users/AuthoritiesTaken','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "Authorities taken",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 4,
  ls_store_fields : [ { "name": "user" }, 'userHidden', { "name": "id", "type": "int" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 2,
  ls_grid_configs : [  ],
  content_type : 11,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    var ww = this.containing_window;
    var user3494 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a User...", "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/users/AuthoritiesTaken/user" }) }) });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "user", "editable": true, "editor": user3494, "filter": { "type": "string" }, "header": "Author", "renderer": Lino.fk_renderer('userHidden','Lino.users.Users.detail'), "sortable": false, "tooltip": "(users.AuthoritiesTaken.user) The user who gives the right of representation. author of this\nauthority", "width": Lino.chars2width(21) } ];
    Lino.users.AuthoritiesTaken.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.users.AuthoritiesTaken.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/AuthoritiesTaken", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.AuthoritiesTaken.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/AuthoritiesTaken", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.AuthoritiesTaken.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/AuthoritiesTaken", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.AuthoritiesTaken.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/AuthoritiesTaken", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.AuthoritiesTaken.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/AuthoritiesTaken", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.AuthoritiesTaken.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/AuthoritiesTaken", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.AuthoritiesTaken.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.users.Authorities.ParamsPanel({});
  return new Lino.users.AuthoritiesTaken.GridPanel(p);
});

// js_render_GridPanel_class comments.CommentsByRFC
Lino.comments.CommentsByRFC.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/comments/CommentsByRFC",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/comments/CommentsByRFC','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/comments/CommentsByRFC','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "Comments",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 22,
  ls_store_fields : [ { "name": "short_text" }, { "name": "created" }, { "name": "user" }, 'userHidden', { "name": "id", "type": "int" }, { "name": "modified" }, { "name": "owner_type" }, 'owner_typeHidden', { "name": "owner_id" }, 'owner_idHidden', { "name": "reply_to" }, 'reply_toHidden', { "name": "more_text" }, { "name": "comment_type" }, 'comment_typeHidden', { "name": "created_natural" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "owner" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 4,
  ls_grid_configs : [  ],
  content_type : 44,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.comments.CommentsByRFC.detail;
    this.ls_insert_handler = Lino.comments.CommentsByRFC.insert;
    var ww = this.containing_window;
    var short_text3496 = new Lino.RichTextPanel({ "allowBlank": false, "containing_panel": this, "selectOnFocus": true, "title": "Short text" });
    var created3497 = new Ext.form.DisplayField({ "disabled": true, "value": "<br>" });
    var user3498 = new Lino.RemoteComboFieldElement({ "disabled": true, "emptyText": "Select a User...", "pageSize": 20, "preferred_width": 15, "store": new Lino.ComplexRemoteComboStore({  }) });
    var id3499 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var modified3500 = new Ext.form.DisplayField({ "disabled": true, "hidden": true, "value": "<br>" });
    var owner_type3501 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a content type...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/comments/CommentsByRFC/owner_type" }) }) });
    var owner_id3502 = new Lino.RemoteComboFieldElement({ "hidden": true, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/comments/CommentsByRFC/owner_id" }) }) });
    var reply_to3503 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Comment...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/comments/CommentsByRFC/reply_to" }) }) });
    var more_text3504 = new Lino.RichTextPanel({ "containing_panel": this, "hidden": true, "selectOnFocus": true, "title": "More text" });
    var comment_type3505 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Comment Type...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/comments/CommentsByRFC/comment_type" }) }) });
    var created_natural_disp3506 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var mobile_item_disp3507 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp3508 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp3509 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp3510 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var owner_disp3511 = new Ext.form.DisplayField({ "disabled": true, "hidden": true });
    this.before_row_edit = function(record) {
      short_text3496.refresh();
      owner_id3502.setContextValue('owner_type', record ? record.data['owner_typeHidden'] : undefined);
      more_text3504.refresh();
    };
    this.onRender = function(ct, position) {
      owner_type3501.on('change',Lino.chooser_handler(owner_id3502,'owner_type'));
      Lino.comments.CommentsByRFC.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "short_text", "editable": true, "editor": short_text3496, "filter": { "type": "string" }, "header": "Short text", "sortable": false, "tooltip": "(comments.CommentsByRFC.short_text) A short \"abstract\" of your comment. This should not be more\nthan one paragraph.", "width": Lino.chars2width(61) }, { "colIndex": 1, "dataIndex": "created", "editable": false, "header": "Created", "sortable": true, "tooltip": "(comments.CommentsByRFC.created) The timestame when this object was created.", "width": Lino.chars2width(17) }, { "colIndex": 2, "dataIndex": "user", "editable": false, "filter": { "type": "string" }, "header": "Author", "renderer": Lino.fk_renderer('userHidden','Lino.users.Users.detail'), "sortable": false, "tooltip": "(comments.CommentsByRFC.user) ", "width": Lino.chars2width(21) }, { "align": "right", "colIndex": 3, "dataIndex": "id", "editable": true, "editor": id3499, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(comments.CommentsByRFC.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 4, "dataIndex": "modified", "editable": false, "header": "Modified", "hidden": true, "sortable": true, "tooltip": "(comments.CommentsByRFC.modified) ", "width": Lino.chars2width(17) }, { "colIndex": 5, "dataIndex": "owner_type", "editable": true, "editor": owner_type3501, "filter": { "type": "string" }, "header": "Controlled by (type)", "hidden": true, "renderer": Lino.fk_renderer('owner_typeHidden','Lino.gfks.ContentTypes.detail'), "sortable": false, "tooltip": "(comments.CommentsByRFC.owner_type) ", "width": Lino.chars2width(21) }, { "colIndex": 6, "dataIndex": "owner_id", "editable": true, "editor": owner_id3502, "filter": { "type": "string" }, "header": "Controlled by (object)", "hidden": true, "sortable": false, "tooltip": "(comments.CommentsByRFC.owner_id) ", "width": Lino.chars2width(11) }, { "colIndex": 7, "dataIndex": "reply_to", "editable": true, "editor": reply_to3503, "filter": { "type": "string" }, "header": "Reply to", "hidden": true, "renderer": Lino.fk_renderer('reply_toHidden','Lino.comments.Comments.detail'), "sortable": false, "tooltip": "(comments.CommentsByRFC.reply_to) ", "width": Lino.chars2width(21) }, { "colIndex": 8, "dataIndex": "more_text", "editable": true, "editor": more_text3504, "filter": { "type": "string" }, "header": "More text", "hidden": true, "sortable": false, "tooltip": "(comments.CommentsByRFC.more_text) ", "width": Lino.chars2width(61) }, { "colIndex": 9, "dataIndex": "comment_type", "editable": true, "editor": comment_type3505, "filter": { "type": "string" }, "header": "Comment Type", "hidden": true, "renderer": Lino.fk_renderer('comment_typeHidden','Lino.comments.CommentTypes.detail'), "sortable": false, "tooltip": "(comments.CommentsByRFC.comment_type) ", "width": Lino.chars2width(21) }, { "colIndex": 10, "dataIndex": "created_natural", "editable": false, "header": "Created", "hidden": true, "sortable": false, "tooltip": "(comments.CommentsByRFC.created_natural) ", "width": Lino.chars2width(31) }, { "colIndex": 11, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(comments.CommentsByRFC.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 12, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(comments.CommentsByRFC.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 13, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(comments.CommentsByRFC.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 14, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(comments.CommentsByRFC.workflow_buttons) ", "width": Lino.chars2width(31) }, { "colIndex": 15, "dataIndex": "owner", "editable": false, "header": "Controlled by", "hidden": true, "sortable": false, "tooltip": "(comments.CommentsByRFC.owner) ", "width": Lino.chars2width(11) } ];
    Lino.comments.CommentsByRFC.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.comments.CommentsByRFC.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/comments/CommentsByRFC", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.comments.CommentsByRFC.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/comments/CommentsByRFC", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.comments.CommentsByRFC.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/comments/CommentsByRFC", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.comments.CommentsByRFC.insertPanel = Ext.extend(Lino.comments.CommentsByRFC.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/comments/CommentsByRFC",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.comments.CommentsByRFC.detail;
    this.ls_insert_handler = Lino.comments.CommentsByRFC.insert;
    Lino.comments.CommentsByRFC.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.comments.CommentsByRFC.insert = new Lino.WindowAction({ "draggable": true, "height": Lino.rows2height(10), "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.comments.CommentsByRFC.insertPanel(p);
});
Lino.comments.CommentsByRFC.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/comments/CommentsByRFC", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.comments.CommentsByRFC.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/comments/CommentsByRFC", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.comments.CommentsByRFC.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/comments/CommentsByRFC", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.comments.CommentsByRFC.detailPanel = Ext.extend(Lino.comments.Comments.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  ls_url: "/comments/CommentsByRFC",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.comments.CommentsByRFC.detail;
    this.ls_insert_handler = Lino.comments.CommentsByRFC.insert;
    Lino.comments.CommentsByRFC.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.comments.CommentsByRFC.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.comments.CommentsByRFC.detailPanel(p);
});
Lino.comments.CommentsByRFC.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/comments/CommentsByRFC", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.comments.CommentsByRFC.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.comments.Comments.ParamsPanel({});
  return new Lino.comments.CommentsByRFC.GridPanel(p);
});
Lino.comments.CommentsByRFC.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/comments/CommentsByRFC", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class cal.TasksByController
Lino.cal.TasksByController.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/cal/TasksByController",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/cal/TasksByController','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/cal/TasksByController','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "Tasks",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 5,
  ls_store_fields : [ { "dateFormat": "d.m.Y", "name": "start_date", "type": "date" }, { "name": "summary" }, { "name": "workflow_buttons" }, { "name": "id", "type": "int" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 3,
  ls_grid_configs : [  ],
  content_type : 15,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.TasksByController.detail;
    this.ls_insert_handler = Lino.cal.TasksByController.insert;
    var ww = this.containing_window;
    var start_date3513 = new Lino.DateField({ "selectOnFocus": true });
    var summary3514 = new Ext.form.TextField({ "maxLength": 200, "selectOnFocus": true });
    var workflow_buttons_disp3515 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    var id3516 = new Ext.form.NumberField({ "selectOnFocus": true });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "start_date", "editable": true, "editor": start_date3513, "filter": { "dateFormat": "d.m.Y", "type": "date" }, "format": "d.m.Y", "header": "Start date", "sortable": true, "tooltip": "(cal.TasksByController.start_date) ", "width": Lino.chars2width(14), "xtype": "datecolumn" }, { "colIndex": 1, "dataIndex": "summary", "editable": true, "editor": summary3514, "filter": { "type": "string" }, "header": "Short description", "sortable": true, "tooltip": "(cal.TasksByController.summary) ", "width": Lino.chars2width(22) }, { "colIndex": 2, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "sortable": false, "tooltip": "(cal.TasksByController.workflow_buttons) ", "width": Lino.chars2width(31) }, { "align": "right", "colIndex": 3, "dataIndex": "id", "editable": true, "editor": id3516, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "sortable": true, "tooltip": "(cal.TasksByController.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" } ];
    Lino.cal.TasksByController.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.TasksByController.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/TasksByController", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.TasksByController.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/TasksByController", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.TasksByController.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/TasksByController", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.cal.TasksByController.insertPanel = Ext.extend(Lino.cal.Tasks.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/cal/TasksByController",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.TasksByController.detail;
    this.ls_insert_handler = Lino.cal.TasksByController.insert;
    Lino.cal.TasksByController.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.TasksByController.insert = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(50) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.cal.TasksByController.insertPanel(p);
});
Lino.cal.TasksByController.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/TasksByController", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.TasksByController.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/TasksByController", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.TasksByController.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/TasksByController", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.cal.TasksByController.detailPanel = Ext.extend(Lino.cal.Tasks.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  ls_url: "/cal/TasksByController",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.TasksByController.detail;
    this.ls_insert_handler = Lino.cal.TasksByController.insert;
    Lino.cal.TasksByController.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.TasksByController.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.cal.TasksByController.detailPanel(p);
});
Lino.cal.TasksByController.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/TasksByController", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.TasksByController.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.cal.Tasks.ParamsPanel({});
  return new Lino.cal.TasksByController.GridPanel(p);
});
Lino.cal.TasksByController.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/TasksByController", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.TasksByController.wf1 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/TasksByController", "GET", pk, "wf1", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.TasksByController.wf2 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/TasksByController", "GET", pk, "wf2", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.TasksByController.wf3 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/TasksByController", "GET", pk, "wf3", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.TasksByController.wf4 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/TasksByController", "GET", pk, "wf4", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class gfks.HelpTextsByModel
Lino.gfks.HelpTextsByModel.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/gfks/HelpTextsByModel",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/gfks/HelpTextsByModel','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/gfks/HelpTextsByModel','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "Help Texts",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 7,
  ls_store_fields : [ { "name": "field" }, { "name": "verbose_name" }, { "name": "help_text" }, { "name": "id", "type": "int" }, { "name": "content_type" }, 'content_typeHidden', { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 3,
  ls_grid_configs : [  ],
  content_type : 13,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    var ww = this.containing_window;
    var field921 = new Lino.SimpleRemoteComboFieldElement({ "allowBlank": false, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/gfks/HelpTextsByModel/field" }) }) });
    var verbose_name922 = new Ext.form.TextField({ "disabled": true, "maxLength": 200 });
    var help_text923 = new Ext.form.TextArea({ "growMax": 2000, "selectOnFocus": true });
    var id924 = new Ext.form.NumberField({ "selectOnFocus": true });
    var content_type925 = new Lino.RemoteComboFieldElement({ "allowBlank": false, "emptyText": "Select a content type...", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/gfks/HelpTextsByModel/content_type" }) }) });
    this.before_row_edit = function(record) {
      var bp = this.get_base_params();
      field921.setContextValue('mk',bp['mk']);
      field921.setContextValue('mt',bp['mt']);
    };
    this.onRender = function(ct, position) {
      content_type925.on('change',Lino.chooser_handler(field921,'content_type'));
      Lino.gfks.HelpTextsByModel.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "field", "editable": true, "editor": field921, "filter": { "type": "string" }, "header": "Field", "sortable": false, "tooltip": "(gfks.HelpTextsByModel.field) ", "width": Lino.chars2width(11) }, { "colIndex": 1, "dataIndex": "verbose_name", "editable": false, "header": "Verbose name", "sortable": false, "tooltip": "(gfks.HelpTextsByModel.verbose_name) ", "width": Lino.chars2width(22) }, { "colIndex": 2, "dataIndex": "help_text", "editable": true, "editor": help_text923, "filter": { "type": "string" }, "header": "HelpText", "sortable": false, "tooltip": "(gfks.HelpTextsByModel.help_text) ", "width": Lino.chars2width(61) }, { "align": "right", "colIndex": 3, "dataIndex": "id", "editable": true, "editor": id924, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "sortable": true, "tooltip": "(gfks.HelpTextsByModel.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 4, "dataIndex": "content_type", "editable": true, "editor": content_type925, "filter": { "type": "string" }, "header": "Model", "renderer": Lino.fk_renderer('content_typeHidden','Lino.gfks.ContentTypes.detail'), "sortable": false, "tooltip": "(gfks.HelpTextsByModel.content_type) ", "width": Lino.chars2width(21) } ];
    Lino.gfks.HelpTextsByModel.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.gfks.HelpTextsByModel.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/gfks/HelpTextsByModel", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.gfks.HelpTextsByModel.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/gfks/HelpTextsByModel", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.gfks.HelpTextsByModel.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/gfks/HelpTextsByModel", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.gfks.HelpTextsByModel.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/gfks/HelpTextsByModel", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.gfks.HelpTextsByModel.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/gfks/HelpTextsByModel", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.gfks.HelpTextsByModel.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/gfks/HelpTextsByModel", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.gfks.HelpTextsByModel.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.gfks.HelpTextsByModel.GridPanel(p);
});

// js_render_GridPanel_class plausibility.ProblemsByOwner
Lino.plausibility.ProblemsByOwner.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true },
  ls_url : "/plausibility/ProblemsByOwner",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/plausibility/ProblemsByOwner','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/plausibility/ProblemsByOwner','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "update_problem", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('update_problem','GET',null), "text": "Check plausibility", "tooltip": "Check plausibility" }, { "auto_save": true, "itemId": "fix_problem", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problem','GET',null), "text": "Fix plausibility problems", "tooltip": "Fix plausibility problems" } ], "menu_item_text": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('update_problem','GET',null), "text": null, "xtype": "splitbutton" } ],
  cell_edit : false,
  title : "Plausibility problems",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disable_editing : true,
  disabled_actions_index : 15,
  ls_store_fields : [ { "name": "message" }, { "name": "checker" }, 'checkerHidden', { "name": "user" }, 'userHidden', { "name": "id", "type": "int" }, { "name": "owner_type" }, 'owner_typeHidden', { "name": "owner_id" }, 'owner_idHidden', { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "owner" }, { "name": "disabled_actions" } ],
  pk_index : 5,
  ls_grid_configs : [  ],
  content_type : 14,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.plausibility.ProblemsByOwner.detail;
    var ww = this.containing_window;
    var message325 = new Ext.form.TextField({ "allowBlank": false, "maxLength": 250, "selectOnFocus": true });
    var checker326 = new Lino.ChoicesFieldElement({ "allowBlank": false, "forceSelection": true, "selectOnFocus": true, "store": Lino.plausibility.Checkers });
    var user327 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a User...", "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/plausibility/ProblemsByOwner/user" }) }) });
    var id328 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var owner_type329 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a content type...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/plausibility/ProblemsByOwner/owner_type" }) }) });
    var owner_id330 = new Lino.RemoteComboFieldElement({ "hidden": true, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/plausibility/ProblemsByOwner/owner_id" }) }) });
    var mobile_item_disp331 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp332 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp333 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp334 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var owner_disp335 = new Ext.form.DisplayField({ "disabled": true, "hidden": true });
    this.before_row_edit = function(record) {
    };
    this.onRender = function(ct, position) {
      owner_type329.on('change',Lino.chooser_handler(owner_id330,'owner_type'));
      Lino.plausibility.ProblemsByOwner.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "message", "editable": true, "editor": message325, "filter": { "type": "string" }, "header": "Message", "sortable": true, "tooltip": "(plausibility.ProblemsByOwner.message) The message text. This is a concatenation of all messages that\nwere yeld by the checker.", "width": Lino.chars2width(51) }, { "colIndex": 1, "dataIndex": "checker", "editable": true, "editor": checker326, "filter": { "type": "string" }, "header": "Plausibility checker", "sortable": false, "tooltip": "(plausibility.ProblemsByOwner.checker) The Checker which reported\nthis problem.", "width": Lino.chars2width(11) }, { "colIndex": 2, "dataIndex": "user", "editable": true, "editor": user327, "filter": { "type": "string" }, "header": "Responsible", "renderer": Lino.fk_renderer('userHidden','Lino.users.Users.detail'), "sortable": false, "tooltip": "(plausibility.ProblemsByOwner.user) The user reponsible\nfor fixing this problem.", "width": Lino.chars2width(11) }, { "align": "right", "colIndex": 3, "dataIndex": "id", "editable": true, "editor": id328, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(plausibility.ProblemsByOwner.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 4, "dataIndex": "owner_type", "editable": true, "editor": owner_type329, "filter": { "type": "string" }, "header": "Controlled by (type)", "hidden": true, "renderer": Lino.fk_renderer('owner_typeHidden','Lino.gfks.ContentTypes.detail'), "sortable": false, "tooltip": "(plausibility.ProblemsByOwner.owner_type) ", "width": Lino.chars2width(21) }, { "colIndex": 5, "dataIndex": "owner_id", "editable": true, "editor": owner_id330, "filter": { "type": "string" }, "header": "Controlled by (object)", "hidden": true, "sortable": false, "tooltip": "(plausibility.ProblemsByOwner.owner_id) ", "width": Lino.chars2width(11) }, { "colIndex": 6, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(plausibility.ProblemsByOwner.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 7, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(plausibility.ProblemsByOwner.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 8, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(plausibility.ProblemsByOwner.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 9, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(plausibility.ProblemsByOwner.workflow_buttons) ", "width": Lino.chars2width(31) }, { "colIndex": 10, "dataIndex": "owner", "editable": false, "header": "Controlled by", "hidden": true, "sortable": false, "tooltip": "(plausibility.ProblemsByOwner.owner) ", "width": Lino.chars2width(11) } ];
    Lino.plausibility.ProblemsByOwner.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.plausibility.ProblemsByOwner.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/plausibility/ProblemsByOwner", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.plausibility.ProblemsByOwner.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/plausibility/ProblemsByOwner", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.plausibility.ProblemsByOwner.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/plausibility/ProblemsByOwner", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.plausibility.ProblemsByOwner.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/plausibility/ProblemsByOwner", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.plausibility.ProblemsByOwner.detailPanel = Ext.extend(Lino.plausibility.Problems.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "update_problem", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('update_problem','GET',null), "text": "Check plausibility", "tooltip": "Check plausibility" }, { "auto_save": true, "itemId": "fix_problem", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problem','GET',null), "text": "Fix plausibility problems", "tooltip": "Fix plausibility problems" } ], "menu_item_text": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('update_problem','GET',null), "text": null, "xtype": "splitbutton" } ],
  ls_url: "/plausibility/ProblemsByOwner",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.plausibility.ProblemsByOwner.detail;
    Lino.plausibility.ProblemsByOwner.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.plausibility.ProblemsByOwner.detail = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(70) }, function(){
  var p = { "is_main_window": true };
  return new Lino.plausibility.ProblemsByOwner.detailPanel(p);
});
Lino.plausibility.ProblemsByOwner.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.plausibility.Problems.ParamsPanel({});
  return new Lino.plausibility.ProblemsByOwner.GridPanel(p);
});
Lino.plausibility.ProblemsByOwner.update_problem = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/plausibility/ProblemsByOwner", "GET", pk, "update_problem", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.plausibility.ProblemsByOwner.fix_problem = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/plausibility/ProblemsByOwner", "GET", pk, "fix_problem", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class cal.EntriesByController
Lino.cal.EntriesByController.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/cal/EntriesByController",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/cal/EntriesByController','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/cal/EntriesByController','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "itemId": "duplicate", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Duplicate the selected row.") }, "menu_item_text": "\u2687", "overflowText": "\u2687", "panel_btn_handler": Lino.row_action_handler('duplicate','GET',null), "text": " <font size=\"4\">\u2687</font>" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "iconCls": "x-tbar-printer", "itemId": "do_print", "menu_item_text": "Print", "overflowText": "Print", "panel_btn_handler": Lino.row_action_handler('do_print','POST',null), "tooltip": "A print action which uses a cache for the generated printable\ndocument and builds is only when it doesn't yet exist." }, { "auto_save": true, "iconCls": "x-tbar-printer_delete", "itemId": "do_clear_cache", "menu_item_text": "Clear cache", "overflowText": "Clear cache", "panel_btn_handler": Lino.row_action_handler('do_clear_cache','GET',null), "tooltip": "Defines the Clear cache button on a Printable record." }, { "auto_save": true, "itemId": "show_conflicting", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Show events conflicting with this one.") }, "menu_item_text": "\u00a0\u2694\u00a0", "overflowText": "\u00a0\u2694\u00a0", "panel_btn_handler": Lino.row_action_handler('show_conflicting','GET',null), "text": "\u00a0\u2694\u00a0" }, { "auto_save": true, "iconCls": "x-tbar-calendar", "itemId": "show_today", "menu_item_text": "Today", "overflowText": "Today", "panel_btn_handler": Lino.row_action_handler('show_today','GET',null), "tooltip": "Show all calendar events of the same day." }, { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "check_plausibility", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": "Check plausibility", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." }, { "auto_save": true, "itemId": "fix_problems", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": "Fix plausibility problems", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." } ], "menu_item_text": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": null, "xtype": "splitbutton" }, { "auto_save": true, "itemId": "update_guests", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Populate or update the list of participants for this entry\naccording to the suggestions.") }, "menu_item_text": "Update Guests", "overflowText": "Update Guests", "panel_btn_handler": Lino.row_action_handler('update_guests','GET',null), "text": "\u00a0\u2637\u00a0" }, { "auto_save": true, "iconCls": "x-tbar-script_add", "itemId": "create_postings", "menu_item_text": "Create posting", "overflowText": "Create posting", "panel_btn_handler": Lino.row_action_handler('create_postings','GET',null), "tooltip": "Create classical mail postings from this" }, { "auto_save": true, "iconCls": "x-tbar-email_add", "itemId": "create_mail", "menu_item_text": "Create email", "overflowText": "Create email", "panel_btn_handler": Lino.row_action_handler('create_mail','GET',null), "tooltip": "Create an email from this" }, { "auto_save": true, "itemId": "update_events", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create or update the automatic events controlled by this generator.") }, "menu_item_text": "Update Events", "overflowText": "Update Events", "panel_btn_handler": Lino.row_action_handler('update_events','GET',null), "text": "\u00a0\u26a1\u00a0" } ],
  cell_edit : true,
  title : "Calendar entries",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 48,
  ls_store_fields : [ { "name": "when_text" }, { "name": "summary" }, { "name": "workflow_buttons" }, { "name": "id", "type": "int" }, { "name": "modified" }, { "name": "created" }, { "dateFormat": "d.m.Y", "name": "start_date", "type": "date" }, { "name": "start_time" }, { "dateFormat": "d.m.Y", "name": "end_date", "type": "date" }, { "name": "end_time" }, { "name": "build_time" }, { "name": "build_method" }, 'build_methodHidden', { "name": "user" }, 'userHidden', { "name": "assigned_to" }, 'assigned_toHidden', { "name": "owner_type" }, 'owner_typeHidden', { "name": "owner_id" }, 'owner_idHidden', { "name": "description" }, { "name": "access_class" }, 'access_classHidden', { "name": "sequence", "type": "int", "useNull": true }, { "name": "auto_type", "type": "int", "useNull": true }, { "name": "event_type" }, 'event_typeHidden', { "name": "transparent", "type": "boolean" }, { "name": "room" }, 'roomHidden', { "name": "priority" }, 'priorityHidden', { "name": "state" }, 'stateHidden', { "name": "calendar" }, 'calendarHidden', { "name": "when_html" }, { "name": "reminder" }, { "name": "all_day", "type": "boolean" }, { "name": "url" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "created_natural" }, { "name": "duration" }, { "name": "owner" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 3,
  ls_grid_configs : [  ],
  content_type : 19,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.EntriesByController.detail;
    this.ls_insert_handler = Lino.cal.EntriesByController.insert;
    var ww = this.containing_window;
    var when_text_disp3518 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    var summary3519 = new Ext.form.TextField({ "maxLength": 200, "selectOnFocus": true });
    var workflow_buttons_disp3520 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    var id3521 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var modified3522 = new Ext.form.DisplayField({ "disabled": true, "hidden": true, "value": "<br>" });
    var created3523 = new Ext.form.DisplayField({ "disabled": true, "hidden": true, "value": "<br>" });
    var start_date3524 = new Lino.DateField({ "hidden": true, "selectOnFocus": true });
    var start_time3525 = new Lino.TimeField({ "hidden": true, "selectOnFocus": true });
    var end_date3526 = new Lino.DateField({ "hidden": true, "selectOnFocus": true });
    var end_time3527 = new Lino.TimeField({ "hidden": true, "selectOnFocus": true });
    var build_time3528 = new Ext.form.DisplayField({ "disabled": true, "hidden": true, "value": "<br>" });
    var build_method3529 = new Lino.ChoicesFieldElement({ "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": [['','<br>']].concat(Lino.printing.BuildMethods) });
    var user3530 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a User...", "hidden": true, "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/EntriesByController/user" }) }) });
    var assigned_to3531 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a User...", "hidden": true, "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/EntriesByController/assigned_to" }) }) });
    var owner_type3532 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a content type...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/EntriesByController/owner_type" }) }) });
    var owner_id3533 = new Lino.RemoteComboFieldElement({ "hidden": true, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/EntriesByController/owner_id" }) }) });
    var description3534 = new Ext.form.TextArea({ "growMax": 2000, "hidden": true, "selectOnFocus": true });
    var access_class3535 = new Lino.ChoicesFieldElement({ "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": [['','<br>']].concat(Lino.cal.AccessClasses) });
    var sequence3536 = new Ext.form.NumberField({ "allowBlank": false, "hidden": true, "selectOnFocus": true, "value": 0 });
    var auto_type3537 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var event_type3538 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Calendar entry type...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/EntriesByController/event_type" }) }) });
    var transparent3539 = new Ext.form.Checkbox({ "checked": false, "hidden": true, "selectOnFocus": true });
    var room3540 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Room...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/EntriesByController/room" }) }) });
    var priority3541 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Priority...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/cal/EntriesByController/priority" }) }) });
    var state3542 = new Lino.ChoicesFieldElement({ "allowBlank": false, "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": Lino.cal.EntryStates });
    var calendar3543 = new Lino.RemoteComboFieldElement({ "disabled": true, "emptyText": "Select a Calendar...", "hidden": true, "pageSize": 20, "store": new Lino.ComplexRemoteComboStore({  }) });
    var when_html_disp3544 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var reminder_disp3545 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var all_day3546 = new Ext.form.Checkbox({ "hidden": true, "selectOnFocus": true });
    var url_disp3547 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var mobile_item_disp3548 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp3549 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp3550 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var created_natural_disp3551 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var duration3552 = new Ext.form.TextField({ "boxMinWidth": Lino.chars2width(6), "disabled": true, "hidden": true, "maxLength": 6 });
    var owner_disp3553 = new Ext.form.DisplayField({ "disabled": true, "hidden": true });
    this.before_row_edit = function(record) {
      owner_id3533.setContextValue('owner_type', record ? record.data['owner_typeHidden'] : undefined);
    };
    this.onRender = function(ct, position) {
      owner_type3532.on('change',Lino.chooser_handler(owner_id3533,'owner_type'));
      Lino.cal.EntriesByController.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "when_text", "editable": false, "header": "When", "sortable": false, "tooltip": "(cal.EntriesByController.when_text) ", "width": Lino.chars2width(31) }, { "colIndex": 1, "dataIndex": "summary", "editable": true, "editor": summary3519, "filter": { "type": "string" }, "header": "Short description", "sortable": true, "tooltip": "(cal.EntriesByController.summary) A one-line descriptive text.", "width": Lino.chars2width(22) }, { "colIndex": 2, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "sortable": false, "tooltip": "(cal.EntriesByController.workflow_buttons) ", "width": Lino.chars2width(31) }, { "align": "right", "colIndex": 3, "dataIndex": "id", "editable": true, "editor": id3521, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(cal.EntriesByController.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 4, "dataIndex": "modified", "editable": false, "header": "Modified", "hidden": true, "sortable": true, "tooltip": "(cal.EntriesByController.modified) ", "width": Lino.chars2width(17) }, { "colIndex": 5, "dataIndex": "created", "editable": false, "header": "Created", "hidden": true, "sortable": true, "tooltip": "(cal.EntriesByController.created) The timestame when this object was created.", "width": Lino.chars2width(17) }, { "colIndex": 6, "dataIndex": "start_date", "editable": true, "editor": start_date3524, "filter": { "dateFormat": "d.m.Y", "type": "date" }, "format": "d.m.Y", "header": "Start date", "hidden": true, "sortable": true, "tooltip": "(cal.EntriesByController.start_date) ", "width": Lino.chars2width(14), "xtype": "datecolumn" }, { "colIndex": 7, "dataIndex": "start_time", "editable": true, "editor": start_time3525, "header": "Start time", "hidden": true, "sortable": true, "tooltip": "(cal.EntriesByController.start_time) ", "width": Lino.chars2width(9) }, { "colIndex": 8, "dataIndex": "end_date", "editable": true, "editor": end_date3526, "filter": { "dateFormat": "d.m.Y", "type": "date" }, "format": "d.m.Y", "header": "End Date", "hidden": true, "sortable": true, "tooltip": "(cal.EntriesByController.end_date) ", "width": Lino.chars2width(14), "xtype": "datecolumn" }, { "colIndex": 9, "dataIndex": "end_time", "editable": true, "editor": end_time3527, "header": "End Time", "hidden": true, "sortable": true, "tooltip": "(cal.EntriesByController.end_time) These four fields define the duration of this entry.\nOnly start_date is mandatory.", "width": Lino.chars2width(9) }, { "colIndex": 10, "dataIndex": "build_time", "editable": false, "header": "build time", "hidden": true, "sortable": true, "tooltip": "(cal.EntriesByController.build_time) Timestamp of the built target file. Contains None\nif no build hasn't been called yet.", "width": Lino.chars2width(17) }, { "colIndex": 11, "dataIndex": "build_method", "editable": true, "editor": build_method3529, "filter": { "type": "string" }, "header": "Build method", "hidden": true, "sortable": false, "tooltip": "(cal.EntriesByController.build_method) ", "width": Lino.chars2width(24) }, { "colIndex": 12, "dataIndex": "user", "editable": true, "editor": user3530, "filter": { "type": "string" }, "header": "Responsible user", "hidden": true, "renderer": Lino.fk_renderer('userHidden','Lino.users.Users.detail'), "sortable": false, "tooltip": "(cal.EntriesByController.user) The responsible user.", "width": Lino.chars2width(21) }, { "colIndex": 13, "dataIndex": "assigned_to", "editable": true, "editor": assigned_to3531, "filter": { "type": "string" }, "header": "Assigned to", "hidden": true, "renderer": Lino.fk_renderer('assigned_toHidden','Lino.users.Users.detail'), "sortable": false, "tooltip": "(cal.EntriesByController.assigned_to) Another user who is expected to take responsibility for this\nentry.", "width": Lino.chars2width(21) }, { "colIndex": 14, "dataIndex": "owner_type", "editable": true, "editor": owner_type3532, "filter": { "type": "string" }, "header": "Controlled by (type)", "hidden": true, "renderer": Lino.fk_renderer('owner_typeHidden','Lino.gfks.ContentTypes.detail'), "sortable": false, "tooltip": "(cal.EntriesByController.owner_type) ", "width": Lino.chars2width(21) }, { "colIndex": 15, "dataIndex": "owner_id", "editable": true, "editor": owner_id3533, "filter": { "type": "string" }, "header": "Controlled by (object)", "hidden": true, "sortable": false, "tooltip": "(cal.EntriesByController.owner_id) ", "width": Lino.chars2width(11) }, { "colIndex": 16, "dataIndex": "description", "editable": true, "editor": description3534, "filter": { "type": "string" }, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.EntriesByController.description) A longer descriptive text.", "width": Lino.chars2width(61) }, { "colIndex": 17, "dataIndex": "access_class", "editable": true, "editor": access_class3535, "filter": { "type": "string" }, "header": "Access Class", "hidden": true, "sortable": false, "tooltip": "(cal.EntriesByController.access_class) Whether this is private, public or between.", "width": Lino.chars2width(13) }, { "align": "right", "colIndex": 18, "dataIndex": "sequence", "editable": true, "editor": sequence3536, "filter": { "type": "numeric" }, "format": "0", "header": "Revision", "hidden": true, "sortable": true, "tooltip": "(cal.EntriesByController.sequence) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "align": "right", "colIndex": 19, "dataIndex": "auto_type", "editable": true, "editor": auto_type3537, "filter": { "type": "numeric" }, "format": "0", "header": "No.", "hidden": true, "sortable": true, "tooltip": "(cal.EntriesByController.auto_type) Contains the sequence number if this is an automatically\ngenerated component. Otherwise this field is empty.", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 20, "dataIndex": "event_type", "editable": true, "editor": event_type3538, "filter": { "type": "string" }, "header": "Calendar entry type", "hidden": true, "renderer": Lino.fk_renderer('event_typeHidden','Lino.cal.EventTypes.detail'), "sortable": false, "tooltip": "(cal.EntriesByController.event_type) The type of this entry. Every calendar entry should have this\nfield pointing to a given EventType, which holds\nextended configurable information about this entry.", "width": Lino.chars2width(21) }, { "colIndex": 21, "dataIndex": "transparent", "editable": true, "filter": { "type": "boolean" }, "header": "Transparent", "hidden": true, "sortable": false, "tooltip": "(cal.EntriesByController.transparent) Indicates that this entry shouldn't prevent other entries at\nthe same time.", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 22, "dataIndex": "room", "editable": true, "editor": room3540, "filter": { "type": "string" }, "header": "Room", "hidden": true, "renderer": Lino.fk_renderer('roomHidden','Lino.cal.Rooms.detail'), "sortable": false, "tooltip": "(cal.EntriesByController.room) ", "width": Lino.chars2width(21) }, { "colIndex": 23, "dataIndex": "priority", "editable": true, "editor": priority3541, "filter": { "type": "string" }, "header": "Priority", "hidden": true, "sortable": false, "tooltip": "(cal.EntriesByController.priority) ", "width": Lino.chars2width(21) }, { "colIndex": 24, "dataIndex": "state", "editable": true, "editor": state3542, "filter": { "type": "string" }, "header": "State", "hidden": true, "sortable": false, "tooltip": "(cal.EntriesByController.state) The state of this entry. The state can change according to\nrules defined by the workflow, that's why we sometimes refer\nto it as the life cycle.", "width": Lino.chars2width(14) }, { "colIndex": 25, "dataIndex": "calendar", "editable": false, "header": "Calendar", "hidden": true, "renderer": Lino.fk_renderer('calendarHidden','Lino.cal.Calendars.detail'), "sortable": false, "tooltip": "(cal.EntriesByController.calendar) ", "width": Lino.chars2width(21) }, { "colIndex": 26, "dataIndex": "when_html", "editable": false, "header": "When", "hidden": true, "sortable": false, "tooltip": "(cal.EntriesByController.when_html) ", "width": Lino.chars2width(31) }, { "colIndex": 27, "dataIndex": "reminder", "editable": false, "header": "Reminder", "hidden": true, "sortable": false, "tooltip": "(cal.EntriesByController.reminder) ", "width": Lino.chars2width(31) }, { "colIndex": 28, "dataIndex": "all_day", "editable": true, "header": "all day", "hidden": true, "sortable": false, "tooltip": "(cal.EntriesByController.all_day) ", "width": Lino.chars2width(11), "xtype": "checkcolumn" }, { "colIndex": 29, "dataIndex": "url", "editable": false, "header": "Link URL", "hidden": true, "sortable": false, "tooltip": "(cal.EntriesByController.url) ", "width": Lino.chars2width(31) }, { "colIndex": 30, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.EntriesByController.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 31, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(cal.EntriesByController.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 32, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(cal.EntriesByController.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 33, "dataIndex": "created_natural", "editable": false, "header": "Created", "hidden": true, "sortable": false, "tooltip": "(cal.EntriesByController.created_natural) ", "width": Lino.chars2width(31) }, { "align": "right", "colIndex": 34, "dataIndex": "duration", "editable": false, "format": "", "header": "Duration", "hidden": true, "sortable": false, "tooltip": "(cal.EntriesByController.duration) ", "width": Lino.chars2width(8) }, { "colIndex": 35, "dataIndex": "owner", "editable": false, "header": "Controlled by", "hidden": true, "sortable": false, "tooltip": "(cal.EntriesByController.owner) ", "width": Lino.chars2width(11) } ];
    Lino.cal.EntriesByController.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.EntriesByController.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByController", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByController.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByController", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByController.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByController", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.cal.EntriesByController.insertPanel = Ext.extend(Lino.cal.Events.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/cal/EntriesByController",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.EntriesByController.detail;
    this.ls_insert_handler = Lino.cal.EntriesByController.insert;
    Lino.cal.EntriesByController.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.EntriesByController.insert = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.cal.EntriesByController.insertPanel(p);
});
Lino.cal.EntriesByController.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByController", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByController.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByController", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByController.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByController", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByController.duplicate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByController", "GET", pk, "duplicate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.cal.EntriesByController.detailPanel = Ext.extend(Lino.cal.Events.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "itemId": "duplicate", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Duplicate the selected row.") }, "menu_item_text": "\u2687", "overflowText": "\u2687", "panel_btn_handler": Lino.row_action_handler('duplicate','GET',null), "text": " <font size=\"4\">\u2687</font>" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "iconCls": "x-tbar-printer", "itemId": "do_print", "menu_item_text": "Print", "overflowText": "Print", "panel_btn_handler": Lino.row_action_handler('do_print','POST',null), "tooltip": "A print action which uses a cache for the generated printable\ndocument and builds is only when it doesn't yet exist." }, { "auto_save": true, "iconCls": "x-tbar-printer_delete", "itemId": "do_clear_cache", "menu_item_text": "Clear cache", "overflowText": "Clear cache", "panel_btn_handler": Lino.row_action_handler('do_clear_cache','GET',null), "tooltip": "Defines the Clear cache button on a Printable record." }, { "auto_save": true, "itemId": "show_conflicting", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Show events conflicting with this one.") }, "menu_item_text": "\u00a0\u2694\u00a0", "overflowText": "\u00a0\u2694\u00a0", "panel_btn_handler": Lino.row_action_handler('show_conflicting','GET',null), "text": "\u00a0\u2694\u00a0" }, { "auto_save": true, "iconCls": "x-tbar-calendar", "itemId": "show_today", "menu_item_text": "Today", "overflowText": "Today", "panel_btn_handler": Lino.row_action_handler('show_today','GET',null), "tooltip": "Show all calendar events of the same day." }, { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "check_plausibility", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": "Check plausibility", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." }, { "auto_save": true, "itemId": "fix_problems", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": "Fix plausibility problems", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." } ], "menu_item_text": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": null, "xtype": "splitbutton" }, { "auto_save": true, "itemId": "update_guests", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Populate or update the list of participants for this entry\naccording to the suggestions.") }, "menu_item_text": "Update Guests", "overflowText": "Update Guests", "panel_btn_handler": Lino.row_action_handler('update_guests','GET',null), "text": "\u00a0\u2637\u00a0" }, { "auto_save": true, "iconCls": "x-tbar-script_add", "itemId": "create_postings", "menu_item_text": "Create posting", "overflowText": "Create posting", "panel_btn_handler": Lino.row_action_handler('create_postings','GET',null), "tooltip": "Create classical mail postings from this" }, { "auto_save": true, "iconCls": "x-tbar-email_add", "itemId": "create_mail", "menu_item_text": "Create email", "overflowText": "Create email", "panel_btn_handler": Lino.row_action_handler('create_mail','GET',null), "tooltip": "Create an email from this" }, { "auto_save": true, "itemId": "update_events", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create or update the automatic events controlled by this generator.") }, "menu_item_text": "Update Events", "overflowText": "Update Events", "panel_btn_handler": Lino.row_action_handler('update_events','GET',null), "text": "\u00a0\u26a1\u00a0" } ],
  ls_url: "/cal/EntriesByController",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.cal.EntriesByController.detail;
    this.ls_insert_handler = Lino.cal.EntriesByController.insert;
    Lino.cal.EntriesByController.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.EntriesByController.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.cal.EntriesByController.detailPanel(p);
});
Lino.cal.EntriesByController.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByController", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByController.do_print = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByController", "POST", pk, "do_print", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByController.do_clear_cache = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByController", "GET", pk, "do_clear_cache", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByController.show_conflicting = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByController", "GET", pk, "show_conflicting", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByController.show_today = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByController", "GET", pk, "show_today", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByController.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.cal.Events.ParamsPanel({});
  return new Lino.cal.EntriesByController.GridPanel(p);
});
Lino.cal.EntriesByController.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByController", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByController.check_plausibility = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByController", "GET", pk, "check_plausibility", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByController.update_guests = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByController", "GET", pk, "update_guests", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByController.fix_problems = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByController", "GET", pk, "fix_problems", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByController.create_postings = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByController", "GET", pk, "create_postings", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByController.take = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByController", "GET", pk, "take", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByController.assign_to_me = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByController", "GET", pk, "assign_to_me", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByController.move_next = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByController", "GET", pk, "move_next", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByController.create_mail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByController", "GET", pk, "create_mail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByController.update_events = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByController", "GET", pk, "update_events", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByController.reset_event = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByController", "GET", pk, "reset_event", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByController.wf2 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByController", "GET", pk, "wf2", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntriesByController.wf3 = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntriesByController", "GET", pk, "wf3", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class topics.InterestsByController
Lino.topics.InterestsByController.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/topics/InterestsByController",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/topics/InterestsByController','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/topics/InterestsByController','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "Interests",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 16,
  ls_store_fields : [ { "name": "topic" }, 'topicHidden', { "name": "id", "type": "int" }, { "name": "owner_type" }, 'owner_typeHidden', { "name": "owner_id" }, 'owner_idHidden', { "name": "remark" }, { "name": "partner" }, 'partnerHidden', { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "owner" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 2,
  ls_grid_configs : [  ],
  content_type : 35,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    var ww = this.containing_window;
    var topic3555 = new Lino.RemoteComboFieldElement({ "allowBlank": false, "emptyText": "Select a Topic...", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/topics/InterestsByController/topic" }) }) });
    var id3556 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var owner_type3557 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a content type...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/topics/InterestsByController/owner_type" }) }) });
    var owner_id3558 = new Lino.RemoteComboFieldElement({ "hidden": true, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/topics/InterestsByController/owner_id" }) }) });
    var remark3559 = new Ext.form.TextArea({ "growMax": 2000, "hidden": true, "selectOnFocus": true });
    var partner3560 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Partner...", "hidden": true, "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/topics/InterestsByController/partner" }) }) });
    var mobile_item_disp3561 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp3562 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp3563 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp3564 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var owner_disp3565 = new Ext.form.DisplayField({ "disabled": true, "hidden": true });
    this.before_row_edit = function(record) {
      owner_id3558.setContextValue('owner_type', record ? record.data['owner_typeHidden'] : undefined);
    };
    this.onRender = function(ct, position) {
      owner_type3557.on('change',Lino.chooser_handler(owner_id3558,'owner_type'));
      Lino.topics.InterestsByController.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "topic", "editable": true, "editor": topic3555, "filter": { "type": "string" }, "header": "Topic", "renderer": Lino.fk_renderer('topicHidden','Lino.topics.Topics.detail'), "sortable": false, "tooltip": "(topics.InterestsByController.topic) ", "width": Lino.chars2width(21) }, { "align": "right", "colIndex": 1, "dataIndex": "id", "editable": true, "editor": id3556, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(topics.InterestsByController.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 2, "dataIndex": "owner_type", "editable": true, "editor": owner_type3557, "filter": { "type": "string" }, "header": "Controlled by (type)", "hidden": true, "renderer": Lino.fk_renderer('owner_typeHidden','Lino.gfks.ContentTypes.detail'), "sortable": false, "tooltip": "(topics.InterestsByController.owner_type) ", "width": Lino.chars2width(21) }, { "colIndex": 3, "dataIndex": "owner_id", "editable": true, "editor": owner_id3558, "filter": { "type": "string" }, "header": "Controlled by (object)", "hidden": true, "sortable": false, "tooltip": "(topics.InterestsByController.owner_id) ", "width": Lino.chars2width(11) }, { "colIndex": 4, "dataIndex": "remark", "editable": true, "editor": remark3559, "filter": { "type": "string" }, "header": "Remark", "hidden": true, "sortable": false, "tooltip": "(topics.InterestsByController.remark) ", "width": Lino.chars2width(61) }, { "colIndex": 5, "dataIndex": "partner", "editable": true, "editor": partner3560, "filter": { "type": "string" }, "header": "Partner", "hidden": true, "renderer": Lino.fk_renderer('partnerHidden','Lino.contacts.Partners.detail'), "sortable": false, "tooltip": "(topics.InterestsByController.partner) ", "width": Lino.chars2width(21) }, { "colIndex": 6, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(topics.InterestsByController.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 7, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(topics.InterestsByController.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 8, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(topics.InterestsByController.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 9, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(topics.InterestsByController.workflow_buttons) ", "width": Lino.chars2width(31) }, { "colIndex": 10, "dataIndex": "owner", "editable": false, "header": "Controlled by", "hidden": true, "sortable": false, "tooltip": "(topics.InterestsByController.owner) ", "width": Lino.chars2width(11) } ];
    Lino.topics.InterestsByController.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.topics.InterestsByController.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/topics/InterestsByController", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.topics.InterestsByController.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/topics/InterestsByController", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.topics.InterestsByController.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/topics/InterestsByController", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.topics.InterestsByController.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/topics/InterestsByController", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.topics.InterestsByController.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/topics/InterestsByController", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.topics.InterestsByController.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/topics/InterestsByController", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.topics.InterestsByController.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.topics.InterestsByController.GridPanel(p);
});

// js_render_GridPanel_class excerpts.ExcerptsByOwner
Lino.excerpts.ExcerptsByOwner.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/excerpts/ExcerptsByOwner",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/excerpts/ExcerptsByOwner','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/excerpts/ExcerptsByOwner','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "itemId": "duplicate", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Duplicate the selected row.") }, "menu_item_text": "\u2687", "overflowText": "\u2687", "panel_btn_handler": Lino.row_action_handler('duplicate','GET',null), "text": " <font size=\"4\">\u2687</font>" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "iconCls": "x-tbar-printer", "itemId": "do_print", "menu_item_text": "Print", "overflowText": "Print", "panel_btn_handler": Lino.row_action_handler('do_print','POST',null), "tooltip": "A print action which uses a cache for the generated printable\ndocument and builds is only when it doesn't yet exist." }, { "auto_save": true, "iconCls": "x-tbar-printer_delete", "itemId": "do_clear_cache", "menu_item_text": "Clear cache", "overflowText": "Clear cache", "panel_btn_handler": Lino.row_action_handler('do_clear_cache','GET',null), "tooltip": "Defines the Clear cache button on a Printable record." }, { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "check_plausibility", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": "Check plausibility", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." }, { "auto_save": true, "itemId": "fix_problems", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": "Fix plausibility problems", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." } ], "menu_item_text": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": null, "xtype": "splitbutton" }, { "auto_save": true, "iconCls": "x-tbar-script_add", "itemId": "create_postings", "menu_item_text": "Create posting", "overflowText": "Create posting", "panel_btn_handler": Lino.row_action_handler('create_postings','GET',null), "tooltip": "Create classical mail postings from this" }, { "auto_save": true, "iconCls": "x-tbar-email_add", "itemId": "create_mail", "menu_item_text": "Create email", "overflowText": "Create email", "panel_btn_handler": Lino.row_action_handler('create_mail','GET',null), "tooltip": "Create an email from this" } ],
  cell_edit : true,
  title : "Existing excerpts",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 28,
  ls_store_fields : [ { "name": "build_time" }, { "name": "excerpt_type" }, 'excerpt_typeHidden', { "name": "user" }, 'userHidden', { "name": "id", "type": "int" }, { "name": "build_method" }, 'build_methodHidden', { "name": "company" }, 'companyHidden', { "name": "contact_person" }, 'contact_personHidden', { "name": "contact_role" }, 'contact_roleHidden', { "name": "owner_type" }, 'owner_typeHidden', { "name": "owner_id" }, 'owner_idHidden', { "name": "language" }, 'languageHidden', { "name": "body_template_content" }, { "name": "preview" }, { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "owner" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 5,
  ls_grid_configs : [  ],
  content_type : 42,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.excerpts.ExcerptsByOwner.detail;
    var ww = this.containing_window;
    var build_time3567 = new Ext.form.DisplayField({ "disabled": true, "value": "<br>" });
    var excerpt_type3568 = new Lino.RemoteComboFieldElement({ "allowBlank": false, "emptyText": "Select a Excerpt Type...", "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/excerpts/ExcerptsByOwner/excerpt_type" }) }) });
    var user3569 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a User...", "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/excerpts/ExcerptsByOwner/user" }) }) });
    var id3570 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var build_method3571 = new Lino.ChoicesFieldElement({ "forceSelection": true, "hidden": true, "selectOnFocus": true, "store": [['','<br>']].concat(Lino.printing.BuildMethods) });
    var company3572 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Organization...", "hidden": true, "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/excerpts/ExcerptsByOwner/company" }) }) });
    var contact_person3573 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Person...", "hidden": true, "pageSize": 20, "preferred_width": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/excerpts/ExcerptsByOwner/contact_person" }) }) });
    var contact_role3574 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Function...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/excerpts/ExcerptsByOwner/contact_role" }) }) });
    var owner_type3575 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a content type...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/excerpts/ExcerptsByOwner/owner_type" }) }) });
    var owner_id3576 = new Lino.RemoteComboFieldElement({ "hidden": true, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/excerpts/ExcerptsByOwner/owner_id" }) }) });
    var language3577 = new Lino.ChoicesFieldElement({ "hidden": true, "selectOnFocus": true, "store": [ [ "en-us", "American English" ] ] });
    var body_template_content3578 = new Lino.RichTextPanel({ "containing_panel": this, "disabled": true, "hidden": true, "title": "Body template" });
    var preview_htmlbox3579 = new Lino.HtmlBoxPanel({ "always_enabled": true, "bodyStyle": "overflow-x:hidden;", "containing_panel": this, "hidden": true, "items": new Ext.BoxComponent({autoScroll:true}), "layout": "fit", "name": "preview", "title": "Preview", "value": "<br/>" });
    var mobile_item_disp3580 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp3581 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp3582 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp3583 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var owner_disp3584 = new Ext.form.DisplayField({ "disabled": true, "hidden": true });
    this.before_row_edit = function(record) {
      var bp = this.get_base_params();
      excerpt_type3568.setContextValue('mk',bp['mk']);
      excerpt_type3568.setContextValue('mt',bp['mt']);
      contact_person3573.setContextValue('company', record ? record.data['companyHidden'] : undefined);
      owner_id3576.setContextValue('owner_type', record ? record.data['owner_typeHidden'] : undefined);
      body_template_content3578.refresh();
      preview_htmlbox3579.refresh();
    };
    this.onRender = function(ct, position) {
      owner_disp3584.on('change',Lino.chooser_handler(excerpt_type3568,'owner'));
      company3572.on('change',Lino.chooser_handler(contact_person3573,'company'));
      owner_type3575.on('change',Lino.chooser_handler(owner_id3576,'owner_type'));
      Lino.excerpts.ExcerptsByOwner.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "build_time", "editable": false, "header": "build time", "sortable": true, "tooltip": "(excerpts.ExcerptsByOwner.build_time) Timestamp of the built target file. Contains None\nif no build hasn't been called yet.", "width": Lino.chars2width(17) }, { "colIndex": 1, "dataIndex": "excerpt_type", "editable": true, "editor": excerpt_type3568, "filter": { "type": "string" }, "header": "Excerpt Type", "renderer": Lino.fk_renderer('excerpt_typeHidden','Lino.excerpts.ExcerptTypes.detail'), "sortable": false, "tooltip": "(excerpts.ExcerptsByOwner.excerpt_type) The type of this excerpt (ForeignKey to ExcerptType).", "width": Lino.chars2width(21) }, { "colIndex": 2, "dataIndex": "user", "editable": true, "editor": user3569, "filter": { "type": "string" }, "header": "Author", "renderer": Lino.fk_renderer('userHidden','Lino.users.Users.detail'), "sortable": false, "tooltip": "(excerpts.ExcerptsByOwner.user) ", "width": Lino.chars2width(21) }, { "align": "right", "colIndex": 3, "dataIndex": "id", "editable": true, "editor": id3570, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(excerpts.ExcerptsByOwner.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 4, "dataIndex": "build_method", "editable": true, "editor": build_method3571, "filter": { "type": "string" }, "header": "Build method", "hidden": true, "sortable": false, "tooltip": "(excerpts.ExcerptsByOwner.build_method) ", "width": Lino.chars2width(24) }, { "colIndex": 5, "dataIndex": "company", "editable": true, "editor": company3572, "filter": { "type": "string" }, "header": "Recipient (Organization)", "hidden": true, "renderer": Lino.fk_renderer('companyHidden','Lino.contacts.Companies.detail'), "sortable": false, "tooltip": "(excerpts.ExcerptsByOwner.company) The optional company of the recipient of this\nexcerpt.  See ContactRelated.company.", "width": Lino.chars2width(21) }, { "colIndex": 6, "dataIndex": "contact_person", "editable": true, "editor": contact_person3573, "filter": { "type": "string" }, "header": "Recipient (Person)", "hidden": true, "renderer": Lino.fk_renderer('contact_personHidden','Lino.contacts.Persons.detail'), "sortable": false, "tooltip": "(excerpts.ExcerptsByOwner.contact_person) The optional contact person of the recipient of this\nexcerpt.  See ContactRelated.contact_person.", "width": Lino.chars2width(21) }, { "colIndex": 7, "dataIndex": "contact_role", "editable": true, "editor": contact_role3574, "filter": { "type": "string" }, "header": "represented as", "hidden": true, "sortable": false, "tooltip": "(excerpts.ExcerptsByOwner.contact_role) The optional Role\nof the contact_person within company.", "width": Lino.chars2width(21) }, { "colIndex": 8, "dataIndex": "owner_type", "editable": true, "editor": owner_type3575, "filter": { "type": "string" }, "header": "Controlled by (type)", "hidden": true, "renderer": Lino.fk_renderer('owner_typeHidden','Lino.gfks.ContentTypes.detail'), "sortable": false, "tooltip": "(excerpts.ExcerptsByOwner.owner_type) ", "width": Lino.chars2width(21) }, { "colIndex": 9, "dataIndex": "owner_id", "editable": true, "editor": owner_id3576, "filter": { "type": "string" }, "header": "Controlled by (object)", "hidden": true, "sortable": false, "tooltip": "(excerpts.ExcerptsByOwner.owner_id) ", "width": Lino.chars2width(11) }, { "colIndex": 10, "dataIndex": "language", "editable": true, "editor": language3577, "filter": { "type": "string" }, "header": "Language", "hidden": true, "sortable": false, "tooltip": "(excerpts.ExcerptsByOwner.language) The language used for printing this excerpt.", "width": Lino.chars2width(21) }, { "colIndex": 11, "dataIndex": "body_template_content", "editable": false, "header": "Body template", "hidden": true, "sortable": false, "tooltip": "(excerpts.ExcerptsByOwner.body_template_content) ", "width": Lino.chars2width(61) }, { "colIndex": 12, "dataIndex": "preview", "editable": false, "header": "Preview", "hidden": true, "sortable": false, "tooltip": "(excerpts.ExcerptsByOwner.preview) ", "width": Lino.chars2width(31) }, { "colIndex": 13, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(excerpts.ExcerptsByOwner.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 14, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(excerpts.ExcerptsByOwner.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 15, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(excerpts.ExcerptsByOwner.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 16, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(excerpts.ExcerptsByOwner.workflow_buttons) ", "width": Lino.chars2width(31) }, { "colIndex": 17, "dataIndex": "owner", "editable": false, "header": "Controlled by", "hidden": true, "sortable": false, "tooltip": "(excerpts.ExcerptsByOwner.owner) The object being printed by this excerpt.\nSee Controllable.owner.", "width": Lino.chars2width(11) } ];
    Lino.excerpts.ExcerptsByOwner.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.excerpts.ExcerptsByOwner.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/ExcerptsByOwner", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.ExcerptsByOwner.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/ExcerptsByOwner", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.ExcerptsByOwner.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/ExcerptsByOwner", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.ExcerptsByOwner.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/ExcerptsByOwner", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.ExcerptsByOwner.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/ExcerptsByOwner", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.ExcerptsByOwner.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/ExcerptsByOwner", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.ExcerptsByOwner.duplicate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/ExcerptsByOwner", "GET", pk, "duplicate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.excerpts.ExcerptsByOwner.detailPanel = Ext.extend(Lino.excerpts.Excerpts.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "itemId": "duplicate", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Duplicate the selected row.") }, "menu_item_text": "\u2687", "overflowText": "\u2687", "panel_btn_handler": Lino.row_action_handler('duplicate','GET',null), "text": " <font size=\"4\">\u2687</font>" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" }, { "auto_save": true, "iconCls": "x-tbar-printer", "itemId": "do_print", "menu_item_text": "Print", "overflowText": "Print", "panel_btn_handler": Lino.row_action_handler('do_print','POST',null), "tooltip": "A print action which uses a cache for the generated printable\ndocument and builds is only when it doesn't yet exist." }, { "auto_save": true, "iconCls": "x-tbar-printer_delete", "itemId": "do_clear_cache", "menu_item_text": "Clear cache", "overflowText": "Clear cache", "panel_btn_handler": Lino.row_action_handler('do_clear_cache','GET',null), "tooltip": "Defines the Clear cache button on a Printable record." }, { "iconCls": "x-tbar-bell", "menu": [ { "auto_save": true, "itemId": "check_plausibility", "menu_item_text": "Check plausibility", "overflowText": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": "Check plausibility", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." }, { "auto_save": true, "itemId": "fix_problems", "menu_item_text": "Fix plausibility problems", "overflowText": "Fix plausibility problems", "panel_btn_handler": Lino.row_action_handler('fix_problems','GET',null), "text": "Fix plausibility problems", "tooltip": "Updates the table of plausibility problems for a given database\nobject, also removing those messages which no longer exist. This\naction does not change anything else in the database." } ], "menu_item_text": "Check plausibility", "panel_btn_handler": Lino.row_action_handler('check_plausibility','GET',null), "text": null, "xtype": "splitbutton" }, { "auto_save": true, "iconCls": "x-tbar-script_add", "itemId": "create_postings", "menu_item_text": "Create posting", "overflowText": "Create posting", "panel_btn_handler": Lino.row_action_handler('create_postings','GET',null), "tooltip": "Create classical mail postings from this" }, { "auto_save": true, "iconCls": "x-tbar-email_add", "itemId": "create_mail", "menu_item_text": "Create email", "overflowText": "Create email", "panel_btn_handler": Lino.row_action_handler('create_mail','GET',null), "tooltip": "Create an email from this" } ],
  ls_url: "/excerpts/ExcerptsByOwner",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.excerpts.ExcerptsByOwner.detail;
    Lino.excerpts.ExcerptsByOwner.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.excerpts.ExcerptsByOwner.detail = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(80) }, function(){
  var p = { "is_main_window": true };
  return new Lino.excerpts.ExcerptsByOwner.detailPanel(p);
});
Lino.excerpts.ExcerptsByOwner.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/ExcerptsByOwner", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.ExcerptsByOwner.do_print = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/ExcerptsByOwner", "POST", pk, "do_print", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.ExcerptsByOwner.do_clear_cache = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/ExcerptsByOwner", "GET", pk, "do_clear_cache", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.ExcerptsByOwner.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.excerpts.Excerpts.ParamsPanel({});
  return new Lino.excerpts.ExcerptsByOwner.GridPanel(p);
});
Lino.excerpts.ExcerptsByOwner.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/ExcerptsByOwner", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.ExcerptsByOwner.check_plausibility = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/ExcerptsByOwner", "GET", pk, "check_plausibility", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.ExcerptsByOwner.fix_problems = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/ExcerptsByOwner", "GET", pk, "fix_problems", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.ExcerptsByOwner.create_postings = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/ExcerptsByOwner", "GET", pk, "create_postings", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.ExcerptsByOwner.create_mail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/ExcerptsByOwner", "GET", pk, "create_mail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class blogs.EntriesByController
Lino.blogs.EntriesByController.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true, "getRowClass": Lino.getRowClass },
  ls_url : "/blogs/EntriesByController",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/blogs/EntriesByController','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/blogs/EntriesByController','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  cell_edit : true,
  title : "Blog Entries",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disabled_actions_index : 24,
  ls_store_fields : [ { "dateFormat": "d.m.Y", "name": "pub_date", "type": "date" }, { "name": "title" }, { "name": "user" }, 'userHidden', { "name": "id", "type": "int" }, { "name": "owner_type" }, 'owner_typeHidden', { "name": "owner_id" }, 'owner_idHidden', { "name": "body" }, { "name": "body_preview" }, { "name": "pub_time" }, { "name": "entry_type" }, 'entry_typeHidden', { "name": "language" }, 'languageHidden', { "name": "add_interest" }, 'add_interestHidden', { "name": "mobile_item" }, { "name": "description_column" }, { "name": "overview" }, { "name": "workflow_buttons" }, { "name": "owner" }, { "name": "disabled_fields" }, { "name": "disabled_actions" }, { "name": "disable_editing" } ],
  pk_index : 4,
  ls_grid_configs : [  ],
  content_type : 39,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.blogs.EntriesByController.detail;
    this.ls_insert_handler = Lino.blogs.EntriesByController.insert;
    var ww = this.containing_window;
    var pub_date3586 = new Lino.DateField({ "selectOnFocus": true });
    var title3587 = new Ext.form.TextField({ "maxLength": 200, "selectOnFocus": true });
    var user3588 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a User...", "pageSize": 20, "preferred_width": 15, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/blogs/EntriesByController/user" }) }) });
    var id3589 = new Ext.form.NumberField({ "hidden": true, "selectOnFocus": true });
    var owner_type3590 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a content type...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/blogs/EntriesByController/owner_type" }) }) });
    var owner_id3591 = new Lino.RemoteComboFieldElement({ "hidden": true, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/blogs/EntriesByController/owner_id" }) }) });
    var body3592 = new Lino.RichTextPanel({ "containing_panel": this, "hidden": true, "selectOnFocus": true, "title": "Body" });
    var body_preview3593 = new Lino.RichTextPanel({ "containing_panel": this, "disabled": true, "hidden": true, "title": "Preview" });
    var pub_time3594 = new Lino.TimeField({ "hidden": true, "selectOnFocus": true });
    var entry_type3595 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Blog Entry Type...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/blogs/EntriesByController/entry_type" }) }) });
    var language3596 = new Lino.ChoicesFieldElement({ "hidden": true, "selectOnFocus": true, "store": [ [ "en-us", "American English" ] ] });
    var add_interest3597 = new Lino.RemoteComboFieldElement({ "emptyText": "Select a Topic...", "hidden": true, "pageSize": 20, "selectOnFocus": true, "store": new Lino.ComplexRemoteComboStore({ "proxy": new Ext.data.HttpProxy({ "method": "GET", "url": "/choices/blogs/EntriesByController/add_interest" }) }) });
    var mobile_item_disp3598 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var description_column_disp3599 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var overview_disp3600 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var workflow_buttons_disp3601 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var owner_disp3602 = new Ext.form.DisplayField({ "disabled": true, "hidden": true });
    this.before_row_edit = function(record) {
      owner_id3591.setContextValue('owner_type', record ? record.data['owner_typeHidden'] : undefined);
      body3592.refresh();
      body_preview3593.refresh();
    };
    this.onRender = function(ct, position) {
      owner_type3590.on('change',Lino.chooser_handler(owner_id3591,'owner_type'));
      Lino.blogs.EntriesByController.GridPanel.superclass.onRender.call(this, ct, position);
    }
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "pub_date", "editable": true, "editor": pub_date3586, "filter": { "dateFormat": "d.m.Y", "type": "date" }, "format": "d.m.Y", "header": "Publication date", "sortable": true, "tooltip": "(blogs.EntriesByController.pub_date) ", "width": Lino.chars2width(14), "xtype": "datecolumn" }, { "colIndex": 1, "dataIndex": "title", "editable": true, "editor": title3587, "filter": { "type": "string" }, "header": "Heading", "sortable": true, "tooltip": "(blogs.EntriesByController.title) ", "width": Lino.chars2width(22) }, { "colIndex": 2, "dataIndex": "user", "editable": true, "editor": user3588, "filter": { "type": "string" }, "header": "Author", "renderer": Lino.fk_renderer('userHidden','Lino.users.Users.detail'), "sortable": false, "tooltip": "(blogs.EntriesByController.user) ", "width": Lino.chars2width(21) }, { "align": "right", "colIndex": 3, "dataIndex": "id", "editable": true, "editor": id3589, "filter": { "type": "numeric" }, "format": "0", "header": "ID", "hidden": true, "sortable": true, "tooltip": "(blogs.EntriesByController.id) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 4, "dataIndex": "owner_type", "editable": true, "editor": owner_type3590, "filter": { "type": "string" }, "header": "Controlled by (type)", "hidden": true, "renderer": Lino.fk_renderer('owner_typeHidden','Lino.gfks.ContentTypes.detail'), "sortable": false, "tooltip": "(blogs.EntriesByController.owner_type) ", "width": Lino.chars2width(21) }, { "colIndex": 5, "dataIndex": "owner_id", "editable": true, "editor": owner_id3591, "filter": { "type": "string" }, "header": "Controlled by (object)", "hidden": true, "sortable": false, "tooltip": "(blogs.EntriesByController.owner_id) ", "width": Lino.chars2width(11) }, { "colIndex": 6, "dataIndex": "body", "editable": true, "editor": body3592, "filter": { "type": "string" }, "header": "Body", "hidden": true, "sortable": false, "tooltip": "(blogs.EntriesByController.body) ", "width": Lino.chars2width(61) }, { "colIndex": 7, "dataIndex": "body_preview", "editable": false, "filter": { "type": "string" }, "header": "Preview", "hidden": true, "sortable": false, "tooltip": "(blogs.EntriesByController.body_preview) ", "width": Lino.chars2width(61) }, { "colIndex": 8, "dataIndex": "pub_time", "editable": true, "editor": pub_time3594, "header": "Publication time", "hidden": true, "sortable": true, "tooltip": "(blogs.EntriesByController.pub_time) ", "width": Lino.chars2width(9) }, { "colIndex": 9, "dataIndex": "entry_type", "editable": true, "editor": entry_type3595, "filter": { "type": "string" }, "header": "Blog Entry Type", "hidden": true, "renderer": Lino.fk_renderer('entry_typeHidden','Lino.blogs.EntryTypes.detail'), "sortable": false, "tooltip": "(blogs.EntriesByController.entry_type) ", "width": Lino.chars2width(21) }, { "colIndex": 10, "dataIndex": "language", "editable": true, "editor": language3596, "filter": { "type": "string" }, "header": "Language", "hidden": true, "sortable": false, "tooltip": "(blogs.EntriesByController.language) ", "width": Lino.chars2width(21) }, { "colIndex": 11, "dataIndex": "add_interest", "editable": true, "editor": add_interest3597, "header": "Add interest", "hidden": true, "renderer": Lino.fk_renderer('add_interestHidden','Lino.topics.Topics.detail'), "sortable": false, "tooltip": "(blogs.EntriesByController.add_interest) ", "width": Lino.chars2width(21) }, { "colIndex": 12, "dataIndex": "mobile_item", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(blogs.EntriesByController.mobile_item) ", "width": Lino.chars2width(31) }, { "colIndex": 13, "dataIndex": "description_column", "editable": false, "header": "Description", "hidden": true, "sortable": false, "tooltip": "(blogs.EntriesByController.description_column) ", "width": Lino.chars2width(31) }, { "colIndex": 14, "dataIndex": "overview", "editable": false, "header": "overview", "hidden": true, "sortable": false, "tooltip": "(blogs.EntriesByController.overview) ", "width": Lino.chars2width(31) }, { "colIndex": 15, "dataIndex": "workflow_buttons", "editable": false, "header": "Actions", "hidden": true, "sortable": false, "tooltip": "(blogs.EntriesByController.workflow_buttons) ", "width": Lino.chars2width(31) }, { "colIndex": 16, "dataIndex": "owner", "editable": false, "header": "Controlled by", "hidden": true, "sortable": false, "tooltip": "(blogs.EntriesByController.owner) ", "width": Lino.chars2width(11) } ];
    Lino.blogs.EntriesByController.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.blogs.EntriesByController.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/blogs/EntriesByController", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.blogs.EntriesByController.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/blogs/EntriesByController", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.blogs.EntriesByController.submit_detail = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/blogs/EntriesByController", "GET", pk, "submit_detail", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.blogs.EntriesByController.insertPanel = Ext.extend(Lino.blogs.Entries.InsertFormPanel,{
  empty_title: "New",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_insert",
  ls_bbar_actions: [ { "auto_save": false, "itemId": "submit_insert", "listeners": { "render": Lino.quicktip_renderer('a2btn',"Create the record and open a detail window on it") }, "menu_item_text": "Create", "overflowText": "Create", "panel_btn_handler": function(panel){panel.save()}, "text": "Create" } ],
  ls_url: "/blogs/EntriesByController",
  action_name: "insert",
  default_record_id: -99999,
  initComponent : function() {
    this.ls_detail_handler = Lino.blogs.EntriesByController.detail;
    this.ls_insert_handler = Lino.blogs.EntriesByController.insert;
    Lino.blogs.EntriesByController.insertPanel.superclass.initComponent.call(this);
  }
});

Lino.blogs.EntriesByController.insert = new Lino.WindowAction({ "autoHeight": true, "draggable": true, "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.blogs.EntriesByController.insertPanel(p);
});
Lino.blogs.EntriesByController.grid_put = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/blogs/EntriesByController", "GET", pk, "grid_put", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.blogs.EntriesByController.grid_post = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/blogs/EntriesByController", "GET", pk, "grid_post", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.blogs.EntriesByController.submit_insert = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/blogs/EntriesByController", "GET", pk, "submit_insert", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.blogs.EntriesByController.detailPanel = Ext.extend(Lino.blogs.Entries.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [ { "auto_save": false, "iconCls": "x-tbar-disk", "itemId": "submit_detail", "menu_item_text": "Save", "overflowText": "Save", "panel_btn_handler": function(panel){panel.save()}, "tooltip": "Save changes in this form" }, { "auto_save": true, "iconCls": "x-tbar-add", "itemId": "insert", "keycode": 44, "menu_item_text": "New", "overflowText": "New", "panel_btn_handler": Lino.show_insert, "tooltip": "Insert a new record" }, { "auto_save": false, "iconCls": "x-tbar-delete", "itemId": "delete_selected", "keycode": 46, "menu_item_text": "Delete", "overflowText": "Delete", "panel_btn_handler": Lino.row_action_handler('delete_selected','GET',null), "tooltip": "Delete this record" } ],
  ls_url: "/blogs/EntriesByController",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.blogs.EntriesByController.detail;
    this.ls_insert_handler = Lino.blogs.EntriesByController.insert;
    Lino.blogs.EntriesByController.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.blogs.EntriesByController.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.blogs.EntriesByController.detailPanel(p);
});
Lino.blogs.EntriesByController.delete_selected = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/blogs/EntriesByController", "GET", pk, "delete_selected", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.blogs.EntriesByController.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.blogs.Entries.ParamsPanel({});
  return new Lino.blogs.EntriesByController.GridPanel(p);
});
Lino.blogs.EntriesByController.validate = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/blogs/EntriesByController", "GET", pk, "validate", params, null);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

// js_render_GridPanel_class about.Models
Lino.about.Models.GridPanel = Ext.extend(Lino.GridPanel,{
  ls_url : "/about/Models",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/about/Models','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/about/Models','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" } ],
  cell_edit : true,
  title : "Models",
  page_length : 20,
  params_panel_hidden : true,
  gc_name : 0,
  disable_editing : true,
  disabled_actions_index : 6,
  ls_store_fields : [ { "name": "app" }, { "name": "name" }, { "name": "fields" }, { "name": "tables" }, { "name": "rows" }, { "name": "detail_action" }, { "name": "disabled_actions" } ],
  stripeRows : true,
  ls_grid_configs : [  ],
  viewConfig : { "emptyText": "No data to display.", "forceFit": true },
  initComponent : function() {
    this.ls_detail_handler = Lino.about.Models.detail;
    var ww = this.containing_window;
    var app_disp3604 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    var name_disp3605 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    var fields_disp3606 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    var tables_disp3607 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    var rows3608 = new Ext.form.NumberField({ "disabled": true });
    var detail_action_disp3609 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "app", "editable": false, "header": "app_label", "sortable": false, "tooltip": "(about.Models.app) ", "width": Lino.chars2width(31) }, { "colIndex": 1, "dataIndex": "name", "editable": false, "header": "name", "sortable": false, "tooltip": "(about.Models.name) ", "width": Lino.chars2width(31) }, { "colIndex": 2, "dataIndex": "fields", "editable": false, "header": "Fields", "sortable": false, "tooltip": "(about.Models.fields) ", "width": Lino.chars2width(31) }, { "colIndex": 3, "dataIndex": "tables", "editable": false, "header": "Tables", "sortable": false, "tooltip": "(about.Models.tables) ", "width": Lino.chars2width(31) }, { "align": "right", "colIndex": 4, "dataIndex": "rows", "editable": false, "format": "0", "header": "Rows", "sortable": false, "tooltip": "(about.Models.rows) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "colIndex": 5, "dataIndex": "detail_action", "editable": false, "header": "Detail Action", "sortable": false, "tooltip": "(about.Models.detail_action) ", "width": Lino.chars2width(31) } ];
    Lino.about.Models.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.about.Models.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/about/Models", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.about.Models.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/about/Models", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.about.Models.detailPanel = Ext.extend(Lino.about.Models.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [  ],
  ls_url: "/about/Models",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.about.Models.detail;
    Lino.about.Models.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.about.Models.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.about.Models.detailPanel(p);
});
Lino.about.Models.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.about.Models.GridPanel(p);
});

// js_render_GridPanel_class about.FieldsByModel
Lino.about.FieldsByModel.GridPanel = Ext.extend(Lino.GridPanel,{
  ls_url : "/about/FieldsByModel",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/about/FieldsByModel','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/about/FieldsByModel','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" } ],
  cell_edit : true,
  title : "Fields",
  page_length : 20,
  params_panel_hidden : true,
  gc_name : 0,
  disable_editing : true,
  disabled_actions_index : 3,
  ls_store_fields : [ { "name": "name" }, { "name": "verbose_name" }, { "name": "help_text_column" }, { "name": "disabled_actions" } ],
  stripeRows : true,
  ls_grid_configs : [  ],
  viewConfig : { "emptyText": "No data to display.", "forceFit": true },
  initComponent : function() {
    var ww = this.containing_window;
    var name_disp1608 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    var verbose_name_disp1609 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    var help_text_column_disp1610 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "name", "editable": false, "header": "name", "sortable": false, "tooltip": "(about.FieldsByModel.name) ", "width": Lino.chars2width(31) }, { "colIndex": 1, "dataIndex": "verbose_name", "editable": false, "header": "verbose name", "sortable": false, "tooltip": "(about.FieldsByModel.verbose_name) ", "width": Lino.chars2width(31) }, { "colIndex": 2, "dataIndex": "help_text_column", "editable": false, "header": "help text", "sortable": false, "tooltip": "(about.FieldsByModel.help_text_column) ", "width": Lino.chars2width(31) } ];
    Lino.about.FieldsByModel.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.about.FieldsByModel.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/about/FieldsByModel", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.about.FieldsByModel.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/about/FieldsByModel", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.about.FieldsByModel.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.about.FieldsByModel.GridPanel(p);
});

// js_render_GridPanel_class about.Inspector
Lino.about.Inspector.GridPanel = Ext.extend(Lino.GridPanel,{
  ls_url : "/about/Inspector",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/about/Inspector','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/about/Inspector','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" } ],
  cell_edit : true,
  title : "Inspector",
  page_length : 20,
  params_panel_hidden : true,
  gc_name : 0,
  disable_editing : true,
  disabled_actions_index : 3,
  ls_store_fields : [ { "name": "i_name" }, { "name": "i_type" }, { "name": "i_value" }, { "name": "disabled_actions" } ],
  stripeRows : true,
  ls_grid_configs : [  ],
  viewConfig : { "emptyText": "No data to display.", "forceFit": true },
  initComponent : function() {
    var ww = this.containing_window;
    var i_name_disp3611 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    var i_type_disp3612 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    var i_value_disp3613 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "i_name", "editable": false, "header": "Name", "sortable": false, "tooltip": "(about.Inspector.i_name) ", "width": Lino.chars2width(31) }, { "colIndex": 1, "dataIndex": "i_type", "editable": false, "header": "Type", "sortable": false, "tooltip": "(about.Inspector.i_type) ", "width": Lino.chars2width(31) }, { "colIndex": 2, "dataIndex": "i_value", "editable": false, "header": "Value", "sortable": false, "tooltip": "(about.Inspector.i_value) ", "width": Lino.chars2width(31) } ];
    Lino.about.Inspector.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.about.Inspector.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/about/Inspector", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.about.Inspector.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/about/Inspector", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.about.Inspector.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  p.params_panel = new Lino.about.Inspector.ParamsPanel({});
  return new Lino.about.Inspector.GridPanel(p);
});

// js_render_GridPanel_class about.SourceFiles
Lino.about.SourceFiles.GridPanel = Ext.extend(Lino.GridPanel,{
  ls_url : "/about/SourceFiles",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/about/SourceFiles','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/about/SourceFiles','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" } ],
  cell_edit : true,
  title : "Source files",
  page_length : 20,
  params_panel_hidden : true,
  gc_name : 0,
  disable_editing : true,
  disabled_actions_index : 3,
  ls_store_fields : [ { "name": "module_name" }, { "name": "code_lines", "type": "int", "useNull": true }, { "name": "doc_lines", "type": "int", "useNull": true }, { "name": "disabled_actions" } ],
  stripeRows : true,
  ls_grid_configs : [  ],
  viewConfig : { "emptyText": "No data to display.", "forceFit": true },
  initComponent : function() {
    var ww = this.containing_window;
    var module_name3615 = new Ext.form.TextField({ "disabled": true, "maxLength": null });
    var code_lines3616 = new Ext.form.NumberField({ "disabled": true });
    var doc_lines3617 = new Ext.form.NumberField({ "disabled": true });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "module_name", "editable": false, "header": "module name", "sortable": false, "tooltip": "(about.SourceFiles.module_name) ", "width": Lino.chars2width(5) }, { "align": "right", "colIndex": 1, "dataIndex": "code_lines", "editable": false, "format": "0", "header": "Code", "sortable": false, "tooltip": "(about.SourceFiles.code_lines) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" }, { "align": "right", "colIndex": 2, "dataIndex": "doc_lines", "editable": false, "format": "0", "header": "doc", "sortable": false, "tooltip": "(about.SourceFiles.doc_lines) ", "width": Lino.chars2width(6), "xtype": "numbercolumn" } ];
    Lino.about.SourceFiles.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.about.SourceFiles.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/about/SourceFiles", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.about.SourceFiles.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/about/SourceFiles", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.about.SourceFiles.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.about.SourceFiles.GridPanel(p);
});

// js_render_GridPanel_class gfks.BrokenGFKs
Lino.gfks.BrokenGFKs.GridPanel = Ext.extend(Lino.GridPanel,{
  ls_url : "/gfks/BrokenGFKs",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/gfks/BrokenGFKs','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/gfks/BrokenGFKs','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" } ],
  cell_edit : true,
  title : "Broken GFKs",
  page_length : 20,
  params_panel_hidden : true,
  gc_name : 0,
  disable_editing : true,
  disabled_actions_index : 4,
  ls_store_fields : [ { "name": "database_model" }, { "name": "database_object" }, { "name": "message" }, { "name": "todo" }, { "name": "disabled_actions" } ],
  stripeRows : true,
  ls_grid_configs : [  ],
  viewConfig : { "emptyText": "No data to display.", "forceFit": true },
  initComponent : function() {
    var ww = this.containing_window;
    var database_model_disp3619 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    var database_object_disp3620 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    var message_disp3621 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    var todo_disp3622 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "database_model", "editable": false, "header": "Database model", "sortable": false, "tooltip": "(gfks.BrokenGFKs.database_model) ", "width": Lino.chars2width(31) }, { "colIndex": 1, "dataIndex": "database_object", "editable": false, "header": "Database object", "sortable": false, "tooltip": "(gfks.BrokenGFKs.database_object) ", "width": Lino.chars2width(31) }, { "colIndex": 2, "dataIndex": "message", "editable": false, "header": "Message", "sortable": false, "tooltip": "(gfks.BrokenGFKs.message) ", "width": Lino.chars2width(31) }, { "colIndex": 3, "dataIndex": "todo", "editable": false, "header": "Action", "sortable": false, "tooltip": "(gfks.BrokenGFKs.todo) ", "width": Lino.chars2width(31) } ];
    Lino.gfks.BrokenGFKs.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.gfks.BrokenGFKs.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/gfks/BrokenGFKs", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.gfks.BrokenGFKs.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/gfks/BrokenGFKs", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.gfks.BrokenGFKs.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.gfks.BrokenGFKs.GridPanel(p);
});

// js_render_GridPanel_class gfks.BrokenGFKsByModel
Lino.gfks.BrokenGFKsByModel.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true },
  ls_url : "/gfks/BrokenGFKsByModel",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/gfks/BrokenGFKsByModel','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/gfks/BrokenGFKsByModel','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" } ],
  cell_edit : true,
  title : "Broken GFKs",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disable_editing : true,
  disabled_actions_index : 4,
  ls_store_fields : [ { "name": "database_object" }, { "name": "message" }, { "name": "todo" }, { "name": "id", "type": "int" }, { "name": "disabled_actions" } ],
  pk_index : 3,
  ls_grid_configs : [  ],
  content_type : 3,
  ls_id_property : "id",
  gc_name : 0,
  initComponent : function() {
    var ww = this.containing_window;
    var database_object_disp928 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    var message_disp929 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    var todo_disp930 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "database_object", "editable": false, "header": "Database object", "sortable": false, "tooltip": "(gfks.BrokenGFKsByModel.database_object) ", "width": Lino.chars2width(31) }, { "colIndex": 1, "dataIndex": "message", "editable": false, "header": "Message", "sortable": false, "tooltip": "(gfks.BrokenGFKsByModel.message) ", "width": Lino.chars2width(31) }, { "colIndex": 2, "dataIndex": "todo", "editable": false, "header": "Action", "sortable": false, "tooltip": "(gfks.BrokenGFKsByModel.todo) ", "width": Lino.chars2width(31) } ];
    Lino.gfks.BrokenGFKsByModel.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.gfks.BrokenGFKsByModel.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/gfks/BrokenGFKsByModel", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.gfks.BrokenGFKsByModel.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/gfks/BrokenGFKsByModel", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.gfks.BrokenGFKsByModel.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.gfks.BrokenGFKsByModel.GridPanel(p);
});

Lino.about.About.showPanel = Ext.extend(Lino.about.About.DetailFormPanel,{
  empty_title: "About",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [  ],
  ls_url: "/about/About",
  initComponent : function() {
    this.ls_detail_handler = Lino.about.About.show;
    Lino.about.About.showPanel.superclass.initComponent.call(this);
  }
});

Lino.about.About.show = new Lino.WindowAction({ "draggable": true, "height": Lino.rows2height(20), "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.about.About.showPanel(p);
});

Lino.about.About.showPanel = Ext.extend(Lino.about.About.DetailFormPanel,{
  empty_title: "About",
  hide_navigator: true,
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [  ],
  ls_url: "/about/About",
  initComponent : function() {
    this.ls_detail_handler = Lino.about.About.show;
    Lino.about.About.showPanel.superclass.initComponent.call(this);
  }
});

Lino.about.About.show = new Lino.WindowAction({ "draggable": true, "height": Lino.rows2height(20), "maximizable": true, "maximized": false, "modal": true, "width": Lino.chars2width(60) }, function(){
  var p = { "hide_top_toolbar": true, "is_main_window": true };
  return new Lino.about.About.showPanel(p);
});
Lino.extensible.CalendarPanel.grid = new Lino.WindowAction({  }, function(){
  return Lino.CalendarApp().get_main_panel();
});

// js_render_GridPanel_class plausibility.Checkers
Lino.plausibility.Checkers.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true },
  ls_url : "/plausibility/Checkers",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/plausibility/Checkers','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/plausibility/Checkers','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" }, { "auto_save": true, "iconCls": "x-tbar-application_form", "itemId": "detail", "menu_item_text": "Detail", "overflowText": "Detail", "panel_btn_handler": Lino.show_detail, "tooltip": "Open a detail window on this record" } ],
  cell_edit : true,
  title : "Plausibility checkers",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disable_editing : true,
  disabled_actions_index : 3,
  ls_store_fields : [ { "name": "value" }, { "name": "text" }, { "name": "None" }, { "name": "disabled_actions" } ],
  pk_index : 0,
  ls_grid_configs : [  ],
  ls_id_property : null,
  gc_name : 0,
  initComponent : function() {
    this.ls_detail_handler = Lino.plausibility.Checkers.detail;
    var ww = this.containing_window;
    var value3624 = new Ext.form.TextField({ "disabled": true, "maxLength": 20 });
    var text3625 = new Ext.form.TextField({ "disabled": true, "maxLength": 50 });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "value", "editable": false, "header": "value", "sortable": false, "tooltip": "(plausibility.Checkers.value) ", "width": Lino.chars2width(22) }, { "colIndex": 1, "dataIndex": "text", "editable": false, "header": "text", "sortable": false, "tooltip": "(plausibility.Checkers.text) ", "width": Lino.chars2width(22) } ];
    Lino.plausibility.Checkers.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.plausibility.Checkers.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/plausibility/Checkers", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.plausibility.Checkers.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/plausibility/Checkers", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};

Lino.plausibility.Checkers.detailPanel = Ext.extend(Lino.plausibility.Checkers.DetailFormPanel,{
  empty_title: "Detail",
  params_panel_hidden: true,
  save_action_name: "submit_detail",
  ls_bbar_actions: [  ],
  ls_url: "/plausibility/Checkers",
  action_name: "detail",
  initComponent : function() {
    this.ls_detail_handler = Lino.plausibility.Checkers.detail;
    Lino.plausibility.Checkers.detailPanel.superclass.initComponent.call(this);
  }
});

Lino.plausibility.Checkers.detail = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.plausibility.Checkers.detailPanel(p);
});
Lino.plausibility.Checkers.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.plausibility.Checkers.GridPanel(p);
});

// js_render_GridPanel_class cal.DurationUnits
Lino.cal.DurationUnits.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true },
  ls_url : "/cal/DurationUnits",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/cal/DurationUnits','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/cal/DurationUnits','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" } ],
  cell_edit : true,
  title : "DurationUnits",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disable_editing : true,
  disabled_actions_index : 6,
  ls_store_fields : [ { "name": "value" }, { "name": "name" }, { "name": "text" }, { "name": "remark" }, { "name": "type" }, { "name": "None" }, { "name": "disabled_actions" } ],
  pk_index : 0,
  ls_grid_configs : [  ],
  ls_id_property : null,
  gc_name : 0,
  initComponent : function() {
    var ww = this.containing_window;
    var value3627 = new Ext.form.TextField({ "disabled": true, "maxLength": 20 });
    var name3628 = new Ext.form.TextField({ "disabled": true, "maxLength": 20 });
    var text3629 = new Ext.form.TextField({ "disabled": true, "maxLength": 50 });
    var remark_disp3630 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var type_disp3631 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "value", "editable": false, "header": "value", "sortable": false, "tooltip": "(cal.DurationUnits.value) ", "width": Lino.chars2width(22) }, { "colIndex": 1, "dataIndex": "name", "editable": false, "header": "name", "sortable": false, "tooltip": "(cal.DurationUnits.name) ", "width": Lino.chars2width(22) }, { "colIndex": 2, "dataIndex": "text", "editable": false, "header": "text", "sortable": false, "tooltip": "(cal.DurationUnits.text) ", "width": Lino.chars2width(22) }, { "colIndex": 3, "dataIndex": "remark", "editable": false, "header": "Remark", "hidden": true, "sortable": false, "tooltip": "(cal.DurationUnits.remark) ", "width": Lino.chars2width(31) }, { "colIndex": 4, "dataIndex": "type", "editable": false, "header": "Type", "hidden": true, "sortable": false, "tooltip": "(cal.DurationUnits.type) ", "width": Lino.chars2width(31) } ];
    Lino.cal.DurationUnits.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.DurationUnits.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/DurationUnits", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.DurationUnits.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/DurationUnits", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.DurationUnits.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.cal.DurationUnits.GridPanel(p);
});

// js_render_GridPanel_class cal.TaskStates
Lino.cal.TaskStates.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true },
  ls_url : "/cal/TaskStates",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/cal/TaskStates','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/cal/TaskStates','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" } ],
  cell_edit : true,
  title : "Task states",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disable_editing : true,
  disabled_actions_index : 7,
  ls_store_fields : [ { "name": "value" }, { "name": "name" }, { "name": "text" }, { "name": "remark" }, { "name": "type" }, { "name": "button_text" }, { "name": "None" }, { "name": "disabled_actions" } ],
  pk_index : 0,
  ls_grid_configs : [  ],
  ls_id_property : null,
  gc_name : 0,
  initComponent : function() {
    var ww = this.containing_window;
    var value3633 = new Ext.form.TextField({ "disabled": true, "maxLength": 20 });
    var name3634 = new Ext.form.TextField({ "disabled": true, "maxLength": 20 });
    var text3635 = new Ext.form.TextField({ "disabled": true, "maxLength": 50 });
    var remark_disp3636 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var type_disp3637 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var button_text3638 = new Ext.form.TextField({ "disabled": true, "hidden": true, "maxLength": null });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "value", "editable": false, "header": "value", "sortable": false, "tooltip": "(cal.TaskStates.value) ", "width": Lino.chars2width(22) }, { "colIndex": 1, "dataIndex": "name", "editable": false, "header": "name", "sortable": false, "tooltip": "(cal.TaskStates.name) ", "width": Lino.chars2width(22) }, { "colIndex": 2, "dataIndex": "text", "editable": false, "header": "text", "sortable": false, "tooltip": "(cal.TaskStates.text) ", "width": Lino.chars2width(22) }, { "colIndex": 3, "dataIndex": "remark", "editable": false, "header": "Remark", "hidden": true, "sortable": false, "tooltip": "(cal.TaskStates.remark) ", "width": Lino.chars2width(31) }, { "colIndex": 4, "dataIndex": "type", "editable": false, "header": "Type", "hidden": true, "sortable": false, "tooltip": "(cal.TaskStates.type) ", "width": Lino.chars2width(31) }, { "colIndex": 5, "dataIndex": "button_text", "editable": false, "header": "Symbol", "hidden": true, "sortable": false, "tooltip": "(cal.TaskStates.button_text) ", "width": Lino.chars2width(5) } ];
    Lino.cal.TaskStates.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.TaskStates.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/TaskStates", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.TaskStates.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/TaskStates", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.TaskStates.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.cal.TaskStates.GridPanel(p);
});

// js_render_GridPanel_class addresses.DataSources
Lino.addresses.DataSources.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true },
  ls_url : "/addresses/DataSources",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/addresses/DataSources','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/addresses/DataSources','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" } ],
  cell_edit : true,
  title : "Data sources",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disable_editing : true,
  disabled_actions_index : 6,
  ls_store_fields : [ { "name": "value" }, { "name": "name" }, { "name": "text" }, { "name": "remark" }, { "name": "type" }, { "name": "None" }, { "name": "disabled_actions" } ],
  pk_index : 0,
  ls_grid_configs : [  ],
  ls_id_property : null,
  gc_name : 0,
  initComponent : function() {
    var ww = this.containing_window;
    var value3640 = new Ext.form.TextField({ "disabled": true, "maxLength": 20 });
    var name3641 = new Ext.form.TextField({ "disabled": true, "maxLength": 20 });
    var text3642 = new Ext.form.TextField({ "disabled": true, "maxLength": 50 });
    var remark_disp3643 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var type_disp3644 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "value", "editable": false, "header": "value", "sortable": false, "tooltip": "(addresses.DataSources.value) ", "width": Lino.chars2width(22) }, { "colIndex": 1, "dataIndex": "name", "editable": false, "header": "name", "sortable": false, "tooltip": "(addresses.DataSources.name) ", "width": Lino.chars2width(22) }, { "colIndex": 2, "dataIndex": "text", "editable": false, "header": "text", "sortable": false, "tooltip": "(addresses.DataSources.text) ", "width": Lino.chars2width(22) }, { "colIndex": 3, "dataIndex": "remark", "editable": false, "header": "Remark", "hidden": true, "sortable": false, "tooltip": "(addresses.DataSources.remark) ", "width": Lino.chars2width(31) }, { "colIndex": 4, "dataIndex": "type", "editable": false, "header": "Type", "hidden": true, "sortable": false, "tooltip": "(addresses.DataSources.type) ", "width": Lino.chars2width(31) } ];
    Lino.addresses.DataSources.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.addresses.DataSources.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/addresses/DataSources", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.addresses.DataSources.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/addresses/DataSources", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.addresses.DataSources.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.addresses.DataSources.GridPanel(p);
});

// js_render_GridPanel_class cal.Weekdays
Lino.cal.Weekdays.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true },
  ls_url : "/cal/Weekdays",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/cal/Weekdays','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/cal/Weekdays','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" } ],
  cell_edit : true,
  title : "Weekdays",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disable_editing : true,
  disabled_actions_index : 6,
  ls_store_fields : [ { "name": "value" }, { "name": "name" }, { "name": "text" }, { "name": "remark" }, { "name": "type" }, { "name": "None" }, { "name": "disabled_actions" } ],
  pk_index : 0,
  ls_grid_configs : [  ],
  ls_id_property : null,
  gc_name : 0,
  initComponent : function() {
    var ww = this.containing_window;
    var value3646 = new Ext.form.TextField({ "disabled": true, "maxLength": 20 });
    var name3647 = new Ext.form.TextField({ "disabled": true, "maxLength": 20 });
    var text3648 = new Ext.form.TextField({ "disabled": true, "maxLength": 50 });
    var remark_disp3649 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var type_disp3650 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "value", "editable": false, "header": "value", "sortable": false, "tooltip": "(cal.Weekdays.value) ", "width": Lino.chars2width(22) }, { "colIndex": 1, "dataIndex": "name", "editable": false, "header": "name", "sortable": false, "tooltip": "(cal.Weekdays.name) ", "width": Lino.chars2width(22) }, { "colIndex": 2, "dataIndex": "text", "editable": false, "header": "text", "sortable": false, "tooltip": "(cal.Weekdays.text) ", "width": Lino.chars2width(22) }, { "colIndex": 3, "dataIndex": "remark", "editable": false, "header": "Remark", "hidden": true, "sortable": false, "tooltip": "(cal.Weekdays.remark) ", "width": Lino.chars2width(31) }, { "colIndex": 4, "dataIndex": "type", "editable": false, "header": "Type", "hidden": true, "sortable": false, "tooltip": "(cal.Weekdays.type) ", "width": Lino.chars2width(31) } ];
    Lino.cal.Weekdays.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.Weekdays.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Weekdays", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.Weekdays.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Weekdays", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.Weekdays.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.cal.Weekdays.GridPanel(p);
});

// js_render_GridPanel_class households.MemberDependencies
Lino.households.MemberDependencies.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true },
  ls_url : "/households/MemberDependencies",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/households/MemberDependencies','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/households/MemberDependencies','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" } ],
  cell_edit : true,
  title : "Household Member Dependencies",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disable_editing : true,
  disabled_actions_index : 6,
  ls_store_fields : [ { "name": "value" }, { "name": "name" }, { "name": "text" }, { "name": "remark" }, { "name": "type" }, { "name": "None" }, { "name": "disabled_actions" } ],
  pk_index : 0,
  ls_grid_configs : [  ],
  ls_id_property : null,
  gc_name : 0,
  initComponent : function() {
    var ww = this.containing_window;
    var value3652 = new Ext.form.TextField({ "disabled": true, "maxLength": 20 });
    var name3653 = new Ext.form.TextField({ "disabled": true, "maxLength": 20 });
    var text3654 = new Ext.form.TextField({ "disabled": true, "maxLength": 50 });
    var remark_disp3655 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var type_disp3656 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "value", "editable": false, "header": "value", "sortable": false, "tooltip": "(households.MemberDependencies.value) ", "width": Lino.chars2width(22) }, { "colIndex": 1, "dataIndex": "name", "editable": false, "header": "name", "sortable": false, "tooltip": "(households.MemberDependencies.name) ", "width": Lino.chars2width(22) }, { "colIndex": 2, "dataIndex": "text", "editable": false, "header": "text", "sortable": false, "tooltip": "(households.MemberDependencies.text) ", "width": Lino.chars2width(22) }, { "colIndex": 3, "dataIndex": "remark", "editable": false, "header": "Remark", "hidden": true, "sortable": false, "tooltip": "(households.MemberDependencies.remark) ", "width": Lino.chars2width(31) }, { "colIndex": 4, "dataIndex": "type", "editable": false, "header": "Type", "hidden": true, "sortable": false, "tooltip": "(households.MemberDependencies.type) ", "width": Lino.chars2width(31) } ];
    Lino.households.MemberDependencies.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.households.MemberDependencies.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/MemberDependencies", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.households.MemberDependencies.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/MemberDependencies", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.households.MemberDependencies.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.households.MemberDependencies.GridPanel(p);
});

// js_render_GridPanel_class excerpts.Shortcuts
Lino.excerpts.Shortcuts.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true },
  ls_url : "/excerpts/Shortcuts",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/excerpts/Shortcuts','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/excerpts/Shortcuts','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" } ],
  cell_edit : true,
  title : "Excerpt shortcuts",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disable_editing : true,
  disabled_actions_index : 6,
  ls_store_fields : [ { "name": "value" }, { "name": "name" }, { "name": "text" }, { "name": "remark" }, { "name": "type" }, { "name": "None" }, { "name": "disabled_actions" } ],
  pk_index : 0,
  ls_grid_configs : [  ],
  ls_id_property : null,
  gc_name : 0,
  initComponent : function() {
    var ww = this.containing_window;
    var value3658 = new Ext.form.TextField({ "disabled": true, "maxLength": 20 });
    var name3659 = new Ext.form.TextField({ "disabled": true, "maxLength": 20 });
    var text3660 = new Ext.form.TextField({ "disabled": true, "maxLength": 50 });
    var remark_disp3661 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var type_disp3662 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "value", "editable": false, "header": "value", "sortable": false, "tooltip": "(excerpts.Shortcuts.value) ", "width": Lino.chars2width(22) }, { "colIndex": 1, "dataIndex": "name", "editable": false, "header": "name", "sortable": false, "tooltip": "(excerpts.Shortcuts.name) ", "width": Lino.chars2width(22) }, { "colIndex": 2, "dataIndex": "text", "editable": false, "header": "text", "sortable": false, "tooltip": "(excerpts.Shortcuts.text) ", "width": Lino.chars2width(22) }, { "colIndex": 3, "dataIndex": "remark", "editable": false, "header": "Remark", "hidden": true, "sortable": false, "tooltip": "(excerpts.Shortcuts.remark) ", "width": Lino.chars2width(31) }, { "colIndex": 4, "dataIndex": "type", "editable": false, "header": "Type", "hidden": true, "sortable": false, "tooltip": "(excerpts.Shortcuts.type) ", "width": Lino.chars2width(31) } ];
    Lino.excerpts.Shortcuts.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.excerpts.Shortcuts.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/Shortcuts", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.Shortcuts.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/excerpts/Shortcuts", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.excerpts.Shortcuts.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.excerpts.Shortcuts.GridPanel(p);
});

// js_render_GridPanel_class system.PeriodEvents
Lino.system.PeriodEvents.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true },
  ls_url : "/system/PeriodEvents",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/system/PeriodEvents','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/system/PeriodEvents','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" } ],
  cell_edit : true,
  title : "Observed events",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disable_editing : true,
  disabled_actions_index : 6,
  ls_store_fields : [ { "name": "value" }, { "name": "name" }, { "name": "text" }, { "name": "remark" }, { "name": "type" }, { "name": "None" }, { "name": "disabled_actions" } ],
  pk_index : 0,
  ls_grid_configs : [  ],
  ls_id_property : null,
  gc_name : 0,
  initComponent : function() {
    var ww = this.containing_window;
    var value3664 = new Ext.form.TextField({ "disabled": true, "maxLength": 20 });
    var name3665 = new Ext.form.TextField({ "disabled": true, "maxLength": 20 });
    var text3666 = new Ext.form.TextField({ "disabled": true, "maxLength": 50 });
    var remark_disp3667 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var type_disp3668 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "value", "editable": false, "header": "value", "sortable": false, "tooltip": "(system.PeriodEvents.value) ", "width": Lino.chars2width(22) }, { "colIndex": 1, "dataIndex": "name", "editable": false, "header": "name", "sortable": false, "tooltip": "(system.PeriodEvents.name) ", "width": Lino.chars2width(22) }, { "colIndex": 2, "dataIndex": "text", "editable": false, "header": "text", "sortable": false, "tooltip": "(system.PeriodEvents.text) ", "width": Lino.chars2width(22) }, { "colIndex": 3, "dataIndex": "remark", "editable": false, "header": "Remark", "hidden": true, "sortable": false, "tooltip": "(system.PeriodEvents.remark) ", "width": Lino.chars2width(31) }, { "colIndex": 4, "dataIndex": "type", "editable": false, "header": "Type", "hidden": true, "sortable": false, "tooltip": "(system.PeriodEvents.type) ", "width": Lino.chars2width(31) } ];
    Lino.system.PeriodEvents.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.system.PeriodEvents.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/system/PeriodEvents", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.system.PeriodEvents.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/system/PeriodEvents", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.system.PeriodEvents.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.system.PeriodEvents.GridPanel(p);
});

// js_render_GridPanel_class cal.Recurrencies
Lino.cal.Recurrencies.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true },
  ls_url : "/cal/Recurrencies",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/cal/Recurrencies','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/cal/Recurrencies','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" } ],
  cell_edit : true,
  title : "Recurrencies",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disable_editing : true,
  disabled_actions_index : 6,
  ls_store_fields : [ { "name": "value" }, { "name": "name" }, { "name": "text" }, { "name": "remark" }, { "name": "type" }, { "name": "None" }, { "name": "disabled_actions" } ],
  pk_index : 0,
  ls_grid_configs : [  ],
  ls_id_property : null,
  gc_name : 0,
  initComponent : function() {
    var ww = this.containing_window;
    var value3670 = new Ext.form.TextField({ "disabled": true, "maxLength": 20 });
    var name3671 = new Ext.form.TextField({ "disabled": true, "maxLength": 20 });
    var text3672 = new Ext.form.TextField({ "disabled": true, "maxLength": 50 });
    var remark_disp3673 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var type_disp3674 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "value", "editable": false, "header": "value", "sortable": false, "tooltip": "(cal.Recurrencies.value) ", "width": Lino.chars2width(22) }, { "colIndex": 1, "dataIndex": "name", "editable": false, "header": "name", "sortable": false, "tooltip": "(cal.Recurrencies.name) ", "width": Lino.chars2width(22) }, { "colIndex": 2, "dataIndex": "text", "editable": false, "header": "text", "sortable": false, "tooltip": "(cal.Recurrencies.text) ", "width": Lino.chars2width(22) }, { "colIndex": 3, "dataIndex": "remark", "editable": false, "header": "Remark", "hidden": true, "sortable": false, "tooltip": "(cal.Recurrencies.remark) ", "width": Lino.chars2width(31) }, { "colIndex": 4, "dataIndex": "type", "editable": false, "header": "Type", "hidden": true, "sortable": false, "tooltip": "(cal.Recurrencies.type) ", "width": Lino.chars2width(31) } ];
    Lino.cal.Recurrencies.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.Recurrencies.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Recurrencies", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.Recurrencies.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/Recurrencies", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.Recurrencies.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.cal.Recurrencies.GridPanel(p);
});

// js_render_GridPanel_class system.Genders
Lino.system.Genders.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true },
  ls_url : "/system/Genders",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/system/Genders','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/system/Genders','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" } ],
  cell_edit : true,
  title : "Genders",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disable_editing : true,
  disabled_actions_index : 6,
  ls_store_fields : [ { "name": "value" }, { "name": "name" }, { "name": "text" }, { "name": "remark" }, { "name": "type" }, { "name": "None" }, { "name": "disabled_actions" } ],
  pk_index : 0,
  ls_grid_configs : [  ],
  ls_id_property : null,
  gc_name : 0,
  initComponent : function() {
    var ww = this.containing_window;
    var value3676 = new Ext.form.TextField({ "disabled": true, "maxLength": 20 });
    var name3677 = new Ext.form.TextField({ "disabled": true, "maxLength": 20 });
    var text3678 = new Ext.form.TextField({ "disabled": true, "maxLength": 50 });
    var remark_disp3679 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var type_disp3680 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "value", "editable": false, "header": "value", "sortable": false, "tooltip": "(system.Genders.value) ", "width": Lino.chars2width(22) }, { "colIndex": 1, "dataIndex": "name", "editable": false, "header": "name", "sortable": false, "tooltip": "(system.Genders.name) ", "width": Lino.chars2width(22) }, { "colIndex": 2, "dataIndex": "text", "editable": false, "header": "text", "sortable": false, "tooltip": "(system.Genders.text) ", "width": Lino.chars2width(22) }, { "colIndex": 3, "dataIndex": "remark", "editable": false, "header": "Remark", "hidden": true, "sortable": false, "tooltip": "(system.Genders.remark) ", "width": Lino.chars2width(31) }, { "colIndex": 4, "dataIndex": "type", "editable": false, "header": "Type", "hidden": true, "sortable": false, "tooltip": "(system.Genders.type) ", "width": Lino.chars2width(31) } ];
    Lino.system.Genders.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.system.Genders.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/system/Genders", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.system.Genders.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/system/Genders", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.system.Genders.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.system.Genders.GridPanel(p);
});

// js_render_GridPanel_class cal.EventEvents
Lino.cal.EventEvents.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true },
  ls_url : "/cal/EventEvents",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/cal/EventEvents','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/cal/EventEvents','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" } ],
  cell_edit : true,
  title : "Observed events",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disable_editing : true,
  disabled_actions_index : 6,
  ls_store_fields : [ { "name": "value" }, { "name": "name" }, { "name": "text" }, { "name": "remark" }, { "name": "type" }, { "name": "None" }, { "name": "disabled_actions" } ],
  pk_index : 0,
  ls_grid_configs : [  ],
  ls_id_property : null,
  gc_name : 0,
  initComponent : function() {
    var ww = this.containing_window;
    var value3682 = new Ext.form.TextField({ "disabled": true, "maxLength": 20 });
    var name3683 = new Ext.form.TextField({ "disabled": true, "maxLength": 20 });
    var text3684 = new Ext.form.TextField({ "disabled": true, "maxLength": 50 });
    var remark_disp3685 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var type_disp3686 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "value", "editable": false, "header": "value", "sortable": false, "tooltip": "(cal.EventEvents.value) ", "width": Lino.chars2width(22) }, { "colIndex": 1, "dataIndex": "name", "editable": false, "header": "name", "sortable": false, "tooltip": "(cal.EventEvents.name) ", "width": Lino.chars2width(22) }, { "colIndex": 2, "dataIndex": "text", "editable": false, "header": "text", "sortable": false, "tooltip": "(cal.EventEvents.text) ", "width": Lino.chars2width(22) }, { "colIndex": 3, "dataIndex": "remark", "editable": false, "header": "Remark", "hidden": true, "sortable": false, "tooltip": "(cal.EventEvents.remark) ", "width": Lino.chars2width(31) }, { "colIndex": 4, "dataIndex": "type", "editable": false, "header": "Type", "hidden": true, "sortable": false, "tooltip": "(cal.EventEvents.type) ", "width": Lino.chars2width(31) } ];
    Lino.cal.EventEvents.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.EventEvents.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EventEvents", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EventEvents.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EventEvents", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EventEvents.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.cal.EventEvents.GridPanel(p);
});

// js_render_GridPanel_class households.MemberRoles
Lino.households.MemberRoles.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true },
  ls_url : "/households/MemberRoles",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/households/MemberRoles','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/households/MemberRoles','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" } ],
  cell_edit : true,
  title : "Household member roles",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disable_editing : true,
  disabled_actions_index : 6,
  ls_store_fields : [ { "name": "value" }, { "name": "name" }, { "name": "text" }, { "name": "remark" }, { "name": "type" }, { "name": "None" }, { "name": "disabled_actions" } ],
  pk_index : 0,
  ls_grid_configs : [  ],
  ls_id_property : null,
  gc_name : 0,
  initComponent : function() {
    var ww = this.containing_window;
    var value3688 = new Ext.form.TextField({ "disabled": true, "maxLength": 20 });
    var name3689 = new Ext.form.TextField({ "disabled": true, "maxLength": 20 });
    var text3690 = new Ext.form.TextField({ "disabled": true, "maxLength": 50 });
    var remark_disp3691 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var type_disp3692 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "value", "editable": false, "header": "value", "sortable": false, "tooltip": "(households.MemberRoles.value) ", "width": Lino.chars2width(22) }, { "colIndex": 1, "dataIndex": "name", "editable": false, "header": "name", "sortable": false, "tooltip": "(households.MemberRoles.name) ", "width": Lino.chars2width(22) }, { "colIndex": 2, "dataIndex": "text", "editable": false, "header": "text", "sortable": false, "tooltip": "(households.MemberRoles.text) ", "width": Lino.chars2width(22) }, { "colIndex": 3, "dataIndex": "remark", "editable": false, "header": "Remark", "hidden": true, "sortable": false, "tooltip": "(households.MemberRoles.remark) ", "width": Lino.chars2width(31) }, { "colIndex": 4, "dataIndex": "type", "editable": false, "header": "Type", "hidden": true, "sortable": false, "tooltip": "(households.MemberRoles.type) ", "width": Lino.chars2width(31) } ];
    Lino.households.MemberRoles.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.households.MemberRoles.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/MemberRoles", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.households.MemberRoles.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/households/MemberRoles", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.households.MemberRoles.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.households.MemberRoles.GridPanel(p);
});

// js_render_GridPanel_class cal.GuestStates
Lino.cal.GuestStates.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true },
  ls_url : "/cal/GuestStates",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/cal/GuestStates','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/cal/GuestStates','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" } ],
  cell_edit : true,
  title : "Guest states",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disable_editing : true,
  disabled_actions_index : 6,
  ls_store_fields : [ { "name": "value" }, { "name": "name" }, { "name": "afterwards", "type": "boolean" }, { "name": "text" }, { "name": "button_text" }, { "name": "None" }, { "name": "disabled_actions" } ],
  pk_index : 0,
  ls_grid_configs : [  ],
  ls_id_property : null,
  gc_name : 0,
  initComponent : function() {
    var ww = this.containing_window;
    var value3694 = new Ext.form.TextField({ "disabled": true, "maxLength": 20 });
    var name3695 = new Ext.form.TextField({ "disabled": true, "maxLength": 20 });
    var afterwards_disp3696 = new Ext.form.DisplayField({ "disabled": true });
    var text3697 = new Ext.form.TextField({ "disabled": true, "maxLength": 50 });
    var button_text3698 = new Ext.form.TextField({ "disabled": true, "maxLength": null });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "value", "editable": false, "header": "value", "sortable": false, "tooltip": "(cal.GuestStates.value) ", "width": Lino.chars2width(22) }, { "colIndex": 1, "dataIndex": "name", "editable": false, "header": "name", "sortable": false, "tooltip": "(cal.GuestStates.name) ", "width": Lino.chars2width(22) }, { "colIndex": 2, "dataIndex": "afterwards", "editable": false, "header": "Afterwards", "sortable": false, "tooltip": "(cal.GuestStates.afterwards) ", "width": Lino.chars2width(21) }, { "colIndex": 3, "dataIndex": "text", "editable": false, "header": "text", "sortable": false, "tooltip": "(cal.GuestStates.text) ", "width": Lino.chars2width(22) }, { "colIndex": 4, "dataIndex": "button_text", "editable": false, "header": "Symbol", "sortable": false, "tooltip": "(cal.GuestStates.button_text) ", "width": Lino.chars2width(5) } ];
    Lino.cal.GuestStates.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.GuestStates.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/GuestStates", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.GuestStates.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/GuestStates", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.GuestStates.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.cal.GuestStates.GridPanel(p);
});

// js_render_GridPanel_class addresses.AddressTypes
Lino.addresses.AddressTypes.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true },
  ls_url : "/addresses/AddressTypes",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/addresses/AddressTypes','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/addresses/AddressTypes','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" } ],
  cell_edit : true,
  title : "Address types",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disable_editing : true,
  disabled_actions_index : 6,
  ls_store_fields : [ { "name": "value" }, { "name": "name" }, { "name": "text" }, { "name": "remark" }, { "name": "type" }, { "name": "None" }, { "name": "disabled_actions" } ],
  pk_index : 0,
  ls_grid_configs : [  ],
  ls_id_property : null,
  gc_name : 0,
  initComponent : function() {
    var ww = this.containing_window;
    var value3700 = new Ext.form.TextField({ "disabled": true, "maxLength": 20 });
    var name3701 = new Ext.form.TextField({ "disabled": true, "maxLength": 20 });
    var text3702 = new Ext.form.TextField({ "disabled": true, "maxLength": 50 });
    var remark_disp3703 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var type_disp3704 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "value", "editable": false, "header": "value", "sortable": false, "tooltip": "(addresses.AddressTypes.value) ", "width": Lino.chars2width(22) }, { "colIndex": 1, "dataIndex": "name", "editable": false, "header": "name", "sortable": false, "tooltip": "(addresses.AddressTypes.name) ", "width": Lino.chars2width(22) }, { "colIndex": 2, "dataIndex": "text", "editable": false, "header": "text", "sortable": false, "tooltip": "(addresses.AddressTypes.text) ", "width": Lino.chars2width(22) }, { "colIndex": 3, "dataIndex": "remark", "editable": false, "header": "Remark", "hidden": true, "sortable": false, "tooltip": "(addresses.AddressTypes.remark) ", "width": Lino.chars2width(31) }, { "colIndex": 4, "dataIndex": "type", "editable": false, "header": "Type", "hidden": true, "sortable": false, "tooltip": "(addresses.AddressTypes.type) ", "width": Lino.chars2width(31) } ];
    Lino.addresses.AddressTypes.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.addresses.AddressTypes.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/addresses/AddressTypes", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.addresses.AddressTypes.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/addresses/AddressTypes", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.addresses.AddressTypes.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.addresses.AddressTypes.GridPanel(p);
});

// js_render_GridPanel_class phones.ContactDetailTypes
Lino.phones.ContactDetailTypes.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true },
  ls_url : "/phones/ContactDetailTypes",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/phones/ContactDetailTypes','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/phones/ContactDetailTypes','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" } ],
  cell_edit : true,
  title : "Contact Detail Types",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disable_editing : true,
  disabled_actions_index : 6,
  ls_store_fields : [ { "name": "value" }, { "name": "name" }, { "name": "text" }, { "name": "remark" }, { "name": "type" }, { "name": "None" }, { "name": "disabled_actions" } ],
  pk_index : 0,
  ls_grid_configs : [  ],
  ls_id_property : null,
  gc_name : 0,
  initComponent : function() {
    var ww = this.containing_window;
    var value3706 = new Ext.form.TextField({ "disabled": true, "maxLength": 20 });
    var name3707 = new Ext.form.TextField({ "disabled": true, "maxLength": 20 });
    var text3708 = new Ext.form.TextField({ "disabled": true, "maxLength": 50 });
    var remark_disp3709 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var type_disp3710 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "value", "editable": false, "header": "value", "sortable": false, "tooltip": "(phones.ContactDetailTypes.value) ", "width": Lino.chars2width(22) }, { "colIndex": 1, "dataIndex": "name", "editable": false, "header": "name", "sortable": false, "tooltip": "(phones.ContactDetailTypes.name) ", "width": Lino.chars2width(22) }, { "colIndex": 2, "dataIndex": "text", "editable": false, "header": "text", "sortable": false, "tooltip": "(phones.ContactDetailTypes.text) ", "width": Lino.chars2width(22) }, { "colIndex": 3, "dataIndex": "remark", "editable": false, "header": "Remark", "hidden": true, "sortable": false, "tooltip": "(phones.ContactDetailTypes.remark) ", "width": Lino.chars2width(31) }, { "colIndex": 4, "dataIndex": "type", "editable": false, "header": "Type", "hidden": true, "sortable": false, "tooltip": "(phones.ContactDetailTypes.type) ", "width": Lino.chars2width(31) } ];
    Lino.phones.ContactDetailTypes.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.phones.ContactDetailTypes.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/phones/ContactDetailTypes", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.phones.ContactDetailTypes.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/phones/ContactDetailTypes", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.phones.ContactDetailTypes.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.phones.ContactDetailTypes.GridPanel(p);
});

// js_render_GridPanel_class printing.BuildMethods
Lino.printing.BuildMethods.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true },
  ls_url : "/printing/BuildMethods",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/printing/BuildMethods','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/printing/BuildMethods','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" } ],
  cell_edit : true,
  title : "BuildMethods",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disable_editing : true,
  disabled_actions_index : 6,
  ls_store_fields : [ { "name": "value" }, { "name": "name" }, { "name": "text" }, { "name": "remark" }, { "name": "type" }, { "name": "None" }, { "name": "disabled_actions" } ],
  pk_index : 0,
  ls_grid_configs : [  ],
  ls_id_property : null,
  gc_name : 0,
  initComponent : function() {
    var ww = this.containing_window;
    var value3712 = new Ext.form.TextField({ "disabled": true, "maxLength": 20 });
    var name3713 = new Ext.form.TextField({ "disabled": true, "maxLength": 20 });
    var text3714 = new Ext.form.TextField({ "disabled": true, "maxLength": 50 });
    var remark_disp3715 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var type_disp3716 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "value", "editable": false, "header": "value", "sortable": false, "tooltip": "(printing.BuildMethods.value) ", "width": Lino.chars2width(22) }, { "colIndex": 1, "dataIndex": "name", "editable": false, "header": "name", "sortable": false, "tooltip": "(printing.BuildMethods.name) ", "width": Lino.chars2width(22) }, { "colIndex": 2, "dataIndex": "text", "editable": false, "header": "text", "sortable": false, "tooltip": "(printing.BuildMethods.text) ", "width": Lino.chars2width(22) }, { "colIndex": 3, "dataIndex": "remark", "editable": false, "header": "Remark", "hidden": true, "sortable": false, "tooltip": "(printing.BuildMethods.remark) ", "width": Lino.chars2width(31) }, { "colIndex": 4, "dataIndex": "type", "editable": false, "header": "Type", "hidden": true, "sortable": false, "tooltip": "(printing.BuildMethods.type) ", "width": Lino.chars2width(31) } ];
    Lino.printing.BuildMethods.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.printing.BuildMethods.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/printing/BuildMethods", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.printing.BuildMethods.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/printing/BuildMethods", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.printing.BuildMethods.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.printing.BuildMethods.GridPanel(p);
});

// js_render_GridPanel_class cal.EntryStates
Lino.cal.EntryStates.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true },
  ls_url : "/cal/EntryStates",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/cal/EntryStates','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/cal/EntryStates','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" } ],
  cell_edit : true,
  title : "Event states",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disable_editing : true,
  disabled_actions_index : 9,
  ls_store_fields : [ { "name": "value" }, { "name": "name" }, { "name": "text" }, { "name": "button_text" }, { "name": "edit_guests", "type": "boolean" }, { "name": "fixed", "type": "boolean" }, { "name": "transparent", "type": "boolean" }, { "name": "noauto", "type": "boolean" }, { "name": "None" }, { "name": "disabled_actions" } ],
  pk_index : 0,
  ls_grid_configs : [  ],
  ls_id_property : null,
  gc_name : 0,
  initComponent : function() {
    var ww = this.containing_window;
    var value3718 = new Ext.form.TextField({ "disabled": true, "maxLength": 20 });
    var name3719 = new Ext.form.TextField({ "disabled": true, "maxLength": 20 });
    var text3720 = new Ext.form.TextField({ "disabled": true, "maxLength": 50 });
    var button_text3721 = new Ext.form.TextField({ "disabled": true, "maxLength": null });
    var edit_guests_disp3722 = new Ext.form.DisplayField({ "disabled": true });
    var fixed_disp3723 = new Ext.form.DisplayField({ "disabled": true });
    var transparent_disp3724 = new Ext.form.DisplayField({ "disabled": true });
    var noauto_disp3725 = new Ext.form.DisplayField({ "disabled": true });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "value", "editable": false, "header": "value", "sortable": false, "tooltip": "(cal.EntryStates.value) ", "width": Lino.chars2width(22) }, { "colIndex": 1, "dataIndex": "name", "editable": false, "header": "name", "sortable": false, "tooltip": "(cal.EntryStates.name) ", "width": Lino.chars2width(22) }, { "colIndex": 2, "dataIndex": "text", "editable": false, "header": "text", "sortable": false, "tooltip": "(cal.EntryStates.text) ", "width": Lino.chars2width(22) }, { "colIndex": 3, "dataIndex": "button_text", "editable": false, "header": "Symbol", "sortable": false, "tooltip": "(cal.EntryStates.button_text) ", "width": Lino.chars2width(5) }, { "colIndex": 4, "dataIndex": "edit_guests", "editable": false, "header": "Edit participants", "sortable": false, "tooltip": "(cal.EntryStates.edit_guests) ", "width": Lino.chars2width(21) }, { "colIndex": 5, "dataIndex": "fixed", "editable": false, "header": "Stable", "sortable": false, "tooltip": "(cal.EntryStates.fixed) ", "width": Lino.chars2width(21) }, { "colIndex": 6, "dataIndex": "transparent", "editable": false, "header": "Transparent", "sortable": false, "tooltip": "(cal.EntryStates.transparent) ", "width": Lino.chars2width(21) }, { "colIndex": 7, "dataIndex": "noauto", "editable": false, "header": "No auto", "sortable": false, "tooltip": "(cal.EntryStates.noauto) ", "width": Lino.chars2width(21) } ];
    Lino.cal.EntryStates.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.EntryStates.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntryStates", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntryStates.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/EntryStates", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.EntryStates.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.cal.EntryStates.GridPanel(p);
});

// js_render_GridPanel_class humanlinks.LinkTypes
Lino.humanlinks.LinkTypes.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true },
  ls_url : "/humanlinks/LinkTypes",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/humanlinks/LinkTypes','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/humanlinks/LinkTypes','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" } ],
  cell_edit : true,
  title : "Parency types",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disable_editing : true,
  disabled_actions_index : 6,
  ls_store_fields : [ { "name": "value" }, { "name": "name" }, { "name": "text" }, { "name": "remark" }, { "name": "type" }, { "name": "None" }, { "name": "disabled_actions" } ],
  pk_index : 0,
  ls_grid_configs : [  ],
  ls_id_property : null,
  gc_name : 0,
  initComponent : function() {
    var ww = this.containing_window;
    var value3727 = new Ext.form.TextField({ "disabled": true, "maxLength": 20 });
    var name3728 = new Ext.form.TextField({ "disabled": true, "maxLength": 20 });
    var text3729 = new Ext.form.TextField({ "disabled": true, "maxLength": 50 });
    var remark_disp3730 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var type_disp3731 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "value", "editable": false, "header": "value", "sortable": false, "tooltip": "(humanlinks.LinkTypes.value) ", "width": Lino.chars2width(22) }, { "colIndex": 1, "dataIndex": "name", "editable": false, "header": "name", "sortable": false, "tooltip": "(humanlinks.LinkTypes.name) ", "width": Lino.chars2width(22) }, { "colIndex": 2, "dataIndex": "text", "editable": false, "header": "text", "sortable": false, "tooltip": "(humanlinks.LinkTypes.text) ", "width": Lino.chars2width(22) }, { "colIndex": 3, "dataIndex": "remark", "editable": false, "header": "Remark", "hidden": true, "sortable": false, "tooltip": "(humanlinks.LinkTypes.remark) ", "width": Lino.chars2width(31) }, { "colIndex": 4, "dataIndex": "type", "editable": false, "header": "Type", "hidden": true, "sortable": false, "tooltip": "(humanlinks.LinkTypes.type) ", "width": Lino.chars2width(31) } ];
    Lino.humanlinks.LinkTypes.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.humanlinks.LinkTypes.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/humanlinks/LinkTypes", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.humanlinks.LinkTypes.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/humanlinks/LinkTypes", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.humanlinks.LinkTypes.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.humanlinks.LinkTypes.GridPanel(p);
});

// js_render_GridPanel_class cal.AccessClasses
Lino.cal.AccessClasses.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true },
  ls_url : "/cal/AccessClasses",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/cal/AccessClasses','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/cal/AccessClasses','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" } ],
  cell_edit : true,
  title : "AccessClasses",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disable_editing : true,
  disabled_actions_index : 6,
  ls_store_fields : [ { "name": "value" }, { "name": "name" }, { "name": "text" }, { "name": "remark" }, { "name": "type" }, { "name": "None" }, { "name": "disabled_actions" } ],
  pk_index : 0,
  ls_grid_configs : [  ],
  ls_id_property : null,
  gc_name : 0,
  initComponent : function() {
    var ww = this.containing_window;
    var value3733 = new Ext.form.TextField({ "disabled": true, "maxLength": 20 });
    var name3734 = new Ext.form.TextField({ "disabled": true, "maxLength": 20 });
    var text3735 = new Ext.form.TextField({ "disabled": true, "maxLength": 50 });
    var remark_disp3736 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var type_disp3737 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "value", "editable": false, "header": "value", "sortable": false, "tooltip": "(cal.AccessClasses.value) ", "width": Lino.chars2width(22) }, { "colIndex": 1, "dataIndex": "name", "editable": false, "header": "name", "sortable": false, "tooltip": "(cal.AccessClasses.name) ", "width": Lino.chars2width(22) }, { "colIndex": 2, "dataIndex": "text", "editable": false, "header": "text", "sortable": false, "tooltip": "(cal.AccessClasses.text) ", "width": Lino.chars2width(22) }, { "colIndex": 3, "dataIndex": "remark", "editable": false, "header": "Remark", "hidden": true, "sortable": false, "tooltip": "(cal.AccessClasses.remark) ", "width": Lino.chars2width(31) }, { "colIndex": 4, "dataIndex": "type", "editable": false, "header": "Type", "hidden": true, "sortable": false, "tooltip": "(cal.AccessClasses.type) ", "width": Lino.chars2width(31) } ];
    Lino.cal.AccessClasses.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.cal.AccessClasses.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/AccessClasses", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.AccessClasses.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/cal/AccessClasses", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.cal.AccessClasses.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.cal.AccessClasses.GridPanel(p);
});

// js_render_GridPanel_class system.YesNo
Lino.system.YesNo.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true },
  ls_url : "/system/YesNo",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/system/YesNo','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/system/YesNo','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" } ],
  cell_edit : true,
  title : "Yes or no",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disable_editing : true,
  disabled_actions_index : 6,
  ls_store_fields : [ { "name": "value" }, { "name": "name" }, { "name": "text" }, { "name": "remark" }, { "name": "type" }, { "name": "None" }, { "name": "disabled_actions" } ],
  pk_index : 0,
  ls_grid_configs : [  ],
  ls_id_property : null,
  gc_name : 0,
  initComponent : function() {
    var ww = this.containing_window;
    var value3739 = new Ext.form.TextField({ "disabled": true, "maxLength": 20 });
    var name3740 = new Ext.form.TextField({ "disabled": true, "maxLength": 20 });
    var text3741 = new Ext.form.TextField({ "disabled": true, "maxLength": 50 });
    var remark_disp3742 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var type_disp3743 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "value", "editable": false, "header": "value", "sortable": false, "tooltip": "(system.YesNo.value) ", "width": Lino.chars2width(22) }, { "colIndex": 1, "dataIndex": "name", "editable": false, "header": "name", "sortable": false, "tooltip": "(system.YesNo.name) ", "width": Lino.chars2width(22) }, { "colIndex": 2, "dataIndex": "text", "editable": false, "header": "text", "sortable": false, "tooltip": "(system.YesNo.text) ", "width": Lino.chars2width(22) }, { "colIndex": 3, "dataIndex": "remark", "editable": false, "header": "Remark", "hidden": true, "sortable": false, "tooltip": "(system.YesNo.remark) ", "width": Lino.chars2width(31) }, { "colIndex": 4, "dataIndex": "type", "editable": false, "header": "Type", "hidden": true, "sortable": false, "tooltip": "(system.YesNo.type) ", "width": Lino.chars2width(31) } ];
    Lino.system.YesNo.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.system.YesNo.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/system/YesNo", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.system.YesNo.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/system/YesNo", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.system.YesNo.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.system.YesNo.GridPanel(p);
});

// js_render_GridPanel_class users.UserTypes
Lino.users.UserTypes.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true },
  ls_url : "/users/UserTypes",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/users/UserTypes','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/users/UserTypes','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" } ],
  cell_edit : true,
  title : "User types",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disable_editing : true,
  disabled_actions_index : 5,
  ls_store_fields : [ { "name": "value" }, { "name": "name" }, { "name": "text" }, { "name": "user_role" }, { "name": "None" }, { "name": "disabled_actions" } ],
  pk_index : 0,
  ls_grid_configs : [  ],
  ls_id_property : null,
  gc_name : 0,
  initComponent : function() {
    var ww = this.containing_window;
    var value3745 = new Ext.form.TextField({ "disabled": true, "maxLength": 20 });
    var name3746 = new Ext.form.TextField({ "disabled": true, "maxLength": 20 });
    var text3747 = new Ext.form.TextField({ "disabled": true, "maxLength": 50 });
    var user_role_disp3748 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "value", "editable": false, "header": "value", "sortable": false, "tooltip": "(users.UserTypes.value) ", "width": Lino.chars2width(22) }, { "colIndex": 1, "dataIndex": "name", "editable": false, "header": "name", "sortable": false, "tooltip": "(users.UserTypes.name) ", "width": Lino.chars2width(22) }, { "colIndex": 2, "dataIndex": "text", "editable": false, "header": "text", "sortable": false, "tooltip": "(users.UserTypes.text) ", "width": Lino.chars2width(22) }, { "colIndex": 3, "dataIndex": "user_role", "editable": false, "header": "User role", "sortable": false, "tooltip": "(users.UserTypes.user_role) ", "width": Lino.chars2width(31) } ];
    Lino.users.UserTypes.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.users.UserTypes.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/UserTypes", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.UserTypes.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/UserTypes", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.UserTypes.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.users.UserTypes.GridPanel(p);
});

// js_render_GridPanel_class contacts.PartnerEvents
Lino.contacts.PartnerEvents.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true },
  ls_url : "/contacts/PartnerEvents",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/contacts/PartnerEvents','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/contacts/PartnerEvents','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" } ],
  cell_edit : true,
  title : "Observed events",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disable_editing : true,
  disabled_actions_index : 6,
  ls_store_fields : [ { "name": "value" }, { "name": "name" }, { "name": "text" }, { "name": "remark" }, { "name": "type" }, { "name": "None" }, { "name": "disabled_actions" } ],
  pk_index : 0,
  ls_grid_configs : [  ],
  ls_id_property : null,
  gc_name : 0,
  initComponent : function() {
    var ww = this.containing_window;
    var value3750 = new Ext.form.TextField({ "disabled": true, "maxLength": 20 });
    var name3751 = new Ext.form.TextField({ "disabled": true, "maxLength": 20 });
    var text3752 = new Ext.form.TextField({ "disabled": true, "maxLength": 50 });
    var remark_disp3753 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var type_disp3754 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "value", "editable": false, "header": "value", "sortable": false, "tooltip": "(contacts.PartnerEvents.value) ", "width": Lino.chars2width(22) }, { "colIndex": 1, "dataIndex": "name", "editable": false, "header": "name", "sortable": false, "tooltip": "(contacts.PartnerEvents.name) ", "width": Lino.chars2width(22) }, { "colIndex": 2, "dataIndex": "text", "editable": false, "header": "text", "sortable": false, "tooltip": "(contacts.PartnerEvents.text) ", "width": Lino.chars2width(22) }, { "colIndex": 3, "dataIndex": "remark", "editable": false, "header": "Remark", "hidden": true, "sortable": false, "tooltip": "(contacts.PartnerEvents.remark) ", "width": Lino.chars2width(31) }, { "colIndex": 4, "dataIndex": "type", "editable": false, "header": "Type", "hidden": true, "sortable": false, "tooltip": "(contacts.PartnerEvents.type) ", "width": Lino.chars2width(31) } ];
    Lino.contacts.PartnerEvents.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.contacts.PartnerEvents.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/PartnerEvents", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.PartnerEvents.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/contacts/PartnerEvents", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.contacts.PartnerEvents.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.contacts.PartnerEvents.GridPanel(p);
});

// js_render_GridPanel_class countries.PlaceTypes
Lino.countries.PlaceTypes.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true },
  ls_url : "/countries/PlaceTypes",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/countries/PlaceTypes','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/countries/PlaceTypes','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" } ],
  cell_edit : true,
  title : "PlaceTypes",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disable_editing : true,
  disabled_actions_index : 6,
  ls_store_fields : [ { "name": "value" }, { "name": "name" }, { "name": "text" }, { "name": "remark" }, { "name": "type" }, { "name": "None" }, { "name": "disabled_actions" } ],
  pk_index : 0,
  ls_grid_configs : [  ],
  ls_id_property : null,
  gc_name : 0,
  initComponent : function() {
    var ww = this.containing_window;
    var value3756 = new Ext.form.TextField({ "disabled": true, "maxLength": 20 });
    var name3757 = new Ext.form.TextField({ "disabled": true, "maxLength": 20 });
    var text3758 = new Ext.form.TextField({ "disabled": true, "maxLength": 50 });
    var remark_disp3759 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var type_disp3760 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "value", "editable": false, "header": "value", "sortable": false, "tooltip": "(countries.PlaceTypes.value) ", "width": Lino.chars2width(22) }, { "colIndex": 1, "dataIndex": "name", "editable": false, "header": "name", "sortable": false, "tooltip": "(countries.PlaceTypes.name) ", "width": Lino.chars2width(22) }, { "colIndex": 2, "dataIndex": "text", "editable": false, "header": "text", "sortable": false, "tooltip": "(countries.PlaceTypes.text) ", "width": Lino.chars2width(22) }, { "colIndex": 3, "dataIndex": "remark", "editable": false, "header": "Remark", "hidden": true, "sortable": false, "tooltip": "(countries.PlaceTypes.remark) ", "width": Lino.chars2width(31) }, { "colIndex": 4, "dataIndex": "type", "editable": false, "header": "Type", "hidden": true, "sortable": false, "tooltip": "(countries.PlaceTypes.type) ", "width": Lino.chars2width(31) } ];
    Lino.countries.PlaceTypes.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.countries.PlaceTypes.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/countries/PlaceTypes", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.countries.PlaceTypes.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/countries/PlaceTypes", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.countries.PlaceTypes.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.countries.PlaceTypes.GridPanel(p);
});

// js_render_GridPanel_class users.UserStates
Lino.users.UserStates.GridPanel = Ext.extend(Lino.GridPanel,{
  viewConfig : { "emptyText": "No data to display.", "forceFit": true },
  ls_url : "/users/UserStates",
  ls_bbar_actions : [ { "auto_save": true, "iconCls": "x-tbar-html", "itemId": "show_as_html", "menu_item_text": "HTML", "overflowText": "HTML", "panel_btn_handler": Lino.list_action_handler('/users/UserStates','show_as_html','GET',Lino.get_current_grid_config), "tooltip": "Show this table in Bootstrap3 interface" }, { "auto_save": true, "iconCls": "x-tbar-page_excel", "itemId": "export_excel", "menu_item_text": "Export to .xls", "overflowText": "Export to .xls", "panel_btn_handler": Lino.list_action_handler('/users/UserStates','export_excel','GET',Lino.get_current_grid_config), "tooltip": "Export this table as an .xls document" } ],
  cell_edit : true,
  title : "User states",
  page_length : 20,
  params_panel_hidden : true,
  stripeRows : true,
  disable_editing : true,
  disabled_actions_index : 7,
  ls_store_fields : [ { "name": "value" }, { "name": "name" }, { "name": "text" }, { "name": "remark" }, { "name": "type" }, { "name": "button_text" }, { "name": "None" }, { "name": "disabled_actions" } ],
  pk_index : 0,
  ls_grid_configs : [  ],
  ls_id_property : null,
  gc_name : 0,
  initComponent : function() {
    var ww = this.containing_window;
    var value3762 = new Ext.form.TextField({ "disabled": true, "maxLength": 20 });
    var name3763 = new Ext.form.TextField({ "disabled": true, "maxLength": 20 });
    var text3764 = new Ext.form.TextField({ "disabled": true, "maxLength": 50 });
    var remark_disp3765 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var type_disp3766 = new Ext.form.DisplayField({ "always_enabled": true, "disabled": true, "hidden": true, "value": "<br/>" });
    var button_text3767 = new Ext.form.TextField({ "disabled": true, "hidden": true, "maxLength": null });
    this.before_row_edit = function(record) {
    };
    this.ls_columns = [ { "colIndex": 0, "dataIndex": "value", "editable": false, "header": "value", "sortable": false, "tooltip": "(users.UserStates.value) ", "width": Lino.chars2width(22) }, { "colIndex": 1, "dataIndex": "name", "editable": false, "header": "name", "sortable": false, "tooltip": "(users.UserStates.name) ", "width": Lino.chars2width(22) }, { "colIndex": 2, "dataIndex": "text", "editable": false, "header": "text", "sortable": false, "tooltip": "(users.UserStates.text) ", "width": Lino.chars2width(22) }, { "colIndex": 3, "dataIndex": "remark", "editable": false, "header": "Remark", "hidden": true, "sortable": false, "tooltip": "(users.UserStates.remark) ", "width": Lino.chars2width(31) }, { "colIndex": 4, "dataIndex": "type", "editable": false, "header": "Type", "hidden": true, "sortable": false, "tooltip": "(users.UserStates.type) ", "width": Lino.chars2width(31) }, { "colIndex": 5, "dataIndex": "button_text", "editable": false, "header": "Symbol", "hidden": true, "sortable": false, "tooltip": "(users.UserStates.button_text) ", "width": Lino.chars2width(5) } ];
    Lino.users.UserStates.GridPanel.superclass.initComponent.call(this);
  }
});

Lino.users.UserStates.show_as_html = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/UserStates", "GET", pk, "show_as_html", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.UserStates.export_excel = function(rp, is_main, pk, params) { 
  var h = function() { 
    Lino.run_row_action(rp, is_main, "/users/UserStates", "GET", pk, "export_excel", params, Lino.get_current_grid_config);
  };
  var panel = Ext.getCmp(rp);
  if(panel) panel.do_when_clean(true, h); else h();
};
Lino.users.UserStates.grid = new Lino.WindowAction({  }, function(){
  var p = { "is_main_window": true };
  return new Lino.users.UserStates.GridPanel(p);
});
