//class page
function page(oSystem,pageName,layoutName,oPageParameters){
  //objects
  this.oSystem = oSystem;
  //properties
  this.layoutName = layoutName;
  this.bNewPage = (pageName != this.name) ? true : false;
  this.name = pageName;
  this.oBlocksParameters = new Object();
  //methods
  this.storePageParameters = storePageParameters;
  this.loadPage = loadPage;
  //init
  this.storePageParameters(oPageParameters);
}

function loadPage(){
  this.oSystem.oDebug.dm('<hr/>loading page '+this.name);
  this.oSystem.oHtmlMng.setPageTitle('page: '+this.name);
  this.oSystem.oLayoutMng.loadLayout(this.layoutName);
}

function storePageParameters(oPageParameters){
  //[[blockName,[[paramName,paramValue],...]],...]
  var aBlock;
  var blockName;
  var aBlockParams;
  var aParameter;
  var paramName;
  var paramValue;
  for(i in oPageParameters){
    //this.oSystem.oDebug.de(i);
    /*aBlock = PageParameters[i];
    blockName = aBlock[0];
    aBlockParams = aBlock[1];
    oBlock = new Object();
    for(j in aBlockParams){
      aParameter = aBlockParams[j];
      paramName = aParameter[0];
      paramValue = aParameter[1];
      oBlock[paramName] = paramValue;
    }
    */
    blockName = i;
    oBlock = oPageParameters[i];
    this.oBlocksParameters[blockName] = oBlock;
  }
}
