//local page
function local(){
  //properties
  this.lastLavoroOpened;
  //objects
  //methods
  this.jsUpdate = jsUpdate;  
  this.setHeight = setHeight;  
  this.expandLavoro = expandLavoro;  
  this.getElementDimensions = getElementDimensions;  
}

function jsUpdate(blockName){
  switch(blockName){
    case 'intro':
      this.oAnimationMng.addAnimation('fadebg_1','fadeColor',{targetId:'div1',colorProperty:'backgroundColor',startRGB:['136','136','136'],endRGB:['255','0','0'],finalColor:'#f00',steps:100,intervals:100,powr:2});
      this.oAnimationMng.addAnimation('fadeimg_1','changeOpacity',{targetId:'write1',opacStart:0,opacEnd:100,millisec:10000});
      
      this.oAnimationMng.addAnimation('fadebg_2','fadeColor',{targetId:'div2',colorProperty:'backgroundColor',startRGB:['255','0','0'],endRGB:['0','255','0'],finalColor:'#0f0',steps:100,intervals:90,powr:2},10000);
      this.oAnimationMng.addAnimation('fadeimg_2','changeOpacity',{targetId:'write2',opacStart:0,opacEnd:100,millisec:9000},10000)
      
      this.oAnimationMng.addAnimation('fadebg_3','fadeColor',{targetId:'div3',colorProperty:'backgroundColor',startRGB:['0','255','0'],endRGB:['0','0','255'],finalColor:'#00f',steps:100,intervals:80,powr:2},19000);
      this.oAnimationMng.addAnimation('fadeimg_3','changeOpacity',{targetId:'write3',opacStart:0,opacEnd:100,millisec:8000},19000)
      
      this.oAnimationMng.addAnimation('fadebg_4','fadeColor',{targetId:'div4',colorProperty:'backgroundColor',startRGB:['0','0','255'],endRGB:['255','255','0'],finalColor:'#ff0',steps:100,intervals:70,powr:2},27000);
      this.oAnimationMng.addAnimation('fadeimg_4','changeOpacity',{targetId:'write4',opacStart:0,opacEnd:100,millisec:7000},27000)
      
      this.oAnimationMng.addAnimation('fadebg_5','fadeColor',{targetId:'div5',colorProperty:'backgroundColor',startRGB:['255','255','0'],endRGB:['0','255','255'],finalColor:'#0ff',steps:100,intervals:60,powr:2},34000);
      this.oAnimationMng.addAnimation('fadeimg_5','changeOpacity',{targetId:'write5',opacStart:0,opacEnd:100,millisec:6000},34000)
      
      this.oAnimationMng.addAnimation('fadebg_6','fadeColor',{targetId:'div6',colorProperty:'backgroundColor',startRGB:['0','255','255'],endRGB:['255','0','255'],finalColor:'#f0f',steps:100,intervals:50,powr:2},40000);
      this.oAnimationMng.addAnimation('fadeimg_6','changeOpacity',{targetId:'write6',opacStart:0,opacEnd:100,millisec:5000},40000)
      
      this.oAnimationMng.addAnimation('fadebg_7','fadeColor',{targetId:'div7',colorProperty:'backgroundColor',startRGB:['255','0','255'],endRGB:['255','255','255'],finalColor:'#fff',steps:100,intervals:40,powr:2},45000);
      this.oAnimationMng.addAnimation('fadeimg_7','changeOpacity',{targetId:'write7',opacStart:0,opacEnd:100,millisec:4000},45000)
      
      
      this.oAnimationMng.addAnimation('fadebg_body','fadeColor',{targetId:'body',colorProperty:'backgroundColor',startRGB:['0','0','0'],endRGB:['255','255','255'],finalColor:'#fff',steps:100,intervals:10,powr:2},51000);
      this.oAnimationMng.addAnimation('fadebg_container','fadeColor',{targetId:'container_block_intro',colorProperty:'backgroundColor',startRGB:['136','136','136'],endRGB:['255','255','255'],finalColor:'#fff',steps:100,intervals:10,powr:2},51000);
      this.oAnimationMng.addAnimation('fadebg_8','fadeColor',{targetId:'div1',colorProperty:'backgroundColor',startRGB:['255','0','0'],endRGB:['255','255','255'],finalColor:'#fff',steps:100,intervals:10,powr:2},51000);
      this.oAnimationMng.addAnimation('fadeimg_8','changeOpacity',{targetId:'write1',opacStart:100,opacEnd:0,millisec:1000},51000);
      this.oAnimationMng.addAnimation('fadebg_9','fadeColor',{targetId:'div2',colorProperty:'backgroundColor',startRGB:['0','255','0'],endRGB:['255','255','255'],finalColor:'#fff',steps:100,intervals:10,powr:2},51000);
      this.oAnimationMng.addAnimation('fadeimg_9','changeOpacity',{targetId:'write2',opacStart:100,opacEnd:0,millisec:1000},51000)
      this.oAnimationMng.addAnimation('fadebg_10','fadeColor',{targetId:'div3',colorProperty:'backgroundColor',startRGB:['0','0','255'],endRGB:['255','255','255'],finalColor:'#fff',steps:100,intervals:10,powr:2},51000);
      this.oAnimationMng.addAnimation('fadeimg_10','changeOpacity',{targetId:'write3',opacStart:100,opacEnd:0,millisec:1000},51000)
      this.oAnimationMng.addAnimation('fadebg_11','fadeColor',{targetId:'div4',colorProperty:'backgroundColor',startRGB:['255','255','0'],endRGB:['255','255','255'],finalColor:'#fff',steps:100,intervals:10,powr:2},51000);
      this.oAnimationMng.addAnimation('fadeimg_11','changeOpacity',{targetId:'write4',opacStart:100,opacEnd:0,millisec:1000},51000)
      this.oAnimationMng.addAnimation('fadebg_12','fadeColor',{targetId:'div5',colorProperty:'backgroundColor',startRGB:['0','255','255'],endRGB:['255','255','255'],finalColor:'#fff',steps:100,intervals:10,powr:2},51000);
      this.oAnimationMng.addAnimation('fadeimg_12','changeOpacity',{targetId:'write5',opacStart:100,opacEnd:0,millisec:1000},51000)
      this.oAnimationMng.addAnimation('fadebg_13','fadeColor',{targetId:'div6',colorProperty:'backgroundColor',startRGB:['255','0','255'],endRGB:['255','255','255'],finalColor:'#fff',steps:100,intervals:10,powr:2},51000);
      this.oAnimationMng.addAnimation('fadeimg_13','changeOpacity',{targetId:'write6',opacStart:100,opacEnd:0,millisec:1000},51000)
      this.oAnimationMng.addAnimation('fadeimg_14','changeOpacity',{targetId:'write7',opacStart:100,opacEnd:0,millisec:1000},51000)
      
      this.oAnimationMng.addAnimation('fadeimg_vuk','changeOpacity',{targetId:'write_vuk',opacStart:0,opacEnd:100,millisec:5000},55000)
      
    break;
    case 'left':
      document.getElementById('body').style.backgroundColor = '#000';
      var endRGBColor;
      switch(oSystem.oPage.name){
        case 'chi sono':
          endRGBColor = ['255','0','0'];
          endHEXColor = '#f00';
        break;
        case 'cosa ho fatto':
          endRGBColor = ['0','255','0'];
          endHEXColor = '#0f0';
        break;
      }
      var currentColor = (this.oAnimationMng.oAnimations.fade_left) ? this.oAnimationMng.oAnimations.fade_left.oSpecificAnimation.currentRGB : ['136','136','136'];
      var actStep = (this.oAnimationMng.oAnimations.fade_left) ? this.oAnimationMng.oAnimations.fade_left.oSpecificAnimation.actStep : 100;
      this.oAnimationMng.addAnimation('fade_left','fadeColor',{targetId:'container_block_left',colorProperty:'backgroundColor',startRGB:currentColor,endRGB:endRGBColor,finalColor:endHEXColor,steps:actStep,intervals:50,powr:2});
      this.leftColor = endRGBColor;
    break;
    case 'chi_sono':
      this.setHeight('chi_sono');
    break;
    case 'cosa_ho_fatto':
      this.setHeight('cosa_ho_fatto');
      this.lastLavoroOpened = '';
    break;
  }
}

