var popup = {
  url: "/tools/framework/php/popup.php",
  get:  function(aParams){
    var myAjax = new Ajax.Request(
      this.url,
      {
        method: 'get',
        parameters: aParams,
        onComplete: this.response
      });  
  },
  build: function(aTy,aName,aContent,aTitle) {
    switch (aTy){
      case 'table' : {this.buildTable(aTy,aName,aContent,aTitle);
                      break;}
    
    }    
  },
  buildTable : function(aTy,aName,aContent,aTitle) {
    var wDMain = new Element('div', {'id':aName, 'title':aTitle });
    var wTab = new Element('table',{});
    var wL;
    var wD;
    var wA;
    for (var i=0;i<aContent.length;i++){
      wL=new Element('tr', { });
      wD=new Element('td', { }).update(aContent[i].date);
      Element.insert(wL, wD);
      wD.addClassName(aTy+'_date');
      wD.addClassName(aName+'_date');
      wD=new Element('td', { });
      wA = new Element('a', { href: aContent[i].url }).update(aContent[i].title);
      Element.insert(wD, wA);
      Element.insert(wL, wD);
      wD.addClassName(aTy+'_title');
      wD.addClassName(aName+'_title');
      Element.insert(wTab, wL);
      wL.addClassName(aTy+'_line');
      wL.addClassName(aName+'_line');
    }
    Element.insert(wDMain,wTab);
    Element.insert(document.body, wDMain);
    wTab.addClassName(aTy+'_main');
    wTab.addClassName(aName+'_main');
  },
  show: function(aName,aTop,aLeft,aHeight,aWidth) {
          jQuery("#"+aName).dialog({height: aHeight, width:aWidth, position:[aLeft,aTop]});
      	  jQuery("#"+aName).dialog("open");    
  },
  hide: function(aName) {
      this.destroy(aName);
  },
  destroy: function(aName) {
    try{
      var wa=$(aName).ancestors()[0];
      wa.remove();
    }catch(e){}
  },
  response :function(xhr){
    if (xhr.status == 200){
        var wJ=xhr.responseJSON;
        popup.destroy(wJ.id)
        popup.build(wJ.ty,wJ.id,wJ.values,wJ.title);
        popup.show(wJ.id,wJ.top,wJ.left,wJ.height,wJ.width)
    }else{
        alert(this.name+" "+xhr.status);
    }
  }
};

function respondToClickPopupBtn(event){
  var wE=event.element();
  var wId=wE.id.split("_")[0];
  var wTy=wE.readAttribute("ty")
  openPopup(wTy,wId,event)
}
function openPopup(aTy,aName,aEvt){
  wPar={};
  wCp={};
  wCp.id=aName;
  wCp.ty=aTy;
  wCp.top=Event.pointerY(aEvt)-aEvt.element().cumulativeScrollOffset()[1] ;
  wCp.left=Event.pointerX(aEvt)-aEvt.element().cumulativeScrollOffset()[0];
  wPar.p=Object.toJSON(wCp);
  popup.get("id="+wCp.id+"&ty="+wCp.ty+"&top="+wCp.top+"&left="+wCp.left);
}