
addsPrint = function()
{
    this.createHead();
    this.createEnd();
    this.target =null;
    this.elArray = new Array();
    this.init();
    
    
};
addsPrint.prototype = {
    init : function()
    {
        this.target = Ext.get('print_preview');
        this.createBox();
        
    },
    add : function(data,keepList)
    {
        if(!keepList)
            this.clear();
        //this.show();
        
        
        for(var i=0; i<data.length;i++)
                    {
                        this.createPrintAdd(data[i].data,data[i].index);
                    }
                    this.print();        
        /* moved to application level
        Ext.Ajax.request({
           url:hosturl + 'print/gettypelist.aspx',
           success: function (conn, response, options) {
           
                    var ans = eval(conn.responseText);
                    this.mapIndex = ans;
                    for(var i=0; i<data.length;i++)
                    {
                        this.createPrintAdd(data[i].data,data[i].index);
                    }
                    this.print();        
           },
           failure: function (conn, response, options) {alert('תקלה בגישה לשרת בדוק את תקינות חיבור האינטרנט');},
           scope : this});*/
        
        
    },
    createPrintAdd : function(data,index)
    {
    
        //debugger;
        if(!this.printTemplate)
        {
            this.printTemplate = new Ext.Template(
                '  <table class="main" > ',
                '       <tr>  ',
                '<td><img src="print/img/new_logo.png" class="logo"/> </td> ',
                '         <td style="height:95px;"> <div class="printbtn" style="float:left; margin-left:5px;" onclick="window.print();"> לחץ להדפסה </div>  </td>',
                '       </tr> ',
                '       <tr> ',
                '         <td style="border:solid 1px #aeabab;width:200px;"> ',
                '           <table class="detail"> ',
                '             <tr> <td colspan=2 style="text-decoration:underline;font-weight:bold;"> מחיר ופרטי התקשרות </td> </tr> ',
                '              <tr> <td width="105px" > מחיר: </td> <td > {price} </td> </tr> ',
                '             <tr> <td > איש קשר: </td> <td > {contact} </td> </tr> ',
                '             <tr style="height:20px;vertical-align:3px;"> <td > טלפון: </td> <td > {phones} </td> </tr> ',
                '             <tr> <td colspan=2 style="text-decoration:underline;font-weight:bold;"> פרטי הנכס </td> </tr> ',
                '              <tr> <td > סוג המודעה: </td> <td > {type} </td> </tr> ',
                '             <tr> <td > סוג הנכס: </td> <td > {assetType} </td> </tr> ',
                '             <tr> <td > עיר: </td> <td > {city} </td> </tr> ',
                '             <tr> <td > רחוב: </td> <td > {street} </td> </tr> ',
                '             <tr> <td > גודל: </td> <td > {size} </td> </tr> ',
                '             <tr> <td > קומה: </td> <td > {floor} </td> </tr> ',
                '             <tr style="height:20px;vertical-align:3px;"> <td > חדרים: </td> <td > {rooms} </td> </tr> ',
                '             <tr> <td colspan=2 style="text-decoration:underline;font-weight:bold;"> פרטים נוספים </td> </tr> ',
                '             <tr> <td > מעלית </td> <td > <img src="print/img/{elivaitor}.png"/> </td> </tr> ',
                '             <tr> <td > חניה </td> <td > <img src="print/img/{parking}.png"/> </td> </tr> ',
                '             <tr> <td > מזגן </td> <td > <img src="print/img/{aircon}.png"/> </td> </tr> ',
                '             <tr> <td > סורגים </td> <td > <img src="print/img/{bars}.png"/> </td> </tr> ',
                '             <tr> <td > ריהוט </td> <td > <img src="print/img/{furniture}.png"/> </td> </tr> ',
                '             <tr> <td > מרפסת </td> <td > <img src="print/img/{balcony}.png"/> </td> </tr> ',
                '             <tr> <td > משופצת </td> <td > <img src="print/img/{refurb}.png"/> </td> </tr> ',
                '             <tr> <td > מתאים לשותפים </td> <td > <img src="print/img/{roomis}.png"/> </td> </tr> ',
                '             <tr> <td > גישה לנכים </td> <td > <img src="print/img/{handicapt}.png"/> </td> </tr> ',
                '             <tr> <td > תיווך/יזמות/אחר </td> <td > <img src="print/img/{arbitration}.png"/> </td> </tr> ',
                '             <tr> <td > עדכון אחרון </td> <td > {update} </td> </tr> ',
                '             <tr> <td > תאריך כניסה </td> <td > {edate} </td> </tr> ',
                '           </table> ', 
                '         </td> ',
                '         <td> <iframe src="{url}" width="520px" height="520px;" scrolling="no" noresize="noresize" frameborder="no" style="width:520px; height:520px;border:dotted 1px black; float:left;"></iframe> </td> ',
                '       </tr> ',
                '       <tr> <td colspan=2> {description} </td> </tr>    ',                
                '       <tr> ',
                '         <td colspan=2> ',
                '           <table style="border:solid 1px #aeabab;width:100%;margin-top:7px;"> ',
                '             <tr> ',
                '               <td> <img src="print/img/kopatholimgray.png"> </td> <td> קופות חולים </td> ',
                '               <td> <img src="print/img/pharmacygray.png"> </td> <td> בית מרקחת</td> ',
                '               <td> <img src="print/img/poolgray.png"> </td> <td> בריכה / קאנטרי</td> ',
                '               <td> <img src="print/img/supergray.png"> </td> <td> סופר / מרכז מסחרי</td> ',
                '               <td> <img src="print/img/gasgray.png"> </td> <td> תחנת דלק</td> ',
                '             </tr> ',
                '             <tr> ',
                '               <td> <img src="print/img/traingray.png"> </td> <td> תחנת רכבת</td> ',
                '               <td> <img src="print/img/beachgray.png"> </td> <td> חופי רחצה</td> ',
                '               <td> <img src="print/img/schoolgray.png"> </td> <td> בית ספר</td> ',
                '               <td> <img src="print/img/antenagray.png"> </td> <td> אנטנות סלולריות</td> ',
                '               <td> <img src="print/img/parkinggray.png"> </td> <td> חניונים</td> ',
                '             </tr> ',
                '             <tr> ',
                '               <td> <img src="print/img/tempelgray.png"> </td> <td> גנים/פארקים</td> ',
                '               <td> <img src="print/img/clubgray.png"> </td> <td> מועדונים</td> ',
                '             </tr> ',
                '           </table> ',
                '         </td> ',
                '       </tr> ',
                '     </table> '
            );
            
            this.printTemplate = this.printTemplate.compile();
        }
        
        /* prep obj for display */
        
        var dispobj = {};
        function ev(name,value)
        {
            if(value == null) value = "";
            var str1 = "dispobj." + name + "='" + value.replace(/'/g,"\\'") + "';";
            //str1 = str1;
            eval(str1);
        }
        
        
        /*
        var main = this.createElement('table','print-main',this.content);
        
        var tbl = this.createElement('tbody','print-main',main);
        var tr = this.createElement('tr',null,tbl);
        
        var td = this.createElement('td','title-text',tr,"תצוגת הדפסה למודעה");
        td = this.createElement('td','logo',tr);
        
        var img = this.createElement('img',null,td);
        img.dom.src="print/img/logo.gif";
        
        var row1 = this.createElement('tr',null,tbl);
        var allDetail = this.createElement('td',null,row1);
        
        
        
        var detail = this.createElement('table','apt-detail',allDetail);
        var detailbody = this.createElement('tbody',null,detail);
        
        
        
        tr = this.createElement('tr',null,detailbody);
        td = this.createElement('td',null,tr,"פרטי הנכס");
        
        td.dom.colSpan = 2;
        tr = this.createElement('tr',null,detailbody);
        td = this.createElement('td',null,tr,"סוג המודעה:");
        
        */
        var addTypeText;
            
            if(data[index.vAddType] == 'rent')
            {
                addTypeText = 'השכרה';
            }
            else if(data[index.vAddType] == 'sale')
            {
                addTypeText = 'מכירה';
            }
            else if(data[index.vAddType] == 'partners')
            {
                addTypeText = 'שותפים';
            }
            else if(data[index.vAddType] == 'commercial')
            {
                addTypeText = 'עיסקי';
            }
            else if(data[index.vAddType] == 'exchange')
            {
                addTypeText = 'החלפה';
            }
        
        
        ev("type",addTypeText);
        
        ev("assetType",data[index.AssetType]);
        //td = this.createElement('td',null,tr,addTypeText);
        
        //tr = this.createElement('tr',null,detailbody);
        //td = this.createElement('td',null,tr,'סוג הנכס:');
        //td = this.createElement('td',null,tr,data[index.AssetType]);
        
        //tr = this.createElement('tr',null,detailbody);
        //td = this.createElement('td',null,tr,'עיר:');
        //td = this.createElement('td',null,tr,data[index.city]);
        ev("city",data[index.city]);
        ev("street",data[index.Street].replace('\/',' ,'));
        ev("description",data[index.description]);
        //tr = this.createElement('tr',null,detailbody);
        //td = this.createElement('td',null,tr,'רחוב:');
        //td = this.createElement('td',null,tr,data[index.Street].replace('\/',' ,'));
        
        
        if(data[index.Size_value] != 'false')
        {
            //tr = this.createElement('tr',null,detailbody);
            //td = this.createElement('td',null,tr,'גודל:');
            //td = this.createElement('td',null,tr,data[index.Size] + ' מ"ר');
            ev("size",data[index.Size] + ' מ"ר');
        }
        
        ev("floor",data[index.Floor]);
        
        ev("rooms",data[index.RoomNumber]);
        //tr = this.createElement('tr',null,detailbody);
        //td = this.createElement('td',null,tr,'קומה:');
        //td = this.createElement('td',null,tr,data[index.Floor]);
        
        //tr = this.createElement('tr',null,detailbody);
        //td = this.createElement('td',null,tr,'חדרים:');
        //td = this.createElement('td',null,tr,data[index.RoomNumber]);
        
        //var adetail = this.createElement('table','apt-adetail',allDetail);
        
        //var adetailbody = this.createElement('tbody',null,adetail);
        
        var aptPropertis = new Array();
        
            if (data[index['Elevator_value']] == 'true'){aptPropertis[0] = 'yes';}else{aptPropertis[0] = 'no';} ; //מעלית
            if (data[index['AirCond_value']] == "true" ){aptPropertis[1] = 'yes';}else{aptPropertis[1] = 'no';} ; //מיזוג
            if (data[index['Parking_value']] == "true" ){aptPropertis[2] = 'yes';}else{aptPropertis[2] = 'no';} ; //חניה
            if (data[index['Bars_value']] == 'true'){aptPropertis[3] = 'yes';}else{aptPropertis[3] = 'no';} ; //סורגים
            if (data[index['Furnished_value']] == 'true' ){aptPropertis[4] = 'yes';}else{aptPropertis[4] = 'no';} ; //ריהוט
            if (data[index['GoodForPartners_value']] == 'true'){aptPropertis[5] = 'yes';}else{aptPropertis[5] = 'no';} ; //מתאים לשותפים
            if (data[index['HandicapAccess_value']] == 'true'){aptPropertis[6] = 'yes';}else{aptPropertis[6] = 'no';} ; //גישה לנכים
            if (data[index['Refurbished_value']] == 'true'){aptPropertis[7] = 'yes';}else{aptPropertis[7] = 'no';} ; //משופצת
            if (data[index['VernadaNo_value']] == 'true'){aptPropertis[8] = 'yes';}else{aptPropertis[8] = 'no';} ; //מרפסת
            if (data[index['vTivuch']] == 'true'){aptPropertis[9] = 'yes';}else{aptPropertis[9] = 'no';} ; //מתיווח
      
        ev("elivaitor",aptPropertis[0]);
        ev("parking",aptPropertis[2]);
        ev("aircon",aptPropertis[1]);
        ev("bars",aptPropertis[3]);
        ev("furniture",aptPropertis[4]);
        ev("balcony",aptPropertis[8]);
        ev("refurb",aptPropertis[7]);
        ev("roomis",aptPropertis[5]);
        ev("handicapt",aptPropertis[6]);
        ev("arbitration",aptPropertis[9]);
        
        /*
        tr = this.createElement('tr',null,adetailbody);
        td = this.createElement('td',null,tr,'פרטים נוספים:');
        td.dom.colSpan = 2;
        tr = this.createElement('tr',null,adetailbody);
        td = this.createElement('td',aptPropertis[0],tr,'מעלית');
        
        td = this.createElement('td',aptPropertis[0],tr);
        td.dom.style.width = "20px";
        var img = this.createElement('img','print-yes-no',td);
        img.dom.src="print/img/"+aptPropertis[0]+".png";
        
        tr = this.createElement('tr',null,adetailbody);
        td = this.createElement('td',aptPropertis[2],tr,'חנייה');
        
        td = this.createElement('td',aptPropertis[0],tr);
        td.dom.style.width = "20px";
        var img = this.createElement('img','print-yes-no',td);
        img.dom.src="print/img/"+aptPropertis[2]+".png";
        
        
        tr = this.createElement('tr',null,adetailbody);
        td = this.createElement('td',aptPropertis[1],tr,'מזגן');
        
        
        td = this.createElement('td',aptPropertis[0],tr);
        td.dom.style.width = "20px";
        var img = this.createElement('img','print-yes-no',td);
        img.dom.src="print/img/"+aptPropertis[1]+".png";
        
        
        tr = this.createElement('tr',null,adetailbody);
        td = this.createElement('td',aptPropertis[3],tr,'סורגים');
        
        
        td = this.createElement('td',aptPropertis[0],tr);
        td.dom.style.width = "20px";
        var img = this.createElement('img','print-yes-no',td);
        img.dom.src="print/img/"+aptPropertis[3]+".png";
        
        
        tr = this.createElement('tr',null,adetailbody);
        td = this.createElement('td',aptPropertis[4],tr,'ריהוט');
        
        
        td = this.createElement('td',aptPropertis[0],tr);
        td.dom.style.width = "20px";
        var img = this.createElement('img','print-yes-no',td);
        img.dom.src="print/img/"+aptPropertis[4]+".png";
        
        
        tr = this.createElement('tr',null,adetailbody);
        td = this.createElement('td',aptPropertis[8],tr,'מרפסת');
        
        td = this.createElement('td',aptPropertis[0],tr);
        td.dom.style.width = "20px";
        var img = this.createElement('img','print-yes-no',td);
        img.dom.src="print/img/"+aptPropertis[8]+".png";
        
        
        
        tr = this.createElement('tr',null,adetailbody);
        td = this.createElement('td',aptPropertis[7],tr,'משופצת');
        
        
        td = this.createElement('td',aptPropertis[0],tr);
        td.dom.style.width = "20px";
        var img = this.createElement('img','print-yes-no',td);
        img.dom.src="print/img/"+aptPropertis[7]+".png";
        
        
        tr = this.createElement('tr',null,adetailbody);
        td = this.createElement('td',aptPropertis[5],tr,'מתאים לשותפים');
        
        td = this.createElement('td',aptPropertis[0],tr);
        td.dom.style.width = "20px";
        var img = this.createElement('img','print-yes-no',td);
        img.dom.src="print/img/"+aptPropertis[5]+".png";
        
        
        tr = this.createElement('tr',null,adetailbody);
        td = this.createElement('td',aptPropertis[6],tr,'גישה לנכים');
        
        td.dom.style.width = "215px";
        td = this.createElement('td',aptPropertis[0],tr);
        td.dom.style.width = "20px";
        var img = this.createElement('img','print-yes-no',td);
        img.dom.src="print/img/"+aptPropertis[6]+".png";
        
        
        tr = this.createElement('tr',null,adetailbody);
        td = this.createElement('td',aptPropertis[9],tr,'מתיווך');
        
        
        td = this.createElement('td',aptPropertis[0],tr);
        td.dom.style.width = "20px";
        var img = this.createElement('img','print-yes-no',td);
        img.dom.src="print/img/"+aptPropertis[9]+".png";
        
        */
        
        var lastUpdate = "";
            
            if(!isNaN( data[index['vAge']]))
            {
                if( ( data[index['vAge']] *1 ) > 0  )
                {
                    lastUpdate = " לפני " + (data[index['vAge']] *1) + " ימים";
                }
                else if( ( data[index['vAge']]*1 ) == 0  )
                {
                    lastUpdate = " בשעה האחרונה" 
                }
                else
                {
                    lastUpdate = " לפני " + (data[index['vAge']] *-1) + " שעות";
                }
                //tr = this.createElement('tr',null,adetailbody);
                //td = this.createElement('td',null,tr,'עדכון אחרון: ' + lastUpdate );
                //td.dom.colSpan = 2;
                //td = this.createElement('td',null,tr,lastUpdate);
            }
            //data[index.vUpdateDate]
            var t = new Date(data[index.vUpdateDate]);
            
        ev("update",t.format("d/m/y"));
        ev("edate",data[index.EntryWhen]);
        //tr = this.createElement('tr',null,adetailbody);
        //td = this.createElement('td',null,tr,'תאריך כניסה: ' + data[index.EntryWhen] );
        //td.dom.colSpan = 2;
        //td = this.createElement('td',null,tr,data[index.EntryWhen]);
        
        
        /*
        var contactDetailAndDistance = this.createElement('td',null,row1);
        
        var contactDetail = this.createElement('table','contact',contactDetailAndDistance);
        
        var contactDetailBody = this.createElement('tbody',null,contactDetail);
        
        
        tr = this.createElement('tr',null,contactDetailBody);
        td = this.createElement('td',null,tr,'מחיר ופרטי התקשרות');
        td.dom.colSpan=2;
        
        tr = this.createElement('tr',null,contactDetailBody);
        td = this.createElement('td',null,tr,'מחיר:');
        td.dom.style.width = "100px";
        */
        
        ev("price",((data[index.ShekelRent] * 1 ) < 100 ? 'לא צויין' :  ( Ext.util.Format.usMoney(  data[index['ShekelRent']]).replace('$','₪').replace('.00','')  ) )    );
        
        //td = this.createElement('td',null,tr, ((data[index.ShekelRent] * 1 ) < 100 ? 'לא צויין' :  ( Ext.util.Format.usMoney(  data[index['ShekelRent']]).replace('$','₪').replace('.00','')  ) )    );
        
        /*
        if(!isNaN(data[index['vPriceAvg']]))
        if((data[index['vPriceAvg']] *1)  > 0 )
        {
            tr = this.createElement('tr',null,contactDetailBody);
            td = this.createElement('td',null,tr,'מחיר ממוצע לאיזור:');
            td = this.createElement('td',null,tr, Ext.util.Format.usMoney(  data[index['vPriceAvg']]).replace('$','₪').replace('.00','') );
        } 
        */
        
        ev("contact", data[index.Contact]);
        
        //tr = this.createElement('tr',null,contactDetailBody);
        //td = this.createElement('td',null,tr,'איש קשר:');
        //td = this.createElement('td',null,tr,data[index.Contact]);
        
        //tr = this.createElement('tr',null,contactDetailBody);
        //td = this.createElement('td',null,tr,'טלפון:');
        var phonetxt = (data[index.PhoneA] == "" ? '' : data[index.PhoneA] )
        if(phonetxt != "" && data[index.PhoneB] != "" )
            phonetxt+=" ,";
        phonetxt+=(data[index.PhoneB] == "" ? '' : data[index.PhoneB]);
        
        ev("phones",phonetxt);
        //td = this.createElement('td',null,tr,phonetxt);
        
        
        //var iframe = this.createElement('iframe','distance',contactDetailAndDistance)
        //  //http://localhost:8070/print/distance.aspx?x=183856.296641379&y=663756.398768295&id=4
        
        ev("url",hosturl +"print/distance.aspx?x=" + data[index.x] + "\&y=" + data[index.y] + "\&id=" +data[index.id]);
        
        
        //iframe.dom.src=hosturl +"print/distance.aspx?x=" + data[index.x] + "\&y=" + data[index.y] + "\&id=" +data[index.id];
        //iframe.dom.scrolling = "no";
        
        /*
        var tr = this.createElement('tr',null,tbl);
        var td = this.createElement('td',null,tr);
        td.dom.colSpan = 2;
        var info = "";
        for(var i=0; i<this.mapIndex.length;i++)
        {
            if(info != "") info+=" ,";
            info+= "<b>(" +  ( (i*1) +1) + ")</b>" + this.mapIndex[i] + " ";
        }
        td.dom.innerHTML = "<b> מקרא: </b> <br>" + info;
        
        //
        */
        
        
        //this.content
        this.printTemplate.append(this.content,dispobj);
        
    },
    clear:function(){
        for(var i=0;i<this.elArray.length;i++)
        {
            this.elArray[i].removeAllListeners();
            this.elArray[i].remove();
            this.elArray[i] = null;
        }
        this.elArray = new Array();
        this.createBox();
    },
    createBox : function()
    {
        var div = this.createElement('div','print-box',this.target);
        this.createElement('div','title-left',div);
        this.title = this.createElement('div','title-middel',div);
        
        this.closeBtn = this.createElement('div','titleText-right',this.title,'סגור | X');
        this.closeBtn.on('click',this.hide,this);
        this.printBtn = this.createElement('div','titleText-left',this.title,'הדפס');
        this.printBtn.on('click',this.print,this);
        this.createElement('div','title-right',div);
        this.content = this.createElement('div','print-content',div);
        this.createElement('div','buttom-left',div);
        this.createElement('div','buttom-middel',div);
        this.createElement('div','buttom-right',div);
    },
    show : function(){
        this.target.dom.style.display ='block';
        this.target.fadeIn({endOpacity: 1,easing: 'easeIn',duration: .5,useDisplay: true});        
    },
    hide : function(){
        this.target.fadeOut({endOpacity: .7,easing: 'easeOut',duration: .4,remove: false,useDisplay: true});
        
    },
    print : function(){
          var content= this.head + this.content.dom.innerHTML + this.end;
          var pwin=window.open('','print_content','width=820,height=620,resizable=1,scrollbars=1');

          if(pwin && pwin.top)
          {
            pwin.document.open();
            pwin.document.write(content);
            pwin.document.close();
            pageTracker._trackPageview("/print_add");
            
          }
          else
          {
            alert('על מנת לראות את חלון ההדפסה יש לבטל את חוסם החלונות הקופצים  (Popup Blocker)');
          }
    },
    createElement : function(type,style,target,text)
    {
        var el = Ext.get(document.createElement(type));
        if(style)
            el.dom.className = style;
        if(target)
            el.appendTo(target);
        this.elArray[this.elArray.length] = el;
        if(text)
            el.dom.innerHTML = text;
        return el;
    },
    createHead : function(){
        this.head = "";
        this.head+="<html>";
        this.head+="<meta http-equiv=\"content-type\" content=\"text/html; charset=windows-1255\">";
        this.head+="    <title> זזים - לוח הנדל\"ן המקיף במדינה. דירות ובתים להשכרה ולמכירה. תצוגת הדפסה</title>";
        this.head+="<link rel=\"stylesheet\" type=\"text/css\" href=\"print/print.css\" />";
        this.head+="<link rel=\"stylesheet\" type=\"text/css\" media=\"print\" href=\"print/printer.css\" />";
        //this.head+="<script>var time;function printadds() { window.print();}</script>"
        this.head+="<body >";
        //this.head+= "<input type=\"button\" onclick=\"printadds();\" value = \"הדפס\" /> ";
        this.head+="";
        //window.print()
    },
    createEnd : function(){
        //this.end = "<input type=\"button\" onclick=\"printadds();\" value = \"הדפס\" /> ";
        //this.end = "<script> debugger; </script>";
        this.end="</body></html>";
    }
    
};