added lastUpdated and version to Matrix compare screen
This commit is contained in:
parent
6061dbf1b3
commit
5edad76d21
3 changed files with 26 additions and 7 deletions
|
|
@ -1021,6 +1021,7 @@ sub www_getCompareListData {
|
|||
my $self = shift;
|
||||
my @listingIds = @_;
|
||||
my $session = $self->session;
|
||||
my $i18n = WebGUI::International->new($session,'Asset_Matrix');
|
||||
my (@results,@columnDefs);
|
||||
|
||||
unless (scalar(@listingIds)) {
|
||||
|
|
@ -1034,10 +1035,16 @@ sub www_getCompareListData {
|
|||
$listing->incrementCounter("compares");
|
||||
my $listingId_safe = $listingId;
|
||||
$listingId_safe =~ s/-/_____/g;
|
||||
push(@columnDefs,{key=>$listingId_safe,label=>$listing->get('title'),formatter=>"formatColors",
|
||||
url=>$listing->getUrl});
|
||||
push(@columnDefs,{
|
||||
key =>$listingId_safe,
|
||||
label =>$listing->get('title').' '.$listing->get('version'),
|
||||
formatter =>"formatColors",
|
||||
url =>$listing->getUrl,
|
||||
lastUpdated =>$session->datetime->epochToHuman( $listing->get('revisonDate'),"%z" ),
|
||||
});
|
||||
}
|
||||
|
||||
push(@results,{name=>$i18n->get('last updated label'),fieldType=>'lastUpdated'});
|
||||
|
||||
my $jsonOutput;
|
||||
$jsonOutput->{ColumnDefs} = \@columnDefs;
|
||||
|
||||
|
|
@ -1061,10 +1068,16 @@ sub www_getCompareListData {
|
|||
}
|
||||
foreach my $result (@results){
|
||||
if($result->{fieldType} eq 'category'){
|
||||
# Row starting with a category label shows the listing name in each column
|
||||
foreach my $columnDef (@columnDefs) {
|
||||
$result->{$columnDef->{key}} = $columnDef->{label};
|
||||
}
|
||||
}
|
||||
elsif($result->{fieldType} eq 'lastUpdated'){
|
||||
foreach my $columnDef (@columnDefs) {
|
||||
$result->{$columnDef->{key}} = $columnDef->{lastUpdated};
|
||||
}
|
||||
}
|
||||
else{
|
||||
foreach my $listingId (@listingIds) {
|
||||
$result->{attributeId} =~ s/-/_____/g;
|
||||
|
|
|
|||
|
|
@ -927,6 +927,12 @@ selectBox.</p>|
|
|||
message => q|Compare|,
|
||||
},
|
||||
|
||||
'last updated label' => {
|
||||
lastUpdated => 0,
|
||||
message => q|Last Updated|,
|
||||
context => q|The label of the last updated field in the comparison table on the compare screen.|,
|
||||
},
|
||||
|
||||
'hide stickied button label' => {
|
||||
lastUpdated => 0,
|
||||
message => q|Hide/show stickied|,
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ YAHOO.util.Event.addListener(window, "load", function() {
|
|||
var hideStickies = 0;
|
||||
|
||||
this.formatStickied = function(elCell, oRecord, oColumn, sData) {
|
||||
if(oRecord.getData("fieldType") != 'category'){
|
||||
if(!(oRecord.getData("fieldType") in {'category':'','lastUpdated':''})){
|
||||
var innerHTML = "<input type='checkBox' class='stickieCheckbox' id='" + oRecord.getData("attributeId") + "_stickied' name='" + oRecord.getData("attributeId") + "' onChange='setStickied(this)'";
|
||||
if(typeof(oRecord.getData("checked")) != 'undefined' && oRecord.getData("checked") == 'checked'){
|
||||
innerHTML = innerHTML + " checked='checked'";
|
||||
|
|
@ -15,7 +15,7 @@ YAHOO.util.Event.addListener(window, "load", function() {
|
|||
};
|
||||
|
||||
this.formatColors = function(elCell, oRecord, oColumn, sData) {
|
||||
if(oRecord.getData("fieldType") != 'category'){
|
||||
if(!(oRecord.getData("fieldType") in {'category':'','lastUpdated':''})){
|
||||
var colorField = oColumn.key + "_compareColor";
|
||||
var color = oRecord.getData(colorField);
|
||||
if(color){
|
||||
|
|
@ -157,7 +157,7 @@ YAHOO.util.Event.addListener(window, "load", function() {
|
|||
if(hideStickies == 0){
|
||||
// hide non-selected attributes
|
||||
for(i=0; i<elements.length; i++){
|
||||
if(elements[i].getData('fieldType') != 'category'){
|
||||
if(!(elements[i].getData('fieldType') in {'category':'','lastUpdated':''})){
|
||||
var attributeId = elements[i].getData('attributeId');
|
||||
var checkBox = Dom.get(attributeId+"_stickied");
|
||||
if (checkBox.checked == false){
|
||||
|
|
@ -170,7 +170,7 @@ YAHOO.util.Event.addListener(window, "load", function() {
|
|||
}else{
|
||||
// show all attributes
|
||||
for(i=0; i<elements.length; i++){
|
||||
if(elements[i].getData('fieldType') != 'category'){
|
||||
if(!(elements[i].getData('fieldType') in {'category':'','lastUpdated':''})){
|
||||
var attributeId = elements[i].getData('attributeId');
|
||||
var checkBox = Dom.get(attributeId+"_stickied");
|
||||
if (checkBox.checked == false){
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue