function BrowserOP() {
    this.browserIsOpera  = false;
    this.browserIsIE     = false;
    this.browserIsFirefox= false;
    this.fullVersion  = 0;
    this.version      = 0;

    if(!this.detectOpera())
      if(!this.detectFirefox())
        this.detectIE();
}

BrowserOP.prototype.isOpera = function(){
  return this.browserIsOpera;
}

BrowserOP.prototype.isFirefox = function(){
  return this.browserIsFirefox;
}

BrowserOP.prototype.isIE = function(){
  return this.browserIsIE;
}

BrowserOP.prototype.getVersion = function(){
  return this.version;
}

BrowserOP.prototype.getFullVersion = function(){
  return this.fullVersion;
}

//return true if the "value" parameter is total number 
//123 - true
//1,2 - false
//abcd - false
BrowserOP.prototype.ValidateTotalNumber = function(value)
{
		var regExp = new RegExp("^[0-9]+$"); 
		return regExp.test(value);	
}

BrowserOP.prototype.detectFirefox = function(){
  if (/Firefox[\/\s](\d+\.\d+)/.test(navigator.userAgent)){
    this.browserIsFirefox=true;
    this.fullVersion=new Number(RegExp.$1);
    this.version=Math.floor(this.fullVersion);
    return true;
  }else{
    this.browserIsFirefox=false;
    return false;
  }
}

BrowserOP.prototype.detectIE = function(){
  if (/MSIE (\d+\.\d+);/.test(navigator.userAgent)){
    this.browserIsIE=true;
    this.fullVersion=new Number(RegExp.$1);
    this.version=Math.floor(this.fullVersion);
    return true;
  }else{
    this.browserIsIE=false;
    return false;
  }
}

BrowserOP.prototype.detectOpera = function(){
  if (/Opera[\/\s](\d+\.\d+)/.test(navigator.userAgent)){
    this.browserIsOpera=true;
    this.fullVersion=new Number(RegExp.$1);
    this.version=Math.floor(this.fullVersion);
    return true;
  }else{
    this.browserIsOpera=false;
    return false;
  }
}

BrowserOP.prototype.getURLParam = function(paramName)
{
  paramName = paramName.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
  var regexS = "[\\?&]"+paramName+"=([^&#]*)";
  var regex = new RegExp( regexS );
  var results = regex.exec( window.location.href );
  if( results == null )
    return "";
  else
    return results[1];
}

BrowserOP.prototype.isEditMode = function(){
  if(this.getURLParam('edit')=='yes') return true; else return false;
}

BrowserOP.prototype.activeEditableElements = function(){
 //this.addStyle('bodyid',"filter:alpha(opacity=50);-moz-opacity:.50;opacity:.50;");

}

BrowserOP.prototype.hideElement = function (elementId){
	var elem=document.getElementById(elementId);
	if(elem) elem.style.display='none';
}
BrowserOP.prototype.showElement = function(elementId){
	var elem=document.getElementById(elementId);
	if(elem) elem.style.display='block';
}

BrowserOP.prototype.createDIV = function(elementId,display){
	var newdiv = document.createElement('div');
   	newdiv.setAttribute('id', elementId);
	document.body.appendChild(newdiv);
	if(display) this.showElement(elementId);
}

BrowserOP.prototype.removeDIV = function(elementId){
	var elem = document.getElementById(elementId);
	if (elem) {
		this.hideElement(elementId);
		elem.parentNode.removeChild(elem);
	}
}

BrowserOP.prototype.EditItemOn = function(){

	var e = window.event;
	e.cancelBubble = true;



	if (this) {
		var tagtype = this.nodeName.toUpperCase();
		var editid = 'edit_' + this.id;
		var OBrowser = new BrowserOP();
		if (document.getElementById('edit_' + this.id)) {

		}
		else {
			OBrowser.removeDIV('edit');
			OBrowser.createDIV('edit', true);


			var elementparts = this.id.split("|");
			if (elementparts[elementparts.length - 2] == 'IMG') {
				var xmlEdytor = new XMLOP('edit', 'data/index.xml', 'data/editimage.xsl');
				pars = new Array(2);
				pars[0] = new Array(1);
				pars[1] = new Array(1);

				pars[0][0] = 'parID';
				pars[1][0] = this.id;

				xmlEdytor.displayResult(pars);
				return false;
			}
			if (elementparts[elementparts.length - 2] == 'URL') {
				var xmlEdytor = new XMLOP('edit', 'data/index.xml', 'data/editurl.xsl');
				pars = new Array(2);
				pars[0] = new Array(1);
				pars[1] = new Array(1);

				pars[0][0] = 'parID';
				pars[1][0] = this.id

				xmlEdytor.displayResult(pars);
				return false;
			}
		}
		//glueElements(document.getElementById('edytor'),item,document.getElementById('MiddleContent'));
		//alert(targ.id);
	}
}

BrowserOP.prototype.EditItemOff = function(){
	if (this) {
		var tagtype = this.nodeName.toUpperCase();
		var editid = 'edit_' + this.id;
		var OBrowser = new BrowserOP();
		OBrowser.hideElement('edit');
	}
}



