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 000000000..cd56b7b23
Binary files /dev/null and b/docs/upgrades/packages-7.7.5/matrix-default-compare-template.wgpkg differ
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);