Ext.ns('ES');

ES.waterCounterEntryForm = Ext.extend(Ext.FormPanel,{
  frame:true,
  border:true,
  labelWidth:90,
  height:220,
  defaultUnit:'px',
  layout:'Form',
  width: 408,
  autoload:null
  ,buttons: [{text: 'Sauver'}]
  ,initComponent:function() {
     var config = {
      buttonAlign:'right'
      ,frame:false
      ,border:true
      ,bodyStyle:'padding:10px'
      ,items:[{
         title:'consommation d eau : '
        ,layout:'form'
        ,xtype:'fieldset'
        ,border:false
        ,labelWidth:'150px'
        ,autoHeight:true
        ,defaultType:'textfield'
        ,bodyStyle:'padding:4px'
        ,items:[{
            xtype:'ESNumber'
            ,name:'value'
            ,fieldLabel:'Valeur [KWh]'
            ,allowBlank:false
          },{
            xtype:'ESNumber'
            ,name:'price'
            ,fieldLabel:'Prix [CHF]'
            ,allowBlank:false
          },{
            xtype:'ESdatefield'
            ,name:'startdate'
            ,id:'startdate'
            ,format:'d/m/Y'
            ,fieldLabel:'Date de début'
            ,minValue:new Date('01/01/2000 00:00:0 AM GMT-0600')
            ,maxValue:new Date('12/31/2015 00:00:0 AM GMT-0600')
            ,vtype: 'daterange'
            ,endDateField: 'enddate'
            ,allowBlank:false
          },{
            xtype:'datefield'
            ,format:'d/m/Y'
            ,name:'enddate'
            ,id:'enddate'
            ,fieldLabel:'Date de fin'
            ,minValue:new Date('01/01/2000 00:00:0 AM GMT-0600')
            ,maxValue:new Date('12/31/2015 00:00:0 AM GMT-0600')
            ,vtype: 'daterange'
            ,startDateField: 'startdate'
            ,allowBlank:false
           },{
            name:'counter_id'
            ,fieldLabel:'counter_id'
            ,hidden: true
            ,hideLabel: true
           }]
        }]
    };
     // apply config
    Ext.apply(this, Ext.apply(this.initialConfig, config));
    // call parent initComponent
    ES.waterCounterEntryForm.superclass.initComponent.call(this);
  } // end of function initComponent
  ,onRender:function() {
    // call parent
    ES.waterCounterEntryForm.superclass.onRender.apply(this, arguments);
  } // eo function onRender
  ,isValid:function (){
    return(
      this.getField('value').isValid()
      && this.getField('price').isValid()
      && this.getField('startdate').isValid()
      && this.getField('enddate').isValid()
    );
  }
  ,getField:function(fieldName){
    return this.getForm().findField(fieldName);
  }
  ,setField:function(fieldName,value){
    this.getField(fieldName).setValue(value);
  }
});

Ext.reg('ESwatercounterentryform', ES.waterCounterEntryForm);