/*
elemId - id of element 
actionType - defines what do we edit: "LINK", "IMG", "HTMLEditor"
buttonPosition - defines on which site button should appear: "left" or "right"
                 default is to: "left"
proposedPathToSaveFiles - path to propose for user to save files to.
                          defaultly it is build basing on elemId (path to page images folder)

*/
BrowserOP.prototype.selectEditableelement = function(elemId, actionType, buttonPosition, proposedPathToSaveFiles, proposedImageSize){
  if(arguments.length < 3 || buttonPosition==''){
    buttonPosition = 'left';
  }
  if(arguments.length < 4 || proposedPathToSaveFiles==''){
    proposedPathToSaveFiles = mako_getPathToProposedImageFolder(elemId);
  } 

  var htmlitem=document.getElementById(elemId);
  
  buttonIsVisible = false;
  
    var obj = document.getElementById(elemId);
    var x = 0;
    var y = 0;
    var w = 0;
    var h = 0;
    x = Ext.get(elemId).getX();
    y = Ext.get(elemId).getY();
    w=Ext.get(elemId).getWidth();
    h=Ext.get(elemId).getHeight();
    
    var borderDiv= document.getElementById('Border' + elemId);
  	if(borderDiv)
    {
		   var el = Ext.get('Border' + elemId);
		   //el.remove();
		      el.setX(x);
          el.setY(y);
          el.setWidth(w);
          el.setHeight(h);
          
          elButton = Ext.get('Button' + elemId);
          if(elButton){
            switch(buttonPosition){
              case 'left':
                elButton.setX(x);
                elButton.setY(y-21);
                break;
              case 'right':
                elButton.setX(x+w);
                elButton.setY(y-21);
                break;
              case 'bottomLeft':
                elButton.setX(x);
                elButton.setY(y+h);
                break;
              case 'bottomRight':
                elButton.setX(x+w);
                elButton.setY(y+h);
                break;
            }//END:switch(buttonPosition){
          }
          
          
          
            // var buttonDiv =  Ext.get('Button' + elemId)
            // if(buttonDiv) {
             // buttonDiv.setX(0);
             // buttonDiv.setY(y);
          //  }
          
          return;
		}
  
  myEl = new Ext.Element(document.createElement('div'));
  
    Ext.getBody().appendChild(myEl.dom);
    myEl.dom.id='Border' + elemId ;
    myEl.setStyle('position', 'absolute');
    myEl.setStyle('border', '1px');
    myEl.setStyle('borderStyle', 'solid');
    myEl.setStyle('borderColor', '#FF0000');


  // alert(w);
   myEl.setX(x);
   myEl.setY(y);
   myEl.setWidth(w);
   myEl.setHeight(h);
    
  var borderDiv= document.getElementById('Border' + elemId);
  // borderDiv.onclick= function(){
  // htmlitem.openEditForm();
   //}
   
   borderDiv.onmouseout = function() {
    obj.onmouseout();
   }
  borderDiv.onmouseover = function() {
     obj.onmouseover();
   }
   
  obj.onmouseover = function()
   {
    var e = window.event;
    e.cancelBubble = true;
    var el = Ext.get('Button');
    
    var obj = document.getElementById(elemId);
    var x = 0;
    var y = 0;
    var w = 0;
    var h = 0;
    x = Ext.get(elemId).getX();
    y = Ext.get(elemId).getY();
    w=Ext.get(elemId).getWidth();
    h=Ext.get(elemId).getHeight();
    
    
    if(el) {
		el.remove();
		}
		
		
		buttonDiv = new Ext.Element(document.createElement('div'));
  
    Ext.getBody().appendChild(buttonDiv.dom);
    buttonDiv.dom.id='Button' + elemId ;
    buttonDiv.setStyle('position', 'absolute');
    buttonDiv.setStyle('z-index', '1000');


  // alert(w);
   //buttonDiv.setX(x);
   //buttonDiv.setY(y-21);
   
            
          

          var e = window.event;
          e.cancelBubble = true;
          var buttonObject = new Ext.Button({
                                            renderTo: buttonDiv,
                                            text:'Edit',
                                            id:'Button'
                                            });
                                            
         switch(buttonPosition){
              case 'left':
                buttonDiv.setX(x);
                buttonDiv.setY(y-21);
                break;
              case 'right':
                buttonDiv.setX(x+w-buttonDiv.getWidth());
                buttonDiv.setY(y-21);
                break;
              case 'bottomLeft':
                buttonDiv.setX(x);
                buttonDiv.setY(y+w);
                break;
              case 'bottomRight':
                buttonDiv.setX(x+w-buttonDiv.getWidth());
                buttonDiv.setY(y+w);
                break;
            }//END:switch(buttonPosition){
                                           
          buttonObject.getEl().dom.onmouseover= function(){ buttonIsVisible = true;    };
          
          buttonObject.getEl().dom.onclick= function(){ borderDiv.onclick(); };
          
          buttonObject.getEl().dom.onmouseout= function(){ buttonIsVisible = false; obj.onmouseout();};
   }
    
  
  obj.onmouseout = function() 
  {
    var e = window.event;
    e.cancelBubble = true;
    var el = Ext.get('Button');
    
    
    resizeTask = new Ext.util.DelayedTask(function(){
          if(el) 
              {
                if(buttonIsVisible == false){
      		          el.remove();
      		        }
      		    }   
      });
    resizeTask.delay(1000);
  }
  
	Ext.QuickTips.init();  
	Ext.form.Field.prototype.msgTarget = 'side';
	borderDiv.onclick= function(){
    
    var e = window.event;
    e.cancelBubble = true;
    
  	var editForm = '';
  	var windowObj = '';
  	var htmlEditorObj = '';
    var centerPanel = '';
    var southPanel = '';
    Mako.editFormsArray = Array();
    Mako.editFormsArray2 = Array();
  	switch(actionType){
      //#############################################################################################################
  	  case 'IMG':
        /*
          Mako.editIMGTabPanel - holds refference to TabPanel to edit IMG
          Mako.filesListComboBox - holds refference to ComboBox with list of files to choice
          Mako.IMGPanel - holds refference to panel where the preview image is shown
          Mako.editFormsArray = Array(); //holds refferences to forms in tabs of TabPanel
        */
        
		
        //new file
  		  Mako.editFormsArray[0] = new Ext.form.FormPanel({
                                      frame: true,
                                      method: 'POST',
                                      mako_i: 0, //used to define index of this Tab
                                      title: transEdit_newFile,
                                      labelAlign: 'right',
                                      labelWidth: 190,
                                      width:440,
                                      
                                      items: [
                                              new Ext.form.Hidden({
                                                      name: 'actionType',
                                                      id: 'actionTypeId1',
                                                      value: actionType
                                              }), new Ext.form.Hidden({
                                                      name: 'editedElementPath',
                                                      id: 'editedElementPathId1',
                                                      value: elemId
                                              }), {
                                                  xtype: 'hidden',
                                                  name: 'sourceOfFile',
                                                  value: 'new'
                                              }, new Ext.form.Hidden({
                                                      name: 'imageFilePathHidden',
                                                      id: 'imageFilePathHiddenId1'
                                              }), new Ext.form.TextField({
                                                      fieldLabel: transEdit_imageFile,
                                                      allowBlank: false,
                                                      blankText: transAddModelForm_thisFieldIsRequired,
                                                      name: 'imageFilePath',
                                                      id: 'imageFilePathId1',
                                                      inputType: 'file',
                                                      width:192,
                                                      height:24
                                              }), {
                                                  xtype: 'textfield',
                                                  fieldLabel: transEdit_proposedPathToSaveFile,
                                                  name: 'proposedPathToSaveFiles',
                                                  value: proposedPathToSaveFiles,
                                                  width:190
                                              }, new Ext.form.Label({
                                                     text: (proposedImageSize==undefined?'':trans_EditProposedSize+': '+ proposedImageSize)
                                              })
                                              
                                              
                                          
                                      ]
        });
        
        Mako.editFormsArray[0].addListener('beforeaction',  mako_addEntitiesToFormFields);
        
        //existing file
        Mako.editFormsArray[1] = new Ext.form.FormPanel({
                                      frame: true,
                                      method: 'POST',
                                      mako_i: 1, //used to define index of this Tab
                                      title: transEdit_existingFile,
                                      labelAlign: 'right',
                                      labelWidth: 90,
                                      width:440,
                                      
                                      items: [
                                              new Ext.form.Hidden({
                                                      name: 'actionType',
                                                      id: 'actionTypeId2',
                                                      value: actionType
                                              }), new Ext.form.Hidden({
                                                      name: 'editedElementPath',
                                                      id: 'editedElementPathId2',
                                                      value: elemId
                                              }), {
                                                  xtype: 'hidden',
                                                  name: 'sourceOfFile',
                                                  value: 'existing'
                                              }, Mako.filesListComboBox = new Ext.form.ComboBox({
                                                                                fieldLabel: transEdit_selectFile,
                                                                                width: 380,
                                                                                name: 'pathToImgFromRoot', //path in format: 'images/imageName.jpg'
                                                                                listClass: 'textAlignLeft',
                                                                                triggerAction: 'all',
                                                                                loadingText: transEdit_loading,
                                                                                editable: false,
                                                                                displayField: 'text',
                                                                                valueField: 'value',
                                                                                lazyInit: false,
                                                                                mode: 'remote',
                                                                                store: new Ext.data.JsonStore({
                                                                                            //baseParams : {combo: 'loadlist', interexter: 'Interior'},
                                                                                            method: 'POST',
                                                                                            autoLoad: true,
                                                                                            enableCaching: false,
                                                                                            url: mako_getPathToRoot(elemId) + 'adminPanel/getFilesList_Json.asp',
                                                                                            root: 'files',
                                                                                            fields:['text', 'value']
                                                                                }),
                                                                                listeners: {
                                                                                            select: function(combo, record, index){
                                                                                                      document.getElementById('previewIMG').src = mako_getPathToRoot(elemId) + combo.getValue();
                                                                                            }
                                                                                }
                                              }), Mako.IMGPanel = new Ext.Panel({
                                                                      xtype: 'panel',
                                                                      style: 'padding: 10px;',
                                                                      html: '<img id="previewIMG" src="' + mako_getPathToRoot(elemId) + 'images/common/spacer.gif" width="200" />'
                                              })
                                              
                                          
                                      ]
        });
        
		
		
		
        Mako.editFormsArray[1].addListener('beforeaction',  mako_addEntitiesToFormFields);
        
        
        
        Mako.editIMGTabPanel = new Ext.TabPanel({
        	plain: true,  //remove the header border
        	activeItem: 0,
        	defaults: {bodyStyle: 'padding:15px'},
        	items: Mako.editFormsArray
        });
        
        Mako.editIMGTabPanel.on('tabchange', function(activatedPanelObj){
          ///activatedPanelObj.getActiveTab().doLayout(true);
          
          //assign active form to variable editForm
          editForm = Mako.editFormsArray[activatedPanelObj.getActiveTab().mako_i];
          
          //Mako.filesListComboBox.store.load({
          //                              callback: function(record, options, success){
                                          //Mako.filesListComboBox.expand();
                                          //Mako.filesListComboBox.select(0);
          //                                //document.getElementById('previewIMG').src = mako_getPathToRoot(elemId) + record[0].get('value');
          //                              }
          //});
        });
        
        windowObj = new Ext.Window({
            title: '',
            closable:true,
            width:540,
            height:350,
            plain:true,
            layout: 'fit',
            items: Mako.editIMGTabPanel
        });
        
        //assign active form (first one in the beggining) to variable editForm
        editForm = Mako.editFormsArray[0];
        
        break;
      //#############################################################################################################
      case 'IMGFlash':
        
        
        
        Mako.switchForm =  new Ext.Panel({
                                      frame: true,
                                      columnWidth: .4,
                                      layout: 'form',
                                      labelAlign: 'right',
                                      labelWidth: 110,
                                      height: 65,
                                      
                                      items: [
                                          {
                                              xtype: 'radio',
                                              ctCls: 'textAlignLeft',
                                              style: 'margin: 3px 0px 0px 0px;',
                                              fieldLabel: imageLabel,
                                              name: 'imageType',
                                              id: 'imageType',
                                              value: 'image',
                                              inputValue: 'image',
                                              listeners: {
                                                  check: function(checkboxObj, checkedVal){
                                                    if(checkedVal){
                                                        //checked is image, so disable width/height settings
                                                        Ext.getCmp('flashWidth').disable();
                                                        Ext.getCmp('flashHeight').disable();
                                                    }else{
                                                        Ext.getCmp('flashWidth').enable();
                                                        Ext.getCmp('flashHeight').enable();
                                                    }//END: if(checkedVal){
                                                    
                                                  }//END: check: function(checkboxObj, checkedVal){
                                              }
                                          }, {
                                              xtype: 'radio',
                                              ctCls: 'textAlignLeft',
                                              style: 'margin: 3px 0px 0px 0px;',
                                              fieldLabel: flashLabel,
                                              name: 'imageType',
                                              value: 'flash',
                                              inputValue: 'flash'
                                          }
                                      ]
        });//END: var Mako.switchForm =  new Ext.form.FormPanel({
        
        
        
        
        
        
        Mako.flashSizeForm =  new Ext.Panel({
                                      frame: true,
                                      columnWidth: .6,
                                      layout: 'form',
                                      labelAlign: 'right',
                                      labelWidth: 150,
                                      
                                      items: [
                                          {
                                              xtype: 'textfield',
                                              name: 'flashWidth',
                                              id: 'flashWidth',
                                              allowBlank: false,
                                              blankText: transEdit_editModelImagesEmptyPath,
                                              validator: function(value){
                                                  if(value.match(/^[0-9]+$/) == null){
                                                    return onlyNumbersAreAllowed;
                                                  }else{
                                                    return true;
                                                  }
                                              },
                                              fieldLabel: transEdit_width
                                          }, {
                                              xtype: 'textfield',
                                              name: 'flashHeight',
                                              id: 'flashHeight',
                                              allowBlank: false,
                                              blankText: transEdit_editModelImagesEmptyPath,
                                              validator: function(value){
                                                  if(value.match(/^[0-9]+$/) == null){
                                                    return onlyNumbersAreAllowed;
                                                  }else{
                                                    return true;
                                                  }
                                              },
                                              fieldLabel: transEdit_height
                                          }
                                      ]
        });//END: var Mako.flashSizeForm =  new Ext.form.FormPanel({
        
        
    
        editForm = new Ext.form.FormPanel({
            frame: true,
            method: 'POST',
            layout: 'column',
            
            items: [
                    {
                      xtype: 'hidden',
                      name: 'actionType',
                      id: 'actionTypeId',
                      value: actionType
                    }, {
                      xtype: 'hidden',
                      name: 'editedElementPath',
                      id: 'editedElementPathId',
                      value: elemId
                    }, {
                      xtype: 'hidden',
                      name: 'filePath',
                      id: 'filePath_hiddenField'
                    }, {
                      xtype: 'hidden',
                      name: 'propFilePath',
                      id: 'propFilePath_hiddenField'
                    },
                    Mako.switchForm,
                    Mako.flashSizeForm
            ]
        });//END: editForm = new Ext.form.FormPanel({
        
        
        editForm.addListener('beforeaction', function(formObj, action){
            if(action.type == 'submit'){
              if(!Mako.fileSelectorObj.ValidatePanels()){
                return false;
              }
              for(var i = 0; i<Mako.fileSelectorObj.GetPanelData().length; i++){ //this loop should iterate only once
                  var tempFilePath = Mako.fileSelectorObj.GetPanelData()[i].filePath;
                  if(tempFilePath.indexOf(':') == -1){
                    //it is existing file
                    tempFilePath = tempFilePath.substring(3, tempFilePath.length); //cut off '../' from beggining
                  }
                  Ext.getCmp('filePath_hiddenField').setValue(tempFilePath);
                  Ext.getCmp('propFilePath_hiddenField').setValue(Mako.fileSelectorObj.GetPanelData()[i].propFilePath);
              }
            }
        });//END: editForm.addListener('beforeaction', function(formObj, action){
        
        
        windowObj = new Ext.Window({
            title: '',
            closable:true,
            width:540,
            height:369,
            plain:true,
            items: [
                {
                  xtype: 'panel',
                  bodyStyle: 'border: 0px; background: transparent;',
                  id: 'fileSelectorPanel'
                },
                editForm
            ]
        });
        
        
        
        windowObj.addListener('show', function(formObj){
            Ext.Ajax.request({
                method: 'POST',
                url: mako_getPathToRoot(elemId) + 'data/index.asp',
                
                success: function(response){
                    Mako.Runner.run(transEdit_pleaseWait);
                    
                    var editedElementNode = response.responseXML.selectNodes(elemId.replace(/\|/gi, '/'))[0];
                    
                    //build tab panel
                    var existingFilePath = editedElementNode.selectNodes('path')[0].text.replace(new RegExp(mako_getPathToRoot(elemId).replace(/\./gi, '\\.'), 'gi'), '');
                    
                    Mako.fileSelectorObj = new MakoTabPanel();
                    var fileSelectorPanel = Mako.fileSelectorObj.CreateTabPanel(proposedPathToSaveFiles, existingFilePath, mako_getPathToRoot(elemId));
                    
                    //add listener to drop down list
                    Mako.fileSelectorObj.existingFileDropDown.store.addListener('load', function(){
                      if(Mako.Runner){
                        Mako.Runner.stop();
                      }
                    });
                    
                    Ext.getCmp('fileSelectorPanel').add(fileSelectorPanel);
                    Ext.getCmp('fileSelectorPanel').doLayout();
                    
                    
                    
                    
                    //set form field values
                    Ext.getCmp('flashWidth').setValue(editedElementNode.selectNodes('width')[0].text);
                    Ext.getCmp('flashHeight').setValue(editedElementNode.selectNodes('height')[0].text);
                    
                    if(editedElementNode.getAttribute('isFlash') == 'true'){
                      Ext.getCmp('imageType').setValue('flash');
                    }else{
                      Ext.getCmp('imageType').setValue('image');
                      Ext.getCmp('flashWidth').disable();
                      Ext.getCmp('flashHeight').disable();
                    }
                    
                },
                failure: function(){
                    alert('Request faild, load data, IMGFlash')
                }
            });
        });
        
        
        break;
      //#############################################################################################################
      case 'IFRAME':
        
        //building subPath to 'linkX' element (cuts off first two nodes "root|site")
        //used for mapping in creating editForm
        var elemIdArray = elemId.split('|');
        var elemIdSubPath = '';
        for(var i = 2; i<elemIdArray.length; i++){
          elemIdSubPath += elemIdArray[i];
          if((i+1) != elemIdArray.length){
            //add slash if it is not last element
            elemIdSubPath += '/';
          }
        }//END: for(var i = 2; i<elemIdArray.length; i++){
        
        
    	  editForm = new Ext.form.FormPanel({
                          frame: true,
                          method: 'POST',
                          //title: transAddModelForm_title,
                          labelAlign: 'right',
                          labelWidth: 155,
                          width:440,
                          reader : new Ext.data.XmlReader({
                              record : 'site'
                          }, [
                              {name: 'IFrameAdress', mapping: elemIdSubPath},
							  {name: 'IFrameWidth', mapping: elemIdSubPath + '@Width'},
							  {name: 'IFrameHeigth', mapping: elemIdSubPath + '@Heigth'}
							   //mapping is for example: 'pages/index/link1@target'
                          ]),
                          items: [
                              new Ext.form.FieldSet({
                                  title: 'FieldSet',
                                  autoHeight: true,
                                  defaultType: 'textfield',
                                  items: [
                                          new Ext.form.Hidden({
                                                  name: 'actionType',
                                                  id: 'actionTypeId',
                                                  value: actionType
                                          }), new Ext.form.Hidden({
                                                  name: 'editedElementPath',
                                                  id: 'editedElementPathId',
                                                  value: elemId
                                          })
                                          , {
                                              fieldLabel: transEdit_URLAddress,
                                              name: 'IFrameAdress',
											  allowBlank: false,
                                			  blankText: transAddModelForm_thisFieldIsRequired,
                                              width:190
                                          }
                                        , {
                                              fieldLabel: transEdit_IFrameWidth,
                                              name: 'IFrameWidth',
                                              width:190,
											  allowBlank: false,
                                			  blankText: transAddModelForm_thisFieldIsRequired,
											  validator: function(value) { return OBrowser.ValidateTotalNumber(value) },
											  invalidText : transEdit_IFrameWidthHeigthError
                                          }
										, {
                                              fieldLabel: transEdit_IFrameHeigth,
                                              name: 'IFrameHeigth',
                                              width:190,
											  allowBlank: false,
											  blankText: transAddModelForm_thisFieldIsRequired,
											  validator: function(value) { return OBrowser.ValidateTotalNumber(value) },
											  invalidText : transEdit_IFrameWidthHeigthError
                                          }
                                  ]
                              })
                          ]
        });
        
        windowObj = new Ext.Window({
              title: '',
              closable:true,
              width:440,
              height:350,
              plain:true,
			  modal:true,
              layout: 'fit',
              items: editForm
        });
        
        editForm.addListener('beforeaction',  mako_addEntitiesToFormFields);
        
        windowObj.addListener('activate', function(formObj){
          editForm.getForm().load({url: mako_getPathToRoot(elemId) + 'data/index.asp'});
        });
        break;
      //#############################################################################################################
      case 'LINK':
        
        //building subPath to 'linkX' element (cuts off first two nodes "root|site")
        //used for mapping in creating editForm
        var elemIdArray = elemId.split('|');
        var elemIdSubPath = '';
        for(var i = 2; i<elemIdArray.length; i++){
          elemIdSubPath += elemIdArray[i];
          if((i+1) != elemIdArray.length){
            //add slash if it is not last element
            elemIdSubPath += '/';
          }
        }//END: for(var i = 2; i<elemIdArray.length; i++){
        
        
    	  editForm = new Ext.form.FormPanel({
                          frame: true,
                          method: 'POST',
                          //title: transAddModelForm_title,
                          labelAlign: 'right',
                          labelWidth: 155,
                          width:440,
                          
                          reader : new Ext.data.XmlReader({
                              record : 'site'
                          }, [
                              {name: 'URLText', mapping: elemIdSubPath}, //mapping is for example: 'pages/index/link1'
                              {name: 'URLAddress', mapping: elemIdSubPath + '@target'} //mapping is for example: 'pages/index/link1@target'
                          ]),
                          
                          items: [
                              new Ext.form.FieldSet({
                                  title: 'FieldSet',
                                  autoHeight: true,
                                  defaultType: 'textfield',
                                  items: [
                                          new Ext.form.Hidden({
                                                  name: 'actionType',
                                                  id: 'actionTypeId',
                                                  value: actionType
                                          }), new Ext.form.Hidden({
                                                  name: 'editedElementPath',
                                                  id: 'editedElementPathId',
                                                  value: elemId
                                          }), {
                                              fieldLabel: transEdit_URLText,
                                              name: 'URLText',
                                              width:190
                                          }, {
                                              fieldLabel: transEdit_URLAddress,
                                              name: 'URLAddress',
                                              width:190
                                          }
                                  ]
                              })
                          ]
        });
        
        windowObj = new Ext.Window({
              title: '',
              closable:true,
              width:440,
              height:350,
              plain:true,
              layout: 'fit',
              items: editForm
        });
        
        editForm.addListener('beforeaction',  mako_addEntitiesToFormFields);
        
        windowObj.addListener('activate', function(formObj){
          editForm.getForm().load({url: mako_getPathToRoot(elemId) + 'data/index.asp'});
        });
        break;
      //#############################################################################################################
  	  case 'IMGLink':
        /*
          Mako.editIMGTabPanel - holds refference to TabPanel to edit IMG
          Mako.filesListComboBox - holds refference to ComboBox with list of files to choice
          Mako.IMGPanel - holds refference to panel where the preview image is shown
          Mako.editFormsArray = Array(); //holds refferences to forms in tabs of TabPanel
        */
        
        
        
        //building subPath to 'linkX' element (cuts off first two nodes "root|site")
        //used for mapping in creating editForm
        var elemIdArray = elemId.split('|');
        var elemIdSubPath = '';
        for(var i = 2; i<elemIdArray.length; i++){
          elemIdSubPath += elemIdArray[i];
          if((i+1) != elemIdArray.length){
            //add slash if it is not last element
            elemIdSubPath += '/';
          }
        }//END: for(var i = 2; i<elemIdArray.length; i++){
        
        
        
        
        //new file
  		  Mako.editFormsArray[0] = new Ext.Panel({
                                      frame: true,
                                      method: 'POST',
                                      mako_i: 0, //used to define index of this Tab
                                      title: transEdit_newFile,
                                      labelAlign: 'right',
                                      labelWidth: 200,
                                      width:440,
                                      layout: 'form',
                                      
                                      items: [
                                              {
                                                  xtype: 'hidden',
                                                  name: 'sourceOfFile',
                                                  value: 'new'
                                              }, new Ext.form.Hidden({
                                                      name: 'imageFilePathHidden',
                                                      id: 'imageFilePathHiddenId1'
                                              }), new Ext.form.TextField({
                                                      fieldLabel: transEdit_imageFile,
                                                      allowBlank: false,
                                                      blankText: transAddModelForm_thisFieldIsRequired,
                                                      name: 'imageFilePath',
                                                      id: 'imageFilePathId1',
                                                      inputType: 'file',
                                                      width:272,
                                                      height:24
                                              }), {
                                                  xtype: 'textfield',
                                                  fieldLabel: transEdit_proposedPathToSaveFile,
                                                  name: 'proposedPathToSaveFiles',
                                                  value: proposedPathToSaveFiles,
                                                  width:270
                                              }, new Ext.form.Label({
                                                     text: (proposedImageSize==undefined?'':trans_EditProposedSize+': '+ proposedImageSize)
                                              })
                                              
                                          
                                      ]
        });
        
        
        //existing file
        Mako.editFormsArray[1] = new Ext.Panel({
                                      frame: true,
                                      method: 'POST',
                                      mako_i: 1, //used to define index of this Tab
                                      title: transEdit_existingFile,
                                      labelAlign: 'right',
                                      labelWidth: 90,
                                      width:440,
                                      layout: 'form',
                                      
                                      items: [
                                              {
                                                  xtype: 'hidden',
                                                  name: 'sourceOfFile',
                                                  value: 'existing'
                                              }, Mako.filesListComboBox = new Ext.form.ComboBox({
                                                                                fieldLabel: transEdit_selectFile,
                                                                                width: 380,
                                                                                name: 'pathToImgFromRoot', //path in format: 'images/imageName.jpg'
                                                                                listClass: 'textAlignLeft',
                                                                                triggerAction: 'all',
                                                                                loadingText: transEdit_loading,
                                                                                editable: false,
                                                                                displayField: 'text',
                                                                                valueField: 'value',
                                                                                lazyInit: false,
                                                                                mode: 'remote',
                                                                                store: new Ext.data.JsonStore({
                                                                                            //baseParams : {combo: 'loadlist', interexter: 'Interior'},
                                                                                            method: 'POST',
                                                                                            autoLoad: true,
                                                                                            enableCaching: false,
                                                                                            url: mako_getPathToRoot(elemId) + 'adminPanel/getFilesList_Json.asp',
                                                                                            root: 'files',
                                                                                            fields:['text', 'value']
                                                                                }),
                                                                                listeners: {
                                                                                            select: function(combo, record, index){
                                                                                                      document.getElementById('previewIMG').src = mako_getPathToRoot(elemId) + combo.getValue();
                                                                                            }
                                                                                }
                                              }), Mako.IMGPanel = new Ext.Panel({
                                                                      xtype: 'panel',
                                                                      style: 'padding: 10px;',
                                                                      html: '<img id="previewIMG" src="' + mako_getPathToRoot(elemId) + 'images/common/spacer.gif" width="200" />'
                                              })
                                              
                                          
                                      ]
        });
        
        
        
        Mako.editIMGTabPanel = new Ext.TabPanel({
        	plain: true,  //remove the header border
        	activeItem: 0,
        	height: 200,
        	defaults: {bodyStyle: 'padding:15px'},
        	items: Mako.editFormsArray
        });
        
        
        
        editForm = new Ext.form.FormPanel({
                          frame: true,
                          method: 'POST',
                          //title: transAddModelForm_title,
                          labelAlign: 'right',
                          labelWidth: 210,
                          width:440,
                          
                          reader : new Ext.data.XmlReader({
                              record : 'site'
                          }, [
                              {name: 'URLAddress', mapping: elemIdSubPath + '/link' + '@target'} //mapping is for example: 'pages/index/link1@target'
                          ]),
                          
                          items: [
                              Mako.editIMGTabPanel,
                              new Ext.form.FieldSet({
                                  title: transEdit_linkProperties,
                                  autoHeight: true,
                                  defaultType: 'textfield',
                                  items: [
                                          new Ext.form.Hidden({
                                                  name: 'actionType',
                                                  id: 'actionTypeId',
                                                  value: actionType
                                          }), new Ext.form.Hidden({
                                                  name: 'editedElementPath',
                                                  id: 'editedElementPathId',
                                                  value: elemId
                                          }), {
                                              xtype: 'checkbox',
                                              checked: false,
                                              style: 'margin-top: 5px;',
                                              fieldLabel: transEdit_isLink,
                                              name: 'isLink',
                                              id: 'isLink'
                                          }, {
                                              fieldLabel: transEdit_URLAddress,
                                              name: 'URLAddress',
                                              id: 'URLAddress',
                                              width:270
                                          }
                                  ]
                              })
                          ]
        });
        
        
        windowObj = new Ext.Window({
            title: '',
            closable:true,
            width:550,
            height:450,
            plain:true,
            layout: 'fit',
            items: editForm
        });
        
        Mako.editIMGTabPanel.on('tabchange', function(activatedPanelObj){
          //assign active form to variable editForm
          //editForm = Mako.editFormsArray[activatedPanelObj.getActiveTab().mako_i];
          switch(activatedPanelObj.getActiveTab().mako_i){
            case 0:
              Ext.getCmp('imageFilePathId1').allowBlank = false;
              break;
            case 1:
              Ext.getCmp('imageFilePathId1').allowBlank = true;
              break;
          }
        });
        
        editForm.addListener('beforeaction',  mako_addEntitiesToFormFields);
        
        editForm.addListener('actioncomplete',  function(formObj, action){
                                                  if(action.type == 'load'){
                                                    if((Ext.getCmp('URLAddress').getValue() == '#') || (Ext.getCmp('URLAddress').getValue() == 'javascript:;')){
                                                      Ext.getCmp('isLink').setValue('0');
                                                    }else{
                                                      Ext.getCmp('isLink').setValue('1');
                                                    }
                                                  }
        });
        
        windowObj.addListener('activate', function(formObj){
          editForm.getForm().load({url: mako_getPathToRoot(elemId) + 'data/index.asp'});
        });
        
        break;
      //#############################################################################################################
      case 'HTMLEditor':
        
        //building subPath to 'linkX' element (cuts off first two nodes "root|site")
        //used for mapping in creating editForm
        var elemIdArray = elemId.split('|');
        var elemIdSubPath = '';
        for(var i = 2; i<elemIdArray.length; i++){
          elemIdSubPath += elemIdArray[i];
          if((i+1) != elemIdArray.length){
            //add slash if it is not last element
            elemIdSubPath += '/';
          }
        }//END: for(var i = 2; i<elemIdArray.length; i++){
        
        
        editForm = new Ext.form.FormPanel({
                        frame: true,
                        method: 'POST',
                        //title: transAddModelForm_title,
                        labelAlign: 'right',
                        labelWidth: 155,
                        
                        reader : new Ext.data.XmlReader({
                            record : 'site'
                        }, [
                            {name: 'HTMLTextHidden', mapping: elemIdSubPath} //mapping is for example: 'pages/t3_1/text1'
                        ]),
                        
                        items: [
                                        new Ext.form.Hidden({
                                                name: 'actionType',
                                                id: 'actionTypeId',
                                                value: actionType
                                        }), new Ext.form.Hidden({
                                                name: 'editedElementPath',
                                                id: 'editedElementPathId',
                                                value: elemId
                                        }), new Ext.form.Hidden({
                                                name: 'HTMLTextHidden',
                                                id: 'HTMLTextHiddenId'
                                        })
                                ]
                            
                        
        });
        
        htmlEditorObj = new Ext.form.HtmlEditor({
                                            name: 'HTMLText',
                                            id: 'HTMLTextId',
                                            width: 600,
                                            height: 300
                                        })
        
        centerPanel = new Ext.Panel({
          layout: 'fit',
          plain: true,
          split: true,
          region: 'center',
          items: 
		  htmlEditorObj

        });
        
        southPanel = new Ext.Panel({
          layout: 'fit',
          plain: true,
          split: true,
          height: 100,
          minSize: 75,
          maxSize: 250,
          region: 'south',
          items: editForm
        });
        
        
        
        windowObj = new Ext.Window({
            title: '',
            closable:true,
            width:600,
            height:400,
            plain:true,
            layout: 'border',
            items: [ 
                    centerPanel,
                    southPanel
                    
                   ]
        });
        
        windowObj.addListener('activate', function(Obj){
          editForm.getForm().load({url: mako_getPathToRoot(elemId) + 'data/index.asp'});
        });
        
        editForm.addListener('actioncomplete', function(formObj, action){
                                                  if(action.type == 'load'){
                                                    var formItems = formObj.items.items;
                                                    htmlEditorObj.setValue(formItems[2].getValue());
                                                  }  
                                                  return true;
                                              });
                                              
        editForm.addListener('beforeaction', function(formObj, action){
                                                if(action.type == 'submit'){
                                                  var formItems = formObj.items.items;
                                                  formItems[2].setValue(htmlEditorObj.getValue());
                                                }
                                              });
                                              
        editForm.addListener('beforeaction',  mako_addEntitiesToFormFields);
        
        break; //HTMLEditor
      //#############################################################################################################
  	  case 'SCREENSAVER':
        
        
        
        //building subPath to 'screensaverX' element (cuts off first two nodes "root|site")
        //used for mapping in creating editForm
        //after loop elemIdSubPath is like: 'dirs/cars/dirs/clio/pages/clio_screensavers/screensaver1'
        var elemIdArray = elemId.split('|');
        var elemIdSubPath = '';
        for(var i = 2; i<elemIdArray.length; i++){
          elemIdSubPath += elemIdArray[i];
          if((i+1) != elemIdArray.length){
            //add slash if it is not last element
            elemIdSubPath += '/';
          }
        }//END: for(var i = 2; i<elemIdArray.length; i++){
        
        
        
  		  editForm = new Ext.form.FormPanel({
                        frame: true,
                        method: 'POST',
                        //title: transAddModelForm_title,
                        labelAlign: 'right',
                        labelWidth: 135,
                        width:440,
                        
                        reader : new Ext.data.XmlReader({
                            record : 'site'
                        }, [
                            {name: 'resolution1', mapping: elemIdSubPath + '/linkToFile1/@size'}, //mapping is for example: 'dirs/cars/dirs/clio/pages/clio_screensavers/screensaver1/linkToFile1/@size'
                            {name: 'URLText1', mapping: elemIdSubPath + '/linkToFile1'},
                            {name: 'resolution2', mapping: elemIdSubPath + '/linkToFile2/@size'},
                            {name: 'URLText2', mapping: elemIdSubPath + '/linkToFile2'}
                        ]),
                        
                        items: [
                            new Ext.form.Hidden({
                                    name: 'actionType',
                                    id: 'actionTypeId',
                                    value: actionType
                            }), 
                            new Ext.form.Hidden({
                                    name: 'editedElementPath',
                                    id: 'editedElementPathId',
                                    value: elemId
                            }), 
                            
                            //(Img) file
                            { //new
                                xtype: 'hidden',
                                name: 'sourceOfImgFile',
                                id: 'sourceOfImgFileId'
                            }, 
                            {
                                xtype: 'hidden',
                                name: 'imageFilePathHidden',
                                id: 'imageFilePathHiddenId'
                            }, 
                            {
                                xtype: 'hidden',
                                name: 'proposedPathToSaveImageFile',
                                id: 'proposedPathToSaveImageFileId'
                            },
                            { //existing
                                xtype: 'hidden',
                                name: 'pathToImgFromRoot',
                                id: 'pathToImgFromRootId'
                            }, 
                            
                            //(File1) file
                            { //new
                                xtype: 'hidden',
                                name: 'sourceOfFile1',
                                id: 'sourceOfFile1Id'
                            }, 
                            {
                                xtype: 'hidden',
                                name: 'screensaverFile1PathHidden',
                                id: 'screensaverFile1PathHiddenId'
                            }, 
                            {
                                xtype: 'hidden',
                                name: 'proposedPathToSaveFile1',
                                id: 'proposedPathToSaveFile1Id'
                            },
                            { //existing
                                xtype: 'hidden',
                                name: 'pathToFile1FromRoot',
                                id: 'pathToFile1FromRootId'
                            },
                            
                            //(File2) file
                            { //new
                                xtype: 'hidden',
                                name: 'sourceOfFile2',
                                id: 'sourceOfFile2Id'
                            }, 
                            {
                                xtype: 'hidden',
                                name: 'screensaverFile2PathHidden',
                                id: 'screensaverFile2PathHiddenId'
                            }, 
                            {
                                xtype: 'hidden',
                                name: 'proposedPathToSaveFile2',
                                id: 'proposedPathToSaveFile2Id'
                            },
                            { //existing
                                xtype: 'hidden',
                                name: 'pathToFile2FromRoot',
                                id: 'pathToFile2FromRootId'
                            },
                            
                            
                            {
                                layout: 'column',
                                items: [
                                {
                                  xtype: 'panel',
                                  columnWidth:.45,
                                  bodyStyle: 'border: 0px; background: transparent;',
                                  id: 'fileSelectorImgPanel'
                                },
                                //Mako.editSCREENSAVERImgTabPanel, 
                                {
                                        columnWidth:.01
                                }, {
                                        columnWidth:.54,
                                        layout: 'form',
                                        items: [
                                                new Ext.form.FieldSet({
                                                      title: transEdit_file1,
                                                      autoHeight: true,
                                                      style: 'margin-bottom: 22px;',
                                                      defaultType: 'textfield',
                                                      items: [
                                                              {
                                                                  fieldLabel: transEdit_resolution,
                                                                  name: 'resolution1',
                                                                  width:190
                                                              }, {
                                                                  fieldLabel: transEdit_URLText,
                                                                  name: 'URLText1',
                                                                  width:190
                                                              }, {
                                                                xtype: 'panel',
                                                                columnWidth:.45,
                                                                bodyStyle: 'border: 0px; background: transparent;',
                                                                id: 'fileSelectorFile1Panel'
                                                              }
                                                              //, Mako.editSCREENSAVERFile1TabPanel
                                                      ]
                                                }), new Ext.form.FieldSet({
                                                        title: transEdit_file2,
                                                        autoHeight: true,
                                                        defaultType: 'textfield',
                                                        items: [
                                                                {
                                                                    fieldLabel: transEdit_resolution,
                                                                    name: 'resolution2',
                                                                    width:190
                                                                }, {
                                                                    fieldLabel: transEdit_URLText,
                                                                    name: 'URLText2',
                                                                    width:190
                                                                }, {
                                                                  xtype: 'panel',
                                                                  columnWidth:.45,
                                                                  bodyStyle: 'border: 0px; background: transparent;',
                                                                  id: 'fileSelectorFile2Panel'
                                                                }
                                                                //, Mako.editSCREENSAVERFile2TabPanel
                                                        ]
                                                })
                                        ]
                                }]
                        }, {
                                layout: 'column',
                                items: [{
                                        columnWidth:.45,
                                        layout: 'form'
                                }, 
                                {
                                        columnWidth:.01
                                }, {
                                        columnWidth:.54,
                                        layout: 'form'
                                }]
                        }]
        });
        
        editForm.addListener('beforeaction',  mako_addEntitiesToFormFields);
        
        editForm.addListener('beforeaction', function(formObj, action){
            if(action.type == 'submit'){
              if(!Mako.fileSelectorImgObj.ValidatePanels()){
                return false;
              }
              if(!Mako.fileSelectorFile1Obj.ValidatePanels()){
                return false;
              }
              if(!Mako.fileSelectorFile2Obj.ValidatePanels()){
                return false;
              }
              
              //(img) file
              for(var i = 0; i<Mako.fileSelectorImgObj.GetPanelData().length; i++){ //this loop should iterate only once
                  var tempFilePath = Mako.fileSelectorImgObj.GetPanelData()[i].filePath;
                  if(tempFilePath.indexOf(':') == -1){
                    //it is existing file
                    tempFilePath = tempFilePath.substring(3, tempFilePath.length); //cut off '../' from beggining
                    Ext.getCmp('sourceOfImgFileId').setValue('existing');
                    Ext.getCmp('pathToImgFromRootId').setValue(mako_toEntities(tempFilePath));
                  }else{
                    //it is new file
                    Ext.getCmp('sourceOfImgFileId').setValue('new');
                    Ext.getCmp('imageFilePathHiddenId').setValue(mako_toEntities(tempFilePath));
                    Ext.getCmp('proposedPathToSaveImageFileId').setValue(mako_toEntities(Mako.fileSelectorImgObj.GetPanelData()[i].propFilePath));
                  }
              }
              
              //(File1) file
              for(var i = 0; i<Mako.fileSelectorFile1Obj.GetPanelData().length; i++){ //this loop should iterate only once
                  var tempFilePath = Mako.fileSelectorFile1Obj.GetPanelData()[i].filePath;
                  if(tempFilePath.indexOf(':') == -1){
                    //it is existing file
                    tempFilePath = tempFilePath.substring(3, tempFilePath.length); //cut off '../' from beggining
                    Ext.getCmp('sourceOfFile1Id').setValue('existing');
                    Ext.getCmp('pathToFile1FromRootId').setValue(mako_toEntities(tempFilePath));
                  }else{
                    //it is new file
                    Ext.getCmp('sourceOfFile1Id').setValue('new');
                    Ext.getCmp('screensaverFile1PathHiddenId').setValue(mako_toEntities(tempFilePath));
                    Ext.getCmp('proposedPathToSaveFile1Id').setValue(mako_toEntities(Mako.fileSelectorFile1Obj.GetPanelData()[i].propFilePath));
                  }
              }
              
              //(File2) file
              for(var i = 0; i<Mako.fileSelectorFile2Obj.GetPanelData().length; i++){ //this loop should iterate only once
                  var tempFilePath = Mako.fileSelectorFile2Obj.GetPanelData()[i].filePath;
                  if(tempFilePath.indexOf(':') == -1){
                    //it is existing file
                    tempFilePath = tempFilePath.substring(3, tempFilePath.length); //cut off '../' from beggining
                    Ext.getCmp('sourceOfFile2Id').setValue('existing');
                    Ext.getCmp('pathToFile2FromRootId').setValue(mako_toEntities(tempFilePath));
                  }else{
                    //it is new file
                    Ext.getCmp('sourceOfFile2Id').setValue('new');
                    Ext.getCmp('screensaverFile2PathHiddenId').setValue(mako_toEntities(tempFilePath));
                    Ext.getCmp('proposedPathToSaveFile2Id').setValue(mako_toEntities(Mako.fileSelectorFile2Obj.GetPanelData()[i].propFilePath));
                  }
              }
            }
        });//END: editForm.addListener('beforeaction', function(formObj, action){
        
        
        windowObj = new Ext.Window({
            title: '',
            closable:true,
            width:700,
            height:544,
            plain:true,
            layout: 'fit',
            items: editForm
        });
        
        windowObj.addListener('activate', function(Obj){
          editForm.getForm().load({url: mako_getPathToRoot(elemId) + 'data/index.asp'});
        });
        
        windowObj.addListener('show', function(formObj){
            Mako.Runner.run(transEdit_pleaseWait);
            Mako.Runner.SCREENSAVER_imgLoaded = false;
            Mako.Runner.SCREENSAVER_file1Loaded = false;
            Mako.Runner.SCREENSAVER_file2Loaded = false;
            Ext.Ajax.request({
                method: 'POST',
                url: mako_getPathToRoot(elemId) + 'data/index.asp',
                
                success: function(response){
                    //Mako.Runner.run(transEdit_pleaseWait);
                    
                    var editedElementNode = response.responseXML.selectNodes(elemId.replace(/\|/gi, '/'))[0];
                    
                    //build tab panel (Img)
                    var existingImgPath = editedElementNode.selectNodes('img1')[0].text.replace(new RegExp(mako_getPathToRoot(elemId).replace(/\./gi, '\\.'), 'gi'), '');
                    
                    Mako.fileSelectorImgObj = new MakoTabPanel();
                    var fileSelectorImgPanel = Mako.fileSelectorImgObj.CreateTabPanel(proposedPathToSaveFiles, existingImgPath, mako_getPathToRoot(elemId), '', true);
                    fileSelectorImgPanel.height = 474; //height of TabPanel 
                    Mako.fileSelectorImgObj.existingFileDropDown.width = 260; //width of dropDownList
                    //Mako.fileSelectorImgObj.newFilePanel.labelWidth = 80; //default nwe file label width
                    Mako.fileSelectorImgObj.proposedFilePathTextField.width = 168; //proposed path field width
                    Mako.fileSelectorImgObj.newFileTextField.fieldLabel = transEdit_imageFile; //new file field label
                    Mako.fileSelectorImgObj.newFileTextField.width = 170; //new file field width
                    
                    //add listener to drop down list
                    Mako.fileSelectorImgObj.existingFileDropDown.store.addListener('load', function(){
                      Mako.Runner.SCREENSAVER_imgLoaded = true;
                      if(Mako.Runner.SCREENSAVER_imgLoaded && Mako.Runner.SCREENSAVER_file1Loaded && Mako.Runner.SCREENSAVER_file2Loaded){
                        Mako.Runner.stop();
                      }
                    });
                    
                    Ext.getCmp('fileSelectorImgPanel').add(fileSelectorImgPanel);
                    Ext.getCmp('fileSelectorImgPanel').doLayout();
                    
                    
                    
                    //build tab panel (File1)
                    var existingFile1Path = editedElementNode.selectNodes('linkToFile1')[0].getAttribute('href').replace(new RegExp(mako_getPathToRoot(elemId).replace(/\./gi, '\\.'), 'gi'), '');
                    
                    Mako.fileSelectorFile1Obj = new MakoTabPanel();
                    var fileSelectorFile1Panel = Mako.fileSelectorFile1Obj.CreateTabPanel(proposedPathToSaveFiles, existingFile1Path, mako_getPathToRoot(elemId), '', false);
                    fileSelectorFile1Panel.height = 120; //height of TabPanel 
                    fileSelectorFile1Panel.style = 'margin-top: 20px;'; //style of TabPanel
                    Mako.fileSelectorFile1Obj.existingFileDropDown.width = 320; //width of dropDownList
                    Mako.fileSelectorFile1Obj.newFilePanel.labelWidth = 105; //default nwe file label width
                    Mako.fileSelectorFile1Obj.proposedFilePathTextField.width = 188; //proposed path field width
                    Mako.fileSelectorFile1Obj.newFileTextField.fieldLabel = transEdit_screensaverFile; //new file field label
                    Mako.fileSelectorFile1Obj.newFileTextField.width = 192; //new file field width
                    
                    //add listener to drop down list
                    Mako.fileSelectorFile1Obj.existingFileDropDown.store.addListener('load', function(){
                      Mako.Runner.SCREENSAVER_file1Loaded = true;
                      if(Mako.Runner.SCREENSAVER_imgLoaded && Mako.Runner.SCREENSAVER_file1Loaded && Mako.Runner.SCREENSAVER_file2Loaded){
                        Mako.Runner.stop();
                      }
                    });
                    
                    
                    Ext.getCmp('fileSelectorFile1Panel').add(fileSelectorFile1Panel);
                    Ext.getCmp('fileSelectorFile1Panel').doLayout();
                    
                    
                    
                    //build tab panel (File2)
                    var existingFile2Path = editedElementNode.selectNodes('linkToFile2')[0].getAttribute('href').replace(new RegExp(mako_getPathToRoot(elemId).replace(/\./gi, '\\.'), 'gi'), '');
                    
                    Mako.fileSelectorFile2Obj = new MakoTabPanel();
                    var fileSelectorFile2Panel = Mako.fileSelectorFile2Obj.CreateTabPanel(proposedPathToSaveFiles, existingFile2Path, mako_getPathToRoot(elemId), '', false);
                    fileSelectorFile2Panel.height = 120; //height of TabPanel 
                    fileSelectorFile2Panel.style = 'margin-top: 20px;'; //style of TabPanel
                    Mako.fileSelectorFile2Obj.existingFileDropDown.width = 320; //width of dropDownList
                    Mako.fileSelectorFile2Obj.newFilePanel.labelWidth = 105; //default nwe file label width
                    Mako.fileSelectorFile2Obj.proposedFilePathTextField.width = 188; //proposed path field width
                    Mako.fileSelectorFile2Obj.newFileTextField.fieldLabel = transEdit_screensaverFile; //new file field label
                    Mako.fileSelectorFile2Obj.newFileTextField.width = 192; //new file field width
                    
                    //add listener to drop down list
                    Mako.fileSelectorFile2Obj.existingFileDropDown.store.addListener('load', function(){
                      Mako.Runner.SCREENSAVER_file2Loaded = true;
                      if(Mako.Runner.SCREENSAVER_imgLoaded && Mako.Runner.SCREENSAVER_file1Loaded && Mako.Runner.SCREENSAVER_file2Loaded){
                        Mako.Runner.stop();
                      }
                    });
                    
                    
                    Ext.getCmp('fileSelectorFile2Panel').add(fileSelectorFile2Panel);
                    Ext.getCmp('fileSelectorFile2Panel').doLayout();
                    
                    
                    
                    /*
                    //set form field values
                    Ext.getCmp('flashWidth').setValue(editedElementNode.selectNodes('width')[0].text);
                    Ext.getCmp('flashHeight').setValue(editedElementNode.selectNodes('height')[0].text);
                    
                    if(editedElementNode.getAttribute('isFlash') == 'true'){
                      Ext.getCmp('imageType').setValue('flash');
                    }else{
                      Ext.getCmp('imageType').setValue('image');
                      Ext.getCmp('flashWidth').disable();
                      Ext.getCmp('flashHeight').disable();
                    }
                    */
                },
                failure: function(){
                    if(Mako.Runner){
                        Mako.Runner.stop();
                      }
                    alert('Request faild, load data, SCREENSAVER')
                }
            });
        });
        
        break;
      //#############################################################################################################
  	  case 'FlashVideo':
		newVideoTabPanel = new MakoTabPanel();
		pathtoroot=mako_getPathToRoot(elemId);
		videoTabPanel = newVideoTabPanel.CreateTabPanel('', '', pathtoroot , '625x433');
 

  		editForm = new Ext.form.FormPanel({
                        frame: true,
                        method: 'POST',
                        //title: transEdit_flashVideoWindowTitle,
                        labelAlign: 'center',
                        labelWidth: 190,
						hidden:true,
                        width:500,
                        defaultType: 'textfield',	
                        items: [
                       					new Ext.form.Hidden
				   						({
                                                name: 'actionType',
                                                id: 'actionTypeId',
                                                value: actionType
                                        }), new Ext.form.Hidden({
                                                name: 'editedElementPath',
                                                id: 'editedElementPathId',
                                                value: elemId
                                        }), new Ext.form.TextField({
                                                name: 'flashVideoFilePathHidden',
                                                id: 'flashVideoFilePathHiddenId',
												allowBlank: false
												//value:'C:\\Documents and Settings\\blazej.grzelinski\\Pulpit\\5.jpg'
                                        }), new Ext.form.Hidden({
                                                name: 'proposedPathToSaveFlashVideoFile',
                                                id: 'proposedPathToSaveFlashVideoFileId',
                                                value: proposedPathToSaveFiles
                                        }), {
											id:"hiddenWidth",
                                            fieldLabel: transEdit_width,
                                            name: 'width',
                                            width:190
                                        }, {
											id:"hiddenHeight",
                                            fieldLabel: transEdit_height,
                                            name: 'height',
                                            width:190
                                        }
                                ]
        });
		
		  		editFormNotSubmited = new Ext.form.FormPanel({
                        frame: true,
						layout:'form',
						labelWidth:150,
                        defaultType: 'textfield',
                        items: [
									videoTabPanel,
									{
										xtype:'label',
										text:'Video properies',
										labelStyle:'font-size:12x; width:190px'
									}
									,
									{
										id:"videoWidth",
	                                	fieldLabel: transEdit_width,
										labelStyle:'font-size:11px; width:190px',
	                                    name: 'flashWidth',
	                                    width:190
	                                },
									{
										id:"videoHeight",
	                                    fieldLabel: transEdit_height,
										labelStyle:'font-size:11px; width:190px',
	                                    name: 'flashHeight',
	                                    width:190
									}
								]
								})
						
						

        editForm.addListener('beforeaction',  function() {
			newVideoTabPanel.ValidatePanels();
			Ext.getCmp('hiddenWidth').setValue(Ext.getCmp('videoWidth').getValue());
			Ext.getCmp('hiddenHeight').setValue(Ext.getCmp('videoHeight').getValue());
			Ext.getCmp('flashVideoFilePathHiddenId').setValue(newVideoTabPanel.GetPanelData()[0].filePath);
		 });
		 
		 

        editForm.addListener('beforeaction',  mako_addEntitiesToFormFields);
        
        windowObj = new Ext.Window({
            title: transEdit_flashVideoWindowTitle,
            closable:true,
            width:540,
            height:400,
            plain:true,
            layout: 'fit',
            items: [ editFormNotSubmited, editForm]
        });
        break;
      //#############################################################################################################
      case 'FLASHTitle':
        
        //building subPath to 'linkX' element (cuts off first two nodes "root|site")
        //used for mapping in creating editForm
        var elemIdArray = elemId.split('|');
        var elemIdSubPath = '';
        for(var i = 2; i<elemIdArray.length; i++){
          elemIdSubPath += elemIdArray[i];
          if((i+1) != elemIdArray.length){
            //add slash if it is not last element
            elemIdSubPath += '/';
          }
        }//END: for(var i = 2; i<elemIdArray.length; i++){
        
        
    	  editForm = new Ext.form.FormPanel({
                          frame: true,
                          method: 'POST',
                          //title: transAddModelForm_title,
                          labelAlign: 'right',
                          labelWidth: 155,
                          width:440,
                          
                          reader : new Ext.data.XmlReader({
                              record : 'site'
                          }, [
                              {name: 'textFirstLine', mapping: elemIdSubPath + '/firstLine'}, //mapping is for example: 'pages/index/flashTitle1/firstLine'
                              {name: 'textSecondLine', mapping: elemIdSubPath + '/secondLine'} //mapping is for example: 'pages/index/flashTitle1/secondLine'
                          ]),
                          
                          items: [
                              new Ext.form.FieldSet({
                                  title: transEdit_firstLine,
                                  autoHeight: true,
                                  defaultType: 'textfield',
                                  items: [
                                          new Ext.form.Hidden({
                                                  name: 'actionType',
                                                  id: 'actionTypeId',
                                                  value: actionType
                                          }), new Ext.form.Hidden({
                                                  name: 'editedElementPath',
                                                  id: 'editedElementPathId',
                                                  value: elemId
                                          }), {
                                              fieldLabel: transEdit_text,
                                              name: 'textFirstLine',
                                              width:190
                                          }
                                  ]
                              }),
                              new Ext.form.FieldSet({
                                  title: transEdit_secondLine,
                                  autoHeight: true,
                                  defaultType: 'textfield',
                                  items: [
                                          {
                                              fieldLabel: transEdit_text,
                                              name: 'textSecondLine',
                                              width:190
                                          }
                                  ]
                              })
                          ]
        });
        
        windowObj = new Ext.Window({
              title: '',
              closable:true,
              width:440,
              height:350,
              plain:true,
              layout: 'fit',
              items: editForm
        });
        
        editForm.addListener('beforeaction',  mako_addEntitiesToFormFields);
        
        windowObj.addListener('activate', function(formObj){
          editForm.getForm().load({url: mako_getPathToRoot(elemId) + 'data/index.asp'});
        });
        break;
      //#############################################################################################################
      case 'FLASHHeader':
        
        var siteId = mako_getSiteId(elemId);
        var XPathToFlashHeaderNode = mako_getXPathToFlashHeaderNode(siteId.replace(/\|/g, '/')) + '/flashHeader';
        
    	  editForm = new Ext.form.FormPanel({
                          frame: true,
                          method: 'POST',
                          //title: transAddModelForm_title,
                          labelAlign: 'right',
                          labelWidth: 155,
                          width:440,
                          
                          
                          items: [
                              new Ext.form.FieldSet({
                                  title: transEdit_firstLine,
                                  autoHeight: true,
                                  defaultType: 'textfield',
                                  items: [
                                          new Ext.form.Hidden({
                                                  name: 'actionType',
                                                  id: 'actionTypeId',
                                                  value: actionType
                                          }), new Ext.form.Hidden({
                                                  name: 'editedElementPath',
                                                  id: 'editedElementPathId',
                                                  value: XPathToFlashHeaderNode.replace(/\//g, '|')
                                          }), {
                                              fieldLabel: transEdit_text,
                                              name: 'textFirstLine',
                                              id: 'textFirstLineId',
                                              width:190
                                          }
                                  ]
                              }),
                              new Ext.form.FieldSet({
                                  title: transEdit_secondLine,
                                  autoHeight: true,
                                  defaultType: 'textfield',
                                  items: [
                                          {
                                              fieldLabel: transEdit_text,
                                              name: 'textSecondLine',
                                              id: 'textSecondLineId',
                                              width:190
                                          }
                                  ]
                              })
                          ]
        });
        
        windowObj = new Ext.Window({
              title: '',
              closable:true,
              width:440,
              height:350,
              plain:true,
              layout: 'fit',
              items: editForm
        });
        
        editForm.addListener('beforeaction',  mako_addEntitiesToFormFields);
        
        windowObj.addListener('activate', function(formObj){
            Ext.Ajax.request({
                method: 'POST',
                url: mako_getPathToRoot(elemId) + 'data/index.asp',
                
                success: function(response){
                    var flashHeaderNode = response.responseXML.selectNodes(XPathToFlashHeaderNode)[0];
                    editForm.findById('textFirstLineId').setValue(flashHeaderNode.selectNodes('firstLine')[0].text);
                    editForm.findById('textSecondLineId').setValue(flashHeaderNode.selectNodes('secondLine')[0].text);
                },
                failure: function(){
                    alert('Request faild')
                }
            });
        });
        break;
      //#############################################################################################################








  case 'FocusItem':
    /*
      Mako.editIMGTabPanel - holds refference to TabPanel to edit IMG
      Mako.filesListComboBox - holds refference to ComboBox with list of files to choice
      Mako.IMGPanel - holds refference to panel where the preview image is shown
      Mako.editFormsArray = Array(); //holds refferences to forms in tabs of TabPanel
    */
    
    //building subPath to 'linkX' element (cuts off first two nodes "root|site")
    //used for mapping in creating editForm
    var elemIdArray = elemId.split('|');
    var elemIdSubPath = '';
    for(var i = 2; i<elemIdArray.length; i++){
      elemIdSubPath += elemIdArray[i];
      if((i+1) != elemIdArray.length){
        //add slash if it is not last element
        elemIdSubPath += '/';
      }
    }//END: for(var i = 2; i<elemIdArray.length; i++){
    
    
    
    
     //new file
	  Mako.editFormsArray[0] = new Ext.Panel({
      frame: true,
      method: 'POST',
      mako_i: 0, //used to define index of this Tab
      title: transEdit_newFile,
      labelAlign: 'top',
      labelWidth: 200,
      width:250,
      layout: 'form',
      
      items: [
              new Ext.form.Hidden({
                      name: 'imageFilePathHidden',
                      id: 'imageFilePathHiddenId1'
              }), new Ext.form.TextField({
                      fieldLabel: transEdit_focusItemLinkImageFile,
                      allowBlank: true,
                      blankText: transAddModelForm_thisFieldIsRequired,
                      name: 'imageFilePath',
                      id: 'imageFilePathId1',
                      inputType: 'file',
                      width:200,
                      height:24
              }), {
                  xtype: 'textfield',
                  fieldLabel: transEdit_focusItemLinkImagePath,
                  name: 'proposedPathToSaveFiles',
                  value: proposedPathToSaveFiles,
                  width:200
              }, new Ext.form.Label({
                     text: trans_EditProposedSize+': 156x87'
              })
              
          
      ]
    });
    
        //existing file
    Mako.editFormsArray[1] = new Ext.Panel({
      frame: true,
      method: 'POST',
      mako_i: 1, //used to define index of this Tab
      title: transEdit_existingFile,
      labelAlign: 'top',
      labelWidth: 90,
      width:250,
      layout: 'form',
      
      items: [
              {
                  xtype: 'hidden',
                  name: 'imgPathHidden',
                  id: 'imgPathHiddenId',
                  value: ''
              },            
               Mako.filesListComboBox = new Ext.form.ComboBox({
                fieldLabel: transEdit_focusItemSelectLinkImageFile,
                width: 230,
                name: 'pathToImgFromRoot', //path in format: 'images/imageName.jpg'
                id: 'pathToImgFromRootId', //path in format: 'images/imageName.jpg'
                listClass: 'textAlignLeft',
                triggerAction: 'all',
                loadingText: transEdit_loading,
                editable: false,
                displayField: 'text',
                valueField: 'value',
                lazyInit: false,
                mode: 'remote',
                store: new Ext.data.JsonStore({
                            //baseParams : {combo: 'loadlist', interexter: 'Interior'},
                            method: 'POST',
                            autoLoad: true,
                            enableCaching: false,
                            url: mako_getPathToRoot(elemId) + 'adminPanel/getFilesList_Json.asp',
                            root: 'files',
                            fields:['text', 'value']
                }),
                listeners: {
                            select: function(combo, record, index){
                                      document.getElementById('previewIMG').src = mako_getPathToRoot(elemId) + combo.getValue();
                            }

                }
              }), Mako.IMGPanel = new Ext.Panel({
                xtype: 'panel',
                style: 'padding: 10px;',
                html: '<img id="previewIMG" src="' + mako_getPathToRoot(elemId) + 'images/common/spacer.gif" width="200" />'
              })
              
          
      ]
    });
    

    
    

        //new file
	  Mako.editFormsArray2[0] = new Ext.Panel({
      frame: true,
      method: 'POST',
      mako_i: 0, //used to define index of this Tab
      title: transEdit_newFile,
      labelAlign: 'top',
      labelWidth: 200,
      width:250,
      layout: 'form',
      
      items: [
              new Ext.form.Hidden({
                      name: 'imageFileBigPathHidden',
                      id: 'imageFileBigPathHiddenId1'
              }), new Ext.form.TextField({
                      fieldLabel: transEdit_focusItemBigImageFile,
                      allowBlank: true,
                      blankText: transAddModelForm_thisFieldIsRequired,
                      name: 'imageFileBigPath',
                      id: 'imageFileBigPathId1',
                      inputType: 'file',
                      width:200,
                      height:24
              }),
              
              
              
              {
                  xtype: 'textfield',
                  fieldLabel: transEdit_focusItemBigImagePath,
                  width:200,
                  name: 'proposedPathToSaveFilesBig',
                  value: proposedPathToSaveFiles
              }, new Ext.form.Label({
                     text: trans_EditProposedSize+': 407x179'
              })
              
          
      ]
    });
    
    
    //existing file
    Mako.editFormsArray2[1] = new Ext.Panel({
      frame: true,
      method: 'POST',
      mako_i: 1, //used to define index of this Tab
      title: transEdit_existingFile,
      labelAlign: 'top',
      labelWidth: 90,
      width:250,
      layout: 'form',
      
      items: [{
                  xtype: 'hidden',
                  name: 'imgPathBigHidden',
                  id: 'imgPathBigHiddenId',
                  value: ''
              },
              Mako.filesListComboBox = new Ext.form.ComboBox({
                fieldLabel: transEdit_focusItemSelectBigImageFile,
                width: 230,
                name: 'pathToImgFromRootBig', //path in format: 'images/imageName.jpg'
                id: 'pathToImgFromRootBigId', //path in format: 'images/imageName.jpg'
                listClass: 'textAlignLeft',
                triggerAction: 'all',
                loadingText: transEdit_loading,
                editable: false,
                displayField: 'text',
                valueField: 'value',
                lazyInit: false,
                mode: 'remote',
                store: new Ext.data.JsonStore({
                            //baseParams : {combo: 'loadlist', interexter: 'Interior'},
                            method: 'POST',
                            autoLoad: true,
                            enableCaching: false,
                            url: mako_getPathToRoot(elemId) + 'adminPanel/getFilesList_Json.asp',
                            root: 'files',
                            fields:['text', 'value']
                }),
                listeners: {
                            select: function(combo, record, index){
                                      document.getElementById('previewIMGBig').src = mako_getPathToRoot(elemId) + combo.getValue();
                            }
                }
              }), Mako.IMGPanel = new Ext.Panel({
                xtype: 'panel',
                style: 'padding: 10px;',
                html: '<img id="previewIMGBig" src="' + mako_getPathToRoot(elemId) + 'images/common/spacer.gif" width="200" />'
              })
      ]
    });
    













    
    
    Mako.editIMGTabPanel = new Ext.TabPanel({
    	plain: true,  //remove the header border
      layoutOnTabChange: true,
      border: false,
    	activeItem: 0,
    	height: 190,
    	region: 'center',
    	defaults: {bodyStyle: 'padding:10px;'},
    	items: Mako.editFormsArray
    });
    


    Mako.editIMGTabPanel2 = new Ext.TabPanel({
    	plain: true,  //remove the header border
      layoutOnTabChange : true,
      border: false,
    	activeItem: 0,
    	height: 190,
    	region: 'center',
    	defaults: {bodyStyle: 'padding:10px'},
    	items: Mako.editFormsArray2
    });





    
        
    htmlEditorObj = new Ext.form.HtmlEditor({
        name: 'HTMLText',
        id: 'HTMLTextId'
    })

    textPanel = new Ext.Panel({
      title: '&nbsp;&nbsp;&nbsp;'+transEdit_focusItemMainText,
      style : 'text-align:left;',
      layout: 'fit',
      plain: true,
      split: true,
      region: 'center',
      height:160,
      items: htmlEditorObj
    });
        
    Mako.editIMGTabPanels = new Ext.Panel({
      layout: 'column',
      plain: true,
      split: true,
      region: 'center',
      items: [
        {xtype: 'hidden',name: 'source',id: 'source',value: 'existing'},
        {xtype: 'hidden',name: 'sourceBig',id: 'sourceBig',value: 'existing'},
        {columnWidth:.5,items:Mako.editIMGTabPanel},
        {columnWidth:.5,items:Mako.editIMGTabPanel2}
      ]
    });
    
    
                        
    var indexXmlObj = GetIndexXmlObject(mako_getPathToRoot(elemId) + "data/index.xml");
    var XmlColorsNodes=indexXmlObj.selectNodes("root/site/Colors/color");
    var XmlColors = Array();
    for(i = 0; i<XmlColorsNodes.length; i++) {
      XmlColors[i]=XmlColorsNodes[i].text.toUpperCase();
    }
    
    editForm = new Ext.form.FormPanel({
      frame: true,
      method: 'POST',
      /*region: 'center',*/
      //title: transAddModelForm_title,
      labelAlign: 'right',
      labelWidth: 210,
      width:540,
      height:342,
      reader : new Ext.data.XmlReader({
          record : 'site'
      }, [
          {name: 'LinkText', mapping: elemIdSubPath + '/LinkText'},
          {name: 'Title', mapping: elemIdSubPath + '/title'},
          {name: 'Subtitle', mapping: elemIdSubPath + '/subtitle'},
          {name: 'HTMLTextHidden', mapping: elemIdSubPath + '/text'},
          {name: 'imgPathHiddenId', mapping: elemIdSubPath + '/img'},
          {name: 'imgPathBigHiddenId', mapping: elemIdSubPath + '/imgBig'},
          {name: 'backgroundColor', mapping: elemIdSubPath.substr(0, elemIdSubPath.lastIndexOf('/')) + '/focusItemsBackgroundColor'}
      ]),
      
      items: [
          Mako.editIMGTabPanels,
          new Ext.form.FieldSet({
              title: transEdit_focusItemProperties,
              autoHeight: true,
              defaultType: 'textfield',
                          
              items: [
                      new Ext.form.Hidden({
                              name: 'actionType',
                              id: 'actionTypeId',
                              value: actionType
                      }), new Ext.form.Hidden({
                              name: 'editedElementPath',
                              id: 'editedElementPathId',
                              value: elemId
                      }),
                      {
                          fieldLabel: transEdit_focusItemLinkText,
                          name: 'LinkText',
                          id: 'LinkText',
                          width:270
                      }, {
                          fieldLabel: transEdit_focusItemTitle,
                          name: 'Title',
                          id: 'Title',
                          width:270
                      }, {
                          fieldLabel: transEdit_focusItemSubtitle,
                          name: 'Subtitle',
                          id: 'Subtitle',
                          width:270
                      }, 
                      new Ext.ux.ColorField({
          							fieldLabel: transEdit_backgroundColor,
          							name: 'backgroundColor',
          							width: 255,
          							colors: XmlColors,
          							allowBlank: false
          						}), 
                      new Ext.form.Hidden({
                          name: 'HTMLTextHidden',
                          id: 'HTMLTextHiddenId'
                      })
              ]
          })
      ]
    });
    
    
    windowObj = new Ext.Window({
        title: transEdit_focusWindowTitle,
        closable:true,
        resizable: false,
        width:555,
        height:589,
        plain:true,
        tbar: [
          {
  					xtype: 'label',
  					text: trans_toDisableItem
  			}
      	],
        /*layout: 'form',*/
        items: [editForm,
              textPanel]
    });
    
    Mako.editIMGTabPanel.on('tabchange', function(activatedPanelObj){
      //assign active form to variable editForm
      //editForm = Mako.editFormsArray[activatedPanelObj.getActiveTab().mako_i];
      switch(activatedPanelObj.getActiveTab().mako_i){
        case 0:
          Ext.getCmp('imageFilePathId1').allowBlank = false;
          Ext.getCmp('source').setValue('new');
          break;
        case 1:
          Ext.getCmp('imageFilePathId1').allowBlank = true;
          Ext.getCmp('source').setValue('existing');
          break;
      }
      //alert (Ext.getCmp('source').getValue())
    });
    Mako.editIMGTabPanel2.on('tabchange', function(activatedPanelObj){
      //assign active form to variable editForm
      //editForm = Mako.editFormsArray[activatedPanelObj.getActiveTab().mako_i];
      switch(activatedPanelObj.getActiveTab().mako_i){
        case 0:
          Ext.getCmp('imageFileBigPathId1').allowBlank = false;
          Ext.getCmp('sourceBig').setValue('new');
          break;
        case 1:
          Ext.getCmp('imageFileBigPathId1').allowBlank = true;
          Ext.getCmp('sourceBig').setValue('existing');
          break;
      }
      //alert (Ext.getCmp('source').getValue())
    });
    
    editForm.addListener('beforeaction', function(formObj, action){
      if(action.type == 'submit'){
        editForm.findById('HTMLTextHiddenId').setValue(htmlEditorObj.getValue());
      }
    });
                                              
        
    editForm.addListener('beforeaction',  mako_addEntitiesToFormFields);
    
    editForm.addListener('actioncomplete', function(formObj, action){
        if(action.type == 'load'){
          htmlEditorObj.setValue(editForm.findById('HTMLTextHiddenId').getValue());


          Mako.editIMGTabPanel.setActiveTab(1);
          Mako.editIMGTabPanel2.setActiveTab(1);


          var tempPath = editForm.findById('imgPathHiddenId').getValue().replace(new RegExp('\\.\\./', 'gi'), '');
          editForm.findById('pathToImgFromRootId').setValue(tempPath);
          document.getElementById('previewIMG').src = mako_getPathToRoot(elemId) + editForm.findById('pathToImgFromRootId').getValue();



          tempPath=editForm.findById('imgPathBigHiddenId').getValue().replace(new RegExp('\\.\\./', 'gi'), '');
          editForm.findById('pathToImgFromRootBigId').setValue(tempPath);
          document.getElementById('previewIMGBig').src = mako_getPathToRoot(elemId) + editForm.findById('pathToImgFromRootBigId').getValue();
          
          Mako.Runner.stop();
        }  
        return true;
    });
                                                                                           

    windowObj.addListener('activate', function(formObj){
      editForm.getForm().load({url: mako_getPathToRoot(elemId) + 'data/index.asp'});
    });
    
    
    windowObj.addListener('show', function(){
      Mako.Runner.run(transEdit_pleaseWait);
    });

    
    break;
  //#############################################################################################################

















  	}//END: switch(actionType){
    
    
    
    
    //windowObj.buttonAlign = 'center';
    var submit = windowObj.addButton({
        text: transEdit_save,
        handler: function(){
		try {
            editForm.getForm().submit({url: mako_getPathToRoot(elemId) + 'data/saveXML.asp', 
			
                                           success: function(form, action){
                                                      document.location = (window.location.href.indexOf('#') == -1?window.location.href:window.location.href.replace(new RegExp('#', 'gi'), ''));
                                                      //windowObj.close();
													
                                                    },
                                           failure: function(form, action){												
                                                      if(action.result){
                                                        if(action.result.alertMsg){
                                                          Ext.Msg.alert('', action.result.errorMsg);
                                                        }
                                                      }else{
													  	try {
                                                        	Ext.Msg.alert('', 'Save in browser.js failed<br />' + action.response.responseText);
                                                      		}
														  catch (e)
														  {  }
													  }
                                                    }
                                          });
										  }
										  catch(o) {
										  	
										  }

        }
    });
	windowObj.addButton({
		id: 'closeButton',
		text: 'Close',
		handler: function(){
			windowObj.close()
		}
	});
    
    
    
    var spot = new Ext.Spotlight({
        easing: 'easeOut',
        duration: .3
    });
    
    
    
    windowObj.addListener('beforeclose', function(panelObj){
                                            spot.hide();
    });
    
    windowObj.show(this);
    
    spot.show(windowObj.getEl());
    
    return false;
  };//END: htmlitem.onclick= function(){
  
  //htmlitem.onclick= this.EditItemOn;
}//END: BrowserOP.prototype.selectEditableelement = function(elemId, actionType){

BrowserOP.prototype.getByID = function(elemid){
  return document.getElementById(elemid);
}
BrowserOP.prototype.addStyle = function (el, s){
  if(typeof(el) == 'string'){el = document.getElementById(el);}
  var st = s.split(';');
  for(var i=0; i<st.length; i++){
    var stl = st[i].split(':');
    if(stl.length == 2){
      stl[0] = stl[0].replace(/^\s*|\s*$/g,"");
      stl[1] = stl[1].replace(/^\s*|\s*$/g,"");
      stl[1] = stl[1].replace(/'/g, "\"");
      tmpStl = stl[0].split('-');
      stl[0] = tmpStl[0];
      for(var j=1; j < tmpStl.length; j++){
        stl[0] += tmpStl[j].charAt(0).toUpperCase() + tmpStl[j].substr(1).toLowerCase();
      }
      delete tmpStl;
      if(stl[0].length > 3){eval('el.style.' + stl[0] + ' = \'' + stl[1] + '\';');}
    }
  }
  return false;
}

BrowserOP.prototype.glueElements = function(obj,referenceobj,container){
	if(container)
	{
		var contype=typeof container;
		if(contype=='object'){
			obj.style.top=(this.getAbsY(referenceobj)+referenceobj.offsetHeight-container.scrollTop+'px');
			obj.style.left=(this.getAbsX(referenceobj)-container.scrollLeft+'px');
		}else{
			obj.style.top=(this.getAbsY(referenceobj)+referenceobj.offsetHeight+'px');
			obj.style.left=(this.getAbsX(referenceobj)+'px');
		}
		return;
	}else{
		obj.style.left=(this.getAbsX(referenceobj)+'px');
		obj.style.top=(this.getAbsY(referenceobj)+referenceobj.offsetHeight+'px');
		obj.style.width=(referenceobj.style.width);
	}

}
BrowserOP.prototype.getAbsX = function(elt) { return (elt.x) ? elt.x : this.getAbsPos(elt,"Left"); }
BrowserOP.prototype.getAbsY = function(elt) { return (elt.y) ? elt.y : this.getAbsPos(elt,"Top"); }
BrowserOP.prototype.getAbsPos = function (elt,which) {
	iPos = 0;
 	while (elt != null) {
  		iPos += elt["offset" + which];
  		elt = elt.offsetParent;
 	}
 	return iPos;
}



var OBrowser = new BrowserOP();