function setHeight(blockName){
  var aDimensions = this.getElementDimensions('container_block_'+blockName);
  var centerHeight = aDimensions[1] > 320 ? aDimensions[1] : 320;
  var totHeight = centerHeight + 80;
  var oContainer;
  if(document.getElementById('container_layout_chi_sono')) oContainer = document.getElementById('container_layout_chi_sono');
  else if(document.getElementById('container_layout_cosa_ho_fatto')) oContainer = document.getElementById('container_layout_cosa_ho_fatto');
  oContainer.style.height = totHeight + 'px';
}

function expandLavoro(elementId,divHeight){
  if(this.lastLavoroOpened){
    this.oAnimationMng.addAnimation('collapse_w_'+this.lastLavoroOpened,'changeNumericProperty',{targetId:this.lastLavoroOpened,styleProperty:'width',measureUnit:'px',valueStart:400,valueEnd:0,millisec:100});
    this.oAnimationMng.addAnimation('collapse_h_'+this.lastLavoroOpened,'changeNumericProperty',{targetId:this.lastLavoroOpened,styleProperty:'height',measureUnit:'px',valueStart:divHeight,valueEnd:0,millisec:400});
    this.oAnimationMng.addAnimation('collapse_foot_'+this.lastLavoroOpened,'changeNumericProperty',{targetId:'lavori_footer',styleProperty:'height',measureUnit:'px',valueStart:0,valueEnd:100,millisec:400});
  }
  if(elementId != this.lastLavoroOpened){
    this.oAnimationMng.addAnimation('expand_w_'+elementId,'changeNumericProperty',{targetId:elementId,styleProperty:'width',measureUnit:'px',valueStart:0,valueEnd:400,millisec:200});
    this.oAnimationMng.addAnimation('xpand_h_'+elementId,'changeNumericProperty',{targetId:elementId,styleProperty:'height',measureUnit:'px',valueStart:0,valueEnd:divHeight,millisec:800});
    this.lastLavoroOpened = elementId;

    this.oAnimationMng.addAnimation('collapse_foot_'+elementId,'changeNumericProperty',{targetId:'lavori_footer',styleProperty:'height',measureUnit:'px',valueStart:100,valueEnd:0,millisec:400});
  }else this.lastLavoroOpened = '';
}

function getElementDimensions(id){
  var oElement = document.getElementById(id);
  var elementWidth = Number(oElement.offsetWidth);
  var elementHeight = Number(oElement.offsetHeight);
  var aDimensions = new Array(elementWidth,elementHeight);
  return aDimensions;
}
