:: Forum >>

Problem Link/image

Hi,

In my active widget i apply firt an image template that works to the first column (0) and after i apply a link template to the column 2.

But when i apply the link template, it also applies the image template to the column 2 at the same time so i also have the image to the column 2 and i don't want.

Any idéa or help ?

My code :

$html = "<"."script".">\n";
    $html .= $columns;
    $html .= $rows;
    $html .= "try {\n";
    $html .= " var $name = new Active.Controls.Grid;\n";
    $html .= " $name.setRowCount($row_count);\n";
    $html .= " $name.setColumnCount($column_count);\n";
    $html .= " $name.setDataText(function(i, j){return ".$name."_data[i][j]});\n"."";
    $html .= " $name.setColumnText(function(i){return ".$name."_columns[i]});\n";
    $html .= "obj.setDataProperty(\"image\",function(i, j){return ".$name."_data[i][23]});";
    $html .= "obj.setColumnTemplate(new Active.Templates.Image,0);";
    $html .= "obj.setStatusProperty(\"code\", \"loading\");";
    $html.="var link = new Active.Templates.Link;
    link.setAttribute(\"target\",\"principal\");
    link.setAttribute(\"href\",function() { return \"../page_principale.php?page=105&id_livraison=\" + this.getItemProperty(\"value\");});
    obj.setColumnTemplate(link,2);
    ";
    $html .= " document.write($name);\n";
    $html .= "}\n";
    $html .= "catch (error){\n";
    $html .= " document.write(error.description);\n";
    $html .= "}\n";
    $html .="obj.setStatusProperty(\"code\", \"\");obj.refresh();";
    $html .= "</"."script".">\n";



Thanks,

Greg
Greg
Sunday, July 31, 2005
anyone could help me ? :)
Greg
Monday, August 1, 2005
Try this:
replace :
$html .= "obj.setColumnTemplate(new Active.Templates.Image,0);";
with :
$html.="var myimage = new Active.Templates.Image;
.......
obj.setColumnTemplate(myimage ,0);";
Monday, August 1, 2005
it seems not to work since the grid doesnt display at all when i replaced like this :

$html.= "var myimage = new Active.Templates.Image";
    $html .= "obj.setDataProperty(\"image\",function(i, j){return ".$name."_data[i][23]});";
    $html .= "obj.setColumnTemplate(myimage,0)";
    $html .= "obj.setStatusProperty(\"code\", \"loading\");";
    $html.="var link = new Active.Templates.Link;
    link.setAttribute(\"target\",\"principal\");
    link.setAttribute(\"href\",function() { return \"../page_principale.php?page=105&id_livraison=\" + this.getItemProperty(\"value\");});
    obj.setColumnTemplate(link,2);";
Greg
Monday, August 1, 2005
oops sorry that works i forgot a ; but this does the same thing like before (applying the image to the column with the link in addition of the column 0)

Any idea ? because i didn't find
Greg
Monday, August 1, 2005
$html .= "obj.setDataProperty(\"image\",function(i, 0){return ".$name."_data[i][23]});";
// function(i, 0) -- just for zero column

Tuesday, August 2, 2005
This doesnt work it says it is waiting for an object
Greg
Tuesday, August 2, 2005
However, I think the error is in

$html .= "obj.setDataProperty(\"image\",function(i,j){return ".$name."_data[i][23]});";

because when i comment this line :

$html .= "obj.setColumnTemplate(myimage,0)";

The template still applies ( and only applies) to column 2 (the one with the links).

Any other method ?
Greg
Tuesday, August 2, 2005
I found a workaround

$html .= "obj.setDataProperty(\"image\",function(i,j){if(j!=0) return 0; else return ".$name."_data[i][23]});";

thanks anyway;)
Greg
Tuesday, August 2, 2005

This topic is archived.


Back to support forum

Forum search