From 1b2e327ce757416b741683e9d2a293dc89db7a15 Mon Sep 17 00:00:00 2001 From: Yung Han Khoe Date: Tue, 28 Apr 2009 18:49:20 +0000 Subject: [PATCH] fixing an IE javascript error on Matrix compare screen --- .../matrix-default-compare-template.wgpkg | Bin 0 -> 1471 bytes lib/WebGUI/Asset/Wobject/Matrix.pm | 4 +- .../wobject/Matrix/matrixCompareList.js | 65 ++++++++++++++++++ 3 files changed, 67 insertions(+), 2 deletions(-) create mode 100644 docs/upgrades/packages-7.7.5/matrix-default-compare-template.wgpkg diff --git a/docs/upgrades/packages-7.7.5/matrix-default-compare-template.wgpkg b/docs/upgrades/packages-7.7.5/matrix-default-compare-template.wgpkg new file mode 100644 index 0000000000000000000000000000000000000000..cd56b7b23545483f2aa0e31ef7db3f36a0f054b3 GIT binary patch literal 1471 zcmV;w1wi^AiwFP!00000|Ls_9Pa8Q9&gcFLH_|B}b=hoQNJ&$4w1p!&s8E4Jy7D4t z*CZ|*duw|M>8bzy#`bQ!$%b;}rP4|4hmhFgnP;AP*)eOCr+@18dZ*p4RN!x*|28}J zL9?e`34);0UT@dy>-7o>>OrerK_L3{Pbw7_0Bu4B!<63N9ykY&ank&~zouV$(x499 zXTyB02Wwv>XODygRIayLx5Xcf2aEA?%JXQSHo*w#RSor4!6k$~=F7S|4 zQ5Stadu5gq!4o1BB~q^%F)bMif)$D0P4#NESvA6XBgRr~-y~eX?v^>j(m0-NLzO9` zznY|jn931}+*w8@CzM5eVwBe1hMY22<=fNh`L^DdE7O$vgOtXRA9AKJ1${o2k|^mG)eu@S!}VnpKPUK(X6Xrho5;T`yAo_J%*pn?tdBG51R8e46r z)yG{FO`{`I_R`3wbPmPM-;t31~Tz zhLGRsSSK?|MZ9u8=Yh3sBMA)anEOVPIcI*q^t{jX67{#wGIDk1+|!Up$!)fJFFz9& z(aST>o7r~7W3oA`4~toili2om^Vx8+;H9Y}E9XVz5~r~OUdIU*#8U)L>H?nCGnKnE ziU?b*SSk+$S6nCE;?_{`H0ej%5mja@DA=DF&|RgM<)X>lnyE0CxHaSHH5N#5zK_{- zpGXP43%y0P^FC8VFsvwNI9{oN1R8?~8e5s#tJ;<>@r!+vi?!7^H50!~+YXuBq3n`O z?$R}1RS~^5c=e>ygCB@SP{WqxJ#wiViAfz;oX|*(x{da4P?|c4^b!4-VQF+5tRxCWrl3I^n6^VxXgUd*Ga#`)uPvPNu8Agm5Q?A5+7aRWO=f~#TewQrJ`D! za{}d5PKI6>L+EF3=Nwk~Xm4=GvH2spRfo-b@re#c<*Hu)aaE6D{5Ya2Cg9Za(x5Pn z-=1~FE@LRrohIkN;yQ%+OA{O}?;VQ;-6%Ash)T$mX_s-P0p_0PR9enW_xMG1Uan!6 zzb?~DKnrb46LCdJ^gws?7z6#=>U!knwMethPdj01!b`iecS}|xdl2kdiMUV|&&?;a z4dYMMzz<8tX)g>7Y(xZA$0FVle0%_t1+$|-VdRHdon%*$s+m%jTuz-vljI-q*bW;f zWbnsvzuPr0`EK{9G_{yp$ommy!`rSf`yA#e$c$`4Y1KDct#+qy&r!Ng&93c==!2b= z(0e;8Ic(Xy^A{!dUej?~RO%@R4>C=G+mTl^`N$Puux)yAh#C`?npW|jAZUM6dkISP zq{xQOk{J&V={M_4<8`~`_F(9PyOl9<3#Z-g?$Q2UnPDpTczCspT`DuC7F{X^#q4ct zbT&5Hokk%m1i7XXrn(RLEi!17Lj$uX4zKd$DUu3zjy}_G4a-Ggi$U(dm=G32>X$-E zSSY56I>>bwkSRROW^AS|Wc!d!4<_^`-gy1zyS-17qb)}&m4{OagYKgL#<%5+*$efu zJTdq1IYNSFv(sueny;NjJ-aiN!P|={{}%R-Lwb^4tLEPx!|jtvRbTeMzxe(b|4Vq* Z@yx(81J4XRGw}am;9t5Cg1rD5004bh)4Tux literal 0 HcmV?d00001 diff --git a/lib/WebGUI/Asset/Wobject/Matrix.pm b/lib/WebGUI/Asset/Wobject/Matrix.pm index eeb8d2ad7..36da074b1 100644 --- a/lib/WebGUI/Asset/Wobject/Matrix.pm +++ b/lib/WebGUI/Asset/Wobject/Matrix.pm @@ -766,10 +766,10 @@ sub www_compare { {type =>'text/javascript'}); $self->session->style->setScript($self->session->url->extras('yui/build/button/button-min.js'), {type =>'text/javascript'}); + $self->session->style->setScript($self->session->url->extras('yui/build/container/container-min.js'), + {type =>'text/javascript'}); $self->session->style->setScript($self->session->url->extras('wobject/Matrix/matrixCompareList.js'), {type => 'text/javascript'}); - $self->session->style->setScript($self->session->url->extras('wobject/Matrix/matrix.js'), {type => - 'text/javascript'}); $self->session->style->setLink($self->session->url->extras('yui/build/datatable/assets/skins/sam/datatable.css'), {type =>'text/css', rel=>'stylesheet'}); $self->session->style->setScript($self->session->url->extras('hoverhelp.js'), {type => diff --git a/www/extras/wobject/Matrix/matrixCompareList.js b/www/extras/wobject/Matrix/matrixCompareList.js index 383b08796..129663807 100644 --- a/www/extras/wobject/Matrix/matrixCompareList.js +++ b/www/extras/wobject/Matrix/matrixCompareList.js @@ -173,6 +173,71 @@ YAHOO.util.Event.addListener(window, "load", function() { }; }); +YAHOO.util.Event.addListener(window, "load", function() { + YAHOO.example.XHR_JSON2 = new function() { + this.formatUrl = function(elCell, oRecord, oColumn, sData) { + elCell.innerHTML = "" + sData + ""; + }; + this.formatCheckBox = function(elCell, oRecord, oColumn, sData) { + var innerHTML = ""; + elCell.innerHTML = innerHTML; + }; + + var myColumnDefs = [ + {key:"assetId",label:"",sortable:false, formatter:this.formatCheckBox}, + {key:"title", label:"", sortable:true, formatter:this.formatUrl}, + {key:"views", sortable:true, sortOptions:{defaultDir:YAHOO.widget.DataTable.CLASS_DESC}}, + {key:"clicks", sortable:true, sortOptions:{defaultDir:YAHOO.widget.DataTable.CLASS_DESC}}, + {key:"compares", sortable:true, sortOptions:{defaultDir:YAHOO.widget.DataTable.CLASS_DESC}}, + {key:"lastUpdated", sortable:true, sortOptions:{defaultDir:YAHOO.widget.DataTable.CLASS_DESC}} + ]; + + var uri = "func=getCompareFormData"; + if(typeof(listingIds) != 'undefined'){ + uri = uri + ';__listingId_isIn=1'; + for (var i = 0; i < listingIds.length; i++) { + uri = uri+';listingId='+listingIds[i]; + } + } + + this.myDataSource = new YAHOO.util.DataSource(matrixUrl + "?"); + this.myDataSource.responseType = YAHOO.util.DataSource.TYPE_JSON; + this.myDataSource.connXhrMode = "queueRequests"; + this.myDataSource.responseSchema = { + resultsList: "ResultSet.Result", + fields: ["title",{key: "views", parser: "number"},{key: "clicks", parser: "number"},{key: "compares", parser: "number"},{key: "checked"},{key: "lastUpdated", parser: "number"},"url","assetId"] + }; + + this.myDataTable = new YAHOO.widget.DataTable("compareForm", myColumnDefs, + this.myDataSource, {initialRequest:uri}); + + this.myDataTable.hideColumn(this.myDataTable.getColumn(2)); + this.myDataTable.hideColumn(this.myDataTable.getColumn(3)); + this.myDataTable.hideColumn(this.myDataTable.getColumn(4)); + this.myDataTable.hideColumn(this.myDataTable.getColumn(5)); + + var myCallback = function() { + this.set("sortedBy", null); + this.onDataReturnAppendRows.apply(this,arguments); + }; + + if(document.getElementById("search")){ + var btnSearch = new YAHOO.widget.Button("search"); + btnSearch.on("click", function(e) { + window.location.href = matrixUrl + '?func=search'; + },this,true); + } + + window.compareDataTable = this.myDataTable; + + }; +}); + + function setStickied (checkbox) { if(checkbox.checked == true){ var request = YAHOO.util.Connect.asyncRequest('POST', "?func=setStickied;attributeId="+checkbox.name);