// ***************************************************************************
// (c) 2004-2007 T S C H E I N I G & P A R T N E R
//               WORKFLOW SOFTWARE CONSULTING GMBH
// ***************************************************************************
// eduVista.js
// ***************************************************************************

var w3c=true;var browser_support=-1;var ua_kq=0;var ua_mo=0;var ua_ms=0;var ua_ne=0;var ua_op=0;var ua=0;var g_final_result=0;var g_reload_time=3000;var g_ext_req_id=0;var g_topics_call=0;var display_tr_auto;var display_div_auto;var first_submit=true;var img_npad_add='/image/mk_pin_off.gif';var img_npad_del='/image/mk_pin_on.gif';var img_empf_add='/image/recommend_add.gif';var img_empf_del='/image/recommend_in.gif';var img_button_minus='/image/button_minus.gif';var img_button_plus='/image/button_plus.gif';var markedClusters=new Array();function check_browser()
{ua=navigator.userAgent;if(ua.indexOf("Konqueror")>0){ua_kq=ua.substr(ua.indexOf("Konqueror")+10,1);return;}
if(ua.indexOf("Opera")>=0){v_start=ua.indexOf("Opera")+6;v_end=ua.indexOf(" ",v_start);if(v_end>0)
ua_op=parseFloat(ua.substr(v_start,v_end-v_start));else
ua_op=parseFloat(ua.substr(v_start));return;}
if(ua.indexOf("MSIE")>0){ua_ms=ua.substr(ua.indexOf("MSIE")+5,1);return;}
if(ua.indexOf("Mozilla/5.")==0){ua_mo=5;return;}
if(ua.indexOf("Mozilla/4.7")==0){ua_ne=4;return;}}
function hasClass(node,className)
{var classes=node.className.split(" ");for(var i=0;i<classes.length;i++)
if(classes[i]==className)
return true;return false;}
function removeClass(node,className)
{if(node.className==null)
return;var alt=node.className.split(" ");var neu=Array();for(var i=0;i<alt.length;i++)
if(alt[i]!=className)
neu[neu.length]=alt[i];node.className=neu.join(" ");}
function addClass(node,className)
{if(!hasClass(node,className))
node.className+=' '+className;}
function cloneNode_Frame2Frame(src)
{ie_dummy=document.createElement(src.nodeName);ie_dummy.innerHTML=src.innerHTML;ie_dummy.id=src.id;ie_dummy.className=src.className;return ie_dummy;}
function query_check()
{var do_submit=first_submit;first_submit=false;return do_submit;}
function npad_del_entry_action(link_id,adjust_sel_cnt,update_nav,new_nav,last_entry,last_id)
{var cnt_node=document.getElementById('mk_cnt').firstChild;var cnt=cnt_node.nodeValue-1;cnt_node.nodeValue=cnt;var txt=(cnt==1)?ext_1_eintr_txt:ext_m_eintr_txt;document.getElementById('mk_cnt_lbl').firstChild.nodeValue=txt;if(adjust_sel_cnt){cnt_node=document.getElementById('mk_cnt_sel').firstChild;cnt=cnt_node.nodeValue-1;cnt_node.nodeValue=cnt;}
var target_id='con'+link_id;if(!document.getElementById(target_id))
return;var container=document.getElementById(target_id).parentNode;if(last_entry){container.appendChild(last_entry);var i=c_ids.length;c_ids[i]=last_id;}
var toplink_ids=new Array();var tli=0;var i;var prev_toplink;for(i=c_ids.length-1;i>=0;i--){if(c_ids[i]>0){toplink_ids[tli]=c_ids[i];tli++;if('con'+c_ids[i]==target_id){toplink=document.getElementById('TL'+c_ids[i]);if(toplink)
prev_toplink=toplink.parentNode.removeChild(toplink);course=document.getElementById(target_id);course.parentNode.removeChild(course);c_ids[i]=-1*c_ids[i];break;}}}
if(prev_toplink){for(tl=toplink_ids.length-2;tl>=0;tl--){toplink=document.getElementById('TL'+toplink_ids[tl]);prev_toplink.id=toplink.id;prev_toplink=toplink.parentNode.replaceChild(prev_toplink,toplink);}}
if(update_nav){if(new_nav){var new_nav2=new_nav.cloneNode(true);new_nav2.id='nav_2';var old_nav=document.getElementById('nav_1');old_nav.parentNode.replaceChild(new_nav,old_nav);old_nav=document.getElementById('nav_2');old_nav.parentNode.replaceChild(new_nav2,old_nav);}
else{var nav=document.getElementById('nav_1');if(nav)
nav.parentNode.removeChild(nav);nav=document.getElementById('nav_2');if(nav)
nav.parentNode.removeChild(nav);}}}
function res_npad_action(link_id,action)
{var link=document.getElementById('RES_'+link_id).href;var param_offset=link.indexOf("?");var address=link.substr(0,param_offset+1);var param=link.substr(param_offset+1);var new_param=null;var action_offset=param.indexOf('action=add_mk');if(action_offset>=0)
new_param=param.replace(/action=add_mk/,'action=del_mk');else{action_offset=param.indexOf('action=del_mk');if(action_offset>=0)
new_param=param.replace(/action=del_mk/,'action=add_mk');else
return;}
document.getElementById('RES_'+link_id).href=address+new_param;var npad_button=document.getElementById('npad_act'+link_id);if(npad_button){if(action=='del_mk'){npad_button.src=img_npad_add;npad_button.title=ext_add_mk_txt;if(document.getElementById('TB_'+link_id))
document.getElementById('TB_'+link_id).className='result_data';}
else{npad_button.src=img_npad_del;npad_button.title=ext_del_mk_txt;if(document.getElementById('TB_'+link_id))
document.getElementById('TB_'+link_id).className='result_data_npad';}}}
function check_npad_response()
{if(browser_support==-1)
check_browser_support();if(!browser_support)
return;var npad_iframe=document.getElementById('npad_com');var npad_doc=null;if(ua_ms>=5)
npad_doc=npad_com.document;else
npad_doc=npad_iframe.contentDocument;if(!npad_doc)
return;if(npad_doc.getElementById('dyn_npad_success').childNodes[0].nodeValue=='-1'){alert(ext_cookie_err_txt);}
if(npad_doc.getElementById('dyn_npad_success').childNodes[0].nodeValue=='1'){var npad_id=npad_doc.getElementById('dyn_npad_id').childNodes[0].nodeValue;var action=npad_doc.getElementById('dyn_npad_action').childNodes[0].nodeValue;if(action=='npad_del_entry'){if(!document.getElementById('con'+npad_id))
return;var container=document.getElementById('con'+npad_id).parentNode;var adjust_sel_cnt=false;var update_nav=false;var new_nav=null;var last_entry;var last_id;adjust_sel_cnt=(npad_doc.getElementById('adjust_sel_cnt')!=null)?true:false;var new_nav_parent=npad_doc.getElementById('new_nav');if(new_nav_parent){update_nav=true;new_nav=new_nav_parent.firstChild;}
if((new_nav)&&((ua_ms>0)||(ua_op>0)))
new_nav=cloneNode_Frame2Frame(new_nav);if(npad_doc.getElementById('dyn_last_entry_id')){last_id=npad_doc.getElementById('dyn_last_entry_id').childNodes[0].nodeValue;last_entry=npad_doc.getElementById('con'+last_id);if(typeof window.npad_pre_remove=='function'){last_entry=npad_pre_remove(last_entry,last_id);}
else{if((ua_ms>0)||(ua_op>0))
last_entry=cloneNode_Frame2Frame(last_entry);}}
npad_del_entry_action(npad_id,adjust_sel_cnt,update_nav,new_nav,last_entry,last_id);if(typeof window.npad_post_remove=='function')
npad_post_remove(npad_doc,container,npad_id,last_id);return;}
res_npad_action(npad_id,action);}}
function link_npad_action(link_obj,link_id)
{if(!browser_support)
return true;var npad_iframe=document.getElementById('npad_com');if(!npad_iframe)
return true;var container=document.getElementById('res_container');var first_entry=document.getElementById('con'+link_id.substr(4));var childs=container.childNodes;var last_entry=childs[childs.length-1];var follow_link=(container.firstChild==first_entry&&first_entry==last_entry)?true:false;var link=link_obj.href;var param_offset=link.indexOf("?");var param=link.substr(param_offset+1);param='nocache='+Math.floor(Math.random()*1000)+'&'+param;set_onload(npad_iframe,check_npad_response);var action;if(param.indexOf('action=del_mk')>=0){npad_iframe.src='/main/eduvista.php?iframe=npad_del&'+param;action='del_mk';}
else if(param.indexOf('action=add_mk')>=0){npad_iframe.src='/main/eduvista.php?iframe=npad_add&'+param;action='add_mk';}
else{if(follow_link)
return true;npad_iframe.src='/main/eduvista.php?iframe=npad_del_entry&'+param;}
if(typeof window.post_link_npad_action=='function')
post_link_npad_action(link_id.substr(4),action);return false;}
function do_cluster_action(node)
{var i;for(i=0;i<markedClusters.length;i++)
removeClass(document.getElementById('CL_'+markedClusters[i]),'mark');markedClusters=new Array();while(node!=null){var id=node.firstChild.data;var cl_node=document.getElementById('CL_'+id);addClass(cl_node,'mark');markedClusters[markedClusters.length]=id;node=node.nextSibling;}
addClass(document.getElementById('CL_ALL'),'mark');}
function link_cluster_action(link_id)
{if(!browser_support)
return;var cl_iframe=document.getElementById('cluster_com');if(!cl_iframe)
return;var link=document.getElementById(link_id).href;var param_offset=link.indexOf("?");var param=link.substr(param_offset+1);set_onload(cl_iframe,check_cluster_response);cl_iframe.src='/main/eduvista.php?iframe=show_cl&'+'nocache='+Math.floor(Math.random()*100)+'&'+param;}
function do_empf_action(empf_id,action,link_id)
{var link=document.getElementById(link_id).href;var param_offset=link.indexOf("?");var address=link.substr(0,param_offset+1);var param=link.substr(param_offset+1);var new_param=null;var action_offset=param.indexOf('action=add_empf');var cnt_node=document.getElementById('mk_cnt_sel').firstChild;var cnt=cnt_node.nodeValue;if(action_offset>=0){new_param=param.replace(/action=add_empf/,'action=del_empf');cnt++;}
else{action_offset=param.indexOf('action=del_empf');if(action_offset>=0){new_param=param.replace(/action=del_empf/,'action=add_empf');cnt--;}
else
return;}
cnt_node.nodeValue=cnt;document.getElementById(link_id).href=address+new_param;var npad_button=document.getElementById('npad_act'+empf_id);if(npad_button){if(action=='del_empf'){npad_button.src=img_empf_add;npad_button.title=ext_add_empf_txt;}
else{npad_button.src=img_empf_del;npad_button.title=ext_del_empf_txt;}}}
function link_empf_action(link_id)
{if(!browser_support)
return;var emp_iframe=document.getElementById('empf_com');if(!emp_iframe)
return;var link=document.getElementById(link_id).href;var param_offset=link.indexOf("?");var param=link.substr(param_offset+1);param='nocache='+Math.floor(Math.random()*1000)+'&lid='+link_id+'&'+param;set_onload(emp_iframe,check_empf_response);if(param.indexOf('action=del_empf')>=0)
emp_iframe.src='/main/eduvista.php?iframe=empf_del&'+param;else if(param.indexOf('action=add_empf')>=0)
emp_iframe.src='/main/eduvista.php?iframe=empf_add&'+param;else
emp_iframe.src='/main/eduvista.php?iframe=empf_del_entry&'+param;}
function get_absolute_pos(obj)
{var y=0;while(obj){y+=obj.offsetTop;obj=obj.offsetParent;}
return y;}
function check_cluster_response()
{if(browser_support==-1)
check_browser_support();if(!browser_support)
return;var cl_iframe=document.getElementById('cluster_com');var cl_doc=null;var y=0;if(ua_ms>=5){cl_doc=cluster_com.document;y=get_absolute_pos(document.all.topics_div);}
else{cl_doc=cl_iframe.contentDocument;y=get_absolute_pos(document.getElementById('topics_div'));}
if(!cl_doc)
return;if(cl_doc.getElementById('dyn_cl_success').childNodes[0].nodeValue=='1'){var firstNode=cl_doc.getElementById('dyn_cl_ids').firstChild;do_cluster_action(firstNode);window.scrollTo(0,y);}}
function check_empf_response()
{if(browser_support==-1)
check_browser_support();if(!browser_support)
return;var empf_iframe=document.getElementById('empf_com');var empf_doc=null;if(ua_ms>=5)
empf_doc=empf_com.document;else
empf_doc=empf_iframe.contentDocument;if(!empf_doc)
return;if(empf_doc.getElementById('dyn_empf_success').childNodes[0].nodeValue=='1'){var empf_id=empf_doc.getElementById('dyn_empf_id').childNodes[0].nodeValue;var action=empf_doc.getElementById('dyn_empf_action').childNodes[0].nodeValue;var link_id=empf_doc.getElementById('dyn_link_id').childNodes[0].nodeValue;do_empf_action(empf_id,action,link_id);}}
function check_topics_response()
{if(browser_support==-1)
check_browser_support();if(!browser_support)
return;topics_iframe=document.getElementById('topics_com');if(ua_ms>=5)
ext_doc=topics_com.document;else
ext_doc=topics_iframe.contentDocument;if(!ext_doc)
return false;if(!ext_doc.getElementById('dyn_topics_show'))
return false;topics_show=ext_doc.getElementById('dyn_topics_show').childNodes[0].nodeValue;if(topics_show=='1'){var dyn_topics=ext_doc.getElementById('topics_div');if((ua_ms>0)||(ua_op>0))
dyn_topics=cloneNode_Frame2Frame(dyn_topics);var topics_place=document.getElementById('topics_div');if(topics_place){topics_place.parentNode.replaceChild(dyn_topics,topics_place);}}
topics_ok=ext_doc.getElementById('dyn_topics_success').childNodes[0].nodeValue;if(topics_ok=='1'){var all_img=document.getElementsByTagName('img');if(all_img){for(i=0;i<all_img.length;i++){if(all_img[i].className=='no_marker'){all_img[i].className='show_marker';}}}}}
function show_query_status_w3c()
{res_sum_iframe=document.getElementById('res_sum');if(ua_ms>=5)
ext_doc=res_sum.document;else
ext_doc=res_sum_iframe.contentDocument;if(!ext_doc)
return false;if(!ext_doc.getElementById('dyn_req_stat'))
return false;req_finished=ext_doc.getElementById('dyn_req_stat').childNodes[0].nodeValue;if(req_finished=="-1")
return false;var ext_res_cnt=ext_doc.getElementById('dyn_res_cnt');var ext_res_txt=ext_doc.getElementById('dyn_res_txt');var ext_more_res_lnk=ext_doc.getElementById('dyn_more_res_lnk');var ext_req_stat_txt=ext_doc.getElementById('dyn_req_stat_txt');var ext_req_id=ext_doc.getElementById('dyn_req_id');if(ext_req_id)
g_ext_req_id=ext_req_id.childNodes[0].nodeValue;var ext_reload_time=ext_doc.getElementById('dyn_reload_time');if(ext_reload_time)
g_reload_time=ext_reload_time.childNodes[0].nodeValue;var at_least=document.getElementById('at_least_res');if(at_least){var i=0;while(at_least.childNodes[i]){at_least.childNodes[i].nodeValue='';i++;}}
more_res_link=document.getElementById('show_more_res');if(more_res_link){more_res_link.childNodes[0].nodeValue=ext_more_res_lnk.childNodes[0].nodeValue;if(req_finished!="0")
more_res_link.title='';}
req_stat=document.getElementById('req_status');if(req_stat)
req_stat.childNodes[0].nodeValue=ext_req_stat_txt.childNodes[0].nodeValue;var ext_sortmax=ext_doc.getElementById('dyn_sortmax');if(ext_sortmax){field_sortmax=document.getElementById('sortmax_input');if(field_sortmax)
field_sortmax.value=ext_sortmax.childNodes[0].nodeValue;}
if(req_finished=="0")
return true;g_final_result=1;if(ext_doc.getElementById('dyn_topics_call'))
g_topics_call=ext_doc.getElementById('dyn_topics_call').childNodes[0].nodeValue;if(more_res_link)
more_res_link.childNodes[0].nodeValue='';if(ext_hide_fin_stat==1){stat_line=document.getElementById('status_view');if(stat_line)
stat_line.parentNode.removeChild(stat_line);}
var dyn_res_head=ext_doc.getElementById('result_header');if(dyn_res_head){if((ua_ms>0)||(ua_op>0))
dyn_res_head=cloneNode_Frame2Frame(dyn_res_head);var res_head_place=document.getElementById('result_header');if(res_head_place){res_head_place.parentNode.replaceChild(dyn_res_head,res_head_place);}}
var dyn_grp_list=ext_doc.getElementById('anb_refine');if(dyn_grp_list){if(document.getElementById('anb_refine')){var tabindex_list=document.getElementById('refanb_list').tabIndex;var tabindex_go=document.getElementById('refanb_go').tabIndex;document.getElementById('anb_refine').innerHTML=dyn_grp_list.innerHTML;document.getElementById('refanb_list').tabIndex=tabindex_list
document.getElementById('refanb_go').tabIndex=tabindex_go;}}
var dyn_add_cnt=ext_doc.getElementById('dyn_res_add_cnt').childNodes[0].nodeValue;if(dyn_add_cnt>0){var container=document.getElementById('con'+c_ids[0]).parentNode;var i=0;var cidx=c_ids.length;while(ext_doc.getElementById('dyn_c_ids'+i)){var id=ext_doc.getElementById('dyn_c_ids'+i).childNodes[0].nodeValue;var course=ext_doc.getElementById('con'+id);if(course){var res_node=course.parentNode.removeChild(course);if(typeof window.append_course=='function'){append_course(res_node,id);}
else{if((ua_ms>0)||(ua_op>0))
res_node=cloneNode_Frame2Frame(res_node);container.appendChild(res_node);c_ids[cidx]=id;cidx++;var toplink=ext_doc.getElementById('TL'+id);if(toplink){var tl_node=toplink.parentNode.removeChild(toplink);if((ua_ms>0)||(ua_op>0))
tl_node=cloneNode_Frame2Frame(tl_node);container.appendChild(tl_node);}}}
i++;}
if(typeof window.post_append_course=='function'){post_append_course();}}
var nav_line_1=ext_doc.getElementById('nav_1');if(nav_line_1){if((ua_ms>0)||(ua_op>0))
nav_line_1=cloneNode_Frame2Frame(nav_line_1);var nav_line_2=nav_line_1.cloneNode(true);nav_line_2.id='nav_2';var nav_place=document.getElementById('nav_1');if(nav_place)
nav_place.parentNode.replaceChild(nav_line_1,nav_place);var nav_place=document.getElementById('nav_2');if(nav_place)
nav_place.parentNode.replaceChild(nav_line_2,nav_place);}
return true;}
function show_query_status_js()
{if(!frames["res_sum"])
return false;req_finished=frames["res_sum"].document.all.dyn_req_stat.innerHTML;if(req_finished=="-1")
return false;ext_res_cnt=frames["res_sum"].document.all.dyn_res_cnt.innerHTML;ext_res_txt=frames["res_sum"].document.all.dyn_res_txt.innerHTML;ext_req_time=frames["res_sum"].document.all.dyn_req_time.innerHTML;ext_more_res_lnk=frames["res_sum"].document.all.dyn_more_res.innerHTML;ext_req_stat_txt=frames["res_sum"].document.all.dyn_req_stat_txt.innerHTML;g_ext_req_id=frames["res_sum"].document.all.dyn_req_id.innerHTML;g_topics_call=frames["res_sum"].document.all.dyn_topics_call.innerHTML;g_reload_time=frames["res_sum"].document.all.dyn_reload_time.innerHTML;if((document.all.show_more_res)&&(document.all.show_more_res.innerHTML)){document.all.show_more_res.innerHTML=ext_more_res_lnk;document.all.show_more_res.title='';}
var ext_sortmax=frames["res_sum"].document.all.dyn_sortmax.innerHTML;if(document.all.sortmax_input)
document.all.sortmax_input.value=ext_sortmax;if(req_finished!="0"){g_final_result=1;if(document.all.req_status.innerHTML)
document.all.req_status.innerHTML=ext_req_stat_txt;document.all.show_more_res.innerHTML='';if(ext_hide_fin_stat==1){document.all.status_view.innerHTML='';}
document.all.from_cnt.innerHTML=ext_res_cnt;}
return true;}
function update_status()
{if(w3c){return show_query_status_w3c();}
else{return show_query_status_js();}}
function reload_res_sum()
{if((ua_ms>=5)||(ua_mo>=1)){if(!document.getElementById('res_sum'))
return 0;res_sum.document.location.reload();}
else{frames["res_sum"].document.location.reload();if((ua_op>0)&&(ua_op<7.5)){onload_res_sum(0);}}
return 0;}
function load_topics()
{if(g_topics_call!='0'){set_com_iframe_src('topics_com',g_topics_call,check_topics_response);}}
function check_browser_support()
{check_browser();w3c=((ua_ms>=5)||(ua_mo>=1)||(ua_kq>=3)||(ua_op>=8));browser_support=((ua_ms>=5)||(ua_mo>=1)||(ua_op>=3)||(ua_kq>=3));}
function onload_res_sum()
{if(browser_support==-1)
check_browser_support();if(!browser_support)
return;if(update_status()==1){if(g_final_result==0){window.setTimeout('reload_res_sum()',g_reload_time);}
else{if(g_ext_req_id>0){load_topics();}}}}
function set_onload(object,onload_function)
{if(ua_ms>=5){object.detachEvent('onload',onload_function);object.attachEvent('onload',onload_function);}
else{object.onload=onload_function;}}
function set_com_iframe_src(com_iframe,src_url,onload_function)
{if(browser_support==-1)
check_browser_support();if(!browser_support)
return;if(w3c){iframe_elm=document.getElementById(com_iframe);if(!iframe_elm)
return;set_onload(iframe_elm,onload_function);iframe_elm.src=src_url;return;}
frames[com_iframe].onload=onload_function;frames[com_iframe].src=src_url;}
if(browser_support==-1)
check_browser_support();