dorowaction=true;
expand_row_cache=new Array();
function table_click_select(tablekey, elementid, oddrow){
if (dorowaction==false) { dorowaction=true; return false; }
table_row_select(tablekey, elementid, oddrow);}
function table_click_expand(tablekey, elementid, multiexpand){
if (dorowaction==false) { dorowaction=true; return false; }
currelementlist=sei_get_action("table", tablekey, "expandlist");
if (!sei_elementlist_check(currelementlist,elementid))
table_row_open(tablekey, elementid, multiexpand);
else
table_row_close(tablekey, elementid, multiexpand);}
function table_get_selected(tablekey){
return sei_get_action("table", tablekey, "selected");}
function table_update_selected(tablekey){
currelementlist=sei_get_action("table", tablekey, "selected");
checkboxlist = sei_get_layer_list(document.documentElement,tablekey+"_element_*");
checkboxarray = checkboxlist.split(",");
for(checkboxid in checkboxarray){
checkboxname = checkboxarray[checkboxid];
elementid = checkboxname.substr((tablekey+"_element_").length,checkboxname.length);
if (elementid.indexOf("_")>0)
elementid = elementid.substr(0,elementid.indexOf("_"));
if (document.getElementById(checkboxname).type=="checkbox" && elementid==Number(elementid)){
if (document.getElementById(checkboxname).checked!=sei_elementlist_check(currelementlist,elementid))
table_row_select(tablekey,elementid);}}
if (elementlist>"")
sei_generate_action("table", tablekey, "selected="+elementlist);
else
sei_generate_action("table", tablekey, "selected=null");}
function table_check_selected(tablekey, elementid){
currelementlist=sei_get_action("table", tablekey, "selected");
return sei_elementlist_check(currelementlist,elementid);}
function table_set_selected(tablekey, elementlist){
if (elementlist>"")
sei_generate_action("table", tablekey, "selected="+elementlist);
else
sei_generate_action("table", tablekey, "selected=null");}
function table_row_select(tablekey, elementid, oddrow){
if (dorowaction==false) { dorowaction=true; return false; }
oldelementid=elementid;
currelementlist=sei_get_action("table", tablekey, "selected");
doselect = sei_elementlist_check(currelementlist,elementid)==false;
if (element_setting_check("table_"+tablekey,"allowmultiselect") && element_setting_get("table_"+tablekey,"allowmultiselect")==false){
if (currelementlist){
elementarray=currelementlist.split(",");
for (elementarrayid in elementarray){
if (elementarray[elementarrayid]!=elementid){
if (document.getElementById(tablekey+"_element_"+elementarray[elementarrayid]+"_check_open")!=null)
document.getElementById(tablekey+"_element_"+elementarray[elementarrayid]+"_check_open").checked=false;
if (document.getElementById(tablekey+"_element_"+elementarray[elementarrayid]+"_check_close")!=null)
document.getElementById(tablekey+"_element_"+elementarray[elementarrayid]+"_check_close").checked=false;
if (document.getElementById(tablekey+"_element_"+elementarray[elementarrayid]+"_check")!=null)
document.getElementById(tablekey+"_element_"+elementarray[elementarrayid]+"_check").checked=false;
currelementlist=sei_elementlist_del(currelementlist,elementarray[elementarrayid]);
sei_generate_action("table", tablekey, "selected="+elementid);
table_row_color_out(tablekey, elementarray[elementarrayid], oddrow);}}}}
if (doselect){
if (document.getElementById(tablekey+"_element_"+elementid+"_check_open")!=null)
document.getElementById(tablekey+"_element_"+elementid+"_check_open").checked=true;
if (document.getElementById(tablekey+"_element_"+elementid+"_check_close")!=null)
document.getElementById(tablekey+"_element_"+elementid+"_check_close").checked=true;
if (document.getElementById(tablekey+"_element_"+elementid+"_check")!=null)
document.getElementById(tablekey+"_element_"+elementid+"_check").checked=true;
if (!sei_elementlist_check(currelementlist,elementid))
elementid=sei_elementlist_add(currelementlist,elementid);
else
elementid=currelementlist;}
else{
if (!(element_setting_check("table_"+tablekey,"allowmultiselect") && element_setting_get("table_"+tablekey,"allowmultiselect")==false)){
if (document.getElementById(tablekey+"_element_"+elementid+"_check_open")!=null)
document.getElementById(tablekey+"_element_"+elementid+"_check_open").checked=false;
if (document.getElementById(tablekey+"_element_"+elementid+"_check_close")!=null)
document.getElementById(tablekey+"_element_"+elementid+"_check_close").checked=false;
if (document.getElementById(tablekey+"_element_"+elementid+"_check")!=null)
document.getElementById(tablekey+"_element_"+elementid+"_check").checked=false;
elementid=sei_elementlist_del(currelementlist,elementid);}}
if (elementid>"")
sei_generate_action("table", tablekey, "selected="+elementid);
else
sei_generate_action("table", tablekey, "selected=null");
table_row_color_in(tablekey, oldelementid, oddrow);
if (element_setting_check("table_"+tablekey, "onrowselect"))
eval(element_setting_get("table_"+tablekey, "onrowselect"));}
function table_row_open(tablekey, elementid, multiexpand){
if (dorowaction==false) { dorowaction=true; return false; }
updatemode=element_setting_get("table_"+tablekey, "updatemode");
sei_layer_show(tablekey+"_element_"+elementid+"_open");
sei_layer_hide(tablekey+"_element_"+elementid+"_close");
if (updatemode=="preload")
sei_layer_show(tablekey+"_element_"+elementid+"_expand");
else if (updatemode=="dynamic"){
if (typeof(expand_row_cache[elementid])=="undefined"){
if (sei_layer_exists(tablekey+"_element_"+elementid+"_expand_loading"))
sei_layer_show(tablekey+"_element_"+elementid+"_expand_loading");
reload_url="http://www.innoform-testservice.de/sei_system/components/tables/pages/table_reload.php";
reload_url+="?tablekey="+tablekey+"&elementid="+elementid;
reload_url+="&settings="+element_setting_get("table_"+tablekey, "settings");
sei_reload_jscode(reload_url);}
else
sei_layer_show(tablekey+"_element_"+elementid+"_expand");}
currelementlist=sei_get_action("table", tablekey, "expandlist");
if (multiexpand==true){
if (!sei_elementlist_check(currelementlist,elementid))
elementid=sei_elementlist_add(currelementlist,elementid);
else
elementid=currelementlist;}
else{
if (typeof(currelementlist)!="undefined" && currelementlist!=false && currelementlist!=null){
curridlist=currelementlist.split(",");
for (currid in curridlist){
currelementid = curridlist[currid];
if (currelementid!=elementid){
sei_layer_show(tablekey+"_element_"+currelementid+"_close");
sei_layer_hide(tablekey+"_element_"+currelementid+"_open");
sei_layer_hide(tablekey+"_element_"+currelementid+"_expand");}}}}
sei_generate_action("table", tablekey, "expandlist="+elementid);
if (element_setting_check("table_"+tablekey, "onrowexpand"))
eval(element_setting_get("table_"+tablekey, "onrowexpand"));}
function table_row_close(tablekey, elementid, multiexpand){
if (dorowaction==false) { dorowaction=true; return false; }
sei_layer_show(tablekey+"_element_"+elementid+"_close");
sei_layer_hide(tablekey+"_element_"+elementid+"_open");
sei_layer_hide(tablekey+"_element_"+elementid+"_expand");
expand_row_cache[elementid]="";
if (multiexpand==true){
currelementlist=sei_get_action("table", tablekey, "expandlist");
elementid=sei_elementlist_del(currelementlist,elementid);}
else
elementid="";
if (elementid>"")
sei_generate_action("table", tablekey, "expandlist="+elementid);
else
sei_generate_action("table", tablekey, "expandlist=null");
if (element_setting_check("table_"+tablekey, "onrowexpand"))
eval(element_setting_get("table_"+tablekey, "onrowexpand"));}
function table_row_color_in(tablekey, elementid, oddrow){
currelementlist=sei_get_action("table", tablekey, "selected");
if (sei_elementlist_check(currelementlist,elementid)){
if (oddrow==true){
if (element_setting_get("table_"+tablekey,"color_tablebackactiveoverodd"))
usecolor=element_setting_get("table_"+tablekey,"color_tablebackactiveoverodd");
else
usecolor=element_setting_get("table_"+tablekey,"color_tablebackactiveover");}
else
usecolor=element_setting_get("table_"+tablekey,"color_tablebackactiveover");}
else{
if (oddrow==true){
if (element_setting_get("table_"+tablekey,"color_tablebackoverodd"))
usecolor=element_setting_get("table_"+tablekey,"color_tablebackoverodd");
else
usecolor=element_setting_get("table_"+tablekey,"color_tablebackover");}
else
usecolor=element_setting_get("table_"+tablekey,"color_tablebackover");}
if (sei_layer_exists(tablekey+"_element_"+elementid))
row=tablekey+"_element_"+elementid;
else{
if (sei_layer_exists(tablekey+"_element_"+elementid+"_open") && sei_layer_get_style(tablekey+"_element_"+elementid+"_open", "display")!="none")
row=tablekey+"_element_"+elementid+"_open";
else if (sei_layer_exists(tablekey+"_element_"+elementid+"_close") && sei_layer_get_style(tablekey+"_element_"+elementid+"_close", "display")!="none")
row=tablekey+"_element_"+elementid+"_close";}
if (typeof(row)!="undefined")
sei_layer_set_style(row, "background-color", usecolor);
return true;}
function table_row_color_out(tablekey, elementid, oddrow){
currelementlist=sei_get_action("table", tablekey, "selected");
if (sei_elementlist_check(currelementlist,elementid)){
if (oddrow==true){
if (element_setting_get("table_"+tablekey,"color_tablebackactiveodd"))
usecolor=element_setting_get("table_"+tablekey,"color_tablebackactiveodd");
else
usecolor=element_setting_get("table_"+tablekey,"color_tablebackactive");}
else
usecolor=element_setting_get("table_"+tablekey,"color_tablebackactive");}
else{
if (oddrow==true){
if (element_setting_get("table_"+tablekey,"color_tablebackodd"))
usecolor=element_setting_get("table_"+tablekey,"color_tablebackodd");
else
usecolor=element_setting_get("table_"+tablekey,"color_tableback");}
else
usecolor=element_setting_get("table_"+tablekey,"color_tableback");}
if (sei_layer_exists(tablekey+"_element_"+elementid))
row=tablekey+"_element_"+elementid;
else{
if (sei_layer_exists(tablekey+"_element_"+elementid+"_open") && sei_layer_get_style(tablekey+"_element_"+elementid+"_open", "display")!="none")
row=tablekey+"_element_"+elementid+"_open";
else if (sei_layer_exists(tablekey+"_element_"+elementid+"_close") && sei_layer_get_style(tablekey+"_element_"+elementid+"_close", "display")!="none")
row=tablekey+"_element_"+elementid+"_close";}
if (typeof(row)!="undefined")
sei_layer_set_style(row, "background-color", usecolor);
return true;}
function table_row_action_avoid(){
dorowaction=false;}
