function BrowserPage(a,b,c,d,e){this.id="page"+a;this.internal_id=a;this.imgup=new Image();this.imgup.src=c;this.imgdown=new Image();this.imgdown.src=d;this.name=b;this.state=e;if(this.state===undefined){this.state=false}}BrowserPage.prototype={id:undefined,internal_id:undefined,imgup:undefined,imgdown:undefined,cssclass:undefined,name:undefined,orientation:undefined,state:undefined,element:undefined,columns:undefined,rows:3,productcount:undefined,totalpages:undefined,loaded:false,items:undefined,currentpage:1,list_table:undefined,order:undefined,render:function(d,e){if(!this.loaded){CustomCards.Client.Data.GetCardList(this.internal_id,function(a,b){b.productcount=a.length;b.calculatePagination();b.items=a;for(var i=0;i<b.items.length;i++){var c=new Image();c.src=b.items[i].thumb}b.loaded=true;b.render(d,e)},handleError,this);return}if(this.element!==undefined){this.element.setAttribute("src",(this.state?this.imgdown.src:this.imgup.src))}else{this.element=document.createElement("img");this.element.setAttribute("src",(this.state?this.imgdown.src:this.imgup.src));this.element.tab=this;if(this.id!==undefined){this.element.setAttribute("id",this.id)}if(this.name!==undefined){this.element.setAttribute("alt",this.name)}if(this.cssclass!==undefined){this.element.setAttribute("class",this.cssclass)}this.element.onclick=function(){if(!this.tab.state){this.tab.state=true;this.tab.ontoggle(this.tab)}};d.appendChild(this.element)}if(this.state){$('#currentPageTop').text(this.currentpage);$('#currentPageBottom').text(this.currentpage);$('#totalPagesTop').text(this.totalpages);$('#totalPagesBottom').text(this.totalpages);var f=false;if(e.rows.length){if(e.rows[0].cells.length!=this.columns){while(e.rows.length){e.deleteRow(e.rows.length-1)}f=true}}if(e.rows.length===0){f=true}if(f){for(var r=0;r<this.rows;r++){var g=e.insertRow(0);for(var c=0;c<this.columns;c++){g.insertCell(0)}}}for(var i=0;i<(this.columns*this.rows);i++){var h=Math.floor(i/this.columns);var j=i-(h*this.columns);var k=e.rows[h].cells[j];var l=i+((this.rows*this.columns)*(this.currentpage-1));if(l<this.items.length){k.className=(this.columns==2?"cardthumb2col":"cardthumb3col");k.innerHTML='<a id="popcard1'+this.items[l].id+'" href="javascript:void(0)">'+'<img alt="" src="'+this.items[l].thumb+'" />'+'</a>'+'<br />'+'<a id="popcard2'+this.items[l].id+'" href="javascript:void(0)">'+this.items[l].cardnumber+'<img alt="" src="images/magnify.gif" />'+'</a>';var m=$get('popcard1'+this.items[l].id);var n=$get('popcard2'+this.items[l].id);m.item=this.items[l];m.tab=this;m.onclick=this.productclick;n.item=this.items[l];n.tab=this;n.onclick=this.productclick}else{k.className='';k.innerHTML=''}}}},ontoggle:null,calculatePagination:function(){if(this.columns===undefined||this.productcount===undefined){throw"Unable to calculate pagination due to lack of internal data!";}var a=this.productcount/(this.columns*this.rows);var b=Math.floor(a);if(a>b){this.totalpages=Math.floor(a+1)}else{this.totalpages=b}if(this.totalpages===0){this.currentpage=0}},productclick:function(){showLoading();CustomCards.Client.Data.GetCardItem(this.item.id,function(a,b){hideLoading();b.tab.order=null;b.tab.order=new ProductOrder(a)},handleError,this)}};