added tooltips to Matrix attributes

This commit is contained in:
Yung Han Khoe 2008-12-11 14:55:22 +00:00
parent 9f58115cac
commit 040da6f327
3 changed files with 23 additions and 8 deletions

View file

@ -664,6 +664,10 @@ sub www_compare {
'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 =>
'text/javascript'});
$self->session->style->setLink($self->session->url->extras('hoverhelp.css'),
{type =>'text/css', rel=>'stylesheet'});
my $maxComparisons;
if($self->session->user->isVisitor){
@ -681,7 +685,7 @@ sub www_compare {
$var->{javascript} = "<script type='text/javascript'>\n".
'var listingIds = new Array('.join(", ",map {'"'.$_.'"'} @listingIds).");\n".
'var responseFields = new Array("attributeId", "name", "fieldType", "checked", '.join(", ",map {'"'.$_.'"'} @responseFields).");\n".
'var responseFields = new Array("attributeId", "name", "description","fieldType", "checked", '.join(", ",map {'"'.$_.'"'} @responseFields).");\n".
"var maxComparisons = ".$maxComparisons.";\n".
"var matrixUrl = '".$self->getUrl."';\n".
"</script>";
@ -1038,7 +1042,7 @@ sub www_getCompareListData {
foreach my $category (keys %{$self->getCategories}) {
push(@results,{name=>$category,fieldType=>'category'});
my $fields = " a.name, a.fieldType, a.attributeId ";
my $fields = " a.name, a.fieldType, a.attributeId, a.description ";
my $from = "from Matrix_attribute a";
my $tableCount = "b";
foreach my $listingId (@listingIds) {

View file

@ -28,7 +28,7 @@ YAHOO.util.Event.addListener(window, "load", function() {
if(oRecord.getData("fieldType") == 'category'){
elCell.innerHTML = "<b>" +sData + "</b>";
}else{
elCell.innerHTML = sData;
elCell.innerHTML = sData + "<div class='wg-hoverhelp'>" + oRecord.getData("description") +"</div>";
}
};
@ -52,8 +52,14 @@ YAHOO.util.Event.addListener(window, "load", function() {
uri = uri+';listingId='+listingIds[i];
}
var initAttributeHoverHelp = function() {
initHoverHelp('compareList');
}
var myDataTable = new YAHOO.widget.DataTable("compareList", myColumnDefs,
this.myDataSource, {initialRequest:uri});
myDataTable.subscribe("initEvent", initAttributeHoverHelp);
window.removeListing = function(key) {
myDataTable.hideColumn(myDataTable.removeColumn(key));
@ -83,8 +89,9 @@ YAHOO.util.Event.addListener(window, "load", function() {
}
var myCallback = function() {
this.set("sortedBy", null);
this.onDataReturnAppendRows.apply(this,arguments);
this.set("sortedBy", null);
this.onDataReturnAppendRows.apply(this,arguments);
initHoverHelp('compareList');
};
var callback2 = {
@ -170,7 +177,6 @@ YAHOO.util.Event.addListener(window, "load", function() {
hideStickies = 0;
}
},this,true);
};
});

View file

@ -17,7 +17,7 @@ YAHOO.util.Event.addListener(window, "load", function() {
if(oRecord.getData("fieldType") == 'category'){
elCell.innerHTML = "<b>" +sData + "</b>";
}else{
elCell.innerHTML = sData;
elCell.innerHTML = sData + "<div class='wg-hoverhelp'>" + oRecord.getData("description") +"</div>";
}
};
@ -32,13 +32,18 @@ YAHOO.util.Event.addListener(window, "load", function() {
this.myDataSource.connXhrMode = "queueRequests";
this.myDataSource.responseSchema = {
resultsList: "ResultSet.Result",
fields: ["label","value","attributeId","fieldType","checked"]
fields: ["label","value","attributeId","fieldType","checked","description"]
};
var uri = "func=getAttributes";
var initAttributeHoverHelp = function() {
initHoverHelp('attributes');
}
var myDataTable = new YAHOO.widget.DataTable("attributes", myColumnDefs,
this.myDataSource, {initialRequest:uri});
myDataTable.subscribe("initEvent", initAttributeHoverHelp);
this.myDataSource.doBeforeParseData = function (oRequest, oFullResponse) {