function AdminContainer(){this.current_agency_id="";}AdminContainer.prototype.load=function(){this.current_agency_id=O_APP.USER.customerid;var A="<admin_menu/>";if(O_APP.USER.superuser){A="<admin_menu><superuser_menu/></admin_menu>";}var B=transform(A,"admin");$("admin_menu").innerHTML=B;};AdminContainer.prototype.template_category_list=function(){var A="<template_list/>";var B=transform(A,"template_list");$("admin_work_pane").innerHTML=B;};AdminContainer.prototype.show_templates=function(B){var C=$H({i:"SWTemplate.get_template_list",type:"data",format:"xml"});var A=function(D){O_APP.log(D.responseText);var E=transform(D.responseText,"template_list");$("admin_work_pane").innerHTML=E;};ajax_request(C.toQueryString(),null,A);};AdminContainer.prototype.draw_manage_agencies=function(){var B=$H({i:"Admin.get_agencies",format:"xml"});var A=function(C){var D="<agency_list>"+C.responseText+"</agency_list>";var E=transform(D,"admin");$("admin_work_pane").innerHTML=E;if(O_APP.USER.superuser){O_ADMIN_CONTAINER.draw_agency_selection();}};ajax_request(B.toQueryString(),null,A);};AdminContainer.prototype.draw_agency_selection=function(){var B=$H({i:"Admin.get_agencies",format:"xml"});var A=function(E){var F="<agency_select>"+E.responseText+"</agency_select>";var H=transform(F,"admin");$("superuser_agency_select").innerHTML=H;var I=O_ADMIN_CONTAINER.current_agency_id;alert("cur_agency is "+I);var D=$("superuser_customer_selection");var C=0;for(var G=0;G<D.options.length;G++){if(D.options[G].value==I){C=G;}}$("superuser_customer_selection").selectedIndex=C;};ajax_request(B.toQueryString(),null,A);};AdminContainer.prototype.add_user=function(){var A="<header><add_user/></header><response><User><myself>0</myself></User><records><record><customerid>"+this.current_agency_id+"</customerid></record></records></response><options><create/><cancel/></options>";var B=transform(A,"settings");O_APP.show_modal(B);};AdminContainer.prototype.delete_agency=function(C){var B=$H({i:"Admin.delete_agency",id:C,format:"xml"});var A=function(D){O_ADMIN_CONTAINER.draw_manage_agencies();};ajax_request(B.toQueryString(),null,A);};AdminContainer.prototype.edit_user=function(C){var B=$H({i:"User.get",id:C,format:"xml"});var A=function(E){var D="<header><edit_user/></header>"+E.responseText+"<options><save/><cancel/></options>";var F=transform(D,"settings");O_APP.show_modal(F);};ajax_request(B.toQueryString(),null,A);};AdminContainer.prototype.create_user=function(){var A="";if($("settings_administrator")){A=$("settings_administrator").checked?"true":"false";}else{A=$("settings_hidden_administrator").value=="1"?"true":"false";}var C=$H({i:"User.create",username:$("settings_username").value,password:$("settings_password").value,firstname:$("settings_firstname").value,lastname:$("settings_lastname").value,email:$("settings_email").value,telephone:$("settings_telephone").value,theme_id:$("settings_theme_id").value,language:$("settings_language").value,customerid:$("settings_customerid").value,administrator:A});var B=function(D){if(D.responseText==1){O_ADMIN_CONTAINER.draw_manage_users();O_APP.clear_modal();}else{if(D.responseText.indexOf("username_key")>0){var E=localize("^non_unique_username;");alert(E);}else{alert(D.responseText);}}};ajax_request(C.toQueryString(),null,B);};AdminContainer.prototype.create_agency=function(){var B=$H({i:"Admin.create_agency",name:$("agency_new_name").value,groupname:$("agency_new_groupname").value,unit_of_measure:$("agency_unit_of_measure")[$("agency_unit_of_measure").selectedIndex].value,active:1});var A=function(C){O_ADMIN_CONTAINER.draw_manage_agencies();};ajax_request(B.toQueryString(),null,A);};AdminContainer.prototype.save_agency=function(){var B=$("agency_unit_of_measure")[$("agency_unit_of_measure").selectedIndex].value;var C=$H({i:"Admin.save_agency",name:$("agency_name").value,groupname:$("agency_groupname").value,unit_of_measure:B,active:$("agency_status").value,id:$("agency_id").value});var A=function(D){O_ADMIN_CONTAINER.draw_manage_agencies();};ajax_request(C.toQueryString(),null,A);};AdminContainer.prototype.activate_agency=function(C,B,F,A){var E=$H({i:"Admin.save_agency",name:C,groupname:B,active:A,id:F});var D=function(G){O_ADMIN_CONTAINER.draw_manage_agencies();};ajax_request(E.toQueryString(),null,D);};AdminContainer.prototype.remove_user=function(C){var B=$H({i:"User.remove",id:C,format:"json"});var A=function(D){O_ADMIN_CONTAINER.draw_manage_users();};ajax_request(B.toQueryString(),null,A);};AdminContainer.prototype.draw_dashboard=function(){var A="<admin_dashboard/>";var B=transform(A,"admin");$("admin_work_pane").innerHTML=B;this.draw_recent_logins("admin_dashboard_1");};AdminContainer.prototype.draw_recent_logins=function(C){var B=$H({i:"Admin.get_recent_logins",format:"xml"});var A=function(D){var E="<admin_dashboard_recent_logins>"+D.responseText+"</admin_dashboard_recent_logins>";var F=transform(E,"admin");$(C).innerHTML=F;};ajax_request(B.toQueryString(),null,A);};AdminContainer.prototype.draw_login_history=function(A,C,E){var D=$H({i:"Admin.get_recent_logins",userid:A,customerid:C,format:"xml"});var B=function(F){var G="<admin_dashboard_login_history>"+F.responseText+"</admin_dashboard_login_history>";var H=transform(G,"admin");$(E).innerHTML=H;};ajax_request(D.toQueryString(),null,B);};AdminContainer.prototype.language_list=function(){var B=O_APP.strings_as_xml();var A="<language_list>"+B+"</language_list>";var C=transform(A,"custom_language");$("admin_work_pane").innerHTML=C;};AdminContainer.prototype.language_update=function(C,A,D){O_APP.strings[A]=D;var E=$H({i:"Localizer.update_custom_string",customerid:C,token:A,value:D,format:"json"});var B=function(F){O_APP.log("complete");};ajax_request(E.toQueryString(),null,B);};AdminContainer.prototype.language_reset=function(C,A){var D=$H({i:"Localizer.remove_custom_string",customerid:C,token:A,format:"json"});var B=function(E){O_APP.populate_localized_strings(O_APP.language);O_APP.update_localized_strings();O_ADMIN_CONTAINER.language_list();};ajax_request(D.toQueryString(),null,B);};AdminContainer.prototype.language_update_stats=function(D,C,G,A,E){if(C=="input"){O_APP.input_statistic_names[G].name=A;O_APP.input_statistic_names[G].description=E;}else{O_APP.output_statistic_names[G].name=A;O_APP.output_statistic_names[G].description=E;}var F=$H({i:"Localizer.update_custom_stats_string",customerid:D,type:C,id:G,name:A,description:E,format:"json"});var B=function(H){};ajax_request(F.toQueryString(),null,B);};AdminContainer.prototype.language_reset_stat=function(C,B,E){var D=$H({i:"Localizer.remove_custom_stats_string",customerid:C,type:B,id:E,format:"json"});var A=function(F){O_APP.populate_localized_statistics(O_APP.language);O_ADMIN_CONTAINER.language_list();};ajax_request(D.toQueryString(),null,A);};AdminContainer.prototype.language_update_constraint=function(F,E,C){var B=O_APP.USER.customerid;O_APP.constraints[F].display_text=E;O_APP.constraints[F].description=C;var D=$H({i:"Localizer.update_custom_constraint_string",customerid:B,id:F,text:E,description:C,format:"json"});var A=function(G){};ajax_request(D.toQueryString(),null,A);};AdminContainer.prototype.language_reset_constraint=function(C){var B=$H({i:"Localizer.remove_custom_constraint_string",customerid:customerid,id:C,format:"json"});var A=function(D){O_APP.populate_localized_strings(O_APP.language);O_APP.update_localized_strings();O_ADMIN_CONTAINER.language_list();};ajax_request(B.toQueryString(),null,A);};function AgencyDefaults(D){var B=this;this.parent=D;this.parts=["default_num_officers","default_hours_per_week","default_first_dow_offset","default_block_interval","default_cost_per_officer","unit_of_measure"];this.gui_elem=[];this.dow=["^sunday;","^monday;","^tuesday;","^wednesday;","^thursday;","^friday;","^saturday;"];this.block_interval={60:"^layout_60;",30:"^layout_30;",15:"^layout_15;"};var C=this.getAgency();this.updateUser(C);this.renderShow=function(){if($(this.div)){var K=$(this.div);K.innerHTML="";var H=localize("<h1 class='help' topic='agency_defaults.xml'>^agency_defaults;</h1>");new Insertion.Bottom(K,H);H=localize("<p>^agency_defaults_description;</p>");new Insertion.Bottom(K,H);H="<div style='width:80%;margin:auto;text-align:center;'></div>";new Insertion.Bottom(K,H);this.content=K.lastChild;H="<table class='bordered align_left' width='100%'><tbody></tbody></table>";new Insertion.Bottom(this.content,H);this.tableBody=this.content.lastChild.childNodes[0];var I=this.tableBody;var J=this.dow;var G=this.block_interval;this.parts.each(function(L){H="";switch(L){case"default_first_dow_offset":H="<tr><td>"+localize("^"+L+";")+"</td><td>"+localize(J[O_APP.USER[L]])+"</td></tr>";break;case"default_block_interval":H="<tr><td>"+localize("^"+L+";")+"</td><td>"+localize(G[O_APP.USER[L]])+"</td></tr>";break;default:H="<tr><td>"+localize("^"+L+";")+"</td><td>"+O_APP.USER[L]+"</td></tr>";break;}new Insertion.Bottom(I,H);B.gui_elem[L]=I.lastChild.lastChild;});H=localize("<button class='btn'>^make_changes;</button>");new Insertion.Bottom(this.content,H);this.edit_btn=this.content.lastChild;Event.observe(this.edit_btn,"click",F,false);fill_help_links(this.div);}else{alert("div not found? : "+this.div);}};var F=function(){B.parts.each(function(I){var K=B.gui_elem[I];var J="";switch(I){case"default_first_dow_offset":J=localize("<select id='default_first_dow_offset'><option value='0'>^sunday;</option><option value='1'>^monday;</option><option value='2'>^tuesday;</option><option value='3'>^wednesday;</option><option value='4'>^thursday;</option><option value='5'>^friday;</option><option value='6'>^saturday;</option></select>");break;case"default_block_interval":J=localize("<select><option value='60'>^layout_60;</option><option value='30'>^layout_30;</option><option value='15'>^layout_15;</option></select>");break;case"unit_of_measure":J=localize("<select><option value='usfoot'>^usfoot;</option><option value='metric'>^metric;</option></select>");break;default:J="<input type='text' value='"+K.innerHTML+"'/>";break;}K.innerHTML=J;});$("default_first_dow_offset").selectedIndex=O_APP.USER.default_first_dow_offset;var H=B.edit_btn;H.innerHTML=localize("^btn_save;");Event.stopObserving(H,"click",F,false);Event.observe(H,"click",E,false);var G=localize("<button class='btn'>^btn_cancel;</button>");new Insertion.After(H,G);this.cancel_btn=H.nextSibling;Event.observe(this.cancel_btn,"click",A,false);};var E=function(){B.saveAgency();B.renderShow();};var A=function(){B.renderShow();};}AgencyDefaults.prototype.show=function(A){this.div=A;this.renderShow();};AgencyDefaults.prototype.getAgency=function(){var B=$H({i:"Admin.get_agency",id:O_APP.USER.customerid,format:"json"});var A=get_server_object(B,"json");return A[0];};AgencyDefaults.prototype.saveAgency=function(){var D=this.gui_elem;var E=D["default_first_dow_offset"].firstChild[D["default_first_dow_offset"].firstChild.selectedIndex].value;if(E!=O_APP.USER.default_first_dow_offset){var F=O_APP.Workflows;if(F.length>0){var C=confirm(localize("^agency_default_confirm_close_workflows;"));if(C){F.each(function(H){if(H!=undefined){O_APP.WorkflowContainer.close_workflow(H.workflowid);}});}else{return ;}}}else{O_APP.log("dow_offset is the same as the USER default in O_APP "+O_APP.USER.default_first_dow_offset);}var B=D["default_cost_per_officer"].firstChild.value;B=B.split(".");B=B[0].replace(/\D/g,"");var G=$H({i:"Admin.save_agency",id:O_APP.USER.customerid,unit_of_measure:D["unit_of_measure"].firstChild[D["unit_of_measure"].firstChild.selectedIndex].value,num_officers:D["default_num_officers"].firstChild.value,hours_per_week:D["default_hours_per_week"].firstChild.value,dow_offset:E,block_interval:D["default_block_interval"].firstChild[D["default_block_interval"].firstChild.selectedIndex].value,cost_per_officer:B,format:"json"});var A=get_server_object(G,"json");this.updateUser(A[0][0]);};AgencyDefaults.prototype.updateUser=function(A){this.parts.each(function(B){O_APP.log("updating USER: old "+B+"="+O_APP.USER[B]+"... new "+B+"="+A[B]);O_APP.USER[B]=A[B];});};function createXMLHTTPRequest(){if(window.ActiveXObject){return new ActiveXObject("Microsoft.XMLHTTP");}else{if(window.XMLHttpRequest){return new XMLHttpRequest();}else{}}}function Allocation(parent,officers,hours,alloc_config){this.parent=parent;this.id=random_id();this.officers=officers;this.hours=hours;var alloc_units=eval(alloc_config.allocation_units);var alloc_vars=eval(alloc_config.allocation_vars);this.alloc_config=alloc_config;if(alloc_units==undefined||alloc_units.length==0){alloc_units=this.zeros(this.parent.dataset.columns*this.parent.dataset.rows);alloc_vars=this.zeros(this.parent.dataset.columns*this.parent.dataset.rows);}this.flexigrid=new FlexiGrid();this.flexigrid.colorQuantiles=true;this.flexigrid.shrinkRowLabels=true;this.flexigrid.div_id=this.parent.workflowid+"_allocation_flexigrid";this.flexigrid.title=localize("^allocation;");this.flexigrid.values=this.array_to_grid_values(alloc_units,this.parent.dataset.columns,this.parent.dataset.rows);this.initial_units_grid_values=this.flexigrid.values;this.variable_flexigrid=new FlexiGrid();this.variable_flexigrid.colorQuantiles=true;this.variable_flexigrid.shrinkRowLabels=true;this.variable_flexigrid.div_id=this.parent.workflowid+"_allocation_variable_flexigrid";this.variable_flexigrid.title=localize("^allocation_variable;");this.variable_flexigrid.values=this.array_to_grid_values(alloc_vars,this.parent.dataset.columns,this.parent.dataset.rows,2);this.parent.availability.notifyObjects.push(this);}Allocation.prototype.show=function(A){if(this.div){}else{this.div=A;}if(this.parent.dataset.jobid){}else{this.render();fill_help_links(this.div);}};Allocation.prototype.render=function(){var A='<allocation wf_id="'+this.parent.workflowid+'" num_officers="'+this.officers+'" num_hours="'+this.hours+'"></allocation>';var D=transform(A,"allocation");D=localize(D);if($(this.div)){$(this.div).innerHTML=D;this.fill_alloc_variable_options();this.tabs=new YAHOO.widget.TabView(this.parent.workflowid+"_allocation_tab_control",{orientation:"top"});var F=this.parent.workflowid;if(this.alloc_config.allocation_selected_var){var B=$(F+"_allocation_variable");var G=B.options;for(var C=0;C<G.length;C++){if(G[C].value==this.alloc_config.allocation_selected_var){B.selectedIndex=C;break;}}}if(this.alloc_config.allocation_selected_method){var E=$(F+"_allocation_method");var G=E.options;for(var C=0;C<G.length;C++){if(G[C].value==this.alloc_config.allocation_selected_method){E.selectedIndex=C;break;}}}if(this.alloc_config.allocated_officers>0){$(F+"_num_officers").value=this.alloc_config.allocated_officers;}if(this.alloc_config.allocated_hours>0){$(F+"_num_hours").value=this.alloc_config.allocated_hours;}}this.fill_grid(this.flexigrid,this.flexigrid.values);this.fill_grid(this.variable_flexigrid,this.variable_flexigrid.values);if(this.parent.dataset.blocktype===1){try{$(this.parent.workflowid+"_num_hours").disabled="disabled";}catch(H){O_APP.log("node didnt exist");}}};Allocation.prototype.fill_grid=function(B,A){B.values=A;B.columnNames=this.parent.dataset.column_names;B.rowNames=this.parent.dataset.row_names;if($(B.div_id)){B.draw();}};Allocation.prototype.calculate_allocation=function(){var old_wait_text=O_APP.wait_spinner.header.innerHTML;O_APP.wait_spinner.setHeader("Calculating...");O_APP.wait_spinner.show();if(this.parent.dataset.warnings){alert(O_APP.strings["warnings_stop"]);O_APP.wait_spinner.hide();O_APP.wait_spinner.setHeader(old_wait_text);return false;}var wf_id=this.parent.workflowid;var temp=$(wf_id+"_allocation_variable").selectedIndex;var alloc_var=$(wf_id+"_allocation_variable")[temp].value;temp=$(wf_id+"_allocation_method").selectedIndex;var alloc_method=$(wf_id+"_allocation_method")[temp].value;var num_units=$(wf_id+"_num_officers").value;var num_hours=$(wf_id+"_num_hours").value;var num_blocks=this.parent.dataset.columns*this.parent.dataset.rows;var block_factor=(this.parent.dataset.rows/24);var seed=($(wf_id+"_apply_goal_requirements").checked&&(this.parent.constraintset.active_constraints.length>0));var boolGeo=this.parent.dataset.blocktype;var tab=this.tabs.getTab(1);var html="<span>"+O_APP.output_statistic_names[alloc_var].name+"</span>";tab.set("label",html);this.tabs=new YAHOO.widget.TabView(this.parent.workflowid+"_allocation_tab_control",{orientation:"top"});var params=$H({i:"Allocation.allocate",workflow:wf_id,alloc_var:alloc_var,alloc_method:alloc_method,num_units:num_units,num_hours:num_hours,num_blocks:num_blocks,block_factor:block_factor,seed:seed,boolGeo:boolGeo,blocktype:this.parent.dataset.blocktype,rows:this.parent.dataset.rows,format:"json"});var cols=this.parent.dataset.columns;var rows=this.parent.dataset.rows;var that=this;var onComplete=function(response){var result=eval("("+response.responseText+")");if(result.additional_officers_needed){var text=localize("^not_enough_officers;"+result.additional_officers_needed+"^not_enough_officers2;");O_APP.wait_spinner.hide();O_APP.wait_spinner.setHeader(old_wait_text);alert(text);}else{alloc_units=that.array_to_grid_values(result.alloc_units,cols,rows);alloc_vars=that.array_to_grid_values(result.alloc_vars,cols,rows,2);O_APP.Workflows[wf_id].allocation.fill_grid(O_APP.Workflows[wf_id].allocation.flexigrid,alloc_units);O_APP.Workflows[wf_id].allocation.fill_grid(O_APP.Workflows[wf_id].allocation.variable_flexigrid,alloc_vars);O_APP.Workflows[wf_id].has_allocation_units=true;O_APP.wait_spinner.hide();O_APP.wait_spinner.setHeader(old_wait_text);that.update_officer_cost(alloc_units);O_APP.Workflows[wf_id].allocate_dirty_flag=true;}};ajax_request(params.toQueryString(),null,onComplete);};Allocation.prototype.fill_alloc_variable_options=function(){var C=[39,1,74,75,38,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,63,64,65,66,67,68,69,70,71,72];var B=$(this.parent.workflowid+"_allocation_variable");var A=0;if(B){C.each(function(D){B.options[A]=new Option(O_APP.output_statistic_names[D].name,D);A++;});}};Allocation.prototype.update_allocation_direction=function(){var B=this.parent.workflowid;var A=$(B+"_allocation_variable").selectedIndex;var C=$(B+"_allocation_variable")[A].value;if(C>73){$(B+"_allocation_direction").value=1;$(B+"_allocation_method").options[0]=new Option(localize("^maximize_minimum;"),"0");$(B+"_allocation_method").options[1]=new Option(localize("^maximize_average;"),"1");}else{$(B+"_allocation_direction").value=-1;$(B+"_allocation_method").options[0]=new Option(localize("^minimize_maximum;"),"0");$(B+"_allocation_method").options[1]=new Option(localize("^minimize_average;"),"1");}};Allocation.prototype.update_officer_cost=function(A){try{O_APP.Workflows[this.parent.workflowid].insert_officer_cost(this.parent.workflowid+"_allocate_officer_cost",A);}catch(B){O_APP.log("didn't find workflow: "+this.parent.workflowid);}};Allocation.prototype.update_apply_availability=function(){var A=$(this.parent.workflowid+"_apply_availablity");if(A&&A.checked){var B=this.parent.availability.staffing_factor;this.flexigrid.revert_values(B);this.flexigrid.multiply_values(B);}};Allocation.prototype.array_to_grid_values=function(E,D,B,G){var A=0;var H=new Array();for(var C=0;C<D;C++){var F=new Array();for(var I=0;I<B;I++){if(G){F.push(round(E[A],G));}else{F.push(E[A]);}A++;}H.push(F);}return H;};Allocation.prototype.zeros=function(C){var B=new Array();for(var A=0;A<C;A++){B.push(0);}return B;};Allocation.prototype.reset_zeros=function(){var A=this.zeros(this.parent.dataset.columns*this.parent.dataset.rows);var B=this.array_to_grid_values(A,this.parent.dataset.columns,this.parent.dataset.rows);this.fill_grid(this.flexigrid,B);this.fill_grid(this.variable_flexigrid,B);var D=$H({i:"Allocation.save",workflow:this.parent.workflowid,alloc_units:A.toJSONString(),alloc_vars:A.toJSONString(),format:"json"});var C=function(E){};ajax_request(D.toQueryString(),null,C);};function Application(){this.BASE_URL="";this.SERVICE_URL="";this.LANG="en_us";this.SESSION_ID="";this.USER="";this.langauge="";this.Workflows=[];this.Wizards=[];this.Corona_RadioSets=[];this.Popups=[];this.Flexigrids=[];this.CADmineImports=[];this.CADmine_distincts=[];this.min_cadmine_date;this.max_cadmine_date;this.ActiveBricks=[];this.input_statistic_names=new Array();this.output_statistic_names=new Array();this.wait_spinner;this.placeholders=["home","welcome","settings","workflow_list","datasets","help","yui_admin"];this.buttons=["menu_workflow_list","menu_datasets","menu_help","menu_yui_admin"];this.strings=new Array();this.IE="";this.logout_warning=false;this.NetworkUtility_test_running=false;}Application.prototype.browser_time_zone=function(){var A=new Date();var B=A.getTimezoneOffset()/60;return B;};Application.prototype.wait=function(){this.wait_spinner=new YAHOO.widget.Panel("wait",{width:"240px",fixedcenter:true,close:false,draggable:false,modal:false,visible:false,effect:{effect:YAHOO.widget.ContainerEffect.FADE,duration:0.1}});this.wait_spinner.setHeader("Loading, please wait...");this.wait_spinner.setBody('<img src="themes/images/rel_interstitial_loading.gif" />');this.wait_spinner.render(document.body);this.wait_spinner.show();};Application.prototype.ready=function(){setTimeout("O_APP.wait_spinner.hide();",1);};Application.prototype.init=function(){if(window.ActiveXObject){this.IE=1;}else{this.IE=0;}var B=get_cookie("font_size_index");if(parseInt(B)>=0){font_size_index=B;}else{font_size_index=3;}set_fontsize();this.BASE_URL=document.location.protocol+"//"+document.location.hostname;if(document.location.port>0&&document.location.port!=80){this.BASE_URL+=":"+document.location.port;}this.SERVICE_URL=this.BASE_URL+"/services";hide_placeholders();var C=get_cookie("sw4_language");if(C){this.language=C;}else{this.language="en_us";}if(C=="ara"){document.body.style.direction="rtl";}else{document.body.style.direction="ltr";}this.populate_localized_strings(this.language);var A=get_cookie("sw4_session");if(A){window.setTimeout("$( 'please_wait' ).show();",1);window.setTimeout(function(){O_APP.build_application(A);},1);}else{Element.hide($("please_wait"));this.show_login(this.language);}};Application.prototype.check_activity=function(B){if(!this.SESSION_ID){return ;}var C=new Date();var A=C-this.last_activity;O_APP.log("******************************************checking activity: elapsed time "+A);if(A>(this.session_life-60100)){this.show_logout_warning();clearTimeout(this.timer);this.timer=setTimeout("O_APP.logout()",60000);}};Application.prototype.reset_timer=function(){this.last_activity=new Date();clearTimeout(this.timer);this.timer=setTimeout("O_APP.check_activity()",(this.session_life-60000));var B=$H({i:"User.renew_session",format:"string"});var A=function(C){};};Application.prototype.show_modal=function(A){Element.show($("modal_shield"));$("modal_content2").innerHTML=A;Element.show($("modal_content"));};Application.prototype.clear_modal=function(){Element.hide($("modal_content"));Element.hide($("modal_shield"));$("modal_content2").innerHTML="";};Application.prototype.show_spinner=function(A){var C="spinner_"+A;var B="<span id='"+C+"' <img class='spinner' src='themes/images/spinner.gif'></img> Loading";$(A).innerHTML=$(A).innerHTML+B;};Application.prototype.remove_spinner=function(A){var B="spinner_"+A;if($(B)){Element.remove($(B));}};Application.prototype.set_mouse_pointer=function(A){if(!A){window.style.cursor="auto";}else{window.style.cursor=A;}};Application.prototype.show_login=function(D){if(!D){D="en_us";}this.language=D;if(D=="ara"){document.body.style.direction="rtl";}else{document.body.style.direction="ltr";}this.populate_localized_strings(D);var B=transform("<login_draw_dialog/>","login");this.show_modal(B);$("login_btn").disabled=true;Event.observe("username","keyup",login_btn_enable);Event.observe("username","keydown",check_for_enter);Event.observe("password","keyup",login_btn_enable);Event.observe("password","keydown",check_for_enter);var A=get_cookie("sw4_username")||"";var C=get_cookie("sw4_password")||"";$("username").value=A;$("password").value=C;if(A&&C){$("login_btn").disabled=false;$("remember_me").checked=true;}$("username").focus();};Application.prototype.try_login=function(){$("login_btn").disabled=true;var F=$("username").value;var C=$("password").value;var E=$H({i:"User.login",username:F,password:C,format:"json"});var A=get_server_object(E,"json");var B="";if(A.SESSION_ID||A.suspended){if(A.SESSION_ID){if($("remember_me").checked==true){set_cookie("sw4_username",A.User.username,9999);set_cookie("sw4_password",A.User.password,9999);set_cookie("sw4_language",this.language,9999);}A.User.password="";this.build_application(A.SESSION_ID);Element.hide($("please_wait"));}else{B=localize("^login_mess_deactivated;");alert(B);}}else{B=transform("<login_failed/>","login");alert(B.stripTags());Element.hide($("lbl_please_wait"));$("login_btn").disabled=false;if($("login_forgot_password_btn")){}else{var D=transform("<login_forgot_password/>","login");new Insertion.After("login_btn",D);}}};Application.prototype.show_wait=function(){$("please_wait").show();};Application.prototype.hide_wait=function(){$("please_wait").hide();};Application.prototype.build_application=function(session_id){O_APP.TIMEZONE=O_APP.browser_time_zone();O_APP.StatID=new StatID();var params=$H({i:"User.get_from_session",sid:session_id,timezone:O_APP.TIMEZONE,format:"json"});var http=createXMLHTTPRequest();http.open("GET",O_APP.SERVICE_URL+"?"+params.toQueryString(),false);http.send(null);var O_response=new Object();try{O_response=eval("("+http.responseText+")");}catch(e){O_response.success=0;}if(O_response.success!==1){O_APP.log(O_response);set_cookie("sw4_session",this.SESSION_ID,0);$("please_wait").hide();this.show_login(this.language);return ;}this.SESSION_ID=session_id;this.USER=O_response.records.record;set_cookie("sw4_language",this.language,9999);set_cookie("sw4_session",this.SESSION_ID,9999);this.populate_localized_statistics(this.language);this.update_localized_strings();this.update_localized_constraint_strings();this.draw_menu("menu_left");new YUI_Admin("yui_admin");O_SETTINGS_CONTAINER.load();O_DATASETS_CONTAINER.load(true);O_HELP_CONTAINER.load();O_APP.WorkflowContainer=new WorkflowContainer("workflow_list");O_APP.WorkflowContainer.draw_workflow_list();get_cadmine_info();this.clear_modal();setTimeout("O_APP.hide_wait()",1);this.ready();var last_toggle=get_cookie("last_toggle");if(last_toggle){if(last_toggle!="yui_admin"){corona_toggle(last_toggle);}else{this.show_welcome();}}else{this.show_welcome();}};function get_cadmine_info(){if(O_APP.USER.cm_service_id==0){return false;}var params=$H({i:"CADmine.get_cadmine_info",format:"json"});var oncomplete=function(response){var info=eval("("+response.responseText+")");O_APP.min_cadmine_date=info.dates[0];O_APP.max_cadmine_date=info.dates[1];var fields=["units","districts","calltypes","priorities","dispositions"];for(var fld=0;fld<fields.length;fld++){var field=fields[fld];O_APP.CADmine_distincts[field]=info[field];}};ajax_request(params.toQueryString(),null,oncomplete);}function check_for_enter(B){var A=B.keyCode;if(A===13){$("login_btn").click();}}function login_btn_enable(){var A=$("username").value;var B=$("password").value;if(A!=""&&B!=""){$("login_btn").disabled=false;}else{$("login_btn").disabled=true;}}Application.prototype.draw_menu=function(C){var A="";A+='<menu_option name="workflow_list" label="^menu_lbl_workflows;" description="^menu_workflows_description;" image="workflows_menu_small.png"/>';A+='<menu_option name="datasets" label="^menu_lbl_datasets;" description="^menu_datasets_description;" image="datasets_menu_small.png"/>';A+='<menu_option name="help" label="^menu_lbl_help;" description="^menu_help_description;" image="help_menu_small.png"/>';if(this.USER.administrator==1){A+='<menu_option name="yui_admin" label="^menu_lbl_admin;" description="^menu_admin_description;" image="admin_menu_small.png"/>';}A+='<menu_option name="logout" label="^menu_lbl_logout;" description="^menu_logout_description;" image="logout_menu_small.png"/>';A+='<menu_option name="reset" label="^menu_lbl_reset;" description="^menu_reset_description;" image="reset.png"/>';A+='<menu_option_link name="settings" label="^menu_lbl_settings;" description="^menu_settings_description;" image="settings_menu_small.png"/>';var B=transform(A,"menu");$(C).innerHTML=B;};Application.prototype.logout=function(){this.placeholders.each(function(C){$(C).style.visibility="hidden";});var B=$H({i:"User.delete_session"});var A=function(C){set_cookie("sw4_session",this.SESSION_ID,0);window.location.href=O_APP.BASE_URL;};ajax_request(B.toQueryString(),null,A);};Application.prototype.show_welcome=function(){var A="<welcome/>";var B=transform(A,"welcome");$("welcome").innerHTML=B;corona_toggle("welcome");};Application.prototype.populate_localized_statistics=function(C){if(!C){C="en_us";}var B=$H({i:"Localizer.get_stat_labels",format:"json",language:C});var A=get_server_object(B,"json");this.input_statistic_names=A.input;this.output_statistic_names=A.output;};Application.prototype.populate_localized_strings=function(C){var B=$H({i:"Localizer.get_localized_strings",format:"json",language:C});var A=get_server_object(B,"json");this.strings=A.strings;};Application.prototype.update_localized_strings=function(){var C=$H({i:"Localizer.get_custom_localized_strings",customerid:O_APP.USER.customerid,format:"json"});var A=get_server_object(C,"json");for(var B in A.strings){if(B!="toJSONString"){O_APP.strings[B]=A.strings[B];}}};Application.prototype.update_localized_constraint_strings=function(){var D=$H({i:"Localizer.get_custom_constraint_strings",customerid:O_APP.USER.customerid,format:"json"});var A=get_server_object(D,"json");for(var C in A.strings){if(C!="toJSONString"){O_APP.constraints[C].display_text=A.strings[C][0];O_APP.constraints[C].description=A.strings[C][1];var B=O_APP.constraints[C].name;O_APP.strings[B]=A.strings[C][0];O_APP.strings[B+"_description"]=A.strings[C][1];}}};Application.prototype.log=function(A,B){if(true||!this.IE){try{switch(B){case"warn":break;case"error":break;default:}}catch(C){}}};Application.prototype.email_password=function(username,language,email){var params=$H({i:"User.email_password",username:username,language:language,email:email,format:"json"});var oncomplete=function(response){var res=eval("("+response.responseText+")");if(res.unknown_user){var message=localize("^login_mess_unknown_username;");alert(message);var email=prompt(O_APP.strings["login_lbl_enter_email"],"");if(email!=null&&email!=""){O_APP.email_password(null,language,email);}}else{var message=localize("^login_mess_password_reset_and_emailed;");alert(message);}};ajax_request(params.toQueryString(),null,oncomplete);};Application.prototype.strings_as_xml=function(){var B="";var D=["district","call_source","disposition","beat","priority","call_type","reporting_area","unit","officer"];var A=["districts","call_sources","dispositions","beats","priorities","call_types","reporting_areas","units","officers"];B+="<group name='^application_text;'>";for(var C=0;C<D.length;C++){B+="<token customerid='"+this.USER.customerid+"' name='"+D[C]+"' singular_value='"+O_APP.strings[D[C]]+"' plural_value='"+O_APP.strings[A[C]]+"' definition='"+O_APP.strings[D[C]+"_definition"]+"'/>";}B+="</group>";B+="<group name='^input_description;'>";for(C=0;C<O_APP.input_statistic_names.length;C++){B+="<stat_name customerid='"+this.USER.customerid+"' type='input' id='"+C+"' name='"+O_APP.input_statistic_names[C].name+"' description='"+O_APP.input_statistic_names[C].description+"' definition='"+O_APP.input_statistic_names[C].definition+"'/>";}B+="</group>";B+="<group name='^output_description;'>";for(C=0;C<O_APP.output_statistic_names.length;C++){B+="<stat_name customerid='"+this.USER.customerid+"' type='output' id='"+C+"' name='"+O_APP.output_statistic_names[C].name+"' description='"+O_APP.output_statistic_names[C].description+"' definition='"+O_APP.output_statistic_names[C].definition+"'/>";}B+="</group>";B+="<group name='^constraint_description;'>";for(C=0;C<O_APP.constraints.length;C++){var E=O_APP.constraints[C];B+="  <constraint id='"+E.id+"' name='"+E.name+"' text='"+E.display_text+"' desc='"+E.description+"'/>";}B+="</group>";return localize(B);};Application.prototype.build_yui_admin=function(B){var A=new YUI_Admin(B);};Application.prototype.is_numeric=function(B){var D="0123456789.-";var E;var A=true;if(B.length==0){return false;}for(var C=0;C<B.length&&A==true;C++){E=B.charAt(C);if(D.indexOf(E)==-1){A=false;}}return A;};Application.prototype.show_logout_warning=function(){O_APP.log("-------- AUTO LOGOUT... SHOW WARNING");if(this.logout_warning==false){this.logout_warning=true;var A=transform("<logout_warning/>","login");this.show_modal(A);}};Application.prototype.hide_logout_warning=function(){O_APP.log("-------- AUTO LOGOUT... HIDE WARNING");this.reset_timer();if(this.logout_warning==true){this.logout_warning=false;this.clear_modal();}};function Availability(D,C,B){var A=this;this.parent=B;this.hours_per_year=C;this.deductions=D;this.net_work_hours=0;this.staffing_factor=0;this.availability_factor=0;this.selected_deduction_index=-1;this.id=random_id();O_APP.Availabilities[this.id]=this;this.notifyObjects=[];this.render=function(){var J=0;for(var I=0;I<this.deductions.length;I++){var K=this.deductions[I];J+=parseFloat(K.value);}this.net_work_hours=this.hours_per_year-J;this.staffing_factor=this.round(this.hours_per_year/this.net_work_hours,6);this.availability_factor=this.round(this.net_work_hours/this.hours_per_year,6);var E='<availability2 id="'+this.id+'" hours_per_year="'+this.hours_per_year+'" net_work_hours="'+this.net_work_hours+'" staffing_factor="'+this.round(this.staffing_factor,2)+'" availability_factor="'+this.round(this.availability_factor,2)+'"><deductions>';E+="</deductions></availability2>";var H=transform(E,"availability");H=unescape(H);if($(this.div)){$(this.div).innerHTML=H;var F=this.select_deduction;this.TblWidget=new TableSelectionWidget(this.id+"_deductions_table",[{name:localize("^availability_deduction_name;"),width:"45%"},{name:localize("^availability_hours_per_year;"),width:"45%"}],F);var G=this.TblWidget;I=0;this.deductions.each(function(L){G.addRow(I,[L.name,L.value]);I++;});}fill_help_links(this.div);this.save();};this.add_deduction=function(G,I){if(G==undefined){var F='<modify_deductions id="'+this.id+'"><buttons><add/><cancel/></buttons></modify_deductions>';var H=transform(F,"availability");H=localize(H);O_APP.show_modal(H);$("deduction_name").focus();}else{if(!parseInt(I)>0){return false;}var E=this.deductions.length;this.deductions[E]=new Object;this.deductions[E].name=G;this.deductions[E].value=I;if($(this.div)){this.render();}O_APP.clear_modal();}};this.update_deduction=function(G,I){if(G==undefined){G=this.deductions[this.selected_deduction_index].name;I=this.deductions[this.selected_deduction_index].value;var F='<modify_deductions id="'+this.id+'" name="'+G+'" value="'+I+'"><buttons><update/><cancel/></buttons></modify_deductions>';var H=transform(F,"availability");H=localize(H);O_APP.show_modal(H);$("deduction_value").focus();}else{if(!parseInt(I)>0){return false;}var E=this.selected_deduction_index;this.deductions[E].name=G;this.deductions[E].value=I;if($(this.div)){this.render();}O_APP.clear_modal();}};this.remove_deduction=function(){if(confirm(localize("^confirm_remove_deduction; '")+this.deductions[this.selected_deduction_index].name+"'?")){this.deductions.splice(this.selected_deduction_index,1);this.selected_deduction_index=-1;if($(this.div)){this.render();}}else{}};this.select_deduction=function(E){A.selected_deduction_index=E.id;if($(A.id+"_update_deduction")){$(A.id+"_update_deduction").disabled=false;}if($(A.id+"_remove_deduction")){$(A.id+"_remove_deduction").disabled=false;}};}Availability.prototype.show=function(A){this.div=A;this.render();};Availability.prototype.set_hours_per_year=function(A){A=parseFloat(A);if(typeof (A)!="number"||isNaN(A)){alert(O_APP.strings["availability_enter_hours"]);this.hours_per_year=2080;}else{this.hours_per_year=A;}this.render();};Availability.prototype.save=function(){this.parent.save_availability(this.id);this.refresh();};Availability.prototype.round=function(C,A){var B=Math.pow(10,A);return Math.round(C*B)/B;};Availability.prototype.refresh=function(){this.notifyObjects.each(function(A){A.update_apply_availability();});};var Behaviour={list:new Array,register:function(A){Behaviour.list.push(A);},start:function(){Behaviour.addLoadEvent(function(){Behaviour.apply();});},apply:function(){for(h=0;sheet=Behaviour.list[h];h++){for(selector in sheet){list=document.getElementsBySelector(selector);if(!list){continue;}for(i=0;element=list[i];i++){sheet[selector](element);}}}},addLoadEvent:function(A){var B=window.onload;if(typeof window.onload!="function"){window.onload=A;}else{window.onload=function(){B();A();};}}};Behaviour.start();function getAllChildren(A){return A.all?A.all:A.getElementsByTagName("*");}getElementsBySelector=function(Q){if(!document.getElementsByTagName){return new Array();}var K=Q.split(" ");var F=new Array(document);for(var S=0;S<K.length;S++){token=K[S].replace(/^\s+/,"").replace(/\s+$/,"");if(token.indexOf("#")>-1){var N=token.split("#");var D=N[0];var M=N[1];var B=document.getElementById(M);if(D&&B.nodeName.toLowerCase()!=D){return new Array();}F=new Array(B);continue;}if(token.indexOf(".")>-1){var N=token.split(".");var D=N[0];var C=N[1];if(!D){D="*";}var H=new Array;var G=0;for(var T=0;T<F.length;T++){var I;if(D=="*"){I=getAllChildren(F[T]);}else{I=F[T].getElementsByTagName(D);}for(var P=0;P<I.length;P++){H[G++]=I[P];}}F=new Array;var L=0;for(var O=0;O<H.length;O++){if(H[O].className&&H[O].className.match(new RegExp("\\b"+C+"\\b"))){F[L++]=H[O];}}continue;}if(token.match(/^(\w*)\[(\w+)([=~\|\^\$\*]?)=?"?([^\]"]*)"?\]$/)){var D=RegExp.$1;var R=RegExp.$2;var A=RegExp.$3;var J=RegExp.$4;if(!D){D="*";}var H=new Array;var G=0;for(var T=0;T<F.length;T++){var I;if(D=="*"){I=getAllChildren(F[T]);}else{I=F[T].getElementsByTagName(D);}for(var P=0;P<I.length;P++){H[G++]=I[P];}}F=new Array;var L=0;var E;switch(A){case"=":E=function(U){return(U.getAttribute(R)==J);};break;case"~":E=function(U){return(U.getAttribute(R).match(new RegExp("\\b"+J+"\\b")));};break;case"|":E=function(U){return(U.getAttribute(R).match(new RegExp("^"+J+"-?")));};break;case"^":E=function(U){return(U.getAttribute(R).indexOf(J)==0);};break;case"$":E=function(U){return(U.getAttribute(R).lastIndexOf(J)==U.getAttribute(R).length-J.length);};break;case"*":E=function(U){return(U.getAttribute(R).indexOf(J)>-1);};break;default:E=function(U){return U.getAttribute(R);};}F=new Array;var L=0;for(var O=0;O<H.length;O++){if(E(H[O])){F[L++]=H[O];}}continue;}if(!F[0]){return ;}D=token;var H=new Array;var G=0;for(var T=0;T<F.length;T++){var I=F[T].getElementsByTagName(D);for(var P=0;P<I.length;P++){H[G++]=I[P];}}F=H;}return F;};function Brick_Constraint_Set(parent){var self=this;this.tabView1="";this.parent=parent;this.workflow_id=this.parent.workflow.workflowid;this.workflow=this.parent.workflow;this.dataset=this.workflow.dataset;this.dataset.addNotifyObject(this);this.xml_constraints_list=this.constraints_list_as_xml();this.brick_id="constraintset_"+this.workflow_id;O_APP.ActiveBricks[this.brick_id]=this;var xml_string="<brick_constraint_set id='"+this.brick_id+"'>"+this.xml_constraints_list+"</brick_constraint_set>";var html=transform(xml_string,"brick_constraint_set");this.container_html=html;this.editgrid=new FlexiGrid();this.editgrid.brick=this;this.editgrid.colorQuantiles=true;this.editgrid.shrinkRowLabels=true;this.editgrid.div_id=this.brick_id+"_edit_grid";this.editgrid.onCellUpdate=function(cell_id,value){this.brick.update_selected("change",value);};this.editgrid.columnNames=this.dataset.column_names;this.editgrid.rowNames=this.dataset.row_names;this.editgrid.title=localize("^operational_goal;: ");this.editgrid.selectAllFocusObject=this.brick_id+"_operations_value";this.requirements_grid=new FlexiGrid();this.requirements_grid.brick=this;this.requirements_grid.colorQuantiles=true;this.requirements_grid.shrinkRowLabels=true;this.requirements_grid.showMeanValues=true;this.requirements_grid.div_id=this.brick_id+"_requirements_grid";this.requirements_grid.columnNames=this.dataset.column_names;this.requirements_grid.rowNames=this.dataset.row_names;this.requirements_grid.title=localize("^requirements;");this.all_requirements_grid=new FlexiGrid();this.all_requirements_grid.brick=this;this.all_requirements_grid.colorQuantiles=true;this.all_requirements_grid.shrinkRowLabels=true;this.all_requirements_grid.showMeanValues=true;this.all_requirements_grid.div_id=this.brick_id+"_all_requirements_grid";this.all_requirements_grid.columnNames=this.dataset.column_names;this.all_requirements_grid.rowNames=this.dataset.row_names;this.all_requirements_grid.title=localize("^overall_requirements;");this.workflow.availability.notifyObjects.push(this);this.toggle_templates_popup=function(){this.templates_popup.toggle();};this.reset_templates_popup_body=function(){var html=this.build_templates_body();};this.build_templates_body=function(){var params=$H({i:"ConstraintSet.get_templates",blocktype:this.parent.blocktype,columns:this.parent.columns,rows:this.parent.rows,format:"json"});var brick_id=this.brick_id;var new_template_action='O_APP.ActiveBricks["'+this.brick_id+'"].save_as_template(1);';var apply_template_action='if ( confirm( "^confirm_apply_constraints_template;" ) ) O_APP.ActiveBricks["'+this.brick_id+'"].apply_template();';var delete_template_action='if ( confirm( "^confirm_delete_template;" ) ) O_APP.ActiveBricks["'+this.brick_id+'"].delete_template();';var res=get_server_object(params,"json");var response=eval(res);res="<constraint_templates user_is_admin='"+O_APP.USER.administrator+"' brick_id='"+brick_id+"' new_template_action = '"+new_template_action+"' apply_template_action = '"+apply_template_action+"' delete_template_action = '"+delete_template_action+"'>"+res+"</constraint_templates>";var html=transform(res,"brick_constraint_set");this.templates_popup.overlay.setBody(html);var onChange=this.select_template;this.templatesTbl=new TableSelectionWidget(brick_id+"_templates",[{name:localize("^name;"),width:"45%"},{name:localize("^description;"),width:"45%"}],onChange);var tTbl=this.templatesTbl;response.each(function(template){tTbl.addRow(template.id,[unescape(template.name),unescape(template.description)]);});};this.select_template=function(el){self.selected_template=el.id;if($(self.brick_id+"_apply_template_btn")){$(self.brick_id+"_apply_template_btn").disabled=false;}if($(self.brick_id+"_delete_template_btn")){$(self.brick_id+"_delete_template_btn").disabled=false;}};this.templates_popup=new Popup(localize("Templates"),"600px",this.brick_id+"_templates_popup_btn","tr","br");this.reset_templates_popup_body();}Brick_Constraint_Set.prototype.refresh=function(){var B=false;for(var C=0;C<this.workflow.constraint_requirements.all_requirements.length;C++){if(this.workflow.constraint_requirements.all_requirements[C]>0){B=true;break;}}if(B){var A=this.workflow.constraint_requirements.calculate_requirements(this.current_constraint,this.brick_id);this.all_requirements_grid.values=this.workflow.constraint_requirements.get_all_requirements();this.all_requirements_grid.draw();this.requirements_grid.values=A;this.requirements_grid.draw();this.requirements_grid.highlightByIndex(this.workflow.constraint_requirements.get_driven_cells(this.current_constraint));var D=$(this.brick_id+"_apply_availablity_reqs");D.checked=false;D.click();this.all_requirements_grid.highlightByIndex(this.workflow.constraint_requirements.get_driven_cells(this.current_constraint));D=$(this.brick_id+"_apply_availablity_all_reqs");D.checked=false;D.click();this.update_officer_cost();this.update_overall_cost();}};Brick_Constraint_Set.prototype.show=function(E){if(this.parent.workflow.dataset.jobid){return ;}if(this.div){}else{this.div=E;}$(E).innerHTML=this.container_html;this.tabView1=new YAHOO.widget.TabView(this.brick_id+"_constraint_tab_control",{orientation:"top"});this.tabView1.parent=this;var B=this.parent.active_constraints;for(var A=0;A<B.length;A++){var D=$(B[A]);var C=D.getElementsByTagName("input")[0];C.checked=true;}this.tabView1.on("contentReady",function(){this.parent.edit_constraints_tab=this.getTab(0);this.parent.requirements_tab=this.getTab(1);var F=$("MAX_POS");var G=F.getElementsByTagName("td")[1];this.parent.all_requirements_grid.values=this.parent.workflow.constraint_requirements.get_all_requirements();this.parent.all_requirements_grid.draw();this.parent.select_constraint(G);C=$(this.parent.brick_id+"_apply_availablity_all_reqs");C.checked=false;C.click();this.parent.update_officer_cost();this.parent.update_overall_cost();});};Brick_Constraint_Set.prototype.select_constraint=function(B){var J=B.parentNode;var H=O_APP.StatID.value_for(J.id);this.current_constraint=H;var C=J.parentNode;var M=C.getElementsByTagName("tr");for(var D=0;D<M.length;D++){Element.removeClassName(M[D],"constraint_selected");}Element.addClassName(J,"constraint_selected");var I=this.edit_constraints_tab;if(I._configs.content.value===undefined){var E='<table width="100%"><tr valign="middle"><td><select style="margin-right: 3px;" id="'+this.brick_id+'_operations_select" onChange="">	<option value="change">^change;</option>	<option value="increase">^increase;</option>	<option value="decrease">^decrease;</option>	<option value="multiply">^multiply;</option>	<option value="divide">^divide;</option></select>^grid_operations_message;<input type="text" size="5" style="margin-left: 8px" id="'+this.brick_id+'_operations_value"/><input type="button" id="'+this.brick_id+'_operations_go" onclick="O_APP.ActiveBricks.'+this.brick_id+'.update_selected_via_go_btn();" class="btn inline_spaced" value="^lbl_btn_go;" title="^btn_go_description;"/><input id="'+this.brick_id+'_templates_popup_btn" type="button"  value="^btn_templates_view;" title="^btn_templates_view_description;" class="btn_alt inline_spaced" onClick="O_APP.ActiveBricks[\''+this.brick_id+'\'].toggle_templates_popup()"/></td></tr><tr><td>	<div id="'+this.brick_id+'_edit_grid" style="position: relative;"></div></td></tr></table>';E=localize(E);I.set("content",E);}else{}var K=this.parent.data_to_array(H);this.editgrid.values=K;var G=false;this.editgrid.draw(G);this.requirements_grid.values=this.workflow.constraint_requirements.requirements_as_array(this.current_constraint);this.requirements_grid.draw();this.requirements_grid.highlightByIndex(this.workflow.constraint_requirements.get_driven_cells(this.current_constraint));this.all_requirements_grid.highlightByIndex(this.workflow.constraint_requirements.get_driven_cells(this.current_constraint));var F=$(this.brick_id+"_apply_availablity_reqs");F.checked=false;F.click();var A=(Element.getHeight(this.brick_id+"_edit_grid_container")+37);if(A<574){A=574;}Element.setStyle(this.brick_id+"_constraints_list",{height:A+"px"});var L=localize("^"+J.id+"_description_text;");$(this.brick_id+"_description_text").innerHTML=L;this.update_officer_cost();};Brick_Constraint_Set.prototype.apply_constraint=function(D){var G=D.parentNode.parentNode;var H=G.parentNode;var B=H.getElementsByTagName("input");var F=new Array();for(var C=0;C<B.length;C++){var A=B[C];if(A.checked){F.push(A.parentNode.parentNode.id);}}this.parent.active_constraints=F;this.parent.save();this.all_requirements_grid.values=this.workflow.constraint_requirements.get_all_requirements();var E=$(this.brick_id+"_apply_availablity_all_reqs");E.checked=false;E.click();this.all_requirements_grid.draw();this.requirements_grid.highlightByIndex(this.workflow.constraint_requirements.get_driven_cells(this.current_constraint));this.all_requirements_grid.highlightByIndex(this.workflow.constraint_requirements.get_driven_cells(this.current_constraint));this.update_overall_cost();};Brick_Constraint_Set.prototype.update_officer_cost=function(){var A=this.requirements_grid.values;this.workflow.insert_officer_cost(this.brick_id+"_requirements_officer_cost",A);};Brick_Constraint_Set.prototype.update_overall_cost=function(){var A=this.all_requirements_grid.values;this.workflow.insert_officer_cost(this.brick_id+"_overall_requirements_officer_cost",A);};Brick_Constraint_Set.prototype.constraints_list_as_xml=function(){var B="";var A="";B+="<constraints_list>";for(var C=0;C<O_APP.constraints.length;C++){var D=O_APP.constraints[C];if(D.has_percentile){A=1;}else{A=0;}B+="  <constraint id='"+D.id+"' name='"+D.name+"' text='"+D.display_text+"' desc='"+D.description+"' order='"+D.order+"' has_percentile='"+A+"'/>";}B+="</constraints_list>";return B;};Brick_Constraint_Set.prototype.update_selected_via_go_btn=function(){this.update_selected();};Brick_Constraint_Set.prototype.update_selected=function(){var K=this.editgrid.getSelectedCells();if(!K.length){alert(O_APP.strings["no_selected_cells"]);return false;}if(this.dataset.warnings){alert(O_APP.strings["warnings_stop"]);return false;}if(this.dataset.is_saving){alert(O_APP.strings["saving_dataset_trap"]);return false;}operation=$(this.brick_id+"_operations_select").value;value=$(this.brick_id+"_operations_value").value;for(var F=0;F<K.length;F++){var I=K[F].id;I=this.editgrid.id_to_short_id(I);var C=I.substring(0,2);var J=I.substring(2,4);var H=parseInt(C,10);var A=parseInt(J,10);value=parseFloat(value);var D=parseFloat(this.editgrid.values[H][A]);switch(operation){case"change":D=value;break;case"increase":D+=value;break;case"decrease":D-=value;break;case"multiply":D*=value;break;case"divide":D/=value;break;}D=Math.round(D*100)/100;this.editgrid.values[H][A]=D;var B=this.workflow.dataset.block_id_from_cell_id(I);this.workflow.constraintset.update_value(B,this.current_constraint,D,false);}this.workflow.constraintset.save();O_APP.log("calling calculate requirements for brick "+this.brick_id);var E=this.workflow.constraint_requirements.calculate_requirements(this.current_constraint,this.brick_id);this.all_requirements_grid.values=this.workflow.constraint_requirements.get_all_requirements();this.all_requirements_grid.draw();this.requirements_grid.values=E;this.requirements_grid.draw();this.requirements_grid.highlightByIndex(this.workflow.constraint_requirements.get_driven_cells(this.current_constraint));this.all_requirements_grid.highlightByIndex(this.workflow.constraint_requirements.get_driven_cells(this.current_constraint));var G=$(this.brick_id+"_apply_availablity_reqs");G.checked=false;G.click();var G=$(this.brick_id+"_apply_availablity_all_reqs");G.checked=false;G.click();this.editgrid.draw();this.editgrid.selectedCells=[];this.tabView1.set("activeTab",this.tabView1.getTab(1));this.update_officer_cost();this.update_overall_cost();};Brick_Constraint_Set.prototype.save_as_template=function(H){switch(H){case 1:var C="<save_template brick_id = '"+this.brick_id+"'/>";var A=transform(C,"brick_constraint_set");this.templates_popup.overlay.setBody(A);break;case 2:var D=this.workflow.constraintset_id;var B=$(this.brick_id+"_template_name").value;var I=$(this.brick_id+"_template_description").value;if(B!=null&&B!=""){var F=$H({i:"ConstraintSet.save_as_template",id:D,name:B,description:I,format:"json"});var G=this.brick_id;var E=function(J){O_APP.ActiveBricks[G].reset_templates_popup_body();};ajax_request(F.toQueryString(),null,E);}break;default:alert("none?");break;}};Brick_Constraint_Set.prototype.apply_template=function(){var B=this.workflow.constraintset_id;var A=parseInt(this.selected_template,10);var E=$H({i:"ConstraintSet.apply_template",current_id:B,template_id:A,format:"json"});var C=get_server_object(E,"json");var D=new Constraintset(this.parent.workflow,B);D.init();D.show(this.div);};Brick_Constraint_Set.prototype.delete_template=function(){var A=this.selected_template;var D=$H({i:"ConstraintSet.delete_template",template_id:A,format:"json"});var C=this.brick_id;var B=function(E){O_APP.ActiveBricks[C].reset_templates_popup_body();};ajax_request(D.toQueryString(),null,B);};Brick_Constraint_Set.prototype.toggle_apply_availability=function(A,C){if(A.checked){var B=this.parent.workflow.availability.staffing_factor;this[C].multiply_values(B);}else{this[C].revert_values(B);}if(C==="requirements_grid"){this.update_officer_cost(this[C].values);}else{if(C==="all_requirements_grid"){this.update_overall_cost(this[C].values);}}};Brick_Constraint_Set.prototype.update_apply_availability=function(){var C=[{el:"_apply_availablity_reqs",name:"requirements_grid"},{el:"_apply_availablity_all_reqs",name:"all_requirements_grid"}];var D=this.brick_id;var B=this.parent.workflow.availability.staffing_factor;var A=this;C.each(function(E){var F=$(D+E.el);if(F&&F.checked){A[E.name].revert_values(B);A[E.name].multiply_values(B);}});};function Brick_Dataset(dataset_id,workflow){var xml_string;var html;var self=this;this.grid_view="";this.block_view="";this.calibrate_view="";this.tg=new ToggleGroup([dataset_id+"_gridview",dataset_id+"_blockview",dataset_id+"_calibrate"]);this.dataset_id=dataset_id;this.dataset=workflow.dataset;if(workflow.dataset===undefined){O_APP.log("Brick_Dataset constructor - dataset for workflow is undefined");return 0;}this.dataset.addNotifyObject(this);this.brick_id="dataset_"+dataset_id;O_APP.ActiveBricks[this.brick_id]=this;xml_string="<brick_dataset_container id='"+dataset_id+"' name='"+escape(this.dataset.name)+"' brick_id='"+this.brick_id+"'/>";html=transform(xml_string,"brick_dataset");this.container_html=html;xml_string="<grid_html id='"+dataset_id+"' brick_id='"+this.brick_id+"'/>";html=transform(xml_string,"brick_dataset_grid_view");this.grid_html=html;xml_string="<block_html id='"+dataset_id+"' brick_id='"+this.brick_id+"'/>";html=transform(xml_string,"brick_block_view");this.block_html=html;if(this.dataset.response_times){xml_string="<calibrate_html id='"+dataset_id+"' brick_id='"+this.brick_id+"'/>";html=transform(xml_string,"brick_dataset_calibrate");this.calibrate_html=html;}else{}this.popups=new Array();this.notes_popup=new Popup(localize("^btn_notes_view;"),"450px",this.brick_id+"_notes_popup_btn","tr","br");this.reset_notes_popup_body();this.popups.push(this.notes_popup);this.warnings_popup=new Popup(localize("^warnings;"),"400px",this.brick_id+"_warnings_popup_btn","tl","bl");this.popups.push(this.warnings_popup);this.toggle_versions_popup=function(){this.hide_popups();this.versions_popup.toggle();};this.reset_versions_popup_body=function(){var html=this.build_versions_body();};this.build_versions_body=function(){var params=$H({i:"Dataset.get_versions_list",id:this.dataset_id,format:"json"});var brick_id="dataset_"+this.dataset_id;var resText=get_server_object(params);var response=eval(resText);var resText="<dataset_versions brick_id='"+brick_id+"'></dataset_versions>";var html=transform(resText,"brick_dataset");this.versions_popup.overlay.setBody(html);var onChange=this.select_version;this.versionsTbl=new TableSelectionWidget(brick_id+"_versions",[{name:localize("^version;"),width:"10%"},{name:localize("^change_log_notes;"),width:"60%"},{name:localize("^date;"),width:"20%"}],onChange);var vTbl=this.versionsTbl;response.each(function(version){vTbl.addRow(version.revision,[version.revision,localize(unescape(version.change_log)),version.revision_date]);});};this.select_version=function(el){self.selected_version=el.id;if($(self.brick_id+"_fork_btn")){$(self.brick_id+"_fork_btn").disabled=false;}if($(self.brick_id+"_rollback_btn")){$(self.brick_id+"_rollback_btn").disabled=false;}};this.versions_popup=new Popup(localize("Versions"),"600px",this.brick_id+"_versions_popup_btn","tr","br");this.reset_versions_popup_body();this.popups.push(this.versions_popup);this.toggle_templates_popup=function(){this.hide_popups();this.templates_popup.toggle();};this.reset_templates_popup_body=function(){var html=this.build_templates_body();};this.build_templates_body=function(){var params=$H({i:"SWTemplate.get_templates",blocktype:this.dataset.blocktype,rows:this.dataset.rows,columns:this.dataset.columns,format:"json"});var brick_id=this.brick_id;var new_template_action='O_APP.ActiveBricks["'+this.brick_id+'"].save_as_template(1);';var apply_template_action='if ( confirm( "^confirm_apply_template;" ) ) O_APP.ActiveBricks["'+this.brick_id+'"].apply_template();';var delete_template_action='if ( confirm( "^confirm_delete_template;" ) ) O_APP.ActiveBricks["'+this.brick_id+'"].delete_template();';var overwrite_template_action='if ( confirm( "^confirm_overwrite_template;" ) ) O_APP.ActiveBricks["'+this.brick_id+'"].overwrite_template();';var res=get_server_object(params);var response=eval(res);res="<dataset_templates user_is_admin='"+O_APP.USER.administrator+"' brick_id='"+brick_id+"' new_template_action = '"+new_template_action+"' apply_template_action = '"+apply_template_action+"' delete_template_action = '"+delete_template_action+"' overwrite_template_action = '"+overwrite_template_action+"'></dataset_templates>";var html=transform(res,"brick_dataset");this.templates_popup.overlay.setBody(html);var onChange=this.select_template;this.templatesTbl=new TableSelectionWidget(brick_id+"_templates",[{name:localize("^name;"),width:"30%"},{name:localize("^datasets_lbl_modified_date;"),width:"60%"}],onChange);var tTbl=this.templatesTbl;response.each(function(template){tTbl.addRow(template.id,[unescape(template.name),template.last_updated]);});};this.select_template=function(el){self.selected_template=el.id;if($(self.brick_id+"_apply_dataset_template_btn")){$(self.brick_id+"_apply_dataset_template_btn").disabled=false;}if($(self.brick_id+"_delete_dataset_template_btn")){$(self.brick_id+"_delete_dataset_template_btn").disabled=false;}};this.templates_popup=new Popup(localize("Templates"),"600px",this.brick_id+"_templates_popup_btn","tr","br");this.reset_templates_popup_body();this.popups.push(this.templates_popup);}Brick_Dataset.prototype.show=function(B){var A=this.dataset_id;$(B).innerHTML=this.container_html;$(A+"_gridview").innerHTML=this.grid_html;$(A+"_blockview").innerHTML=this.block_html;if(this.dataset.response_times){$(A+"_calibrate").innerHTML=this.calibrate_html;this.calibrate_view=new Dataset_CalibrateView(this);this.calibrate_view.init();}this.tg.toggle(A+"_gridview");this.grid_view=new Dataset_GridView(this);this.grid_view.init();this.block_view=new Dataset_BlockView(this);this.block_view.init();this.reset_warnings_popup_body();};Brick_Dataset.prototype.show_grid_view=function(){this.grid_view.refresh();this.tg.toggle(this.dataset_id+"_gridview");};Brick_Dataset.prototype.show_block_view=function(){this.block_view.refresh();this.tg.toggle(this.dataset_id+"_blockview");};Brick_Dataset.prototype.show_calibrate=function(){this.tg.toggle(this.dataset_id+"_calibrate");};Brick_Dataset.prototype.export_data=function(){var A=O_APP.BASE_URL+"/services/?i=ImportExport.export_dataset_csv&filename="+this.dataset.name+".csv&sid="+O_APP.SESSION_ID+"&language="+O_APP.language+"&id="+this.dataset_id;var B=window.open(A,"export_window","",true);};Brick_Dataset.prototype.refresh=function(){this.reset_notes_popup_body();this.reset_versions_popup_body();this.reset_warnings_popup_body();};Brick_Dataset.prototype.hide_popups=function(){for(var A=0;A<this.popups.length;A++){if(this.popups[A].showing){this.popups[A].overlay.hide();set_selects_visible(this.popups[A],"none");}}};Brick_Dataset.prototype.toggle_notes_popup=function(){this.hide_popups();this.notes_popup.toggle();};Brick_Dataset.prototype.reset_notes_popup_body=function(){var B=this.build_notes_body();this.notes_popup.overlay.setBody(B);var A=unescape(unescape(this.dataset.notes));if($(this.brick_id+"_notes_text")){$(this.brick_id+"_notes_text").innerHTML=localize(A);}else{O_APP.log(this.brick_id+"_notes_text doesn't exist");}if($(this.brick_id+"_import_text")){$(this.brick_id+"_import_text").innerHTML=localize(this.dataset.import_text);}else{O_APP.log(this.brick_id+"_import_text doesn't exist");}};Brick_Dataset.prototype.build_notes_body=function(){var C=unescape(unescape(this.dataset.notes));var A="<dataset_notes brick_id='"+this.brick_id+"' notes='"+C+"'/>";var B=transform(A,"brick_dataset");return B;};Brick_Dataset.prototype.save_note=function(A){this.dataset.notes=A;var C=$H({i:"Dataset.save_note",notes:A,id:this.dataset.id});var B=function(D){};ajax_request(C.toQueryString(),null,B);};Brick_Dataset.prototype.fork=function(F){if(!this.selected_version){return ;}switch(F){case 1:var A="<fork_dataset_details brick_id = '"+this.brick_id+"'/>";var B=transform(A,"brick_dataset");this.versions_popup.overlay.setBody(B);break;case 2:var C=$(this.brick_id+"_dataset_name").value;var E=$(this.brick_id+"_dataset_description").value;var D=$(this.brick_id+"_dataset_shared").checked;if(C!=null&&C!=""){this.dataset.fork(this.selected_version,C,E,D);this.reset_versions_popup_body();if(this.versions_popup.showing){this.versions_popup.toggle();}}break;default:alert("unknown command");break;}};Brick_Dataset.prototype.rollback=function(){if(!this.selected_version){return ;}var C=localize("^datasets_message_confirm_rollback;");var A=confirm(C+this.selected_version);if(!A){return ;}this.dataset.roll_back(this.selected_version);this.dataset.refresh_data();for(var B=0;B<this.dataset.notifyObjects.length;B++){this.dataset.notifyObjects[B].refresh();}if(this.versions_popup.showing){this.versions_popup.toggle();}};Brick_Dataset.prototype.save_as_template=function(F){switch(F){case 1:var A="<save_template brick_id = '"+this.brick_id+"'/>";var B=transform(A,"brick_dataset");this.templates_popup.overlay.setBody(B);break;case 2:var C=$(this.brick_id+"_template_name").value;var E=new Template();E.name=C;E.columns=this.dataset.columns;E.rows=this.dataset.rows;E.column_labels=this.dataset.column_names;E.row_labels=this.dataset.row_names;E.blocktype=this.dataset.blocktype;for(var D=0;D<this.dataset.data.input.length;D++){E.response_speed1.push(this.dataset.data.input[D][19]);E.response_speed2.push(this.dataset.data.input[D][20]);E.response_speed3.push(this.dataset.data.input[D][21]);E.response_speed4.push(this.dataset.data.input[D][22]);E.response_speed5.push(this.dataset.data.input[D][23]);E.response_speed6.push(this.dataset.data.input[D][24]);E.response_speed7.push(this.dataset.data.input[D][25]);E.response_speed8.push(this.dataset.data.input[D][26]);E.response_speed9.push(this.dataset.data.input[D][27]);E.response_speed10.push(this.dataset.data.input[D][28]);E.region_area.push(this.dataset.data.input[D][18]);E.patrol_speed.push(this.dataset.data.input[D][17]);E.street_length.push(this.dataset.data.input[D][34]);E.supp_units.push(this.dataset.data.input[D][35]);}E.insert();this.reset_templates_popup_body();break;default:alert("none?");break;}};Brick_Dataset.prototype.apply_template=function(){var params=$H({i:"SWTemplate.get",id:this.selected_template,format:"json"});var brick_id=this.brick_id;var onComplete=function(response){var res=eval("("+response.responseText+")");res=res[0];res.response_speed1=eval("("+res.response_speed1+")");res.response_speed2=eval("("+res.response_speed2+")");res.response_speed3=eval("("+res.response_speed3+")");res.response_speed4=eval("("+res.response_speed4+")");res.response_speed5=eval("("+res.response_speed5+")");res.response_speed6=eval("("+res.response_speed6+")");res.response_speed7=eval("("+res.response_speed7+")");res.response_speed8=eval("("+res.response_speed8+")");res.response_speed9=eval("("+res.response_speed9+")");res.response_speed10=eval("("+res.response_speed10+")");res.region_area=eval("("+res.region_area+")");res.patrol_speed=eval("("+res.patrol_speed+")");res.street_length=eval("("+res.street_length+")");res.supp_units=eval("("+res.supp_units+")");var ds=O_APP.ActiveBricks[brick_id].dataset;for(var i=0;i<ds.data.input.length;i++){ds.data.input[i][19]=res.response_speed1[i];ds.data.input[i][20]=res.response_speed2[i];ds.data.input[i][21]=res.response_speed3[i];ds.data.input[i][22]=res.response_speed4[i];ds.data.input[i][23]=res.response_speed5[i];ds.data.input[i][24]=res.response_speed6[i];ds.data.input[i][25]=res.response_speed7[i];ds.data.input[i][26]=res.response_speed8[i];ds.data.input[i][27]=res.response_speed9[i];ds.data.input[i][28]=res.response_speed10[i];ds.data.input[i][18]=res.region_area[i];ds.data.input[i][17]=res.patrol_speed[i];ds.data.input[i][34]=res.street_length[i];ds.data.input[i][35]=res.supp_units[i];}O_APP.ActiveBricks[brick_id].grid_view.refresh();var log=localize("^applied_template; "+res.name);ds.save_data(log);O_APP.ActiveBricks[brick_id].toggle_templates_popup();};ajax_request(params.toQueryString(),null,onComplete);this.templatesTbl.clearSelected();this.selected_template=undefined;if($(this.brick_id+"_apply_dataset_template_btn")){$(this.brick_id+"_apply_dataset_template_btn").disabled=true;}if($(this.brick_id+"_delete_dataset_template_btn")){$(this.brick_id+"_delete_dataset_template_btn").disabled=true;}};Brick_Dataset.prototype.delete_template=function(){var C=$H({i:"SWTemplate.delete",id:this.selected_template,format:"xml"});var B=this.brick_id;var A=function(D){O_APP.ActiveBricks[B].reset_templates_popup_body();};ajax_request(C.toQueryString(),null,A);};Brick_Dataset.prototype.toggle_warnings_popup=function(){this.hide_popups();this.warnings_popup.toggle();};Brick_Dataset.prototype.reset_warnings_popup_body=function(){var A=this.build_warnings_body();};Brick_Dataset.prototype.build_warnings_body=function(){var params=$H({i:"Dataset.get_warnings",id:this.dataset_id,format:"json"});var dataset=this.dataset;var brick_id=this.brick_id;var oncomplete=function(response){var warnings=eval("("+response.responseText+")");var re=new RegExp(/(\d+)\|/gm);var count=0;if(warnings.critical!=""){var warnings_html=localize(warnings.critical);var new_warnings_html=warnings_html;while(match=re.exec(warnings_html)){var blockid=match[1];count++;try{var label=dataset.blockid_to_labels(blockid)+": ";var to_replace=blockid+"|";new_warnings_html=new_warnings_html.replace(to_replace,label);}catch(ex){O_APP.log(ex.message);alert(ex.message);}}}if(warnings.noncritical!=""){var warnings_noncritical_html=localize(warnings.noncritical);var new_warnings_noncritical_html=warnings_noncritical_html;count=0;while(match=re.exec(warnings_noncritical_html)){var blockid=match[1];count++;try{var label=dataset.blockid_to_labels(blockid)+": ";var to_replace=blockid+"|";new_warnings_noncritical_html=new_warnings_noncritical_html.replace(to_replace,label);}catch(ex){O_APP.log(ex.message);alert(ex.message);}}}if(new_warnings_html.length>0||new_warnings_noncritical_html.length>0){if(new_warnings_html.length>0){O_APP.ActiveBricks[brick_id].dataset.warnings=true;}var new_html=new_warnings_html+new_warnings_noncritical_html;new_html="<div class='scroll_300' style='background-color: #fff; border: 1px solid #000'>"+new_html+"</div>";O_APP.ActiveBricks[brick_id].warnings_popup.overlay.setBody(new_html);try{$(brick_id+"_warnings_popup_btn").style.visibility="visible";}catch(e){alert(e.message);}}else{O_APP.ActiveBricks[brick_id].dataset.warnings=false;$(brick_id+"_warnings_popup_btn").style.visibility="hidden";}};ajax_request(params.toQueryString(),null,oncomplete);};function Brick_Dataset_Job(A,E){var D;this.dataset_id=A;this.dataset=E.dataset;this.workflow=E;this.brick_id="dataset_"+A;O_APP.ActiveBricks[this.brick_id]=this;var C=this.dataset.xml_string;D=transform(C,"brick_dataset_job");this.container_html=D;var B=new PeriodicalExecuter(this.checkJobStatus,10);B.parent=this;B.workflow_id=this.dataset.workflow.workflow_id;this.dataset.workflow.pe=B;}Brick_Dataset_Job.prototype.show=function(A){$(A).innerHTML=this.container_html;this.div=A;};Brick_Dataset_Job.prototype.checkJobStatus=function(){var A=this.parent.dataset_id;var E=this.parent.dataset.workflow;var C=this.parent.get_job(this.parent,A,E.workflowid);if(!C.jobid){this.stop();if(E.needs_to_fork){E.dataset_id=E.fork_dataset(A,this.parent.workflow.name,this.parent.workflow.desc);}E.dataset=new Dataset(E);E.dataset.show(this.parent.div);E.render_dependent_tabs();var B=this.parent.dataset.workflow.yui_tabs;B.enable_tabs();E.constraintset=new Constraintset(E);E.constraintset.create();E.constraintset_id=E.constraintset.id;E.save_constraintset_id();E.constraintset.init();E.constraintset.show("YUI_Workflow_"+E.workflowid+"_constraintset");}else{try{$(A+"_job_log").innerHTML="<b>CLEARED IT</b>";$(A+"_job_log").innerHTML="<pre>"+C.job_log+"</pre>";}catch(D){O_APP.log(A+"_job_log didn't exist in DOM");}if(C.pid=="died"){new Insertion.Bottom($(A+"_job_log"),"<span class='error'>ERROR:  Process failed!!</span>");this.stop();}}};Brick_Dataset_Job.prototype.get_job=function(C,A,D){var G=$H({i:"Dataset.get_cm_import_job",id:A,wf_id:C.workflow.workflowid,format:"xml"});var B=get_server_object(G,"xml");var F=str_to_xml(B);var E={};if(F.getElementsByTagName("jobid")[0]){E.jobid=parseInt(F.getElementsByTagName("jobid")[0].firstChild.nodeValue);E.id=parseInt(F.getElementsByTagName("dataset_id")[0].firstChild.nodeValue);E.name=F.getElementsByTagName("dataset_name")[0].firstChild.nodeValue;if(F.getElementsByTagName("dataset_description")[0].firstChild){E.description=F.getElementsByTagName("dataset_description")[0].firstChild.nodeValue;}E.job_log=F.getElementsByTagName("job_log")[0].firstChild.nodeValue;E.pid=F.getElementsByTagName("pid")[0].firstChild.nodeValue;E.xml_string=B;}return E;};function CADmineImport(B,C){var A=this;this.div=$(B);this.prefix=B;this.togglegroups=[];if(C){this.wizardobj=C;this.blocktype=C.data.dataset_type||0;this.interval=C.data.interval;this.name=C.data.name;this.description=C.data.description;this.context="workflow";this.is_public=true;}else{this.blocktype;this.interval=O_APP.USER.default_block_interval;this.name;this.context="dataset";this.is_public=true;}this.description;this.units="";this.districts="";this.calltypes="";this.priorities="";this.dispositions="";this.begindate="";this.weeks=0;this.filled_filters=[];this.init();this.select_template=function(D){if(D==undefined){A.selected_template=undefined;A.TblWidget.clearSelected();if($(A.prefix+"_clear_dataset_template_btn")){$(A.prefix+"_clear_dataset_template_btn").disabled=true;}}else{A.selected_template=D.id;if($(A.prefix+"_clear_dataset_template_btn")){$(A.prefix+"_clear_dataset_template_btn").disabled=false;}}};}CADmineImport.prototype.init=function(){var B="";if(this.wizardobj){B=this.block_layout;}Element.hide(this.div.id);var A="<cadmine_import prefix='"+this.prefix+"' block_layout='"+B+"'/>";var D=transform(A,"cadmine_import");this.div.innerHTML=D;var C=new YAHOO.widget.TabView("cadmine_import_param_tabs");this.tabcontrol=C;this.tabcontrol.parent=this;this.tabcontrol.on("contentReady",function(){this.parent.get_cadmine_dates();this.parent.render_dates();this.parent.render_tab("units");this.parent.render_tab("districts");this.parent.render_tab("calltypes");this.parent.render_tab("priorities");this.parent.render_tab("dispositions");var E=$(this.parent.prefix+"_interval")||undefined;if(E){E.selectedIndex=interval_to_selectedIndex(this.parent.interval);}this.parent.render_templates_tab();Element.show(this.parent.div.id);});};CADmineImport.prototype.get_cadmine_dates=function(){var A=$(this.prefix+"_beginning_available_date");A.innerHTML=O_APP.min_cadmine_date;A=$(this.prefix+"_ending_available_date");A.innerHTML=O_APP.max_cadmine_date;};CADmineImport.prototype.filter_type_select=function(C,D,B){var A=C+"_"+D+"_";if(B==0){Element.show(A+"list_select");Element.hide(A+"advanced_select");Element.show(A+"list_instructions");Element.hide(A+"advanced_instructions");}else{if(B==1){Element.hide(A+"list_select");Element.show(A+"advanced_select");Element.hide(A+"list_instructions");Element.show(A+"advanced_instructions");}else{alert("unknown select value");}}};CADmineImport.prototype.render_dates=function(){var C=new Date();var D=C.getFullYear();var B=C.getMonth()+1;var A=C.getDate();var G=B+"/"+A+"/"+D;var E=this.prefix;$(E+"_begin_date").value=D+"-"+B+"-"+A;var F=function(K){if(K.date){var I=K.date.getFullYear();var J=K.date.getMonth()+1;var H=K.date.getDate();$(E+"_begin_date").value=I+"-"+J+"-"+H;O_APP.CADmineImports[E].begindate=I+"-"+J+"-"+H;}};Calendar.setup({flat:E+"_begin_calendar",flatCallback:F,weekNumbers:false,range:[2000,2010],showOthers:true,date:G});};CADmineImport.prototype.render_tab=function(B){var A=this.get_param_structure(B);if($(this.prefix+"_"+B)){$(this.prefix+"_"+B).innerHTML=A;$(this.prefix+"_"+B+"_advanced_select").hide();$(this.prefix+"_"+B+"_advanced_instructions").hide();this.togglegroups[B]=new ToggleGroup([this.prefix+"_"+B+"_panel_filters",this.prefix+"_"+B+"_panel_details"]);this.togglegroups[B].toggle(this.prefix+"_"+B+"_panel_details");this.fill_param_structure(B);}else{O_APP.log("render_tab: tab container doesnt exist");}};CADmineImport.prototype.show_filters=function(A){this.togglegroups[A].toggle(this.prefix+"_"+A+"_panel_filters");};CADmineImport.prototype.show_details=function(A){this.togglegroups[A].toggle(this.prefix+"_"+A+"_panel_details");};CADmineImport.prototype.get_param_structure=function(C){var A="<param_structure prefix='"+this.prefix+"' fld='"+C+"'/>";var B=transform(A,"cadmine_import");return B;};CADmineImport.prototype.fill_param_structure=function(D){var A=O_APP.CADmine_distincts[D];var B=$(this.prefix+"_"+D+"_values_list");var C=D+"_DoubleListWidget";this[C]=new DoubleListWidget(B.id,[],localize("^include;"),localize("^exclude;"));this[C].insertFullArray(A,true);};CADmineImport.prototype.fill_filter_list=function(field){var params=$H({i:"ImportFilter.get_filters",format:"json",f:field});var oncomplete=function(response){var res=eval("("+response.responseText+")");var codes=res.codes;var el=$(prefix+"_"+field+"_values_list");for(var i=0;i<codes.length;i++){el.options[i]=new Option(codes[i],i);}};ajax_request(params.toQueryString(),null,oncomplete);};CADmineImport.prototype.get_filters=function(field,select_list){if(this.filled_filters[field]){return false;}var params=$H({i:"ImportFilter.get_filter_list",format:"json",f:field});var prefix=this.prefix;var oncomplete=function(response){var filters=eval("("+response.responseText+")");var el=$(select_list);var current_count=el.options.length;for(var i=0;i<filters.length;i++){el.options[i+current_count]=new Option(filters[i].name,filters[i].id);}};ajax_request(params.toQueryString(),null,oncomplete);this.filled_filters[field]=1;};CADmineImport.prototype.filter_list_handler=function(B,D,A){var C=A;if(C.value!=""){$(B+"_"+D+"_delete").disabled=0;$(B+"_"+D+"_rename").disabled=0;$(B+"_"+D+"_load").disabled=0;}else{$(B+"_"+D+"_delete").disabled=1;$(B+"_"+D+"_rename").disabled=1;$(B+"_"+D+"_load").disabled=1;}};CADmineImport.prototype.add=function(H,F){var I=prompt(O_APP.strings["new_filter_name"]);if(I){var D=H+"_"+F+"_filter_list";var E=$(D);var G=false;var B=$A(E.options);B.each(function(K){var L=K.text;if(I==L){G=true;}});if(G==true){alert(O_APP.strings["new_filter_name_error"]);return 1;}var J=this.store_filter(H,F,I);var C="<input id='"+F+"_clear_filter' type='button' value='Clear'>";$(H+"_"+F+"_selected_filter").innerHTML=O_APP.strings["editing_filter"]+": "+I+"&nbsp;"+C;Event.observe(F+"_clear_filter","click",this.clear_filter.bindAsEventListener(this,F,H),false);if(J[0].id){var A=E.options.length;E.options[A]=new Option(J[0].name,J[0].id);}}else{}};CADmineImport.prototype.clear_filter=function(C){var B=$A(arguments);var E=B[1];var A=B[2];var D=$(A+"_"+E+"_filter_list");D.selectedIndex=-1;$(A+"_"+E+"_selected_filter").innerHTML="";this["selected_filter_"+A+"_"+E]={};};CADmineImport.prototype.store_filter=function(H,G,I){var J="";if(this["selected_filter_"+H+"_"+G]!==undefined){J=this["selected_filter_"+H+"_"+G].name;}else{J="";}if(I){}else{if(J){I=J;}else{this.add(H,G);return false;}}O_APP.wait_spinner.show();var C;var D;if($(H+"_"+G+"_filter_type").selectedIndex==1){D=2;C=$(H+"_"+G+"_advanced").value;var A=$H({i:"ImportFilter.test_filter",format:"json",fieldname:G,filterdata:C});var F=get_server_object(A,"json");if(F.success=="fail"){alert(localize("^test_filter_failed;"));O_APP.wait_spinner.hide();return ;}}else{var B=G+"_DoubleListWidget";var E=this[B].getShorterArray();D=0;if(E.type==="off"){D=1;}C=E.values.join(",");if(C===""){C=",";}}var A=$H({i:"ImportFilter.store_filter",format:"json",name:I,fieldname:G,filterdata:C,condition:D});F=get_server_object(A,"json");O_APP.wait_spinner.hide();return F;};CADmineImport.prototype.delete_filter=function(I,H){var A=$(I+"_"+H+"_filter_list");var G=A.value;var E;var C=$H({i:"ImportFilter.delete_filter",format:"json",id:G,fieldname:H});var F=get_server_object(C,"json");A=$(I+"_"+H+"_filter_list");var B=A.options[A.selectedIndex];Element.remove(B);var D=H+"_DoubleListWidget";this[D].setArray([],true);};CADmineImport.prototype.rename_filter=function(A,F){var D=$(A+"_"+F+"_filter_list");if(D.selectedIndex<0){return false;}var C=D.options[D.selectedIndex].text;var G=D.options[D.selectedIndex].value;var E=prompt(O_APP.strings["rename_filter"]+" "+C+" "+O_APP.strings["to"]+":",C);if(E===C||!E){return false;}else{params=$H({i:"ImportFilter.rename_filter",format:"json",id:G,name:E,fieldname:F});var B=get_server_object(params,"json");D.options[D.selectedIndex].text=E;if(this["selected_filter_"+A+"_"+F]&&this["selected_filter_"+A+"_"+F].name===C){$(A+"_"+F+"_selected_filter").innerHTML=O_APP.strings["editing_filter"]+": "+E;}}};CADmineImport.prototype.get_selected=function(D){var A=new Array();var C=$(D);for(var B=0;B<C.options.length;B++){if(C.options[B].selected){A.push(C.options[B].text);}}return A;};CADmineImport.prototype.load_filter=function(J,I){var C=$(J+"_"+I+"_filter_list");if(C.selectedIndex<0){return false;}var A=C.options[C.selectedIndex].text;var D=C.options[C.selectedIndex].value;this["selected_filter_"+J+"_"+I]={id:D,name:A};var E="<input id='"+I+"_clear_filter' type='button' class='btn' value='"+O_APP.strings.stop_editing+"'>";$(J+"_"+I+"_selected_filter").innerHTML=O_APP.strings["editing_filter"]+": "+A+"&nbsp;"+E;Event.observe(I+"_clear_filter","click",this.clear_filter.bindAsEventListener(this,I,J),false);var F=$H({i:"ImportFilter.get_filter",format:"json",id:D});var B=get_server_object(F,"json");B.condition=parseInt(B.condition);if(B.condition===2){$(J+"_"+I+"_filter_type").selectedIndex=1;$(J+"_"+I+"_advanced").value=B.filterdata;Element.hide(J+"_"+I+"_list_select");Element.show(J+"_"+I+"_advanced_select");Element.hide(J+"_"+I+"_list_instructions");Element.show(J+"_"+I+"_advanced_instructions");}else{$(J+"_"+I+"_filter_type").selectedIndex=0;Element.show(J+"_"+I+"_list_select");Element.hide(J+"_"+I+"_advanced_select");Element.show(J+"_"+I+"_list_instructions");Element.hide(J+"_"+I+"_advanced_instructions");var H=I+"_DoubleListWidget";if(B.filterdata){var G;if(typeof (B.filterdata)!="number"){G=B.filterdata.split(",");}else{G=[B.filterdata];}if(B.condition===1){this[H].setArray([],true);}else{this[H].setArray([],false);}this[H].setArray(G,(!B.condition));}else{O_APP.log("empty filter?");}}this.show_details(I);};CADmineImport.prototype.render_templates_tab=function(I){var F="";var L=this.blocktype||0;var B;if(I){this.interval=I;B=I;}else{B=this.interval;}if(L==0){var A=24/(B/60);var K=7;var C=$H({i:"SWTemplate.get_templates",blocktype:L,rows:A,columns:K,format:"json"});var J=get_server_object(C,"json");var E="<dataset_templates prefix='"+this.prefix+"'></dataset_templates>";F=transform(E,"cadmine_import");try{$(this.prefix+"_templates").innerHTML=F;}catch(H){O_APP.log(this.prefix+"_templates doesn't exist in the DOM: "+H.message);}var G=this.select_template;this.TblWidget=new TableSelectionWidget(this.prefix+"_templates_inner",[{name:localize("^name;"),width:"45%"},{name:localize("^lbl_modified_date;"),width:"45%"}],G);var D=this.TblWidget;J.each(function(M){D.addRow(M.id,[M.name,M.last_updated]);});}else{F=localize("^input_templates_from_district;");$(this.prefix+"_templates").innerHTML="<span style='margin-left: 20px'>"+F+"</style>";}};CADmineImport.prototype.show_summary=function(Q){var G=Q+"_begin_date";this.begin_date=$(G).value;this.weeks=$(Q+"_weeks").value;try{if(!this.description){this.description=$(Q+"_description").value;}}catch(N){}if(this.blocktype==undefined){this.blocktype=0;}if(!this.name){var S=$(Q+"_name").value;if(!S){alert(O_APP.strings["import_dataset_name"]);this.tabcontrol.set("activeTab",this.tabcontrol.getTab(0));return false;}else{this.name=S;}}try{if(!parseInt(this.weeks)){alert(O_APP.strings["import_dataset_err_weeks"]);return false;}}catch(N){return false;}if(!this.begindate){alert(O_APP.strings["import_dataset_err_date"]);return false;}var K=["units","districts","calltypes","priorities","dispositions"];var D=[];var F=0;for(var M=0;M<K.length;M++){var A=K[M];if($(Q+"_"+A+"_filter_type").selectedIndex==0){var B=A+"_DoubleListWidget";var L=[];if(this.blocktype==1&&A=="districts"){L=this[B].getShorterArray(true);var E=this[B].getOnArray();F=E.length;}else{L=this[B].getShorterArray();}D[A]=L.values.join("~");if(L.type==="off"){if(L.values.length>0){D[A]="!"+D[A];}}else{if(L.values.length>0){D[A]=" "+D[A];}}if(D[A]){D[A]="~"+D[A];}}else{D[A]=$(Q+"_"+A+"_advanced").value;if(this.blocktype==1&&A==="districts"){alert(O_APP.strings["compound_advanced_districts_not_allowed"]);return false;}var P=$H({i:"ImportFilter.test_filter",format:"json",fieldname:A,filterdata:D[A]});var R=get_server_object(P,"json");if(R.success=="fail"){alert(localize("^test_filter_failed; :"+A));O_APP.wait_spinner.hide();return ;}}}if(this.blocktype==1&&F<2){alert(O_APP.strings["compound_must_select_districts"]);return false;}var J="";if(this.blocktype==0){J=O_APP.strings["datasets_lbl_chronological"];}else{if(this.blocktype==1){J=O_APP.strings["datasets_lbl_geographical"];}else{J="unknown";}}var C="<confirm_import prefix='"+Q+"' name='"+this.name+"' numweeks='"+this.weeks+"' begindate='"+this.begindate+"' blocktype='"+J+"'/>";var H=transform(C,"cadmine_import");var I='<table width="100%" class="bordered">';for(var M=0;M<K.length;M++){var O="";var A=K[M];if(D[A]!=""){O=D[A];O=O.replace(/^~!/g,localize("^excluding; '"));O=O.replace(/^~/g,localize("^including; '"));O=O.replace(/~/g,"', '");O+="'";}else{O=O_APP.strings["all"];}I+='<tr><td align="right" valign="top">';I+='<span style="font-weight: bold; text-transform: uppercase;">'+A+"</span>";I+="</td>";I+='<td width="95%" align="left"><div style="border: 1px solid #aaa; background-color: #fff; padding: 4px; max-height: 10em; overflow: auto;">'+O+"</div></td></tr>";}I+="</table>";this.units=D["units"]||"";this.dispositions=D["dispositions"]||"";this.districts=D["districts"]||"";this.calltypes=D["calltypes"]||"";this.priorities=D["priorities"]||"";O_APP.show_modal(H);$(Q+"_param_summary").innerHTML=I;};CADmineImport.prototype.compound_check_handler=function(A){if(A){this.blocktype=1;}else{this.blocktype=0;}this.render_templates_tab();};CADmineImport.prototype.submit_job=function(){var B=$H({i:"CADmine.import_dataset",name:this.name,description:this.description,units:this.units,dispositions:this.dispositions,districts:this.districts,calltypes:this.calltypes,priorities:this.priorities,begindate:this.begindate,num_weeks:this.weeks,blocktype:this.blocktype,interval:this.interval,template_id:this.selected_template||"",format:"json",is_public:this.is_public});var A=get_server_object(B,"json");if(A.stat=="OK"){if(this.context=="dataset"){O_DATASETS_CONTAINER.load(O_DATASETS_CONTAINER.filtered);}else{this.wizardobj.data["cadmine_import"]="complete";this.wizardobj.data["selected_dataset_id"]=A.dataset_id;this.wizardobj.parent.finish_wizard();}O_APP.clear_modal();}else{alert("FATAL: "+A.stat);}};function build_iframe_chart(){var O=parent.O_APP.block_type;var I=parent.O_APP.row_names;var E=parent.O_APP.col_names;var L=parent.O_APP.values;var H=parent.O_APP.max_value;var G=new Chart($("chart"));if(O==0){G.setDefaultType(CHART_LINE);}else{G.setDefaultType(CHART_BAR);var J=Element.getDimensions("chart");var C=J.width;var N=L.length;var K=L[0].length;var B=(C*0.6)/K/N;G.setBarWidth(B);}var D=I.length;var M=H+1;if(H>21){M=21;}G.setGridDensity(D,M);G.setVerticalRange(0,H);if(G._yMax==0){G.setVerticalRange(0,2);}G.setHorizontalLabels(I);var A=new Array("#CC0000","#FFCC33","#33CC00","#99FFFF","#3366FF","#993399","#666666");for(var F=0;F<L.length;F++){G.add(E[F],A[F],L[F]);}G.draw();setTimeout("window.print();",5);}function Constraint(D,B,A,C){this.id=D;this.name=B;this.display_text=localize("^"+B+";");this.description=localize("^"+B+"_description;");this.has_percentile=C;this.order=A;O_APP.constraints[this.id]=this;}function ConstraintRequirements(B,A){this.workflow=B;this.requirements=this.get_saved_requirements(A);this.all_requirements=[];this.drivers=[];}ConstraintRequirements.prototype.data_to_array=function(G){var B=new Array();var E=this.workflow.dataset.columns;var D=this.workflow.dataset.rows*this.workflow.dataset.columns;var H=D/E;var A=0;var F=0;for(var C=0;C<D;C++){A++;if(A>H){A=1;F++;}if(!B[F]){B[F]=[];}B[F][A-1]=Math.round(G[C]*100)/100;}return B;};ConstraintRequirements.prototype.calculate_requirements=function(constraint_id,brick_id){var percentile_constraints=[O_APP.StatID.PCT_RTIME1,O_APP.StatID.PCT_RTIME2,O_APP.StatID.PCT_RTIME3];var percentile_value=0;for(var c=0;c<percentile_constraints.length;c++){if(percentile_constraints[c]==constraint_id){percentile_value=$(brick_id+"_"+constraint_id+"_percentile").value;break;}}var params=$H({i:"ConstraintRequirements.calculate_requirements",id:constraint_id,workflow:this.workflow.workflowid,blocktype:this.workflow.dataset.blocktype,p_value:percentile_value,rows:this.workflow.dataset.rows,format:"json"});var res=get_server_object(params,"json");var data=eval(res);this.requirements[constraint_id]=data;return this.data_to_array(data);};ConstraintRequirements.prototype.get_all_requirements=function(){var params=$H({i:"ConstraintRequirements.get_all_requirements",workflow:this.workflow.workflowid,blocktype:this.workflow.dataset.blocktype,rows:this.workflow.dataset.rows,format:"json"});var res=get_server_object(params,"json");var data=eval(res);this.all_requirements=eval(data.requirements);this.drivers=eval(data.drivers);this.workflow.has_goals_units=false;for(var i=0;i<this.all_requirements.length;i++){if(this.all_requirements[i]>0){this.workflow.has_goals_units=true;break;}}return this.data_to_array(this.all_requirements);};ConstraintRequirements.prototype.get_driven_cells=function(B){var A=[];for(var C=0;C<this.drivers.length;C++){if(this.drivers[C]===B){A.push(C);}}return A;};ConstraintRequirements.prototype.requirements_as_array=function(B){var C=this.requirements[B];var A=this.data_to_array(C);return A;};ConstraintRequirements.prototype.get_saved_requirements=function(saved_requirements){var rq=null;if(saved_requirements){rq=saved_requirements;}else{var params=$H({i:"ConstraintRequirements.get_saved_requirements",workflow:this.workflow.workflowid,blocktype:this.workflow.dataset.blocktype,rows:this.workflow.dataset.rows,format:"json"});var res=get_server_object(params,"json");var rq=eval(res);}var data=rq;var requirements=[];var dummy_array=[];var num_blocks=this.workflow.dataset.columns*this.workflow.dataset.rows;for(var b=0;b<num_blocks;b++){dummy_array[b]=0;}if(this.workflow.constraintset){var num_constraints=this.workflow.constraintset.data.length;for(var c=0;c<num_constraints;c++){if(data.length>c&&data[c]){requirements[c]=eval(data[c]);}else{requirements[c]=dummy_array;}}}else{}return requirements;};function Constraintset(B,A){this.workflow=B;this.id=A;this.active_constraints=new Array();this.data=[];}Constraintset.prototype.create=function(){var B=$H({i:"ConstraintSet.new",dataset_id:this.workflow.dataset.id,workflow_id:this.workflow.workflowid,format:"string"});var A=get_server_object(B,"string");this.id=A;};Constraintset.prototype.init=function(constraintset_obj){var res=null;if(constraintset_obj){res=constraintset_obj;}else{var params=$H({i:"ConstraintSet.get",id:this.id,format:"json"});res=get_server_object(params,"json");}this.blocktype=res.blocktype;this.columns=res.columns;this.rows=res.rows;this.column_names=res.column_names;this.row_names=res.row_names;this.active_constraints=eval(res.active_constraints);var cs_data=null;if(res.data){cs_data=res.data;}else{var params=$H({i:"ConstraintSet.get_data",id:this.id,blocktype:this.blocktype,rows:this.rows,format:"json"});cs_data=get_server_object(params,"json");}for(var c=0;c<cs_data.length;c++){this.data[c]=eval(cs_data[c]);}};Constraintset.prototype.show=function(A){this.brick=new Brick_Constraint_Set(this);this.brick.show(A);this.brick.parent=this;};Constraintset.prototype.data_to_array=function(H){var B=new Array();var E=this.columns;this.current_constraint_id=H;var D=this.workflow.dataset.rows*this.workflow.dataset.columns;var G=D/E;var A=0;var F=0;for(var C=0;C<D;C++){A++;if(A>G){A=1;F++;}if(!B[F]){B[F]=[];}B[F][A-1]=Math.round(this.data[H][C]*100)/100;}return B;};Constraintset.prototype.update_value=function(D,B,C,A){this.data[B][D]=parseFloat(C);if(A||A==undefined){this.save();}};Constraintset.prototype.save=function(){var B=$H({i:"ConstraintSet.save",id:this.id,blocktype:this.blocktype,rows:this.rows,data:this.data.toJSONString(),active_constraints:this.active_constraints.toJSONString(),format:"json"});var A=get_server_object(B,"json");};function Dataset(workflow,dataset_obj){this.workflow=workflow;this.description="";this.id=workflow.dataset_id;this.name="";this.columns="";this.rows="";this.grid_html="";this.current_stat_type="";this.current_stat_id="";this.current_selected="none";this.notifyObjects=new Array();this.warnings=false;this.noncritical_warnings=false;this.response_times;this.Dataset_BlockView="";this.blocktype=undefined;this.is_saving=false;var ds=null;if(dataset_obj){ds=dataset_obj;}else{var params=$H({i:"Dataset.get",id:workflow.dataset_id,format:"json"});ds=get_server_object(params,"json");}if(ds.id!==undefined){this.id=ds.id;this.name=ds.name;this.columns=ds.columns;this.rows=ds.rows;this.description=ds.description;this.blocktype=ds.blocktype;this.data=eval("("+ds.data+")");this.column_names=localize_array(eval("("+ds.column_names+")"));if(this.blocktype==0&&O_APP.USER.default_first_dow_offset>0){this.column_names=this.offset_names(this.column_names);}this.row_names=eval("("+ds.row_names+")");this.notes=escape(ds.notes);this.import_text=ds.import_text;this.session_id=ds.session_id;this.response_times=eval(ds.response_times);}else{if(workflow.dataset_id===undefined||this.workflow.workflowid===undefined){O_APP.log("Dataset constructor - refusing to call get_cm_import_job with undefined workflowid or dataset_id, ds: "+workflow.dataset_id+",wf: "+this.workflow.workflowid);return 0;}var params=$H({i:"Dataset.get_cm_import_job",id:workflow.dataset_id,wf_id:this.workflow.workflowid,format:"xml"});var res=get_server_object(params,"xml");var xmlDoc=str_to_xml(res);try{this.jobid=parseInt(xmlDoc.getElementsByTagName("jobid")[0].firstChild.nodeValue);this.id=parseInt(xmlDoc.getElementsByTagName("dataset_id")[0].firstChild.nodeValue);this.name=xmlDoc.getElementsByTagName("dataset_name")[0].firstChild.nodeValue;if(xmlDoc.getElementsByTagName("dataset_description")[0].firstChild){this.description=xmlDoc.getElementsByTagName("dataset_description")[0].firstChild.nodeValue;}this.job_log=xmlDoc.getElementsByTagName("job_log")[0].firstChild.nodeValue;this.pid=xmlDoc.getElementsByTagName("pid")[0].firstChild.nodeValue;this.xml_string=res;}catch(e){O_APP.log("Dataset - There was a problem getting the job status from the server: "+e.message);O_APP.log("couldn't parse job status check XML\nError was\n"+e.message+"\nRaw string was: "+res);}}}Dataset.prototype.offset_names=function(D){var C=O_APP.USER.default_first_dow_offset;var E=D.length;var B=new Array();for(var A=C;A<E;A++){B.push(D[A]);}for(var A=0;A<C;A++){B.push(D[A]);}return B;};Dataset.prototype.update_data=function(){var params=$H({i:"Dataset.get_data",id:dataset_id,format:"json"});var res=get_server_object(params,"json");this.data=eval("("+res.data+")");};Dataset.prototype.addNotifyObject=function(B){var A=this.notifyObjects.push(B);return A;};Dataset.prototype.get_short_column_names=function(){var A=[];if(this.columns>1){switch(O_APP.language){case"en_us":A=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"];if(this.blocktype==0&&O_APP.USER.default_first_dow_offset>0){A=this.offset_names(A);}break;default:O_APP.log("trying to abbreviate column names for lang '"+O_APP.LANG+"' but don't know what to do!");break;}}else{A=this.column_names;}return A;};Dataset.prototype.save_data=function(log){if(!log){alert("Must pass change_log to save_data()");return false;}var input_stats='{"input":[';var arr=this.data.input;var this_input;for(var i=0;i<arr.length;i++){this_input=arr[i];input_stats+="["+this_input.toString()+"],";}input_stats+="]}";input_stats=input_stats.replace(/,]/g,"]");try{var inputs_json=input_stats;}catch(e){alert(e.message);}var params=$H({i:"Dataset.save_data",data:inputs_json,id:this.id,change_log:log});var workflow_id=this.workflow.workflowid;this.is_saving=true;var onComplete=function(response){var outputs_json=response.responseText;var output_stats=eval("("+outputs_json+")");var array_only=output_stats.output;var dataset_to_update=O_APP.Workflows[workflow_id].dataset;dataset_to_update.data.output=array_only;dataset_to_update.refresh();dataset_to_update.data.output[O_APP.StatID.AVG_CALLS_IN_Q]=dataset_to_update.data.output[O_APP.StatID.POS];dataset_to_update.workflow.allocation.reset_zeros();dataset_to_update.is_saving=false;};ajax_request(params.toQueryString(),null,onComplete);};Dataset.prototype.refresh=function(){for(var A=0;A<this.notifyObjects.length;A++){this.notifyObjects[A].refresh();}};Dataset.prototype.save_note=function(A){this.notes=A;var C=$H({i:"Dataset.save_note",notes:escape(A),id:this.id});var B=function(D){};ajax_request(C.toQueryString(),null,B);};Dataset.prototype.blockid_to_labels=function(A){var D=this.data.input.length;var C=this.columns;var G=D/C;var B;var H;if(A>(G-1)){B=Math.floor(A/G);H=A%G;}else{B=0;H=A;}var F=this.column_names[B];var E=this.row_names[H];return F+", "+E;};Dataset.prototype.array_to_grid_values=function(E){var A=[];var G=this.columns;var H=E.length;var F=H/G;var B=0;var I=0;var D=H-1;var C=Math.round;for(var D=0;D<H;D++){B++;if(B>F){B=1;I++;}if(!A[I]){A[I]=[];}A[I][B-1]=C(E[D]*100)/100;}return A;};Dataset.prototype.statistic_to_array=function(I,F,M){var N=[];var K=this.columns;this.current_stat_type=I;this.current_stat_id=F;var L=this.data.input.length;var H=L/K;var A=0;var O=0;var E=0;var B=Math.round;var J=this.data.input;var C=this.data.output;var D=0;switch(I){case"input":E=J.length-1;do{D=J.length-1-E;A++;if(A>H){A=1;O++;}if(!N[O]){N[O]=[];}N[O][A-1]=B(J[D][F]*100)/100;}while(E--);break;case"output":try{E=C.length-1;do{D=C.length-1-E;A++;if(A>H){A=1;O++;}if(!N[O]){N[O]=[];}if(!M&&((F>=40&&F<=60)||F==38||(F>=63&&F<=73))&&C[D][O_APP.StatID.POS]>=100){N[O][A-1]="*";}else{N[O][A-1]=B(C[D][F]*100)/100;}}while(E--);}catch(G){O_APP.log("problem getting outputs for statistic: "+F);}break;}return N;};Dataset.prototype.block_id_from_cell_id=function(B){var A=B.substring(0,2);var G=B.substring(2);A=parseInt(A,10);G=parseInt(G,10);var D=this.columns;var C=this.data.input.length;var F=C/D;var E=(((A)*F)+G);return E;};Dataset.prototype.update_value=function(F,C,E,A){var D=O_APP.input_statistic_names[C].name;var B="^change; block "+F+", '"+D+"', = "+E;B=localize(B);this.data.input[F][C]=parseFloat(E);if(A||A==undefined){this.save_data(B);}};Dataset.prototype.refresh_data=function(){var params=$H({i:"Dataset.get",id:this.id,format:"json"});var res=get_server_object(params,"json");this.data=eval("("+res.data+")");};Dataset.prototype.roll_back=function(B){var C=$H({i:"Dataset.roll_back",id:this.id,version:B});var A=get_server_object(C);};Dataset.prototype.fork=function(D,C,B,E){var F=$H({i:"Dataset.fork",id:this.id,version:D,name:C,description:B,shared:E});var A=get_server_object(F);if(D!=null){var G="";if(A>0){G=localize("^datasets_message_fork_success;");}else{G=localize("^datasets_message_fork_failed;");alert(G);}}else{return A;}};Dataset.prototype.show=function(A){if(this.jobid){this.brick=new Brick_Dataset_Job(this.id,this.workflow);}else{this.brick=new Brick_Dataset(this.id,this.workflow);}this.brick.show(A);this.workflow.yui_tabs.fill_scheduler("YUI_Workflow_"+this.workflow.workflowid+"_scheduler");};function Dataset_BlockView(B){this.dataset_id=B.dataset_id;this.dataset=B.dataset;this.parent_brick=B;this.fill_columns_control();this.fill_rows_control();var A=new YAHOO.widget.TabView("block_tab_control",{orientation:"top"});}Dataset_BlockView.prototype.init=function(){try{this.display_block_data();}catch(A){alert(A.message);}this.dataset.addNotifyObject(this);};Dataset_BlockView.prototype.refresh=function(){this.display_input_block();this.display_output_block();};Dataset_BlockView.prototype.display_block_data=function(){var D=this.dataset_id;var C=this.dataset_id+"_block_title_container";var G=$(D+"_column_control");var F=$(D+"_row_control");var A=G.options[G.selectedIndex].innerHTML;var E=F.options[F.selectedIndex].innerHTML;var B="^column; <b>"+A+"</b>  ^row; <b>"+E+"</b>";$(C).innerHTML=localize(B);this.display_input_block();this.display_output_block();};Dataset_BlockView.prototype.display_input_block=function(){var F=this.get_selected_block();var E="<table width='80%' class='block'><tr><th align='right' width='50%'>^statistic_name;</th><th align='left' width='50%'>^value;</th></tr><table width='80%' class='block'><tr>";var B=this.dataset.data.input[F];var A='O_APP.ActiveBricks["'+this.parent_brick.brick_id+'"].dataset.update_value( '+F+", this.id, this.value );";for(var D=0;D<B.length;D++){var H=parseFloat(B[D]);var C;if(D!=O_APP.StatID.DISPATCH_POLICY&&H!==undefined){try{C=H.toFixed(2);}catch(G){C=H;}}else{C=H;}E+="<tr><td width='50%' align='right'>"+O_APP.input_statistic_names[D].name+"</td><td width='50%'><input type='text' class='dataset_block_cell_value' style='padding: 2px' id='"+D+"' value='"+C+"' onchange='"+A+"'/></td></tr>";}E+="</tr></table>";$(this.dataset_id+"_input_list_container").innerHTML=localize(E);};Dataset_BlockView.prototype.display_output_block=function(){var C=this.get_selected_block();var B="<table width='80%' class='block'><tr><th align='right' width='50%'>^statistic_name;</th><th align='left' width='50%'>Value</th></tr><table width='80%' class='block'><tr>";var E=this.dataset.data.output[C];for(var D=0;D<E.length;D++){var A=E[D];B+="<tr><td width='50%' align='right'>"+O_APP.output_statistic_names[D].name+"</td><td width='50%' class='dataset_block_cell_value'>"+A+"</td></tr>";}B+="</tr></table>";$(this.dataset_id+"_output_list_container").innerHTML=localize(B);};Dataset_BlockView.prototype.fill_columns_control=function(){var B=$(this.dataset_id+"_column_control");for(var A=0;A<this.dataset.column_names.length;A++){B.options[A]=new Option(this.dataset.column_names[A],A);}B.selectedIndex=0;};Dataset_BlockView.prototype.fill_rows_control=function(){var B=$(this.dataset_id+"_row_control");for(var A=0;A<this.dataset.row_names.length;A++){B.options[A]=new Option(this.dataset.row_names[A],A);}B.selectedIndex=0;};Dataset_BlockView.prototype.get_selected_block=function(){var A=$(this.dataset_id+"_column_control").selectedIndex;var C=$(this.dataset_id+"_row_control").selectedIndex;A=A.toString();C=C.toString();if(A.length==1){A="0"+A;}if(C.length==1){C="0"+C;}var B=this.dataset.block_id_from_cell_id(A+C);return B;};function Dataset_CalibrateView(A){this.dataset=A.dataset;this.dataset_id=A.dataset.id;this.speed_grid=new FlexiGrid();this.speed_grid.shrinkRowLabels=true;this.speed_grid.showMeanValues=true;this.speed_grid.colorQuantiles=true;this.speed_grid.title=localize("^response_speed;");this.time_proj_grid=new FlexiGrid();this.time_proj_grid.shrinkRowLabels=true;this.time_proj_grid.title=localize("^travel_time_proj;");this.time_actual_grid=new FlexiGrid();this.time_actual_grid.shrinkRowLabels=true;this.time_actual_grid.title=localize("^travel_time_actual;");this.time_difference_grid=new FlexiGrid();this.time_difference_grid.shrinkRowLabels=true;this.time_difference_grid.title=localize("^travel_time_diff;");this.max_speed=100;if(O_APP.USER.unit_of_measure!=="usfoot"){this.max_speed*=1.6;}}Dataset_CalibrateView.prototype.init=function(){this.calibrate_time_tabs=new YAHOO.widget.TabView(this.dataset_id+"_calibrate_time_tabs",{orientation:"top"});var A=this.dataset.id;this.speed_grid.rowNames=this.dataset.row_names;this.speed_grid.columnNames=this.dataset.get_short_column_names();this.speed_grid.shrinkRowLabels=true;this.speed_grid.colorQuantiles=true;this.speed_grid.showMeanValues=true;this.speed_grid.div_id=A+"_speed_grid_container";this.time_proj_grid.rowNames=this.dataset.row_names;this.time_proj_grid.columnNames=this.dataset.get_short_column_names();this.time_proj_grid.div_id=A+"_time_proj_grid_container";this.time_proj_grid.shrinkRowLabels=true;this.time_proj_grid.showMeanValues=true;this.time_proj_grid.colorQuantiles=true;this.time_proj_grid.title=localize("^travel_time_proj;");this.time_actual_grid.rowNames=this.dataset.row_names;this.time_actual_grid.columnNames=this.dataset.get_short_column_names();this.time_actual_grid.div_id=A+"_time_actual_grid_container";this.time_actual_grid.shrinkRowLabels=true;this.time_actual_grid.showMeanValues=true;this.time_actual_grid.colorQuantiles=true;this.time_actual_grid.title=localize("^travel_time_actual;");this.time_difference_grid.rowNames=this.dataset.row_names;this.time_difference_grid.columnNames=this.dataset.get_short_column_names();this.time_difference_grid.div_id=A+"_time_difference_grid_container";this.time_difference_grid.colorQuantiles=true;this.time_difference_grid.shrinkRowLabels=true;this.time_difference_grid.showMeanValues=true;this.time_difference_grid.title=localize("^travel_time_diff;");this.dataset.addNotifyObject(this);this.fill_grids(1);};Dataset_CalibrateView.prototype.refresh=function(){var A=$(this.dataset_id+"_calibrate_priority").value;this.fill_grids(A);};Dataset_CalibrateView.prototype.do_calibration=function(L,H,E){if(this.dataset.warnings){alert(O_APP.strings["warnings_stop"]);return false;}else{O_APP.log("no warnings?");}var F=$H({i:"Dataset.calibrate",id:this.dataset_id,pri:L,min_speed:H,max_speed:E,format:"json"});var I=get_server_object(F,"json");var G=[];G=I.speeds;var B=[];B=I.times;if(I.changes){var C=O_APP.StatID.RESPONSE_SPEED1;var D=O_APP.StatID.RESPONSE_TIME1;L=parseInt(L);var K=C+L-1;var A=D+L-1;for(var J=0;J<G.length;J++){this.dataset.data.input[J][K]=G[J];this.dataset.data.output[J][A]=B[J];}this.fill_grids(L);this.dataset.refresh();}else{}};Dataset_CalibrateView.prototype.fill_grids=function(H){H=parseInt(H);var D=1;var F=0;if(!$(this.dataset_id+"_calibrate_min").value){$(this.dataset_id+"_calibrate_min").value=D;}if(!$(this.dataset_id+"_calibrate_max").value){$(this.dataset_id+"_calibrate_max").value=this.max_speed;}var B=O_APP.StatID.RESPONSE_SPEED1;var C=O_APP.StatID.RESPONSE_TIME1;var F=B+H-1;var A=C+H-1;this.speed_grid.values=this.dataset.statistic_to_array("input",F);this.speed_grid.draw();this.time_actual_grid.values=this.dataset.array_to_grid_values(this.dataset.response_times[H-1]);this.time_actual_grid.draw();this.time_proj_grid.values=this.dataset.statistic_to_array("output",A);this.time_proj_grid.draw();var E=[];for(var G=0;G<this.dataset.data.input.length;G++){var J=0;if(this.dataset.data.input[G][F]>0&&this.dataset.data.output!=undefined){var K=this.dataset.response_times[H-1][G];var I=this.dataset.data.output[G][A];var J=K-I;E[G]=Math.abs(J);}else{E[G]=0;}}this.time_difference_grid.values=this.dataset.array_to_grid_values(E);this.time_difference_grid.draw();};Dataset_CalibrateView.prototype.seed_values=function(A){var E=this.dataset.columns;var D=this.dataset.rows;var C=[];for(var F=0;F<E;F++){C[F]=[];for(var B=0;B<D;B++){C[F][B]=A;}}return C;};function Dataset_GridView(B){this.dataset_id=B.dataset_id;this.dataset=B.dataset;this.parent_brick=B;this.linechart=undefined;this.chart_div=this.dataset_id+"_chart_float";this.current_stat_id=0;this.current_stat_type="input";this.flexigrid=new FlexiGrid();this.flexigrid.selectAllFocusObject=this.dataset_id+"_operations_value";this.flexigrid.colorQuantiles=true;this.flexigrid.shrinkRowLabels=true;this.flexigrid.showMeanValues=true;this.flexigrid.div_id=this.dataset_id+"_flexigrid";this.flexigrid.dataset=this.dataset;this.flexigrid.title="TESTING TITLE";this.flexigrid.print_footer_text=this.dataset.workflow.name;this.refresh_callback_index=0;var A=0;switch(this.dataset.workflow.current_units_view){case"original":A=0;break;case"goals":A=1;break;case"allocated":A=2;break;case"scheduled":A=3;break;}$(this.dataset_id+"_units_from").selectedIndex=A;this.flexigrid.onCellUpdate=function(C,D){O_APP.ActiveBricks[B.brick_id].grid_view.update_selected("change",D);};this.fill_stat_names();}Dataset_GridView.prototype.init=function(){this.fill_grid("input",0);$(this.dataset_id+"_input_stats").selectedIndex=0;this.dataset.addNotifyObject(this);};Dataset_GridView.prototype.refresh=function(){var A=$(this.dataset_id+"_output_stats").selectedIndex;var B=$(this.dataset_id+"_input_stats").selectedIndex;if(A>0){this.fill_grid("output",A);}else{if(B==-1){B=0;}this.fill_grid("input",B);}};Dataset_GridView.prototype.refresh_units_select=function(){var C=this.dataset.workflow;var A=$(this.dataset_id+"_units_from");var B=A.options;B[1].disabled=!C.has_goals_units;B[2].disabled=!C.has_allocation_units;B[3].disabled=!C.has_scheduled_units;};Dataset_GridView.prototype.switch_units=function(B){var A=this.dataset.workflow;var D=true;var F="";switch(B){case"goals":if(!A.has_goals_units){F=O_APP.strings["workflow_no_goals_units"];D=false;}break;case"scheduled":if(!A.has_scheduled_units){F=O_APP.strings["workflow_no_scheduled_units"];D=false;}break;case"allocated":if(!A.has_allocation_units){F=O_APP.strings["workflow_no_allocated_units"];D=false;}else{A.allocate_dirty_flag=false;}break;}if(D){var E=$H({i:"Dataset.switch_unit_values",units_pointer:B,workflow_id:this.dataset.workflow.workflowid});var C=get_server_object(E,"json");this.dataset.refresh_data();this.dataset.refresh();this.update_officer_cost();}else{alert(F);}};Dataset_GridView.prototype.fill_grid=function(F,C){var G="";this.update_officer_cost();this.current_stat_id=C;this.current_stat_type=F;this.current_stat_name=this.get_stat_text(F,C,"name");this.current_stat_description=this.get_stat_text(F,C,"description");this.current_stat_definition=this.get_stat_text(F,C,"definition");this.flexigrid.title=this.current_stat_name;if(F=="input"){$(this.dataset_id+"_output_stats").selectedIndex=-1;G=O_APP.input_statistic_names[C].description;$(this.dataset_id+"_operations_go").disabled=false;$(this.dataset_id+"_operations_value").disabled=false;$(this.dataset_id+"_operations_select").disabled=false;}else{if(F=="output"){$(this.dataset_id+"_input_stats").selectedIndex=-1;G=O_APP.output_statistic_names[C].description;$(this.dataset_id+"_operations_go").disabled=true;$(this.dataset_id+"_operations_value").disabled=true;$(this.dataset_id+"_operations_select").disabled=true;}}$(this.dataset_id+"_description_text").innerHTML=G;var A=this.dataset.statistic_to_array(F,C);this.flexigrid.values=A;this.flexigrid.columnNames=this.dataset.column_names;this.flexigrid.rowNames=this.dataset.row_names;var E=[];var D=O_APP.StatID;if(F==="input"){E=[D.UNITS];}else{E=[D.UNCOMMITTED_TIME_UNIT,D.UNITS_AVAILABLE];}var B=E.indexOf(parseInt(C,10));if(B>=0){this.flexigrid.reverseQuantileColors=true;}else{this.flexigrid.reverseQuantileColors=false;}this.flexigrid.draw();if($(this.chart_div).style.visibility=="visible"){this.draw_chart();}if(this.flexigrid.chart_popup.showing){this.flexigrid._build_chart_body();}};Dataset_GridView.prototype.select_all=function(){this.flexigrid.selectAll();};Dataset_GridView.prototype.update_selected=function(E,I){var L=this.flexigrid.getSelectedCells();if(!L.length){alert(O_APP.strings["no_selected_cells"]);return false;}if(!E){E=$(this.dataset_id+"_operations_select").value;}if(!I){I=parseFloat($(this.dataset_id+"_operations_value").value);}I=parseFloat(I);if(isNaN(I)){return false;}if(E=="divide"&&I===0){return false;}for(var F=0;F<L.length;F++){var J=L[F].id;J=this.flexigrid.id_to_short_id(J);var D=J.substring(0,2);var K=J.substring(2,4);var H=parseInt(D,10);var A=parseInt(K,10);I=parseFloat(I);var C=parseFloat(this.flexigrid.values[H][A]);switch(E){case"change":C=I;break;case"increase":C+=I;break;case"decrease":C-=I;break;case"multiply":C*=I;break;case"divide":if(I===0){return false;}C/=I;break;}C=Math.round(C*100)/100;this.flexigrid.values[H][A]=C;var B=this.dataset.block_id_from_cell_id(J);this.dataset.update_value(B,this.current_stat_id,C,false);}this.flexigrid.draw();var G="";if(E=="change"){G="to";}else{G="by";}this.dataset.save_data(O_APP.strings[E]+" '^input_stat_"+this.current_stat_id+";' "+O_APP.strings[G]+" "+I);this.flexigrid.selectedCells=[];};Dataset_GridView.prototype.update_officer_cost=function(){var A=this.dataset.statistic_to_array("input",O_APP.StatID.UNITS);this.dataset.workflow.insert_officer_cost(this.dataset.id+"_statistics_officer_cost",A);};Dataset_GridView.prototype.fill_stat_names=function(){var B=document.getElementById(this.dataset_id+"_input_stats");for(var A=0;A<O_APP.input_statistic_names.length;A++){B.options[A]=new Option(O_APP.input_statistic_names[A].name,A);B.options[A].title=O_APP.input_statistic_names[A].name;}var B=document.getElementById(this.dataset_id+"_output_stats");for(var A=0;A<O_APP.output_statistic_names.length;A++){B.options[A]=new Option(O_APP.output_statistic_names[A].name,A);B.options[A].title=O_APP.output_statistic_names[A].name;}};Dataset_GridView.prototype.show_chart=function(F,C){var B=$(this.chart_div);B.innerHTML=O_APP.strings["lbl_working"];setTimeout("$( '"+this.chart_div+"' ).style.visibility = 'visible';",0);var E,D;if(C.pageX){E=C.pageX;D=C.pageY;}else{var A=document.documentElement||document.body;E=C.clientX-A.scrollLeft;D=C.clientY-A.scrollTop;}position_div_over($(this.chart_div),$("grid_container"));Element.show(B);this.draw_chart();};Dataset_GridView.prototype.draw_chart=function(){setTimeout("document.body.style.cursor = 'wait';",1);var B=true;var A=this.dataset.statistic_to_array(this.current_stat_type,this.current_stat_id,B);var C;if(this.dataset.blocktype===0){C=new LineChart();}else{C=new BarChart();}C.values=A;C.setLabels=this.dataset.column_names;C.pointLabels=this.dataset.row_names;C.chartWidth=$("grid_container").offsetWidth-75;C.chartHeight=$("grid_container").offsetHeight-120;if(this.current_stat_type=="input"){C.chartTitle=O_APP.input_statistic_names[this.current_stat_id].name;}else{C.chartTitle=O_APP.output_statistic_names[this.current_stat_id].name;}C.draw(this.chart_div);setTimeout("document.body.style.cursor = 'auto';",1);};Dataset_GridView.prototype.get_stat_text=function(type,id,text_type){var str="O_APP."+type+"_statistic_names["+id+"]."+text_type;var text=eval(str);return text;};Dataset_GridView.prototype.toggle_chart_popup=function(){this.parent_brick.hide_popups();var C=Element.getDimensions(this.flexigrid.div_id);var B=C.height;if(B>600){B=600;}var A=C.width;this.chart_popup.overlay.cfg.setProperty("width",A+"px");this.chart_popup.overlay.cfg.setProperty("height",B+"px");$(this.chart_popup.body_div_id).style.height=(B-80)+"px";$(this.chart_popup.body_div_id).style.width=(A-20)+"px";this.chart_popup.toggle();if(this.chart_popup.showing){this.build_chart_body();}};Dataset_GridView.prototype.reset_chart_popup_body=function(){var A=this.build_chart_body();};Dataset_GridView.prototype.build_chart_body=function(H){setTimeout("document.body.style.cursor = 'wait';",1);var L=H||this.chart_popup.body_div_id;var B=true;var A=this.dataset.statistic_to_array(this.current_stat_type,this.current_stat_id,B);var E=this.get_max_value_in(A);var Q="<div>Chart: "+this.current_stat_description+"</div>";var R='O_APP.ActiveBricks["'+this.parent_brick.brick_id+'"].grid_view.print_chart();';var C="<div class='little_close' align='right' onclick='"+R+"'><span>^btn_print;</span></div>";var O="<table width='100%'><tr><td align='left'>"+Q+"</td><td align='right'>"+C+"</td></tr></table>";$(this.flexigrid.div_id+"_title").innerHTML=localize(O);var P=new Chart($(L));if(this.dataset.blocktype===0){P.setDefaultType(CHART_LINE);}else{P.setDefaultType(CHART_BAR);var I=Element.getDimensions(this.chart_popup.body_div_id);var D=I.width;var S=A.length;var T=A[0].length;var G=(D*0.6)/T/S;P.setBarWidth(G);}var N=this.dataset.row_names.length;var J=E+1;if(E>21){J=21;}P.setGridDensity(N,J);P.setVerticalRange(0,E);var K=this.clean_row_names();P.setHorizontalLabels(K);var F=["#CC0000","#FFCC33","#33CC00","#99FFFF","#3366FF","#993399","#666666"];for(var M=0;M<A.length;M++){P.add(this.dataset.column_names[M],F[M],A[M]);}P.draw();setTimeout("document.body.style.cursor = 'auto';",1);};Dataset_GridView.prototype.clean_row_names=function(){if(this.dataset.blocktype==1){return this.dataset.row_names;}var C=parseInt(this.dataset.row_names.length/24,10);var D=[];var B=1;for(var A=0;A<this.dataset.row_names.length;A++){if(B==1){D.push(this.dataset.row_names[A]);}else{D.push("  ");}if(B==C){B=1;}else{B++;}}for(var A=0;A<D.length;A++){D[A]=D[A].substring(0,2);}return D;};Dataset_GridView.prototype.get_max_value_in=function(B){var A=0;for(var C=0;C<B.length;C++){for(var D=0;D<B[C].length;D++){if(B[C][D]>A){A=B[C][D];}}}return(parseInt(A,10)+1);};Dataset_GridView.prototype.print_chart=function(){var G=this.current_stat_name;O_APP.block_type=this.dataset.blocktype;O_APP.row_names=this.clean_row_names();O_APP.col_names=this.dataset.column_names;var C=true;O_APP.values=this.dataset.statistic_to_array(this.current_stat_type,this.current_stat_id,C);O_APP.max_value=this.get_max_value_in(O_APP.values);var F='<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html><head><link rel="stylesheet" href="'+O_APP.BASE_URL+'/index.css"/><script src="lib/prototype1.5.0_rc0/prototype.js" type="text/javascript"><\/script><script src="lib/corona/chart_in_iframe.js" type="text/javascript"><\/script><script src="lib/webfx/chart/includes/excanvas.js" type="text/javascript"><\/script><script src="lib/webfx/chart/includes/chart.js" type="text/javascript"><\/script><script src="lib/webfx/chart/includes/canvaschartpainter.js" type="text/javascript"><\/script></head>';var D='<body onLoad="build_iframe_chart();" style="background:none; height:100%"><div id="title" style="width: 50%; margin: auto; text-align: center; font-size:20px; font-weight: bold;">'+G+'</div><div id="chart" style="width: 9.5in; height: 6.5in;"></div><div id="footer" style="width: 50%; margin: auto; text-align: center; font-size:12px; font-weight: bold;">'+this.dataset.workflow.name+"</div></body>";var H="</html>";var B=F+D+H;var A=document.getElementById("print_content");var E=A.contentDocument;if(E===undefined||E===null){E=A.contentWindow.document;}E.open();E.write(B);E.close();};function DatasetsContainer(){this.filtered=true;}DatasetsContainer.prototype.make_swiff_template=function(){var A='<div style="width: 50%; margin: auto; margin-top: 30px; margin-bottom: 130px;"><h1>^generate_import_template;</h1><p>^generate_import_template_instructions;</p>^chrono_layout;: <select id="make_template_interval"><option value="60" selected>^layout_60;</option><option value="30">^layout_30;</option><option value="15">^layout_15;</option><option value="custom">^custom_layout;</option></select><input type="button" class="btn" value="^download_template;" onclick="O_DATASETS_CONTAINER.download_swiff_template()"/><br/><br/><a onclick="O_DATASETS_CONTAINER.load( O_DATASETS_CONTAINER.filtered );">^back_to_datasets_list;</a><iframe id="export_iframe" name="export_iframe" height="1" width="1" style="display: none"/>';$("datasets").innerHTML=localize(A);};DatasetsContainer.prototype.download_swiff_template=function(){var B=$("make_template_interval").value;var A=O_APP.BASE_URL+"/services/?i=ImportExport.swiff_template&layout="+B+"&filename=swiff.xls&sid="+O_APP.SESSION_ID+"&language="+O_APP.language;window.frames.export_iframe.location.href=A;};DatasetsContainer.prototype.load=function(A){$("datasets").innerHTML='<div id="dataset_import_jobs"></div>	<div id="datasets_list"></div>';this.filtered=(A||O_APP.USER.administrator);var B="parent_dataset_id is null";var D=$H({i:"Dataset.get_for_session",filter_owner:this.filtered,filter:B,format:"xml"});var C=function(E){var F=transform("<user_admin>"+O_APP.USER.administrator+"</user_admin><filtered>"+O_DATASETS_CONTAINER.filtered+"</filtered><requesting_userid>"+O_APP.USER.id+"</requesting_userid>"+E.responseText,"datasets");$("datasets_list").innerHTML=unescape(F);fill_help_links("datasets_list");};ajax_request(D.toQueryString(),null,C);this.load_queued_jobs();};DatasetsContainer.prototype.load_queued_jobs=function(){var B=$H({i:"Dataset.get_import_jobs",format:"xml"});var A=function(C){var D=transform(C.responseText,"dataset_import_jobs");$("dataset_import_jobs").innerHTML=D;if(D.match(/\d/)){if(O_DATASETS_CONTAINER.pe){O_DATASETS_CONTAINER.pe.stop();}O_DATASETS_CONTAINER.pe=new PeriodicalExecuter(O_DATASETS_CONTAINER.load_queued_jobs,10);}else{if(O_DATASETS_CONTAINER.pe){O_DATASETS_CONTAINER.pe.stop();O_DATASETS_CONTAINER.pe=undefined;O_DATASETS_CONTAINER.load(O_DATASETS_CONTAINER.filtered);}}};ajax_request(B.toQueryString(),null,A);};DatasetsContainer.prototype.remove=function(dataset,user){var params=$H({i:"Dataset.remove",id:dataset,userid:user,format:"json"});var oncomplete=function(response){var res=eval("("+response.responseText+")");if(res.success!=1){var mess=localize("^dataset_message_not_dataset_owner;");alert(mess);return ;}else{O_DATASETS_CONTAINER.load($("datasets_container_filter_checkbox").checked);}};ajax_request(params.toQueryString(),null,oncomplete);};DatasetsContainer.prototype.edit=function(C){var B=new Dataset(C);var A=new Brick_Dataset(C);A.show("datasets");};DatasetsContainer.prototype.rename=function(I,A,H){var F=localize("^new_name_prompt_string;^dataset;");var D=prompt(F,A);if(D==null){return ;}var B=localize("^new_desc_prompt_string;^dataset;");var G=prompt(B,H);if(G==null){return ;}var C=$H({i:"Dataset.rename",id:I,name:D,description:G});var E=get_server_object(C);O_DATASETS_CONTAINER.load($("datasets_container_filter_checkbox").checked);};DatasetsContainer.prototype.import_dataset=function(A){if(!A){A=0;}switch(A){case 0:var I=O_APP.USER.cm_service_id;var F="<choose_data_source service_id='"+I+"'/>";var E=transform(F,"import_dataset");$("datasets").innerHTML=E;break;case 1:var D=$F("datasource_type");switch(D){case"sw3":var K=O_APP.BASE_URL+"/cgi/import_sw3.cgi";var F="<import_sw3/>";var E=transform(F,"import_dataset");$("datasets").innerHTML=E;var B="<iframe name='post_frame' id='post_frame' scrolling='no' align='center' style='border: 0px solid #000; width: 100%; height: 300px;'></iframe>";$("import_dataset_content").innerHTML=B;var H;H="<form action='"+K+"' method='POST' enctype='multipart/form-data'>\n";H+="<p>Please select the Staff Wizard 3 database you would like to import.<br/><br/>";H+="<input type='file' size='50' name='sw3_file'/>\n";H+="<input type='hidden' size='40' name='test' value='"+O_APP.SESSION_ID+"'></input>\n";H+="<input type='hidden' name='userid' value='"+O_APP.USER.id+"'/>";H+="<input type='hidden' name='shared' value='1'/>";H+="<div style='width: 100%; text-align: right'><input type='button' class='btn inline_spaced' onClick='if ( confirm( parent.O_APP.strings.confirm_cancel ) ) parent.O_DATASETS_CONTAINER.load( parent.O_DATASETS_CONTAINER.filtered );' value='"+O_APP.strings["btn_cancel"]+"'/>";H+="<input type='submit' class='btn inline_spaced' value='"+O_APP.strings["next"]+"'/></div>";H+="</form>";var C="<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Transitional//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd'><html><head><link rel='stylesheet' type='text/css' href='"+O_APP.BASE_URL+"/index.css'></head><body style='background: inherit;'>";var N="</body></html>";var G=C+H+N;var L=document.getElementById("post_frame");var M=L.contentDocument;if(M==undefined||M==null){M=L.contentWindow.document;}M.open();M.write(G);M.close();break;case"cadmine":var J=new CADmineImport("datasets");O_APP.CADmineImports["datasets"]=J;break;case"swiff":var K=O_APP.BASE_URL+"/cgi/import_swiff.cgi";var F="<import_swiff/>";var E=transform(F,"import_dataset");$("datasets").innerHTML=E;var B="<iframe name='post_frame' id='post_frame' scrolling='no' align='center' style='border: 0px solid #000; width: 100%; height: 300px;'></iframe>";$("import_dataset_content").innerHTML=B;var H;H="<form action='"+K+"' method='POST' enctype='multipart/form-data'>\n";H+="<p>"+O_APP.strings["select_swiff_file"]+"<br/><br/>";H+="<input type='file' size='50' name='swiff_file'/>\n";H+="<input type='hidden' size='40' name='test' value='"+O_APP.SESSION_ID+"'></input>\n";H+="<input type='hidden' name='userid' value='"+O_APP.USER.id+"'/>";H+="<input type='hidden' name='customerid' value ='"+O_APP.USER.customerid+"'/>";H+="<input type='hidden' name='shared' value='1'/>";H+="<div style='width: 100%; text-align: right'><input type='button' class='btn inline_spaced' onClick='if ( confirm( parent.O_APP.strings.confirm_cancel ) ) parent.O_DATASETS_CONTAINER.load( parent.O_DATASETS_CONTAINER.filtered );' value='"+O_APP.strings["btn_cancel"]+"'/>";H+="<input type='submit' class='btn inline_spaced' value='"+O_APP.strings["next"]+"'/></div>";H+="</form>";var C="<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Transitional//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd'><html><head><link rel='stylesheet' type='text/css' href='"+O_APP.BASE_URL+"/index.css'></head><body style='background: inherit;'>";var N="</body></html>";var G=C+H+N;var L=document.getElementById("post_frame");var M=L.contentDocument;if(M==undefined||M==null){M=L.contentWindow.document;}M.open();M.write(G);M.close();break;}break;}};DatasetsContainer.prototype.cancel_import=function(C){var B=$H({i:"Dataset.cancel_cm_import_job",id:C});var A=get_server_object(B);O_DATASETS_CONTAINER.load($("datasets_container_filter_checkbox").checked);};function DoubleListWidget(H,A,L,O){var B=document.getElementById(H);this.valuesArray=A;var P=this;this.id=random_id();this.tooltips=[localize("^include_all;"),localize("^add_to_include_list;"),localize("^remove_from_include_list;"),localize("^exclude_all;")];var E=function(){M(J.lastChild.childNodes[0],false);M(J.lastChild.childNodes[2],true);};var D=function(R){var S="<button title='"+P.tooltips[1]+"'><img src='themes/images/16x16/go-next.png'/></button><span><br/><br/></span><button title='"+P.tooltips[2]+"'><img src='themes/images/16x16/go-previous.png'/></button><span><br/><br/></span><button title='"+P.tooltips[0]+"'><img src='themes/images/16x16/go-last.png'/></button><span><br/><br/></span><button title='"+P.tooltips[3]+"'><img src='themes/images/16x16/go-first.png'/></button>";var Q=new Insertion.Bottom(R,S);Event.observe(R.childNodes[0],"click",G,false);Event.observe(R.childNodes[2],"click",F,false);Event.observe(R.childNodes[4],"click",N,false);Event.observe(R.childNodes[6],"click",K,false);};var M=function(T,R){if(T.lastChild){Element.remove(T.lastChild);}new Insertion.Bottom(T,"<select id='"+P.id+"_select_"+R+"' multiple='1' style='height:19em;width:17em;'/>");var U=document.getElementById(P.id+"_select_"+R);for(var S=0;S<P.valuesArray.length;S++){if(P.valuesArray[S].on==R){var Q=document.createTextNode(P.valuesArray[S].name);var V=document.createElement("option");V.value=S;V.appendChild(Q);U.appendChild(V);}}};var G=function(){var R=document.getElementById(P.id+"_select_false");var Q=$A(R.options);Q.each(function(S){if(S.selected){var T=S.value;P.valuesArray[T].on=true;}});E();};var F=function(){var R=document.getElementById(P.id+"_select_true");var Q=$A(R.options);Q.each(function(S){if(S.selected){var T=S.value;P.valuesArray[T].on=false;}});E();};var N=function(){P.valuesArray.each(function(Q){Q.on=true;});E();};var K=function(){P.valuesArray.each(function(Q){Q.on=false;});E();};var C=function(S){var R=Event.element(S);if(R.nodeName!=="SELECT"){while(R.nodeName!=="SELECT"){R=R.parentNode;}}for(var Q=0;Q<R.length;Q++){R[Q].selected=true;}};this.insertFullArray=function(S,Q){Q=Q||false;P.valuesArray=[];for(var R=0;R<S.length;R++){P.valuesArray.push({name:S[R],on:Q});}E();};this.setArray=function(T,Q){Q=Q||false;if(T.length===0){for(var R=0;R<P.valuesArray.length;R++){P.valuesArray[R].on=Q;}}else{for(var R=0;R<T.length;R++){for(var S=0;S<P.valuesArray.length;S++){if(P.valuesArray[S].name==T[R]){P.valuesArray[S].on=Q;}}}}E();};this.setArray_by_index=function(S,Q){Q=Q||false;for(var R=0;R<S.length;R++){P.valuesArray[R].on=Q;}E();};this.getOnArray=function(){var Q=[];P.valuesArray.each(function(R){if(R.on){Q.push(R.name);}});return Q;};this.getOffArray=function(){var Q=[];P.valuesArray.each(function(R){if(!R.on){Q.push(R.name);}});return Q;};this.getShorterArray=function(S){var Q=this.getOnArray();var R=this.getOffArray();if((Q.length>0&&Q.length<=R.length)||S){return{type:"on",values:Q};}else{return{type:"off",values:R};}};this.getOnArray_with_index=function(){var R=[];var Q=0;P.valuesArray.each(function(S){if(S.on){R.push({name:S.name,i:Q});}Q++;});return R;};var I="<table class='DoubleListWidget'><tr><th>"+O+"</th><th></th><th>"+L+"</th></tr><tr><td/><td/><td/></tr></table>";B.innerHTML=I;var J=B.childNodes[0].childNodes[0];D(J.lastChild.childNodes[1]);E();}function Export(A){this.parent=A;this.id=random_id();this.type="swiff";}Export.prototype.show=function(A){this.div=A;this.render();};Export.prototype.render=function(){var A='<export wf_id="'+this.parent.workflow.workflowid+'"></export>';var B=transform(A,"export");B=unescape(B);B=localize(B);if($(this.div)){$(this.div).innerHTML=B;}};Export.prototype.set_export_type=function(A){this.type=A;};Export.prototype.export_data=function(){var E=this.type;var F="";var D="";var C="";var B=this.parent.workflow.name;var A=this.parent.workflow.dataset.id;switch(E){case"csv":F="export_dataset_csv";D=".csv";C=O_APP.BASE_URL+"/services/?i=ImportExport."+F+"&filename="+B+D+"&sid="+O_APP.SESSION_ID+"&language="+O_APP.language+"&id="+A;break;case"sw3":F="export_dataset_sw3";D=".mdb";C=O_APP.BASE_URL+"/cgi/export_sw3.cgi?id="+this.parent.workflow.dataset.id;break;case"swiff":F="export_dataset_swiff";D=".xls";C=O_APP.BASE_URL+"/services/?i=ImportExport."+F+"&filename="+B+D+"&sid="+O_APP.SESSION_ID+"&language="+O_APP.language+"&id="+A;break;default:alert("no type passed, cannot complete");return ;break;}if(C!==""){try{if(window.frames.export_iframe!=undefined){window.frames.export_iframe.location.href=C;}else{alert("export_iframe does not exist!  Please notify Dan.");}}catch(G){alert("tried to set export_iframe location to: "+C+", error: "+G.message);}}};function HelpContainer(){this.nu=new NetworkUtility();}HelpContainer.prototype.load=function(){var A="<container/>";var B=transform(A,"help_container");$("help").innerHTML=B;this.show_topic("troubleshooting.xml");this.search();};HelpContainer.prototype.search=function(){try{var A=$("search_text").value;}catch(C){return false;}var D=$H({i:"Help.search_topics",format:"json",keywords:A});var B=function(E){O_HELP_CONTAINER.list_topics(E);};ajax_request(D.toQueryString(),null,B);};HelpContainer.prototype.list_topics=function(response){try{var results=eval("("+response.responseText+")");results=$H(results);var sr=document.getElementById("search_results");sr.options.length=0;var filename="";var title="";var topics=results.keys();topics.sort();for(var i=0;i<topics.length;i++){filename=topics[i];title=results[filename];sr.options[i]=new Option(title);sr.options[i].file=filename;}}catch(e){alert(e.message);}};HelpContainer.prototype.show_topic=function(D,A){var C=$H({i:"Help.get_topic_content",lang:O_APP.language,file:D});var B=function(F){var E=F.responseText;var G=transform(E,"help_topic");$("topic_view").innerHTML=G;if(A){O_HELP_CONTAINER.topic_to_window();}};ajax_request(C.toQueryString(),null,B);};HelpContainer.prototype.topic_to_window=function(){if($("topic_view").innerHTML!=""){var A=window.open("","help_topic_window","",true);var C='<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html><head><link rel="stylesheet" href="'+O_APP.BASE_URL+'/index.css"/></head><body style="background:none">';var B="</body></html>";A.document.open();A.document.write(C);A.document.write($("topic_view").innerHTML);A.document.write(B);A.document.close();}else{}};HelpContainer.prototype.print_topic=function(){if($("topic_view").innerHTML!=""){var E='<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html><head><link rel="stylesheet" href="'+O_APP.BASE_URL+'/index.css"/></head><body onload="window.print();" style="background:none">';var D="</body></html>";var B=E+$("topic_view").innerHTML+D;var A=document.getElementById("print_content");var C=A.contentDocument;if(C==undefined||C==null){C=A.contentWindow.document;}C.open();C.write(B);C.close();}else{}};Array.prototype.toJSONString=function(){var C=["["],A,E,B=this.length,D;function F(G){if(A){C.push(",");}C.push(G);A=true;}for(E=0;E<B;E+=1){D=this[E];switch(typeof D){case"undefined":case"function":case"unknown":break;case"object":if(D){if(typeof D.toJSONString==="function"){F(D.toJSONString());}}else{F("null");}break;default:F(D.toJSONString());}}C.push("]");return C.join("");};Boolean.prototype.toJSONString=function(){return String(this);};Date.prototype.toJSONString=function(){function A(B){return B<10?"0"+B:B;}return'"'+this.getFullYear()+"-"+A(this.getMonth()+1)+"-"+A(this.getDate())+"T"+A(this.getHours())+":"+A(this.getMinutes())+":"+A(this.getSeconds())+'"';};Number.prototype.toJSONString=function(){return isFinite(this)?String(this):"null";};Object.prototype.toJSONString=function(){var B=["{"],A,D,C;function E(F){if(A){B.push(",");}B.push(D.toJSONString(),":",F);A=true;}for(D in this){if(this.hasOwnProperty(D)){C=this[D];switch(typeof C){case"undefined":case"function":case"unknown":break;case"object":if(C){if(typeof C.toJSONString==="function"){E(C.toJSONString());}}else{E("null");}break;default:E(C.toJSONString());}}}B.push("}");return B.join("");};(function(s){var m={"\b":"\\b","\t":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"};s.parseJSON=function(){try{if(/^("(\\.|[^"\\\n\r])*?"|[,:{}\[\]0-9.\-+Eaeflnr-u \n\r\t])+?$/.test(this)){return eval("("+this+")");}}catch(e){}throw new SyntaxError("parseJSON");};s.toJSONString=function(){if(/["\\\x00-\x1f]/.test(this)){return'"'+this.replace(/([\x00-\x1f\\"])/g,function(a,b){var c=m[b];if(c){return c;}c=b.charCodeAt();return"\\u00"+Math.floor(c/16).toString(16)+(c%16).toString(16);})+'"';}return'"'+this+'"';};})(String.prototype);function Localized_string(C,A,B){this.id=C;this.string=A;this.description=B;}function Login(){var B=$("login");var A=transform("<yui_login_dialog/>","login");B.innerHTML=A;var C=this.handleLogin;this.dlg=new YAHOO.widget.Dialog("login_dialog",{width:"400px",fixedcenter:true,visible:false,constraintoviewport:true,buttons:[{text:"Login",handler:C,isDefault:true}]});this.dlg.render();}Login.prototype.show=function(){alert("showing login");this.dlg.show();};Login.prototype.hide=function(){alert("hiding login");this.dlg.hide();};Login.prototype.handleLogin=function(){alert("trying login");};function Popup(F,E,H,I,J){this.id=random_id();O_APP.Popups[this.id]=this;this.showing=false;this.parent_id=H;this.self_anchor=I;this.parent_anchor=J;var D='O_APP.Popups["'+this.id+'"].toggle();';var G="<div class='little_close' align='right' title='^click_to_close;' onclick='"+D+"'><img src='themes/images/close16x16.png'/></div>";var C=localize("<table width='100%'><tr><td align='left'>"+F+"</td><td align='right'>"+G+"</td></tr></table>");var B="";var A="<div id='"+this.parent_id+"_body'><img src='themes/images/spinner.gif'/><span>loading...</span></div>";this.overlay=new YAHOO.widget.Overlay(H+"_popup",{xy:[-999,-999],visible:false,width:E,effect:{effect:YAHOO.widget.ContainerEffect.FADE,duration:0.1}});this.overlay.setHeader(C);this.overlay.setBody(A);this.overlay.setFooter(localize(B));this.overlay.render(document.body);}Popup.prototype.toggle=function(){var A=this.parent_id+"_popup";if(this.showing){set_selects_visible(document.getElementById(A),"none");this.overlay.hide();this.showing=false;}else{this.overlay.cfg.setProperty("context",[this.parent_id,this.self_anchor,this.parent_anchor]);this.showing=true;this.overlay.show();set_selects_visible(document.getElementById(A),"inline");}};function Report(A){this.workflow=A;}Report.prototype.run_percentile_report=function(F){var C=$("wf_"+this.workflow.workflowid+"_priority_select").value;var A=$("wf_"+this.workflow.workflowid+"_percentile_select").value;var E=$H({i:"Report.percentile",workflowid:this.workflow.workflowid,datasetid:this.workflow.dataset.id,format:"string",percentile:A,priority:C});E.sid=O_APP.SESSION_ID;E.dummy=new Date();E.tz=O_APP.TIMEZONE;var B=O_APP.SERVICE_URL+"?"+E.toQueryString();var D=window.open(B,"report","",true);};Report.prototype.run_statistics_report=function(A){var I=this["Report_DoubleListWidget_inputs"].getOnArray_with_index().toJSONString();var F=this["Report_DoubleListWidget_outputs"].getOnArray_with_index().toJSONString();O_APP.USER.report_inputs=I;O_APP.USER.report_outputs=F;var E=$H({i:"Report.statistics",workflowid:this.workflow.workflowid,datasetid:this.workflow.dataset.id,inputs:I,outputs:F,format:"string"});E.sid=O_APP.SESSION_ID;var C=new Date();var G=C.getTime();E.dummy=G;E.tz=O_APP.TIMEZONE;var B=O_APP.SERVICE_URL+"?"+E.toQueryString();var D="swreport";var H=window.open(B,D);};Report.prototype.doit=function(F){var A=this["Report_DoubleListWidget_inputs"].getOnArray_with_index();var C=this["Report_DoubleListWidget_outputs"].getOnArray_with_index();var E=$H({i:"Report.generate",workflowid:this.workflow.workflowid,datasetid:this.workflow.dataset.id,inputs:A.toJSONString(),outputs:C.toJSONString(),format:"string"});var B=get_server_object(E,"string");B=localize(B);var D=window.open("","testing","",true);D.document.open();D.document.write(B);D.document.close();};function SchedulerExport(A){this.parent=A;this.id=random_id();}SchedulerExport.prototype.show=function(G){this.div=G;var E;if(this.parent.workflow.dataset.blocktype===undefined){return 0;}else{E=parseInt(this.parent.workflow.dataset.blocktype);}if(E!==0){O_APP.log("won't show scheduler export, blocktype is "+E);$(this.div).innerHTML="<p><blockquote><b>"+O_APP.strings["scheduler_incompatible"]+"</b></blockquote></p>";return 0;}var A='<scheduler_export dataset_id="'+this.parent.workflow.dataset.id+'" user_id = "'+O_APP.USER.id+'" workflow_id="'+this.parent.workflow.workflowid+'"></scheduler_export>';var C=transform(A,"scheduler_export");C=unescape(C);C=localize(C);if($(this.div)){$(this.div).innerHTML=C;fill_help_links(this.div);}var D=this.parent;var B=function(){var J=document.getElementById("sched_file");if(J.value){var L={upload:function(M){if(M.responseText.match(/\[/)){alert(O_APP.strings["scheduler_import_ok"]);D.workflow.has_scheduled_units=true;}else{alert("Error while importing unit values from scheduler");}}};var K=document.getElementById("sched_import");YAHOO.util.Connect.setForm(K,true);var H=O_APP.BASE_URL+"/cgi/import_scheduler.cgi";var I=YAHOO.util.Connect.asyncRequest("POST",H,L);}else{}};var F=document.getElementById("do_schedule_import");if(F){Event.observe(F,"click",B,false);}else{O_APP.log("import_button wasn't found");}};SchedulerExport.prototype.do_export=function(E){var A=O_APP.Workflows[E].dataset.id;var C=O_APP.BASE_URL+"/cgi/export_sw3.cgi?id="+A;try{window.frames.export_iframe.location.href=null;}catch(F){alert(F.description);}var B=O_APP.Workflows[E];var D=true;if(B.allocate_dirty_flag){D=window.confirm(O_APP.strings["allocate_before_export_warning"]);}if(D){try{window.frames.export_iframe.location.href=C;}catch(F){alert(F.description);}}else{return false;}};function Server(){}function report_error(A){O_APP.log("SERVER ERROR!!","error");O_APP.log(A.responseText,"error");if(A.corona_tries>3){}else{A.corona_tries++;}}function ajax_request(G,F,D,B){if(B==undefined){B=true;}if(O_APP.SESSION_ID!=""){G+="&sid="+O_APP.SESSION_ID;G+="&dummy="+new Date();}G+="&tz="+O_APP.TIMEZONE;if(B){var A=document.getElementById("loading");A.style.visibility="visible";document.body.style.cursor="progress";}var E;var E=createXMLHTTPRequest();E.onreadystatechange=function(I){if(E.readyState===4){if(E.status===200){D(E);var H=document.getElementById("loading");H.style.visibility="hidden";document.body.style.cursor="auto";}else{alert("Unexpected status code when trying to contact the server: "+E.status);}}else{}};try{E.open("POST",O_APP.SERVICE_URL,true);E.setRequestHeader("Content-type","application/x-www-form-urlencoded");E.send(G);}catch(C){alert(C.message);O_APP.log("problem sending ajax request, will retry in 1 second");E=null;setTimeout(ajax_request(G,F,D,B),1000);}}Server.prototype.ajax_updater=function(A,D,C){if(LOGIN_OBJ&&LOGIN_OBJ.SESSION_ID!=""){D=D+"&sid="+LOGIN_OBJ.SESSION_ID;}D+="&tz="+O_APP.TIMEZONE;var B=new Ajax.Updater({success:A},BASE_URL,{method:"get",parameters:D,onFailure:report_error,onLoading:show_spinner(A),onComplete:function(E){if(check_result(E)){C(E);}remove_spinner(A);}});};Server.prototype.ajax_periodical_updater=function(A,D,C){var B=new Ajax.PeriodicalUpdater({success:A},BASE_URL,{method:"get",parameters:D,frequency:C,onFailure:report_error,onCreate:show_spinner(A),onComplete:function(E){}});};function check_result(A){if(A.responseText.match("Internal Server Error")){alert("Internal Server Error");}else{switch(A.responseText){case"ERR_SESSION_EXPIRED":LOGIN_OBJ.draw_dialog(LOGIN_OBJ.language);break;case"ERR_IP_MISMATCH":LOGIN_OBJ.draw_dialog(LOGIN_OBJ.language);break;default:return true;}}}function callInProgress(A){switch(A.readyState){case 1:case 2:case 3:return true;break;default:return false;break;}}function get_server_object(params,response_type){params.sid=O_APP.SESSION_ID;params.dummy=new Date();params.tz=O_APP.TIMEZONE;var l=document.getElementById("loading");l.style.visibility="visible";document.body.style.cursor="wait";var max_retries=5;var try_count=0;var request_complete=false;var http=null;while(!request_complete&&try_count<=max_retries){try{try_count++;http=createXMLHTTPRequest();http.open("POST",O_APP.SERVICE_URL,false);http.setRequestHeader("Content-type","application/x-www-form-urlencoded");http.send(params.toQueryString());request_complete=true;}catch(e){O_APP.log("get_server_object failed, retrying");http=null;}}if(!request_complete){alert("Network communication error.  Can't connect to application server");l.style.visibility="hidden";document.body.style.cursor="auto";window.status="";return{responseText:""};}l.style.visibility="hidden";document.body.style.cursor="auto";window.status="";if(http.readyState===4){if(http.responseText.match("ERR_SESSION_EXPIRED")||http.responseText.match("ERR_IP_MISMATCH")){O_APP.show_login();return ;}if(response_type=="json"){try{if(http.responseText){var O_response=eval("("+http.responseText+")");return O_response;}else{return undefined;}}catch(e){alert(O_APP.strings["server_general_error"]);}}else{var result=http.responseText;if(!result.match("Internal Server Error")){return http.responseText;}else{alert("get_server_object: Server reported an internal error.");}}}else{alert("readystate is "+http.readyState);}}Server.prototype.showFailureMessage=function(){alert("uh oh, it looks like the network is down. Try again shortly");};Ajax.Responders.register({onCreate:function(A){A["timeoutId"]=window.setTimeout(function(){if(callInProgress(A.transport)){A.transport.abort();O_APP.log("generic failure message","error");if(A.options["onFailure"]){A.options["onFailure"](A);}}},60000);},onComplete:function(A){window.clearTimeout(A["timeoutId"]);}});function SettingsContainer(){redraw_admin=false;this.html="";}SettingsContainer.prototype.load=function(){var B=$H({i:"User.get_from_session",format:"xml"});var A=function(D){var C="<header><edit_user/></header>"+D.responseText+"<options><save/><cancel/></options>";var E=transform(C,"settings");O_SETTINGS_CONTAINER.html=E;Behaviour.apply();};ajax_request(B.toQueryString(),null,A);};SettingsContainer.prototype.save_settings=function(){var A="";if($("settings_administrator")){A=$("settings_administrator").checked?"true":"false";this.redraw_admin=true;}else{A=$("settings_hidden_administrator").value;}var C=$H({i:"User.save",id:$("settings_id").value,username:$("settings_username").value,password:$("settings_password").value,firstname:$("settings_firstname").value,lastname:$("settings_lastname").value,email:$("settings_email").value,telephone:$("settings_telephone").value,theme_id:$("settings_theme_id").value,language:$("settings_language").value,customerid:$("settings_customerid").value,administrator:A});var B=function(D){if(O_SETTINGS_CONTAINER.redraw_admin){O_SETTINGS_CONTAINER.redraw_admin=false;O_APP.ADMIN_CONTAINER.manage_users("refresh");}};ajax_request(C.toQueryString(),null,B);};function Sidebar(A,C,B){this.json=A;this.parent=C;this.target_div=B;}Sidebar.prototype.add_item=function(C,E,D,A,B,G){this.remove_item(C);var F=this.json.length;this.json[F]=new Object;this.json[F].name=C;this.json[F].tooltip=E;this.json[F].icon=D;this.json[F].status=A;this.json[F].target_obj=B;this.json[F].target_obj_div=G;this.render();this.parent.save_sidebar();};Sidebar.prototype.update_item=function(C,F,E,A,B,G){for(var D=0;D<this.json.length;D++){if(this.json[D].name==C){if(C){this.json[D].name=C;}if(F){this.json[D].tooltip=F;}if(E){this.json[D].icon=E;}if(A){this.json[D].status=A;}if(B){this.json[D].target_obj=B;}if(G){this.json[D].target_obj_div=G;}}}this.render();this.parent.save_sidebar();};Sidebar.prototype.remove_item=function(A){for(var B=0;B<this.json.length;B++){if(this.json[B].name==A){this.json.splice(B,1);}}this.render();this.parent.save_sidebar();};Sidebar.prototype.render=function(){$(this.target_div).innerHTML="";for(var A=0;A<this.json.length;A++){var C=this.json[A];var E=C.name;var B="themes/images/"+C.icon;var D=C.tooltip+":: Status = "+C.status;this.render_item(E,C.name,D,B,C.target_obj,C.target_obj_div);}};Sidebar.prototype.render_item=function(H,G,E,C,A,F){var D=A+'.show("'+F+'")';if(A=="null"){D="nothing();";}var B='<div id="'+H+'" onclick='+D+' class="sidebar_option"  title="'+E+'">';B+="<img src="+C+"></img>";B+="<br/>";B+=G;B+="</div>";B=localize(B);new Insertion.Bottom(this.target_div,B);};function StatID(){this.PCT_PRIORITY1=0;this.PCT_PRIORITY2=1;this.PCT_PRIORITY3=2;this.PCT_PRIORITY4=3;this.PCT_PRIORITY5=4;this.PCT_PRIORITY6=5;this.PCT_PRIORITY7=6;this.PCT_PRIORITY8=7;this.PCT_PRIORITY9=8;this.PCT_PRIORITY10=9;this.PCT_REQUIRING1=10;this.PCT_REQUIRING2=11;this.PCT_REQUIRING3=12;this.PCT_REQUIRING4=13;this.PCT_REQUIRING5=14;this.CFS=15;this.NONCFSTIME=16;this.PATROL_SPEED=17;this.REGION_AREA=18;this.RESPONSE_SPEED1=19;this.RESPONSE_SPEED2=20;this.RESPONSE_SPEED3=21;this.RESPONSE_SPEED4=22;this.RESPONSE_SPEED5=23;this.RESPONSE_SPEED6=24;this.RESPONSE_SPEED7=25;this.RESPONSE_SPEED8=26;this.RESPONSE_SPEED9=27;this.RESPONSE_SPEED10=28;this.SERVICE_TIME1=29;this.SERVICE_TIME2=30;this.SERVICE_TIME3=31;this.SERVICE_TIME4=32;this.SERVICE_TIME5=33;this.STREET_LENGTH=34;this.DISPATCH_POLICY=35;this.UNITS=36;this.CALLS_IN_Q_AVG=0;this.CFS_WORK_UNIT=1;this.ACTUAL_CFS_NCFS_WORK_UNIT=2;this.INCOMING_CFS_NCFS_WORK_UNIT=3;this.CALLS_PER_UNIT=4;this.INCOMING_WORK_PRIMARY_TOTAL=5;this.INCOMING_WORK_PRIMARY1=6;this.INCOMING_WORK_PRIMARY2=7;this.INCOMING_WORK_PRIMARY3=8;this.INCOMING_WORK_PRIMARY4=9;this.INCOMING_WORK_PRIMARY5=10;this.INCOMING_WORK_PRIMARY6=11;this.INCOMING_WORK_PRIMARY7=12;this.INCOMING_WORK_PRIMARY8=13;this.INCOMING_WORK_PRIMARY9=14;this.INCOMING_WORK_PRIMARY10=15;this.INCOMING_WORK_SUPP_TOTAL=16;this.INCOMING_WORK_SUPP1=17;this.INCOMING_WORK_SUPP2=18;this.INCOMING_WORK_SUPP3=19;this.INCOMING_WORK_SUPP4=20;this.INCOMING_WORK_SUPP5=21;this.INCOMING_WORK_SUPP6=22;this.INCOMING_WORK_SUPP7=23;this.INCOMING_WORK_SUPP8=24;this.INCOMING_WORK_SUPP9=25;this.INCOMING_WORK_SUPP10=26;this.INCOMING_WORK_TOTAL=27;this.TOTAL_WORK1=28;this.TOTAL_WORK2=29;this.TOTAL_WORK3=30;this.TOTAL_WORK4=31;this.TOTAL_WORK5=32;this.TOTAL_WORK6=33;this.TOTAL_WORK7=34;this.TOTAL_WORK8=35;this.TOTAL_WORK9=36;this.TOTAL_WORK10=37;this.PATROL_INTERVAL=38;this.POS=39;this.QD_AVG=40;this.QD_1=41;this.QD_2=42;this.QD_3=43;this.QD_4=44;this.QD_5=45;this.QD_6=46;this.QD_7=47;this.QD_8=48;this.QD_9=49;this.QD_10=50;this.RESPONSE_TIME1=51;this.RESPONSE_TIME2=52;this.RESPONSE_TIME3=53;this.RESPONSE_TIME4=54;this.RESPONSE_TIME5=55;this.RESPONSE_TIME6=56;this.RESPONSE_TIME7=57;this.RESPONSE_TIME8=58;this.RESPONSE_TIME9=59;this.RESPONSE_TIME10=60;this.SERVICE_TIME_CFS=61;this.SERVICE_TIME_DISP_UNIT=62;this.TT_AVG=63;this.TT_1=64;this.TT_2=65;this.TT_3=66;this.TT_4=67;this.TT_5=68;this.TT_6=69;this.TT_7=70;this.TT_8=71;this.TT_9=72;this.TT_10=73;this.UNCOMMITTED_TIME_UNIT=74;this.UNITS_AVAILABLE=75;this.UNITS_PER_CFS=76;this.MAX_ACFS_WORK=0;this.MAX_PATROLINTERVAL=1;this.MAX_POS=2;this.MAX_QDELAYAVG=3;this.MAX_QDELAY1=4;this.MAX_QDELAY2=5;this.MAX_QDELAY3=6;this.MAX_QDELAY4=7;this.MAX_QDELAY5=8;this.MAX_QDELAY6=9;this.MAX_QDELAY7=10;this.MAX_QDELAY8=11;this.MAX_QDELAY9=12;this.MAX_QDELAY10=13;this.MAX_RTIME1=14;this.MAX_RTIME2=15;this.MAX_RTIME3=16;this.MAX_RTIME4=17;this.MAX_RTIME5=18;this.MAX_RTIME6=19;this.MAX_RTIME7=20;this.MAX_RTIME8=21;this.MAX_RTIME9=22;this.MAX_RTIME10=23;this.MAX_TTIME1=24;this.MAX_TTIME2=25;this.MAX_TTIME3=26;this.MAX_TTIME4=27;this.MAX_TTIME5=28;this.MAX_TTIME6=29;this.MAX_TTIME7=30;this.MAX_TTIME8=31;this.MAX_TTIME9=32;this.MAX_TTIME10=33;this.MIN_UNCOMMITTED=34;this.MIN_FREEUNITS=35;this.MIN_UNITS=36;this.PCT_RTIME1=37;this.PCT_RTIME2=38;this.PCT_RTIME3=39;new Constraint(0,"MAX_ACFS_WORK",37);new Constraint(1,"MAX_PATROLINTERVAL",36);new Constraint(2,"MAX_POS",1);new Constraint(3,"MAX_QDELAYAVG",18);new Constraint(4,"MAX_QDELAY1",19);new Constraint(5,"MAX_QDELAY2",20);new Constraint(6,"MAX_QDELAY3",21);new Constraint(7,"MAX_QDELAY4",22);new Constraint(8,"MAX_QDELAY5",23);new Constraint(9,"MAX_QDELAY6",24);new Constraint(10,"MAX_QDELAY7",25);new Constraint(11,"MAX_QDELAY8",26);new Constraint(12,"MAX_QDELAY9",27);new Constraint(13,"MAX_QDELAY10",28);new Constraint(14,"MAX_RTIME1",5);new Constraint(15,"MAX_RTIME2",6);new Constraint(16,"MAX_RTIME3",7);new Constraint(17,"MAX_RTIME4",8);new Constraint(18,"MAX_RTIME5",9);new Constraint(19,"MAX_RTIME6",10);new Constraint(20,"MAX_RTIME7",11);new Constraint(21,"MAX_RTIME8",12);new Constraint(22,"MAX_RTIME9",13);new Constraint(23,"MAX_RTIME10",14);new Constraint(24,"MAX_TTIME1",29);new Constraint(25,"MAX_TTIME2",30);new Constraint(26,"MAX_TTIME3",31);new Constraint(27,"MAX_TTIME4",32);new Constraint(28,"MAX_TTIME5",33);new Constraint(29,"MAX_TTIME6",34);new Constraint(30,"MAX_TTIME7",35);new Constraint(31,"MAX_TTIME8",36);new Constraint(32,"MAX_TTIME9",37);new Constraint(33,"MAX_TTIME10",38);new Constraint(34,"MIN_UNCOMMITTED",3);new Constraint(35,"MIN_FREEUNITS",4);new Constraint(36,"MIN_UNITS",2);new Constraint(37,"PCT_RTIME1",15,true);new Constraint(38,"PCT_RTIME2",16,true);new Constraint(39,"PCT_RTIME3",17,true);}StatID.prototype.value_for=function(name){var num=eval("this."+name);return num;};function TableSelectionWidget(C,D,H){var B=document.getElementById(C);if(!B){alert("TableSelectionWidget: '"+C+"' container did not exist before trying to populate it");return false;}var I=this;this.selectedIndex;this.onChange=H;var E="<table class='tableSelectionWidget bordered'><tbody></tbody></table>";B.innerHTML=E;var G=B.childNodes[0].childNodes[0];var F="<tr>";F+="<th style='width:10px;'/>";D.each(function(J){F+="<th width='"+J.width+"'>"+J.name+"</th>";});F+="</tr>";new Insertion.Bottom(G,F);this.clearSelected=function(){if(this.selectedIndex){Element.removeClassName(G.childNodes[this.selectedIndex],"selected");G.childNodes[this.selectedIndex].firstChild.firstChild.checked=false;this.selectedIndex=undefined;}};this.addRow=function(L,K){var J="<tr id='"+L+"'>";J+="<td style='width:10px;'><input type='radio' name='tableSelectionWidget'/></td>";K.each(function(M){J+="<td>"+M+"</td>";});J+="</tr>";new Insertion.After(G.lastChild,J);Event.observe(G.lastChild,"click",A,false);};this.removeRow=function(J){var K=$(J);$(K.parentNode).removeChild(K);};this.countRows=function(){var J=G.childNodes.length-1;return J;};this.select=function(J){var K=G.childNodes[J];I.selectedIndex=K.rowIndex;Element.addClassName(K,"selected");K.firstChild.firstChild.checked=true;if(this.onChange){this.onChange(this.selected());}};this.selected=function(){return G.childNodes[this.selectedIndex];};var A=function(K){var J=Event.element(K);if(J.nodeName!=="TR"){while(J.nodeName!=="TR"){J=J.parentNode;}}I.clearSelected();I.select(J.rowIndex);};}function Template(A){this.id="";this.name="";this.columns=0;this.rows=0;this.column_labels=new Array();this.row_labels=new Array();this.blocktype=0;this.response_speed1=new Array();this.response_speed2=new Array();this.response_speed3=new Array();this.response_speed4=new Array();this.response_speed5=new Array();this.response_speed6=new Array();this.response_speed7=new Array();this.response_speed8=new Array();this.response_speed9=new Array();this.response_speed10=new Array();this.region_area=new Array();this.patrol_speed=new Array();this.street_length=new Array();this.supp_units=new Array();}Template.prototype.get=function(id){var params=$H({i:"SWTemplate.get",id:id,format:"json"});var res=get_server_object(params,"json");res=res[0];this.id=res.id;this.name=res.name;this.columns=res.columns;this.rows=res.rows;this.column_labels=eval("("+res.col_labels+")");this.row_labels=eval("("+res.row_labels+")");this.blocktype=res.blocktype;this.response_speed1=eval("("+res.response_speed1+")");this.response_speed2=eval("("+res.response_speed2+")");this.response_speed3=eval("("+res.response_speed3+")");this.response_speed4=eval("("+res.response_speed4+")");this.response_speed5=eval("("+res.response_speed5+")");this.response_speed6=eval("("+res.response_speed6+")");this.response_speed7=eval("("+res.response_speed7+")");this.response_speed8=eval("("+res.response_speed8+")");this.response_speed9=eval("("+res.response_speed9+")");this.response_speed10=eval("("+res.response_speed10+")");this.region_area=eval("("+res.region_area+")");this.patrol_speed=eval("("+res.patrol_speed+")");this.street_length=eval("("+res.street_length+")");this.supp_units=eval("("+res.supp_units+")");};Template.prototype.insert=function(){var B=$H({i:"SWTemplate.insert",response_speed1:this.response_speed1.toJSONString(),response_speed2:this.response_speed2.toJSONString(),response_speed3:this.response_speed3.toJSONString(),response_speed4:this.response_speed4.toJSONString(),response_speed5:this.response_speed5.toJSONString(),response_speed6:this.response_speed6.toJSONString(),response_speed7:this.response_speed7.toJSONString(),response_speed8:this.response_speed8.toJSONString(),response_speed9:this.response_speed9.toJSONString(),response_speed10:this.response_speed10.toJSONString(),region_area:this.region_area.toJSONString(),patrol_speed:this.patrol_speed.toJSONString(),street_length:this.street_length.toJSONString(),supp_units:this.supp_units.toJSONString(),name:this.name,customer_id:O_APP.USER.customerid,owner_id:O_APP.USER.id,blocktype:this.blocktype,row_labels:this.row_labels.toJSONString(),col_labels:this.column_labels.toJSONString(),columns:this.columns,rows:this.rows,format:"string"});var A=get_server_object(B,"string");return A;};Template.prototype.apply_to_dataset=function(A){alert("need to apply this template to the Dataset ID passed in");};function ToggleGroup(A){this.divList=A;}ToggleGroup.prototype.toggle=function(B){for(var A=0;A<this.divList.length;A++){if(this.divList[A]==B){$(this.divList[A]).show();}else{$(this.divList[A]).hide();}}};ToggleGroup.prototype.add=function(A){this.divList.push(A);};ToggleGroup.prototype.remove=function(A){for(var B=0;B<this.divList.length;B++){if(A==this.divList[B]){this.divList.splice(B,1);}}};function set_cookie(B,C,A){try{var E=new Date();E.setDate(E.getDate()+A);document.cookie=B+"="+escape(C)+((A==null)?"":";expires="+E);}catch(D){alert(D.message);}}function get_cookie(A){if(document.cookie.length>0){c_start=document.cookie.indexOf(A+"=");if(c_start!=-1){c_start=c_start+A.length+1;c_end=document.cookie.indexOf(";",c_start);if(c_end==-1){c_end=document.cookie.length;}return unescape(document.cookie.substring(c_start,c_end));}}return null;}function comma_format(D,B){D+="";var A=D.split(".",2);var F=A[1];var C=parseInt(A[0]);if(isNaN(C)){return"";}var E="";if(C<0){E="-";}C=Math.abs(C);var H=new String(C);var A=[];while(H.length>3){var G=H.substr(H.length-3);A.unshift(G);H=H.substr(0,H.length-3);}if(H.length>0){A.unshift(H);}H=A.join(B);if(F){if(F.length<1){D=H;}else{D=H+"."+F;}}else{D=H;}D=E+D;return D;}function highlight_button(B){for(var A=0;A<O_APP.buttons.length;A++){Element.removeClassName($(O_APP.buttons[A]),"menu_option_active");}Element.addClassName($(B),"menu_option_active");}function corona_toggle(D){set_cookie("last_toggle",D,9999);var C="";switch(D){case"workflow_list":C="menu_workflow_list";break;case"datasets":C="menu_datasets";break;case"help":C="menu_help";break;case"yui_admin":C="menu_yui_admin";break;}if(C!=""){highlight_button(C);}var A=0;for(var B=0;B<O_APP.placeholders.length;B++){var E=$(O_APP.placeholders[B]);if(E.id==D){E.style.visibility="visible";set_selects_visible(E,"inline");}else{E.style.visibility="hidden";set_selects_visible(E,"none");}}$(D).style.zIndex=A;Element.show(D);}function set_selects_visible(D,A){var E;var G;if(A==="none"){G="hidden";}else{G="auto";}try{E=D.getElementsByTagName("div");for(var C=0;C<E.length;C++){if(E[C].className.match(/scroll_300/)){E[C].style.overflow=G;O_APP.log("setting overflow to "+G+": "+E[C].id);}else{}}var B=D.getElementsByTagName("select");for(var C=0;C<B.length;C++){B[C].style.display=A;}}catch(F){O_APP.log(F.message);}}function corona_toggle_wf_pane(B){B=B.substring(4,B.length);var A=document.getElementsByClassName("wf_pane");A.sort(sort_on_zindex);if(Element.visible(B)&&(A.last().id==B)){}else{if($(B).empty()){alert("element "+B+" is empty.. need to populate it");}idx=0;A.each(function(C){if(C.id==B){}else{C.style.zIndex=idx;idx++;}});$(B).style.zIndex=idx;Element.show(B);}}function sort_on_zindex(B,A){if(B.style.zIndex<A.style.zIndex){return -1;}if(B.style.zIndex>A.style.zIndex){return 1;}if(B.style.zIndex==A.style.zIndex){return 0;}}function get_color(C){var D=document.getElementsByClassName(C);var A=D.length-1;while(A>=4){A=A-4;}var B=new Array(4);B[0]="#98b3d7";B[1]="#eba200";B[2]="#79d03c";B[3]="#f1e690";return B[A];}function hide_placeholders(){O_APP.placeholders.each(function(A){Element.hide($(A));});}function isNumber(A){return typeof A=="number"&&isFinite(A);}function isString(A){return typeof A=="string";}function random_id(){var D="0123456789ABCDEFGHIJKLMNOPQRSTUVWXTZabcdefghiklmnopqrstuvwxyz";var E=32;var C="";while(C.length==0||$(C)){for(var B=0;B<E;B++){var A=Math.floor(Math.random()*D.length);C+=D.substring(A,A+1);}}return C;}function load_xml_from_string(A){if(window.ActiveXObject){xml_doc=string_to_xml_ie(A);}else{xml_doc=string_to_xml(A);}return xml_doc;}function findPos(A){var B=curtop=0;if(A.offsetParent){B=A.offsetLeft;curtop=A.offsetTop;while(A=A.offsetParent){B+=A.offsetLeft;curtop+=A.offsetTop;}}return[B,curtop];}function position_div_under(A,C,E,H){var F=$("top");var J=F.getDimensions();var G=findPos(C);var D=C.getDimensions();G[0]=G[0]+D.width;G[1]=G[1]-D.height+J.height;var I=(G[1]/2)-21;if(I<0){I=0;}var B=(G[0]-H)-5;if(B<0){B=0;}A.style.top=I+"px";A.style.left=B+"px";A.style.width=H+"px";A.style.height=E+"px";}function position_div_over(H,E){var F=$("top");var G=F.getDimensions();var B=12;var A=1;var D=findPos(E);var C=E.getDimensions();H.style.top=(D[1]-G.height)+"px";H.style.left=(D[0]-B)+"px";H.style.width=(C.width)+"px";H.style.height=(C.height-A)+"px";}function round(C,A){var B=Math.pow(10,A);return Math.round(C*B)/B;}function pluralize(A){if(A=="priority"){return"priorities";}else{return A+"s";}}function interval_to_selectedIndex(A){var B=2;if(A==30){B=1;}if(A==15){B=0;}return B;}function Wizard(B,D,C,A){this.parent=D;this.target_div=C;this.pages=B;this.data=new Array();this.active_page_index=0;this.id=random_id();this.onComplete=A;this.finish_disabled=1;this.data.allocate=true;this.data.satisfy=true;O_APP.Wizards[this.id]=this;}Wizard.prototype.render=function(B){if(B==undefined){B="all";}if(!$(this.id)){this.build_skeleton(this.id);}var C=this.pages[this.active_page_index];if(B=="all"||B=="footer"){this.build_footer(C,this.active_page_index);}if(B=="all"||B=="body"){for(var A=0;A<this.pages.length;A++){if(!this.pages[A].div){this.build_body(this.pages[A]);}}this.display_page(C);}};Wizard.prototype.display_page=function(B){for(var A=0;A<this.pages.length;A++){if($(this.pages[A].div)){Element.hide(this.pages[A].div);}}Element.show(B.div);fill_help_links(B.div);};Wizard.prototype.build_skeleton=function(B){var A='<div id="'+B+'" style="background: inherit;">';A+='<div id="'+B+'_body" style="background: inherit;">&nbsp;</div>';A+='<div id="'+B+'_foot" class="wizard_footer">foot</div>';A+="</div>";$(this.target_div).innerHTML=A;};Wizard.prototype.build_header=function(B){var A='<table width="100%"><tr><td align="left">';A+="<span>"+B.title+"</span>";A+="</td></tr></table>";A=localize(A);$(this.id+"_head").innerHTML=A;};Wizard.prototype.build_body=function(C){var B=random_id();C.div=B;new Insertion.Bottom(this.id+"_body","<div id='"+C.div+"'  style='display:none;'>"+C.title+"</div>");var A='<table width="100%" style="background: inherit;"><tr><td align="left">';A+=unescape(C.content);A+="</td></tr></table>";A=localize(A);$(C.div).innerHTML=A;if(C.radioset){C.radioset.render();}};Wizard.prototype.build_footer=function(D,B){var A="O_APP.Wizards['"+this.id+"']";var C='<table width="100%"  style="background: inherit;"><tr><td align="right">';if(B>0){C+='<button id="'+this.id+'_previous" class="previous" title="^previous;" onClick="'+A+'.previous()">^previous;</button>';}if(B==(this.pages.length-1)){C+='<button id="'+this.id+'_finish" class="finish" title="^finish;" onClick="'+A+'.finish()">^finish;</button>';}else{C+='<button id="'+this.id+'_next" class="next" title="^next;" onClick="'+A+'.next()">^next;</button>';}C+="</td></tr></table>";C=localize(C);$(this.id+"_foot").innerHTML=C;if(this.finish_disabled==1){this.disable("finish");}else{this.enable("finish");}};Wizard.prototype.next=function(){if(this.render){var A=false;if(this.pages[this.active_page_index].onNext){A=this.pages[this.active_page_index].onNext();}if(A){this.active_page_index++;this.render();}}else{var B=this.id.substring(0,32);O_APP.Wizards[B].next();}};Wizard.prototype.previous=function(){this.active_page_index--;this.render();};Wizard.prototype.finish=function(){this.onComplete();};Wizard.prototype.disable=function(A){var B=this.id+"_"+A;if($(B)){$(B).disabled=1;Element.addClassName($(B),"disabled");}if(A=="finish"){this.finish_disabled=1;}};Wizard.prototype.enable=function(A){var B=this.id+"_"+A;if($(B)){$(B).disabled=false;Element.removeClassName($(B),"disabled");}if(A=="finish"){this.finish_disabled=0;}};Wizard.prototype.add_page=function(F,D,B,C,E){this.remove_page(F);var A="";if(E==undefined){A=this.pages.length;}else{A=(E-1);this.shift_pages(A);}this.pages[A]=new Object;this.pages[A].title=F;this.pages[A].content=D;this.pages[A].status=B;this.pages[A].onNext=C;if($(this.id)){this.render();}return A;};Wizard.prototype.update_page=function(E,D,A){for(var C=0;C<this.pages.length;C++){if(this.pages[C].title==E){if(E){this.pages[C].title=E;}if(D){this.pages[C].content=D;var B='<table width="100%"><tr><td align="center">';B+=unescape(page.content);B+="</td></tr></table>";B=localize(B);$(page.div).innerHTML=B;}if(A){this.pages[C].status=A;}}}if($(this.id)){this.render();}};Wizard.prototype.remove_page=function(B){for(var A=0;A<this.pages.length;A++){if(this.pages[A].title==B){if($(this.pages[A].div)){Element.remove(this.pages[A].div);}this.pages.splice(A,1);}}if($(this.id)){this.render();}};Wizard.prototype.DESTROY=function(){Element.remove(this.id);};Wizard.prototype.shift_pages=function(A){for(var B=(this.pages.length-1);B>(A-1);B--){this.pages[B+1]=this.pages[B];this.pages[B]=new Object;}};Wizard.prototype.clear_pages_after=function(A){for(var B=0;B<this.pages.length;B++){if(B>A){if($(this.pages[B].div)){Element.remove(this.pages[B].div);}this.pages.splice(B,100);}}};function Workflow(B,C){var A=this;this.workflowid="";this.dataset="";this.name="";this.description="";this.sidebar="";this.tab_id=0;this.has_allocation_units=false;this.has_scheduled_units=false;this.has_goals_units=false;this.current_units_view="original";this.officers=0;this.hours_per_week=0;this.allocate_dirty_flag=false;this.needs_to_fork=false;this.constraint_requirements;}Workflow.prototype.init=function(id){if(id!="new"){var params=$H({i:"Workflow.get",id:id,format:"json"});var res=get_server_object(params,"json");res=res[0];this.workflowid=res.id;this.workflowid=res.id;this.name=res.name;this.description=res.description;this.dataset_id=res.dataset_id;this.dataset=new Dataset(this,res.dataset);if(res.allocation_units!=="[]"){this.has_allocation_units=true;}if(res.all_requirements_units!=="[]"){this.has_goals_units=true;}if(res.scheduled_units!=="[]"){this.has_scheduled_units=true;}this.current_units_view=res.current_units_view;var sidebar="[]";switch(parseInt(res.path_id)){case 1:sidebar='[{"type":"dataset","name":"^statistics;","tooltip":"^dataset_tooltip;","icon":"dataset.png","status":"complete"},{"type":"availability","name":"^availability;","tooltip":"^availability_tooltip;","icon":"appointment-new.png","status":"incomplete"},{"type":"constraintset","name":"^operational_goals;","tooltip":"^operational_goals_tooltip;","icon":"statistic_constraint_sets.png","status":"incomplete"},{"type":"allocation","name":"^allocation;","tooltip":"^allocation_tooltip;","icon":"allocation.png","status":"incomplete"},{"type":"scheduler","name":"^scheduler;","tooltip":"^scheduler_tooltip;","icon":"calendar.png","status":"incomplete"},{"type":"report","name":"^report;","tooltip":"^report_tooltip;","icon":"report.png","status":"incomplete"},{"type":"export","name":"^export;","tooltip":"^export_tooltip;","icon":"export.png","status":"incomplete"}]';break;case 2:sidebar='[{"type":"dataset","name":"^statistics;","tooltip":"^dataset_tooltip;","icon":"dataset.png","status":"complete"},{"type":"availability","name":"^availability;","tooltip":"^availability_tooltip;","icon":"appointment-new.png","status":"incomplete"},{"type":"allocation","name":"^allocation;","tooltip":"^allocation_tooltip;","icon":"allocation.png","status":"incomplete"},{"type":"export","name":"^export;","tooltip":"^export_tooltip;","icon":"export.png","status":"incomplete"},{"type":"report","name":"^report;","tooltip":"^report_tooltip;","icon":"report.png","status":"incomplete"}]';break;case 3:sidebar='[{"type":"dataset","name":"^statistics;","tooltip":"^dataset_tooltip;","icon":"dataset.png","status":"complete"},{"type":"availability","name":"^availability;","tooltip":"^availability_tooltip;","icon":"appointment-new.png","status":"incomplete"},{"type":"constraintset","name":"^operational_goals;","tooltip":"^operational_goals_tooltip;","icon":"statistic_constraint_sets.png","status":"incomplete"},{"type":"export","name":"^export;","tooltip":"^export_tooltip;","icon":"export.png","status":"incomplete"},{"type":"report","name":"^report;","tooltip":"^report_tooltip;","icon":"report.png","status":"incomplete"}]';break;default:sidebar='[{"type":"dataset","name":"^statistics;","tooltip":"^dataset_tooltip;","icon":"dataset.png","status":"complete"},{"type":"availability","name":"^availability;","tooltip":"^availability_tooltip;","icon":"appointment-new.png","status":"incomplete"},{"type":"export","name":"^export;","tooltip":"^export_tooltip;","icon":"export.png","status":"incomplete"},{"type":"report","name":"^report;","tooltip":"^report_tooltip;","icon":"report.png","status":"incomplete"}]';break;}sidebar=eval(sidebar);this.sidebar=new Sidebar(sidebar,this,"wf_"+this.workflowid+"_menu_inner");deductions=eval(res.deductions);this.availability=new Availability(deductions,res.hours_per_year,this);this.officers=res.officers;if(res.hours_per_week>0){this.hours_per_week=res.hours_per_week;}else{this.hours_per_week=O_APP.USER.default_hours_per_week;}if(res.constraintset_id!=""&&res.constraintset_id!=null){this.constraintset_id=res.constraintset_id;this.constraintset=new Constraintset(this,this.constraintset_id);this.constraintset.init(res.constraintset);this.constraint_requirements=new ConstraintRequirements(this,res.saved_requirements);}else{if(this.dataset.columns){this.render_dependent_tabs();}else{}}var alloc_fields=["allocation_units","allocation_vars","allocated_officers","allocated_hours","allocation_selected_var","allocation_selected_method"];var alloc_config=new Object();for(var f=0;f<alloc_fields.length;f++){alloc_config[alloc_fields[f]]=res[alloc_fields[f]];}if(this.dataset.columns){this.build_allocation(alloc_config);}}else{this.workflowid="new";this.name="New Workflow";this.description="A New Workflow being created";this.dataset="";var json='[{"type":"new_workflow","name":"^new_workflow;","tooltip":"^new_workflow_tooltip;","icon":"new.png","status":"new","target_obj":"null","target_obj_div":"null"}]';var json=eval("("+json+")");this.sidebar=new Sidebar(json,this,"wf_"+this.workflowid+"_menu_inner");}};Workflow.prototype.render_dependent_tabs=function(){this.build_allocation({});this.allocation.show("YUI_Workflow_"+this.workflowid+"_allocation");this.constraintset=new Constraintset(this);this.constraintset.create();this.constraintset_id=this.constraintset.id;this.save_constraintset_id();this.constraintset.init();this.constraint_requirements=new ConstraintRequirements(this);};Workflow.prototype.show=function(A){this.yui_tabs=new YUI_Workflow(A,this.workflowid);};Workflow.prototype.as_xml=function(){var A="<workflow id='"+this.workflowid+"' name='"+this.name+"' description='"+this.description+"'/>";return A;};Workflow.prototype.set_selected_path=function(B){var C=$("new_wf_paths").childNodes;for(var A=0;A<C.length;A++){C[A].className="wf_path_option";}$(B).className="wf_path_option_selected";this.selected_path_id=B.replace("new_wf_path_","");switch(B){case"new_wf_path_1":break;case"new_wf_path_2":break;case"new_wf_path_3":break;case"new_wf_path_4":break;}};Workflow.prototype.set_selected_dataset=function(B){var A=B.parentNode.childNodes;for(i=0;i<A.length;i++){A[i].className="wf_path_option";}B.className="wf_path_option_selected";$(B.id+"_radio_idicator").click();this.wizard.enable("finish");};Workflow.prototype.save_sidebar=function(){var B=$H({i:"Workflow.save",id:this.workflowid,sidebar:this.sidebar.json.toJSONString(),format:"json"});var A=function(C){};ajax_request(B.toQueryString(),null,A);};Workflow.prototype.save_constraintset_id=function(){var B=$H({i:"Workflow.save",id:this.workflowid,constraintset_id:this.constraintset_id,format:"json"});var A=function(C){};ajax_request(B.toQueryString(),null,A);};Workflow.prototype.calculate_officer_cost=function(A){var D=0;var C=0;var F=0;if(O_APP.USER.default_cost_per_officer>0){C=O_APP.USER.default_cost_per_officer;var B=0;for(var G=0;G<A.length;G++){for(var E=0;E<A[G].length;E++){B+=A[G][E];}}if(B>0){if(this.dataset.blocktype==0&&this.dataset.rows>24){}if(this.dataset.blocktype==0){if(this.hours_per_week>0){if(this.dataset.rows>24){B/=(this.dataset.rows/24);}D=Math.ceil(B/this.hours_per_week);}}else{D=Math.ceil(B);}}F=D*C;}else{}return[F,D];};Workflow.prototype.insert_officer_cost=function(B,A){var F=0;var C=0;var D=[];D=this.calculate_officer_cost(A);F=D[0];C=D[1];try{var G=comma_format(F,",");$(B).innerHTML="<span style='font-weight: bold'>"+G+" ("+C+" "+O_APP.strings["officers"]+")</span>";}catch(E){O_APP.log("problem trying to insert officer cost into tag "+B+": "+E.message);}};Workflow.prototype.view_report=function(B,A){switch(A){case"stats_report":this.yui_tabs.statistics_report_params(B);break;case"narrative_report":this.yui_tabs.narrative_report_params(B);break;case"percentile_report":this.yui_tabs.percentile_report_params(B);break;}};Workflow.prototype.new_workflow_wizard_page_2=function(D){this.wizard.clear_pages_after(0);var F=this.wizard.id;var A=O_APP.USER.cm_service_id;var C=transform("<new_workflow_wizard_page2 wizard_id='"+F+"' dataset_type='"+D+"' service_id='"+A+"'/>","workflow");C=localize(C);var B=function(){return true;};var E=this.wizard.add_page("page2",C,"incomplete",B);if(O_APP.USER["cadmine_groupname"]&&O_APP.USER["cadmine_groupname"]!="None"){this.wizard.data["dataset_source"]="cadmine";}else{this.wizard.data["dataset_source"]="existing";}};Workflow.prototype.new_workflow_wizard_page_3_existing=function(dataset_type){this.wizard.disable("next");this.wizard.disable("finish");dataset_type=parseInt(dataset_type);var wiz_id=this.wizard.id;this.wizard.onComplete=function(){O_APP.Wizards[wiz_id].parent.finish_wizard();};this.wizard.clear_pages_after(1);var blocktype=this.wizard.data.dataset_type||0;var params=$H({i:"Dataset.get_for_session",filter_owner:false,format:"json"});var wiz_id=this.wizard.id;var row_filter=this.get_rows_from_interval();var onChange=function(el){O_APP.Wizards[wiz_id].data["selected_dataset_id"]=el.id;O_APP.Wizards[wiz_id].enable("finish");};var oncomplete=function(response){var res_json=eval(response.responseText);var resXML="<new_workflow_wizard_page3_existing wizard_id='"+wiz_id+"' dataset_type='"+dataset_type+"' row_filter='"+row_filter+"'></new_workflow_wizard_page3_existing>";var html=transform(resXML,"workflow");html=unescape(html);var onNext=function(){return true;};var page3_idx=O_APP.Wizards[wiz_id].add_page("page3",html,"incomplete",onNext);this.TblWidget=new TableSelectionWidget(wiz_id+"_tableSelectWidget",[{name:localize("^dataset_lbl_name;"),width:"20%"},{name:localize("^dataset_lbl_description;"),width:"45%"},{name:localize("^datasets_lbl_creator;"),width:"15%"},{name:localize("^datasets_lbl_modified_date;"),width:"10%"}],onChange);var Tbl=this.TblWidget;res_json.each(function(dataset){var shared=parseInt(dataset.shared);var blocktype=parseInt(dataset.blocktype);var row_count=parseInt(dataset.rows);var creator=dataset.firstname+" "+dataset.lastname;if(shared===1||dataset.userid===O_APP.USER.id){if(dataset_type===1){if(dataset_type===blocktype){Tbl.addRow(dataset.id,[localize(dataset.name),localize(dataset.description),creator,dataset.last_updated]);}}else{if(dataset_type===blocktype&&row_filter===row_count){Tbl.addRow(dataset.id,[localize(dataset.name),localize(dataset.description),creator,dataset.last_updated]);}}}});var ds_count=Tbl.countRows();if(ds_count==1){var ds_id=res_json[0].id;Tbl.select(ds_id);}O_APP.Wizards[wiz_id].enable("next");};ajax_request(params.toQueryString(),null,oncomplete,false);};Workflow.prototype.new_workflow_wizard_page_3_cadmine=function(B){this.wizard.disable("finish");this.wizard.clear_pages_after(1);var A="<div id='Wizard_CADmineImport'>&nbsp;</div>";this.wizard.add_page("page3",A,"incomplete",null);var C=new CADmineImport("Wizard_CADmineImport",this.wizard);O_APP.CADmineImports["Wizard_CADmineImport"]=C;this.wizard.enable("finish");this.wizard.onComplete=function(){O_APP.CADmineImports["Wizard_CADmineImport"].show_summary("Wizard_CADmineImport");};};Workflow.prototype.new_workflow_wizard_page_3_swiff=function(G,C){if(G=="build"){this.wizard.disable("next");this.wizard.disable("finish");this.wizard.clear_pages_after(1);content="<div id='new_workflow_page_3' style='min-height: 20em; margin:auto; width: 90%;'>\n";content+="<h1 class='help' topic='workflows.xml'>"+O_APP.strings["workflow_creating_new"]+"</h1>\n";content+="<br/>\n";content+="<span class='wf_new_info'>"+O_APP.strings["select_swiff_file"]+"</span>\n";content+="<br/>\n";content+="<br/>\n";content+="<form id='swiff_upload'>\n";content+="<input type='file' size='50' name='swiff_file'/>\n";content+="<input type='hidden' name='userid' value='"+O_APP.USER.id+"'/>";content+="<input type='hidden' name='customerid' value ='"+O_APP.USER.customerid+"'/>";content+="<input type='hidden' name='shared' value='1'/>";content+="</form>";content+="</div>\n";var D=content;this.wizard.add_page("page3",D,"incomplete",null);var B=this.wizard.id;O_APP.Wizards[B].onComplete=function(){O_APP.Wizards[B].parent.finish_wizard();};this.wizard.enable("next");this.wizard.enable("finish");}if(G=="submit"){var F=O_APP.BASE_URL+"/cgi/import_swiff.cgi";var H={upload:function(K){O_APP.Workflows["new"].new_workflow_wizard_page_3_swiff("loaded",K);O_APP.Workflows["new"].finish_wizard(1);}};var J=document.getElementById("swiff_upload");YAHOO.util.Connect.setForm(J,true);var E=YAHOO.util.Connect.asyncRequest("POST",F,H);}if(G=="loaded"){alert(C.responseText);var I=C.responseXML;var A=I.getElementById("new_dataset_id").innerHTML;if(A){this.wizard.data["selected_dataset_id"]=A;this.wizard.data["swiff_loaded"]=1;}else{this.wizard.data["swiff_loaded"]=0;}}};Workflow.prototype.new_workflow_wizard_page_3_sw3=function(G,C){if(G=="build"){this.wizard.disable("next");this.wizard.disable("finish");this.wizard.clear_pages_after(1);content="<div id='new_workflow_page_3' style='min-height: 20em; margin:auto; width: 90%;'>\n";content+="<h1 class='help' topic='workflows.xml'>"+O_APP.strings["workflow_creating_new"]+"</h1>\n";content+="<br/>\n";content+="<span class='wf_new_info'>"+O_APP.strings["workflow_dataset_from_sw3"]+"</span>\n";content+="<br/>\n";content+="<br/>\n";content+="<form id='sw3_upload'>\n";content+="<input type='file' size='50' name='sw3_file'/>\n";content+="<input type='hidden' name='userid' value='"+O_APP.USER.id+"'/>";content+="<input type='hidden' name='shared' value='1'/>";content+="</form>";content+="</div>\n";var D=content;this.wizard.add_page("page3",D,"incomplete",null);var B=this.wizard.id;O_APP.Wizards[B].onComplete=function(){O_APP.Wizards[B].parent.finish_wizard();};this.wizard.enable("next");this.wizard.enable("finish");}if(G=="submit"){var F=O_APP.BASE_URL+"/cgi/import_sw3.cgi";var H={upload:function(K){O_APP.Workflows["new"].new_workflow_wizard_page_3_sw3("loaded",K);O_APP.Workflows["new"].finish_wizard(1);}};var J=document.getElementById("sw3_upload");YAHOO.util.Connect.setForm(J,true);var E=YAHOO.util.Connect.asyncRequest("POST",F,H);}if(G=="loaded"){var I=C.responseXML;var A=I.getElementById("new_dataset_id").innerHTML;if(A){this.wizard.data["selected_dataset_id"]=A;this.wizard.data["sw3_loaded"]=1;}else{this.wizard.data["sw3_loaded"]=0;}}};Workflow.prototype.finish_wizard=function(D){$("loading").style.visibility="visible";document.body.style.cursor="wait";this.wizard.data["path_id"]=999;if(this.wizard.data["allocate"]&&this.wizard.data["satisfy"]){this.wizard.data["path_id"]=1;}if(this.wizard.data["allocate"]&&!this.wizard.data["satisfy"]){this.wizard.data["path_id"]=2;}if(!this.wizard.data["allocate"]&&this.wizard.data["satisfy"]){this.wizard.data["path_id"]=3;}var F=this.wizard.data;if(D==1){E=this.wizard.data["sw3_loaded"]||this.wizard.data["swiff_loaded"];}else{var E=0;switch(F["dataset_source"]){case"existing":E=1;break;case"cadmine":O_APP.clear_modal();E=1;break;case"sw3":this.new_workflow_wizard_page_3_sw3("submit");E=999;break;case"swiff":this.new_workflow_wizard_page_3_swiff("submit");E=999;break;default:E="Error";}}switch(E){case 1:var C=(F["num_hours"]*52)||2080;var A=F["num_officers"]||0;var B=this.create_new(F["name"],F["description"],F["selected_dataset_id"],F["path_id"],C,A);O_APP.WorkflowContainer.close_workflow("new");O_APP.WorkflowContainer.open_workflow(B);O_APP.WorkflowContainer.refresh_workflow_list();break;case 0:alert("need to handle this error. source was "+F["dataset_source"]);break;case 999:break;}$("loading").style.visibility="hidden";document.body.style.cursor="auto";};Workflow.prototype.create_new=function(B,F,I,A,C,J){if(this.wizard.data["dataset_source"]=="existing"){var D=this.fork_dataset(I,B,F);this.needs_to_fork=false;}else{var D=I;}var E=$H({i:"Admin.get_agency",id:O_APP.USER.customerid,format:"json"});var G=get_server_object(E,"json");G=G[0];deductions=G.deductions;C=C||G.hours_per_year;B=B.replace("'","");F=F.replace("'","");var E=$H({i:"Workflow.create",name:B,description:F,userid:O_APP.USER.id,dataset_id:D,path_id:A,deductions:deductions,hours_per_year:C,officers:J,needs_to_fork:this.needs_to_fork,format:"json"});var G=get_server_object(E,"json");var H=G.workflow_id;this.workflowid=H;return H;};Workflow.prototype.new_workflow_wizard_page_3=function(A,D){this.wizard.clear_pages_after(1);var F=this.wizard.id;switch(A){case"existing":xml_string="<new_workflow_wizard_page_existing wizard_id='"+F+"' dataset_type='"+D+"'/>";break;case"cadmine":xml_string="<new_workflow_wizard_page_cadmine wizard_id='"+F+"' dataset_type='"+D+"'/>";break;case"swiff":xml_string="<new_workflow_wizard_page_swiff wizard_id='"+F+"' dataset_type='"+D+"'/>";break;default:xml_string="";}var C=transform(xml_string,"workflow");C=escape(C);var B=function(){alert("who knows what we need to check here?");return true;};var E=this.wizard.add_page("page2",C,"incomplete",B);};Workflow.prototype.add_wizard_page=function(A,D,G){if(D){for(var C=0;C<this.wizard.pages.length;C++){if(C>this.wizard.active_page_index){if($(this.wizard.pages[C].div)){Element.remove(this.wizard.pages[C].div);}this.wizard.pages.splice(C,1);}}}var B=transform("<new_workflow_wizard_page_"+A+" wizard_id='"+this.wizard.id+"'/>","workflow");B=escape(B);this.wizard.add_page(A,B,"incomplete");this.selected_dataset_from=A;switch(A){case"select_existing_dataset":var G=$H({i:"Dataset.get_for_session",filter_owner:true,format:"xml"});var F=this.wizard.id;var E=function(H){var J="<new_workflow_list_datasets wizard_id='"+F+"' dataset_type='"+G+"'>"+H.responseText+"</new_workflow_list_datasets>";var I=transform(J,"workflow");$("select_existing_dataset_content").innerHTML=I;};ajax_request(G.toQueryString(),null,E,false);break;default:break;}};Workflow.prototype.save_availability=function(A){var C=O_APP.Availabilities[A];var D=$H({i:"Workflow.save",id:this.workflowid,deductions:C.deductions.toJSONString(),hours_per_year:C.hours_per_year,net_work_hours:C.net_work_hours,staffing_factor:C.staffing_factor,availability_factor:C.availability_factor,format:"json"});var B=function(E){};ajax_request(D.toQueryString(),null,B,false);};Workflow.prototype.fork_dataset=function(A,C,F){var E=$H({i:"Dataset.fork",id:A,name:C,description:F,shared:false});var B=get_server_object(E);var E=$H({i:"Workflow.save",id:this.workflowid,dataset_id:B,needs_to_fork:false,format:"json"});var D=get_server_object(E);this.needs_to_fork=false;return B;};Workflow.prototype.get_rows_from_interval=function(){switch(this.wizard.data.interval){case".25":rows=96;break;case".5":rows=48;break;case"1":rows=24;break;case"15":rows=96;break;case"30":rows=48;break;case"60":rows=24;break;default:rows=0;}return rows;};Workflow.prototype.clean_up_memory=function(){if(this.workflowid=="new"){return ;}var A=this;var D=A.dataset;var C=A.constraintset;try{if(A.availability!==undefined){if(O_APP.Availabilities[A.availability.id]){delete O_APP.Availabilities[A.availability.id];}}for(var B=0;B<D.brick.popups.length;B++){this.destroy_popup(O_APP.Popups[D.brick.popups[B].id]);}this.destroy_popup(O_APP.Popups[C.brick.templates_popup.id]);if(O_APP.Flexigrids[D.brick.grid_view.flexigrid.unique_id]){this.destroy_popup(O_APP.Popups[D.brick.grid_view.flexigrid.chart_popup.id]);O_APP.Flexigrids[D.brick.grid_view.flexigrid.unique_id].detach_events();delete O_APP.Flexigrids[D.brick.grid_view.flexigrid.unique_id];}if(O_APP.Flexigrids[D.brick.calibrate_view.speed_grid.unique_id]){this.destroy_popup(O_APP.Popups[D.brick.calibrate_view.speed_grid.chart_popup.id]);O_APP.Flexigrids[D.brick.calibrate_view.speed_grid.unique_id].detach_events();delete O_APP.Flexigrids[D.brick.calibrate_view.speed_grid.unique_id];}if(O_APP.Flexigrids[D.brick.calibrate_view.time_proj_grid.unique_id]){this.destroy_popup(O_APP.Popups[D.brick.calibrate_view.time_proj_grid.chart_popup.id]);O_APP.Flexigrids[D.brick.calibrate_view.time_proj_grid.unique_id].detach_events();delete O_APP.Flexigrids[D.brick.calibrate_view.time_proj_grid.unique_id];}if(O_APP.Flexigrids[D.brick.calibrate_view.time_actual_grid.unique_id]){this.destroy_popup(O_APP.Popups[D.brick.calibrate_view.time_actual_grid.chart_popup.id]);O_APP.Flexigrids[D.brick.calibrate_view.time_actual_grid.unique_id].detach_events();delete O_APP.Flexigrids[D.brick.calibrate_view.time_actual_grid.unique_id];}if(O_APP.Flexigrids[D.brick.calibrate_view.time_difference_grid.unique_id]){this.destroy_popup(O_APP.Popups[D.brick.calibrate_view.time_difference_grid.chart_popup.id]);O_APP.Flexigrids[D.brick.calibrate_view.time_difference_grid.unique_id].detach_events();delete O_APP.Flexigrids[D.brick.calibrate_view.time_difference_grid.unique_id];}if(O_APP.Flexigrids[C.brick.editgrid.unique_id]){if(O_APP.Popups[C.brick.editgrid.chart_popup.id]){this.destroy_popup(O_APP.Popups[C.brick.editgrid.chart_popup.id]);}O_APP.Flexigrids[C.brick.editgrid.unique_id].detach_events();delete O_APP.Flexigrids[C.brick.editgrid.unique_id];}if(O_APP.Flexigrids[C.brick.requirements_grid.unique_id]){if(O_APP.Popups[C.brick.requirements_grid.chart_popup.id]){this.destroy_popup(O_APP.Popups[C.brick.requirements_grid.chart_popup.id]);}O_APP.Flexigrids[C.brick.requirements_grid.unique_id].detach_events();delete O_APP.Flexigrids[C.brick.requirements_grid.unique_id];}if(O_APP.Flexigrids[C.brick.all_requirements_grid.unique_id]){if(O_APP.Popups[C.brick.all_requirements_grid.chart_popup.id]){this.destroy_popup(O_APP.Popups[C.brick.all_requirements_grid.chart_popup.id]);}O_APP.Flexigrids[C.brick.all_requirements_grid.unique_id].detach_events();delete O_APP.Flexigrids[C.brick.all_requirements_grid.unique_id];}if(O_APP.Flexigrids[A.allocation.flexigrid.unique_id]){this.destroy_popup(O_APP.Popups[A.allocation.flexigrid.chart_popup.id]);O_APP.Flexigrids[A.allocation.flexigrid.unique_id].detach_events();delete O_APP.Flexigrids[A.allocation.flexigrid.unique_id];}if(O_APP.Flexigrids[A.allocation.variable_flexigrid.unique_id]){this.destroy_popup(O_APP.Popups[A.allocation.variable_flexigrid.chart_popup.id]);O_APP.Flexigrids[A.allocation.variable_flexigrid.unique_id].detach_events();delete O_APP.Flexigrids[A.allocation.variable_flexigrid.unique_id];}if(O_APP.ActiveBricks[D.brick.brick_id]){delete O_APP.ActiveBricks[D.brick.brick_id];}if(O_APP.ActiveBricks[C.brick.brick_id]){delete O_APP.ActiveBricks[C.brick.brick_id];}}catch(E){O_APP.log(E.message);}};Workflow.prototype.destroy_popup=function(A){var B=A||undefined;if(B){Element.remove($(B.parent_id+"_popup"));delete B;}};Workflow.prototype.build_allocation=function(B){var A=this.officers;var C=(this.availability.hours_per_year/52);this.allocation=new Allocation(this,A,C,B);};function WorkflowContainer(A){this.workflows=new Array();this.active_workflow="list";this.div=A;this.tg=new ToggleGroup(["wf_list"]);}WorkflowContainer.prototype.draw_tabs=function(){this.tg=new ToggleGroup(["wf_list"]);var L=$("wf_tab_table");for(var H=1;H<L.rows[0].cells.length;H++){L.rows[0].cells[H].innerHTML="&nbsp;";L.rows[0].cells[H].className="";}var G=0;var B=false;for(var K in this.workflows){var C=this.workflows[K];var A=C.name;if(C.workflowid){try{this.close_popups(K);try{A=C.name.replace(/\s/g,"&nbsp;");}catch(J){}G++;var D=L.rows[0].cells[G];if(C.workflowid==this.active_workflow){D.className="wf_tab wf_tab_active";B=true;$("tab_list").className="wf_tab wf_tab_inactive";}else{D.className="wf_tab wf_tab_inactive";}var E="O_APP.WorkflowContainer.set_active_workflow("+C.workflowid+");O_APP.WorkflowContainer.draw_tabs()";var I='if ( confirm( "^confirm_close_workflow;\\n '+C.name+' " ) ) O_APP.WorkflowContainer.close_workflow('+C.workflowid+")";var F="<table width='100%'><tr><td class='wf_tab_left'><img src='themes/images/close16x16.png' title='Close this workflow' onClick='"+localize(I)+"'/></td><td onClick="+E+" class='wf_tab_title'>"+A+"</td><td class='wf_tab_right'></td></tr></table>";if(C.workflowid=="new"){E="O_APP.WorkflowContainer.set_active_workflow('new');O_APP.WorkflowContainer.draw_tabs()";F="<table width='100%'><tr><td class='wf_tab_left'><img src='themes/images/close16x16.png' title='Close this workflow' onClick='O_APP.WorkflowContainer.close_workflow(\"new\")'/></td><td onClick="+E+" class='wf_tab_title'>"+A+"</td><td class='wf_tab_right'></tr></table>";}D.innerHTML=F;this.tg.add("wf_"+C.workflowid);}catch(J){alert("WorkflowContainer.draw_tabs: "+J.message);}}}if(!B){$("tab_list").className="wf_tab wf_tab_active";}if(this.active_workflow){this.tg.toggle("wf_"+this.active_workflow);}else{this.tg.toggle("wf_list");}};WorkflowContainer.prototype.open_workflow=function(D){if(this.workflows[D]){this.active_workflow=D;this.draw_tabs();return ;}if(this.tab_count==5){alert("Maximum tab count");return false;}else{var B=new Workflow(null,D);B.init(D);this.workflows[String(B.workflowid)]=B;O_APP.Workflows[String(B.workflowid)]=B;var A="wf_"+B.workflowid;var C="<div id='"+A+"' class='wf_pane'>&nbsp;</div>";new Insertion.Bottom("wf_panes",C);this.active_workflow=B.workflowid;this.draw_tabs();B.show($(A));}};WorkflowContainer.prototype.close_popups=function(A){if(this.workflows[A].dataset){if(O_APP.ActiveBricks["dataset_"+this.workflows[A].dataset.id]){if(O_APP.ActiveBricks["dataset_"+this.workflows[A].dataset.id].hide_popups){O_APP.ActiveBricks["dataset_"+this.workflows[A].dataset.id].hide_popups();}}if(O_APP.ActiveBricks["dataset_"+this.workflows[A].dataset.id]){if(O_APP.ActiveBricks["dataset_"+this.workflows[A].dataset.id].grid_view){O_APP.ActiveBricks["dataset_"+this.workflows[A].dataset.id].grid_view.flexigrid.chart_popup.overlay.hide();}}}else{}};WorkflowContainer.prototype.close_workflow=function(C){if($("wf_"+C)){try{var A=this.workflows[C].pe;if(A){A.stop();}this.close_popups(C);this.workflows[C].clean_up_memory();Element.remove($("wf_"+C));delete this.workflows[C];delete O_APP.Workflows[C];this.tab_count--;this.active_workflow="list";this.draw_tabs();}catch(B){O_APP.log(B.message);}}else{}};WorkflowContainer.prototype.delete_workflow=function(C){this.close_workflow(C);var B=$H({i:"Workflow.remove",id:C,format:"xml"});var A=function(D){O_APP.WorkflowContainer.refresh_workflow_list();};ajax_request(B.toQueryString(),null,A);};WorkflowContainer.prototype.rename_workflow=function(B,A,I){var G=localize("^new_workflow_name_prompt;");var E=prompt(G,A);if(E==null){return ;}E=E.replace("'","");E=E.replace("&","&amp;");var C=localize("^new_workflow_description_prompt;");var H=prompt(C,I);if(H==null){return ;}H=H.replace("'","");H=H.replace("&","&amp;");var D=$H({i:"Workflow.save",id:B,name:E,description:H,format:"json"});var F=get_server_object(D);O_APP.WorkflowContainer.refresh_workflow_list();};WorkflowContainer.prototype.draw_workflow_list=function(){var C=$H({i:"Workflow.get_list_for_session",format:"xml"});var A=this.div;var B=function(D){var E=transform(D.responseText,"workflow_list");$(A).innerHTML=E;fill_help_links(A);};ajax_request(C.toQueryString(),null,B);};WorkflowContainer.prototype.refresh_workflow_list=function(){var C=$H({i:"Workflow.get_list_for_session",format:"xml"});var A="wf_list";var B=function(D){myString=D.responseText;myString=myString.replace(/<response>/ig,"");myString=myString.replace(/<\/response>/ig,"");var E=transform(myString,"workflow_list");$(A).innerHTML=E;fill_help_links(A);};ajax_request(C.toQueryString(),null,B);};WorkflowContainer.prototype.set_active_workflow=function(A){this.active_workflow=A;};WorkflowContainer.prototype.cancel_import=function(B,D){O_APP.Workflows[B].pe.stop();var C=$H({i:"Dataset.cancel_cm_import_job",id:D});var A=get_server_object(C);this.delete_workflow(B);};WorkflowContainer.prototype.test_open_close=function(A,B){if(!B){var B=prompt("how many cycles","3");}O_APP.test_count++;if(O_APP.test_count>B){return ;}else{O_APP.log("TEST CYCLE "+O_APP.test_count,"warn");$("menu_left").innerHTML="<h1>"+O_APP.test_count+"<h1>";O_APP.WorkflowContainer.close_workflow(A);setTimeout("O_APP.WorkflowContainer.open_workflow( "+A+" );",500);setTimeout("O_APP.WorkflowContainer.test_open_close("+A+", "+B+")",25000);}};function XMLTransformer(){}function transform(Q,M,R,C){var G;var I="";var A='<?xml version="1.0" encoding="utf-8"?><master xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:html="http://www.w3.org/1999/xhtml">';var L="</master>";Q=A+Q+L;var F=O_APP.SERVICE_URL+"?i=XMLHelper.get_xsl&filename="+M+"&lang="+O_APP.LANG;var N=null;var E="";if(XSL_CACHE[F]!=undefined){E=XSL_CACHE[F];}else{N=createXMLHTTPRequest();N.open("GET",F,false);try{N.send(null);}catch(P){O_APP.log("initial get_xsl call failed.. 2nd retry workaround");alert("exception 101 while getting "+F);N.send(null);}E=N.responseText;XSL_CACHE[F]=E;}if(!E){alert("no xsl string for xsl_file "+M);return false;}E=E.replace(/import_xsl_path_/g,"http://sw4-server//services?i=XMLHelper.get_xsl&amp;filename=");if(window.ActiveXObject){G=string_to_xml_ie(Q);var O=new ActiveXObject("Msxml2.XSLTemplate.3.0");var K;var B=new ActiveXObject("Msxml2.FreeThreadedDOMDocument.3.0");B.async="false";B.validateOnParse=false;B.loadXML(E);O.stylesheet=B;K=O.createProcessor();K.input=G;if(R){R.each(function(S){K.addParameter(S.key,S.value);});}K.transform();I=K.output;}else{G=string_to_xml(Q);var D=new XSLTProcessor();xsl_doc=string_to_xml(E);D.importStylesheet(xsl_doc);if(R){R.each(function(S){D.setParameter(null,S.key,S.value);});}var H="";var J="";try{H=D.transformToDocument(G);J=new XMLSerializer();I=J.serializeToString(H);}catch(P){alert("Problem with XSLT transform.  "+P.message);return false;}}I=localize(I,C);return I;}function fill_help_links(E){try{var H=getElementsBySelector("#"+E+" .help");var A="";var G="";var B="";for(var D=0;D<H.length;D++){A=H[D];var J=A.getElementsByTagName("img");if(!J.length){B=A.getAttribute("topic");G=function(){O_HELP_CONTAINER.show_topic(B,true);};var I=document.createElement("img");var C=A.appendChild(I);C.title=O_APP.strings["get_help"];C.src="themes/images/menu/small/help_menu_small.png";if(C.attachEvent){C.attachEvent("onclick",G);}else{C.addEventListener("click",G,false);}}}}catch(F){O_APP.log("fill_help_links error: "+F.message);}}function localize(I,D){if(I===undefined||I===""){return"";}var J=new RegExp(/\^(\w+)?;/gim);var A=I;while((token=J.exec(I))!=null){var G=token[1];var F;if(G.match(/input_stat/)||G.match(/output_stat/)){var H=new RegExp(/(\d+)$/);var C=H.exec(G);var B=C[1];if(G.match(/input/)){F=O_APP.input_statistic_names[B].name;}else{if(G.match(/output/)){F=O_APP.output_statistic_names[B].name;}}}else{F=O_APP.strings[G];}if(!F){if(D){F=G;}else{F="<span style='color: #ff0000;'><i>"+G+"</i></span>";}}A=A.replace(token[0],F);}try{if(A.match(/\^/)){A=localize(A);}}catch(E){A="";}return A;}function localize_array(A){var B=new Array();A.each(function(C){B.push(localize(C));});return B;}function sarissa_transformX(C,O,A,B){var L="";if(B==null){B=true;}var E="";if(A){var M=createXMLHTTPRequest();M.open("GET",O_APP.SERVICE_URL+"?i=XMLHelper.get_dtd&format=json&lang="+O_APP.LANG+"&sid="+O_APP.SESSION_ID,false);M.send(null);E="<!DOCTYPE corona [ "+M.responseText+" ]>";}if(B){var G='<?xml   version="1.0" encoding="utf-8"?>'+E+'<master xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:html="http://www.w3.org/1999/xhtml">';var K="</master>";C=G+C+K;}var H=O_APP.SERVICE_URL+"?i=XMLHelper.get_xsl&format=json&lang="+O_APP.LANG+"&filename="+O+"&url="+O_APP.BASE_URL;var F=new XSLTProcessor();var D=new XMLHttpRequest();D.open("GET",H,false);D.send("");var J=Sarissa.getDomDocument();J.validateOnParse=false;J=(new DOMParser()).parseFromString(D.responseText,"text/xml");F.importStylesheet(J);var N=Sarissa.getDomDocument();N.validateOnParse=false;N=(new DOMParser()).parseFromString(C,"text/xml");var I=F.transformToDocument(N);return new XMLSerializer().serializeToString(I);}function string_to_xml_ie(A){var B=new ActiveXObject("Microsoft.XMLDOM");B.async="false";B.validateOnParse=false;B.loadXML(A);return B;}function string_to_xml(A){try{var D=new DOMParser();var C=D.parseFromString(A,"text/xml");}catch(B){alert(B);}return C;}function get_lastchild(B){var A=B.lastChild;while(A.nodeType!=1){A=A.previousSibling;}return A;}function get_child_by_tag(C,B){var A=C.lastChild;while(A.nodeType!=1){A=A.previousSibling;}if(A.nodeName==B){return A;}}function str_to_xml(A){if(window.ActiveXObject){xml_doc=string_to_xml_ie(A);}else{xml_doc=string_to_xml(A);}return xml_doc;}function YUI_Admin(D){var B=this;O_APP.ADMIN_CONTAINER=this;this.current_agency_id=O_APP.USER.customerid;var A=new YAHOO.widget.TabView("Admin",{orientation:"left"});this.tabcontrol=A;this.tabcontrol.parent=this;var C=0;this.manage_users("build",C);C++;this.manage_district_templates("build",C);C++;this.agency_availability("build",C);C++;this.agency_defaults("build",C);C++;this.custom_text("build",C);C++;if(O_APP.USER.superuser==1){this.manage_agencies("build",C);C++;this.super_user_dashboard("build",C);C++;}YAHOO.util.Event.onContentReady("Admin",function(){A.set("activeTab",A.getTab(0));O_APP.ADMIN_CONTAINER.manage_users("refresh");});this.select_district_template=function(E){B.selected_district_template=E.id;if($("edit_district_template_btn")){$("edit_district_template_btn").disabled=false;}if($("delete_district_template_btn")){$("delete_district_template_btn").disabled=false;}};}YUI_Admin.prototype.manage_users=function(D,B){if(D==="build"){var A=localize("^admin_manage_users_option;");var F=localize("^admin_manage_users_description;");this.tabcontrol.addTab(new YAHOO.widget.Tab({label:'<img src="themes/images/admin_menu/manage_users.png" title="'+F+'"/><br/>'+A,content:'<div id="YUI_Admin_Manage_Users">&nbsp;</div>',active:false}),B);this.tabcontrol.on("contentReady",function(){var G=function(H){O_APP.log("refreshing manage_users");O_APP.ADMIN_CONTAINER.manage_users("refresh");};this.getTab(B).addListener("click",G);});this.manage_users_tab_index=B;}if(D=="refresh"){var E=$H({i:"Admin.get_users",agency_id:this.current_agency_id,format:"xml"});var C=function(G){var H=transform(G.responseText,"admin");H=localize(H);$("YUI_Admin_Manage_Users").innerHTML=H;if(O_APP.USER.superuser){O_APP.ADMIN_CONTAINER.agency_selection("superuser_agency_select");}fill_help_links("YUI_Admin_Manage_Users");};ajax_request(E.toQueryString(),null,C);}};YUI_Admin.prototype.agency_selection=function(C){var B=$H({i:"Admin.get_agencies",format:"xml"});var A=function(F){var G="<agency_select>"+F.responseText+"</agency_select>";var I=transform(G,"admin");I=localize(I);try{$(C).innerHTML=I;var J=O_APP.ADMIN_CONTAINER.current_agency_id;var E=$("superuser_customer_selection");var D=0;for(var H=0;H<E.options.length;H++){if(E.options[H].value==J){D=H;}}$("superuser_customer_selection").selectedIndex=D;}catch(K){}};ajax_request(B.toQueryString(),null,A);};YUI_Admin.prototype.manage_agencies=function(D,B){if(D==="build"){var A=localize("^admin_manage_agencies_option;");var F=localize("^admin_manage_agencies_description;");this.tabcontrol.addTab(new YAHOO.widget.Tab({label:'<img src="themes/images/admin_menu/manage_users.png" title="'+F+'"/><br/>'+A,content:'<div id="YUI_Admin_Manage_Agencies">&nbsp;</div>',active:false}),B);this.tabcontrol.on("contentReady",function(){var G=function(H){O_APP.ADMIN_CONTAINER.manage_agencies("refresh");};this.getTab(B).addListener("click",G);});this.manage_agencies_tab_index=B;}if(D==="refresh"){var E=$H({i:"Admin.get_agencies",format:"xml"});var C=function(G){var H="<agency_list>"+G.responseText+"</agency_list>";var I=transform(H,"admin");I=localize(I);$("YUI_Admin_Manage_Agencies").innerHTML=I;};ajax_request(E.toQueryString(),null,C);}};YUI_Admin.prototype.manage_district_templates=function(type,index){if(type===undefined){type="refresh";}if(type==="build"){var btn_label=localize("^admin_manage_templates_option;");var btn_tooltip=localize("^admin_manage_templates_description;");this.tabcontrol.addTab(new YAHOO.widget.Tab({label:'<img src="themes/images/models.png" title="'+btn_tooltip+'"/><br/>'+btn_label,content:'<div id="YUI_Admin_Manage_Templates">&nbsp;</div>',active:false}),index);this.tabcontrol.on("contentReady",function(){var refresh_manage_templates=function(e){O_APP.ADMIN_CONTAINER.manage_district_templates("refresh");};this.getTab(index).addListener("click",refresh_manage_templates);fill_help_links("YUI_Admin_Manage_Templates");});this.manage_templates_tab_index=index;}if(type==="refresh"){var params=$H({i:"District_Template.get_templates",format:"json"});var new_template_action="O_APP.ADMIN_CONTAINER.new_district_template(1);";var edit_template_action="O_APP.ADMIN_CONTAINER.edit_district_template();";var delete_template_action='if ( confirm( "^confirm_delete_template;" ) ) O_APP.ADMIN_CONTAINER.delete_district_template();';var cadmine_source=O_APP.USER.cm_service_id;var cadmine_source_name="";if(cadmine_source===1){cadmine_source_name="CADmine";}if(cadmine_source===2){cadmine_source_name="SW Data Services";}var res=get_server_object(params);var response=eval(res);var count=response.length;res="<district_templates cadmine_source = '"+cadmine_source+"' cadmine_source_name = '"+cadmine_source_name+"' new_template_action = '"+new_template_action+"' edit_template_action = '"+edit_template_action+"' delete_template_action = '"+delete_template_action+"' count = '"+count+"'></district_templates>";var html=localize(transform(res,"template_list"));$("YUI_Admin_Manage_Templates").innerHTML=html;var onChange=this.select_district_template;this.templatesTbl=new TableSelectionWidget("district_templates",[{name:localize("^name;"),width:"45%"},{name:localize("^datasets_lbl_modified_date;"),width:"45%"}],onChange);var tTbl=this.templatesTbl;for(var t=0;t<response.length;t++){var template=response[t];tTbl.addRow(template.id,[unescape(template.district_name),template.last_updated]);}}};YUI_Admin.prototype.new_district_template=function(){var R="O_APP.ADMIN_CONTAINER.update_district_template();";var J="O_APP.ADMIN_CONTAINER.manage_district_templates();";var F=35;var E=30;var B=25;var A=20;var C=1.61;if(O_APP.USER.unit_of_measure==="metric"){F=Math.ceil(F*C);E=Math.ceil(E*C);B=Math.ceil(B*C);A=Math.ceil(A*C);}var P=$H({i_patrol_speed:20,i_region_area:0,i_response_speed1:F,i_response_speed2:E,i_response_speed3:B,i_response_speed4:A,i_response_speed5:A,i_response_speed6:A,i_response_speed7:A,i_response_speed8:A,i_response_speed9:A,i_response_speed10:A,i_street_length:0,i_dispatch_policy:2});var S="";var H=P.keys();for(var O=0;O<H.length;O++){var T=H[O];var Q=P[T];S+="<"+T+">"+Q+"</"+T+">";}var N="<edit_template save_action = '"+R+"' cancel_action = '"+J+"'><response><records><record><id/><customer_id/><owner_id/><last_updated/><district_name/>"+S+"</record></records></response></edit_template>";var D=1;var I=transform(N,"template_list",null,D);var K=new RegExp(/(i_(\w+))/gim);var G;while(G=K.exec(I)){var M=G[2].toUpperCase();var L=O_APP.input_statistic_names[O_APP.StatID[M]].name;I=I.replace(G[0],L);}$("YUI_Admin_Manage_Templates").innerHTML=I;};YUI_Admin.prototype.edit_district_template=function(){var A=$H({i:"District_Template.get",id:this.selected_district_template,format:"xml"});var E="O_APP.ADMIN_CONTAINER.update_district_template();";var G="O_APP.ADMIN_CONTAINER.manage_district_templates();";var F=get_server_object(A,"xml");F=F.replace("\n","");O_APP.log(F);F="<edit_template save_action = '"+E+"' cancel_action = '"+G+"'>"+F+"</edit_template>";var C=1;var B=transform(F,"template_list",null,C);var J=new RegExp(/(i_(\w+))/gim);while(token=J.exec(B)){var H=token[2].toUpperCase();try{var I=O_APP.input_statistic_names[O_APP.StatID[H]].name;B=B.replace(token[0],I);}catch(D){alert("couldnt find value for stat constant: "+H);}}$("YUI_Admin_Manage_Templates").innerHTML=B;};YUI_Admin.prototype.update_district_template=function(){var L=$("edit_district_district_name").value;if(!L){alert(O_APP.strings["district_name"]);return false;}var O=O_APP.input_statistic_names;var J=$("edit_district_"+O[O_APP.StatID.PATROL_SPEED].name).value;var R=$("edit_district_"+O[O_APP.StatID.REGION_AREA].name).value;var M=$("edit_district_"+O[O_APP.StatID.RESPONSE_SPEED1].name).value;var I=$("edit_district_"+O[O_APP.StatID.RESPONSE_SPEED2].name).value;var H=$("edit_district_"+O[O_APP.StatID.RESPONSE_SPEED3].name).value;var G=$("edit_district_"+O[O_APP.StatID.RESPONSE_SPEED4].name).value;var F=$("edit_district_"+O[O_APP.StatID.RESPONSE_SPEED5].name).value;var E=$("edit_district_"+O[O_APP.StatID.RESPONSE_SPEED6].name).value;var D=$("edit_district_"+O[O_APP.StatID.RESPONSE_SPEED7].name).value;var C=$("edit_district_"+O[O_APP.StatID.RESPONSE_SPEED8].name).value;var B=$("edit_district_"+O[O_APP.StatID.RESPONSE_SPEED9].name).value;var A=$("edit_district_"+O[O_APP.StatID.RESPONSE_SPEED10].name).value;var K=$("edit_district_"+O[O_APP.StatID.STREET_LENGTH].name).value;var P=$("edit_district_"+O[O_APP.StatID.DISPATCH_POLICY].name).value;var N=$("edit_district_id").value;if(N===""){var Q=$H({i:"District_Template.create",district_name:L,patrol_speed:J,region_area:R,response_speed1:M,response_speed2:I,response_speed3:H,response_speed4:G,response_speed5:F,response_speed6:E,response_speed7:D,response_speed8:C,response_speed9:B,response_speed10:A,street_length:K,supp_units:P,format:"xml"});}else{var Q=$H({i:"District_Template.save",id:N,district_name:L,patrol_speed:J,region_area:R,response_speed1:M,response_speed2:I,response_speed3:H,response_speed4:G,response_speed5:F,response_speed6:E,response_speed7:D,response_speed8:C,response_speed9:B,response_speed10:A,street_length:K,supp_units:P,format:"xml"});}var S=get_server_object(Q,"xml");this.manage_district_templates("refresh");};YUI_Admin.prototype.seed_district_templates=function(){var C=O_APP.CADmine_distincts["districts"];for(var B=0;B<C.length;B++){var D=$H({i:"District_Template.create",district_name:C[B],format:"xml"});var A=get_server_object(D,"xml");}this.manage_district_templates("refresh");};YUI_Admin.prototype.delete_district_template=function(){var B=$H({i:"District_Template.delete",id:this.selected_district_template,format:"xml"});var A=get_server_object(B,"xml");this.manage_district_templates("refresh");};YUI_Admin.prototype.agency_availability=function(type,index){if(type==="build"){var btn_label=localize("^admin_agency_availability_option;");var btn_tooltip=localize("^admin_agency_availability_description;");this.tabcontrol.addTab(new YAHOO.widget.Tab({label:'<img src="themes/images/appointment-new.png" title="'+btn_tooltip+'"/><br/>'+btn_label,content:'<div id="YUI_Agency_Availability">&nbsp;</div>',active:false}),index);this.tabcontrol.on("contentReady",function(){var handleClick2=function(e){O_APP.log("refreshing agency_availability");O_APP.ADMIN_CONTAINER.agency_availability("refresh");};this.getTab(index).addListener("click",handleClick2);});this.agency_availability_tab_index=index;}if(type==="refresh"){var params=$H({i:"Admin.get_agency",id:O_APP.USER.customerid,format:"json"});var res=get_server_object(params,"json");res=res[0];deductions=eval(res.deductions);this.availability=new Availability(deductions,res.hours_per_year,this);this.availability.show("YUI_Agency_Availability");}};YUI_Admin.prototype.agency_defaults=function(D,B){if(D==="build"){var A=localize("^admin_agency_defaults_option;");var E=localize("^admin_agency_defaults_description;");this.tabcontrol.addTab(new YAHOO.widget.Tab({label:'<img src="themes/images/document-properties.png" title="'+E+'"/><br/>'+A,content:'<div id="YUI_Agency_Defaults">&nbsp;</div>',active:false}),B);this.tabcontrol.on("contentReady",function(){var F=function(G){try{O_APP.ADMIN_CONTAINER.agency_defaults("refresh");}catch(G){alert("agency_defaults refresh failed: "+G.message);}};this.getTab(B).removeListener("click");this.getTab(B).addListener("click",F);});this.agency_defaults_tab_index=B;}if(D==="refresh"){var C=new AgencyDefaults(this);C.show("YUI_Agency_Defaults");}};YUI_Admin.prototype.custom_text=function(F,D){var D=D||0;if(F==="build"){var A=localize("^admin_custom_text_option;");var G=localize("^admin_custom_text_description;");this.tabcontrol.addTab(new YAHOO.widget.Tab({label:'<img src="themes/images/admin_menu/language.png" title="'+G+'"/><br/>'+A,content:'<div id="YUI_Admin_custom_text">&nbsp;</div>',active:false}),D);this.tabcontrol.on("contentReady",function(){var H=function(I){O_APP.log("refreshing custom_text");O_APP.ADMIN_CONTAINER.custom_text("refresh");};this.getTab(D).addListener("click",H);});this.custom_text_tab_index=D;}if(F==="refresh"){var C=O_APP.strings_as_xml();var B="<language_list>"+C+"</language_list>";var E=transform(B,"custom_language");$("YUI_Admin_custom_text").innerHTML=E;fill_help_links("YUI_Admin_custom_text");this.CustomTextTab=new YAHOO.widget.TabView("custom_language_tab_control",{orientation:"top"});this.CustomTextTab.on("contentReady",function(){this.set("activeTab",this.getTab(D));});}};YUI_Admin.prototype.super_user_dashboard=function(D,B){if(D==="build"){this.tabcontrol.addTab(new YAHOO.widget.Tab({label:'<img src="themes/images/gnome-monitor.png"/><br/>Super User Dashboard',content:'<div id="YUI_Admin_super_user_dashboard">&nbsp;</div>',active:false}),B);this.tabcontrol.on("contentReady",function(){var E=function(F){O_APP.log("refreshing super_user_dashboard");O_APP.ADMIN_CONTAINER.super_user_dashboard("refresh");};this.getTab(B).addListener("click",E);});this.super_user_dashboard_tab_index=B;}if(D==="refresh"){var A="<admin_dashboard/>";var C=transform(A,"admin");$("YUI_Admin_super_user_dashboard").innerHTML=C;this.draw_recent_logins("admin_dashboard_1");}};YUI_Admin.prototype.add_user=function(){var A="<header><add_user/></header><response><User><myself>0</myself></User><records><record><customerid>"+this.current_agency_id+"</customerid></record></records></response><options><create/><cancel/></options>";var B=transform(A,"settings");B=localize(B);O_APP.show_modal(B);$("settings_username").focus();};YUI_Admin.prototype.create_user=function(){var A="";if($("settings_administrator")){A=$("settings_administrator").checked?"true":"false";}else{A=$("settings_hidden_administrator").value="1"?"true":"false";}var C=$H({i:"User.create",username:$("settings_username").value,password:$("settings_password").value,firstname:$("settings_firstname").value,lastname:$("settings_lastname").value,email:$("settings_email").value,telephone:$("settings_telephone").value,theme_id:$("settings_theme_id").value,language:$("settings_language").value,customerid:$("settings_customerid").value,administrator:A});var B=function(D){if(D.responseText==="1"){O_APP.ADMIN_CONTAINER.manage_users("refresh");O_APP.clear_modal();}else{if(D.responseText.indexOf("username_key")>0){var E=localize("^non_unique_username;");alert(E);}else{alert(D.responseText);}}};ajax_request(C.toQueryString(),null,B);};YUI_Admin.prototype.edit_user=function(C){var B=$H({i:"User.get",id:C,format:"xml"});var A=function(E){var D="<header><edit_user/></header>"+E.responseText+"<options><save/><cancel/></options>";var F=transform(D,"settings");F=localize(F);O_APP.show_modal(F);};ajax_request(B.toQueryString(),null,A);};YUI_Admin.prototype.remove_user=function(C){var B=$H({i:"User.remove",id:C,format:"json"});var A=function(D){O_APP.ADMIN_CONTAINER.manage_users("refresh");};ajax_request(B.toQueryString(),null,A);};YUI_Admin.prototype.show_templates=function(B){var C=$H({i:"SWTemplate.get_template_list",type:B,format:"xml"});var A=function(D){O_APP.log(D.responseText);var E=transform(D.responseText,"template_list");E=localize(E);$("YUI_Admin_Manage_Templates").innerHTML=E;};ajax_request(C.toQueryString(),null,A);};YUI_Admin.prototype.language_update=function(D,B,A,E){if(A===B+"_plural"){B=pluralize(B);}O_APP.strings[B]=E;var F=$H({i:"Localizer.update_custom_string",customerid:D,token:B,value:E,format:"json"});var C=function(G){};ajax_request(F.toQueryString(),null,C);};YUI_Admin.prototype.language_reset=function(C,A){var D=$H({i:"Localizer.remove_custom_string",customerid:C,token:A,format:"json"});ajax_request(D.toQueryString(),null,null);var D=$H({i:"Localizer.remove_custom_string",customerid:C,token:pluralize(A),format:"json"});var B=function(E){O_APP.populate_localized_strings(O_APP.language);O_APP.update_localized_strings();O_APP.ADMIN_CONTAINER.custom_text("refresh",0);};ajax_request(D.toQueryString(),null,B);};YUI_Admin.prototype.language_update_stats=function(D,C,G,A,E){if(C==="input"){O_APP.input_statistic_names[G].name=A;O_APP.input_statistic_names[G].description=E;}else{O_APP.output_statistic_names[G].name=A;O_APP.output_statistic_names[G].description=E;}var F=$H({i:"Localizer.update_custom_stats_string",customerid:D,type:C,id:G,name:A,description:E,format:"json"});var B=function(H){};ajax_request(F.toQueryString(),null,B);};YUI_Admin.prototype.language_reset_stat=function(D,C,F){var A=1;if(C==="output"){A=2;}var E=$H({i:"Localizer.remove_custom_stats_string",customerid:D,type:C,id:F,format:"json"});var B=function(G){O_APP.populate_localized_statistics(O_APP.language);O_APP.ADMIN_CONTAINER.custom_text("refresh",A);};ajax_request(E.toQueryString(),null,B);};YUI_Admin.prototype.language_update_constraint=function(G,F,D){var C=O_APP.USER.customerid;O_APP.constraints[G].display_text=F;O_APP.constraints[G].description=D;var A=O_APP.constraints[G].name;O_APP.strings[A]=F;O_APP.strings[A+"_description"]=D;var E=$H({i:"Localizer.update_custom_constraint_string",customerid:C,id:G,text:F,description:D,format:"json"});var B=function(H){O_APP.update_localized_constraint_strings();};ajax_request(E.toQueryString(),null,B);};YUI_Admin.prototype.language_reset_constraint=function(D){var B=O_APP.USER.customerid;var C=$H({i:"Localizer.remove_custom_constraint_string",customerid:B,id:D,format:"json"});var A=function(E){O_APP.populate_localized_strings(O_APP.language);O_APP.update_localized_constraint_strings();O_APP.ADMIN_CONTAINER.custom_text("refresh",3);};ajax_request(C.toQueryString(),null,A);};YUI_Admin.prototype.add_agency=function(){var A="<agency_new/>";var B=transform(A,"admin");B=localize(B);$("superuser_agency_editor").innerHTML=B;this.fill_groupnames($("agency_groupname"));};YUI_Admin.prototype.create_agency=function(){var C=$("agency_unit_of_measure").selectedIndex;var E=$("agency_unit_of_measure")[C].value;var C=$("cm_service_id").selectedIndex;var B=$("cm_service_id")[C].value;var A=$("agency_groupname").value;if(B==1||B==2){if(A=="None"||!A){alert("For CADmine or SW Services customers, you must select a sac group name.");return false;}}else{A="";}var F=$H({i:"Admin.create_agency",name:$("agency_new_name").value,groupname:A,unit_of_measure:E,cm_service_id:B,active:1});var D=function(G){O_APP.ADMIN_CONTAINER.manage_agencies("refresh");};ajax_request(F.toQueryString(),null,D);};YUI_Admin.prototype.save_agency=function(){var C=$("agency_unit_of_measure").selectedIndex;var E=$("agency_unit_of_measure")[C].value;var C=$("cm_service_id").selectedIndex;var B=$("cm_service_id")[C].value;var A=$("agency_groupname").value;if(B==1||B==2){if(A=="None"||!A){alert("For CADmine or SW Services customers, you must select a sac group name.");return false;}}else{A="";}var F=$H({i:"Admin.save_agency",name:$("agency_name").value,groupname:A,unit_of_measure:E,cm_service_id:B,active:$("agency_status").value,id:$("agency_id").value});var D=function(G){O_APP.ADMIN_CONTAINER.manage_agencies("refresh");};ajax_request(F.toQueryString(),null,D);};YUI_Admin.prototype.save_availability=function(A){var C=O_APP.Availabilities[A];var D=$H({i:"Admin.save_agency_availability",id:O_APP.USER.customerid,deductions:C.deductions.toJSONString(),hours_per_year:C.hours_per_year,net_work_hours:C.net_work_hours,staffing_factor:C.staffing_factor,availability_factor:C.availability_factor,format:"json"});var B=function(E){};ajax_request(D.toQueryString(),null,B,false);};YUI_Admin.prototype.delete_agency=function(C){var B=$H({i:"Admin.delete_agency",id:C,format:"xml"});var A=function(D){O_APP.ADMIN_CONTAINER.manage_agencies("refresh");};ajax_request(B.toQueryString(),null,A);};YUI_Admin.prototype.fill_groupnames=function(select,cadmine_groupname){var params=$H({i:"CADmine.get_groupnames",format:"json"});var oncomplete=function(response){var groupnames=eval(response.responseText);if(select!=undefined){select.options.length=0;for(var i=0;i<groupnames.length;i++){select.options[i]=new Option(groupnames[i],groupnames[i]);if(groupnames[i]==cadmine_groupname){select.selectedIndex=i;}}}else{alert("fill_groupnames: select doesn't exist");}};ajax_request(params.toQueryString(),null,oncomplete);};YUI_Admin.prototype.edit_agency=function(C){var B=$H({i:"Admin.get_agencies",id:C,format:"xml"});var A=function(E){var F="<agency_edit>"+E.responseText+"</agency_edit>";var I=new RegExp(/\<cadmine_groupname>(\w+)<\/cadmine_groupname>/gim);var H=I.exec(E.responseText);var D="";if(H!=undefined){D=H[1];}var G=transform(F,"admin");G=localize(G);$("superuser_agency_editor").innerHTML=G;O_APP.ADMIN_CONTAINER.fill_groupnames($("agency_groupname"),D);};ajax_request(B.toQueryString(),null,A);};YUI_Admin.prototype.activate_agency=function(C,B,F,A){if(A===0){A=false;}var E=$H({i:"Admin.save_agency",name:C,groupname:B,active:A,id:F});var D=function(G){O_APP.ADMIN_CONTAINER.manage_agencies("refresh");};ajax_request(E.toQueryString(),null,D);};YUI_Admin.prototype.draw_recent_logins=function(C){var B=$H({i:"Admin.get_recent_logins",num:20,format:"xml"});var A=function(D){var E="<admin_dashboard_recent_logins>"+D.responseText+"</admin_dashboard_recent_logins>";var F=transform(E,"admin");F=localize(F);$(C).innerHTML=F;};ajax_request(B.toQueryString(),null,A);};YUI_Admin.prototype.draw_login_history=function(A,C,E){var D=$H({i:"Admin.get_recent_logins",format:"xml"});if(A){D["userid"]=A;}if(C){D["customerid"]=C;}var B=function(F){var G="<admin_dashboard_login_history>"+F.responseText+"</admin_dashboard_login_history>";var H=transform(G,"admin");H=localize(H);$(E).innerHTML=H;};ajax_request(D.toQueryString(),null,B);};YUI_Admin.prototype.tester=function(A){alert(A);};function YUI_Workflow(E,C){this.workflow_id=C;this.workflow=O_APP.Workflows[C];this.dataset_is_building=false;var B='<div id="yui_workflow"><div id="yui_workflow_tabs_'+this.workflow_id+'" class="yui-navset">  <table width="100%" style="border-collapse: collapse;"><tr><td id="sidebar_nav" width="20" valign="top">    <ul class="yui-nav">    </ul>  </td><td valign="top">    <div class="yui-content">    </div>  </td></tr></table></div></div>';$(E).innerHTML=B;this.tabcontrol=new YAHOO.widget.TabView("yui_workflow_tabs_"+this.workflow_id,{orientation:"left"});this.tabcontrol.parent=this;var A=O_APP.Workflows[this.workflow_id];var D=A.sidebar.json;for(i=0;i<D.length;i++){this.add_tab(D[i].type,D[i].name,D[i].tooltip,D[i].icon,this.workflow_id);}this.tabcontrol.on("contentReady",function(){this.set("activeTab",this.getTab(0));if(this.parent.dataset_is_building){this.parent.disable_tabs_after(0);}});}YUI_Workflow.prototype.add_tab=function(type,name,tooltip,icon,workflow_id){var name=localize(name);var tooltip=localize(tooltip);var content_div="YUI_Workflow_"+workflow_id+"_"+type;this.tabcontrol.addTab(new YAHOO.widget.Tab({label:'<img src="themes/images/'+icon+'" title="'+tooltip+'"/><br/>'+name,content:'<div id="'+content_div+'">&nbsp;</div>',active:false}));this.tabcontrol.on("contentReady",function(){var filler="this.parent.fill_"+type+"('"+content_div+"')";eval(filler);});};YUI_Workflow.prototype.fill_dataset=function(A){this.workflow.dataset.show(A);if(this.workflow.dataset.jobid){this.dataset_is_building=true;}};YUI_Workflow.prototype.fill_availability=function(A){this.workflow.availability.show(A);};YUI_Workflow.prototype.fill_constraintset=function(B){if(this.workflow.constraintset){this.workflow.constraintset.show(B);}else{var A="<h3>Waiting for Dataset import to complete</h3>";$(B).innerHTML=A;}};YUI_Workflow.prototype.fill_allocation=function(B){if(this.workflow.allocation){this.workflow.allocation.show(B);}else{var A="<h3>Waiting for Dataset import to complete</h3>";$(B).innerHTML=A;}};YUI_Workflow.prototype.fill_export=function(A){this.export_page=new Export(this);this.export_page.show(A);};YUI_Workflow.prototype.fill_scheduler=function(A){this.scheduler_export=new SchedulerExport(this);this.scheduler_export.show(A);};YUI_Workflow.prototype.fill_report=function(B){var A=transform("<report_menu div='"+B+"' id='"+this.workflow.workflowid+"'/>","report");$(B).innerHTML=A;};YUI_Workflow.prototype.percentile_report_params=function(B){this.rpt=new Report(this.workflow);var A=transform("<percentile_report_params div='"+B+"' id='"+this.workflow.workflowid+"'/>","report");$(B).innerHTML=A;};YUI_Workflow.prototype.statistics_report_params=function(div){var wf=this.workflow;var wf_id="'"+wf.workflowid+"'";var div_id="'"+div+"'";this.rpt=new Report(wf);var double_list_widget_id="report_"+wf_id+"_DoubleListWidget";html='<div style="width: 98%;margin:auto;"><table width="100%" class="report_params"><tr><td><h1>'+O_APP.strings["statistics_report_parameters"]+"</h1><p>"+O_APP.strings["statistics_report_intro"]+'</p></td></tr><tr><td align="center"><h3>'+O_APP.strings["input_statistics"]+'</h3><div id="'+double_list_widget_id+'_input">here</div><h3>'+O_APP.strings["output_statistics"]+'</h3><div id="'+double_list_widget_id+'_output">here</div><button class="btn" onclick="O_APP.Workflows['+wf_id+"].yui_tabs.rpt.run_statistics_report("+div_id+');">Run Report</button>&nbsp;&nbsp;<button class="btn" onclick="O_APP.Workflows['+wf_id+"].yui_tabs.fill_report("+div_id+');">'+O_APP.strings["reports_back"]+"</button> </td></tr></table></div>";$(div).innerHTML=html;var input_stats=new Array();O_APP.input_statistic_names.each(function(stat){input_stats.push(stat.name);});var output_stats=new Array();O_APP.output_statistic_names.each(function(stat){output_stats.push(stat.name);});var widgetName="Report_DoubleListWidget_inputs";this.rpt[widgetName]=new DoubleListWidget(double_list_widget_id+"_input",[],localize("^include;"),localize("^exclude;"));this.rpt[widgetName].insertFullArray(input_stats,false);var widgetName="Report_DoubleListWidget_outputs";this.rpt[widgetName]=new DoubleListWidget(double_list_widget_id+"_output",[],localize("^include;"),localize("^exclude;"));this.rpt[widgetName].insertFullArray(output_stats,false);try{var inputs=eval("("+O_APP.USER.report_inputs+")");var input_idxs=new Array();inputs.each(function(input){input_idxs.push(input.i);});this.rpt["Report_DoubleListWidget_inputs"].setArray_by_index(input_idxs,true);var outputs=eval("("+O_APP.USER.report_outputs+")");var output_idxs=new Array();outputs.each(function(output){output_idxs.push(output.i);});this.rpt["Report_DoubleListWidget_outputs"].setArray_by_index(output_idxs,true);}catch(e){}};YUI_Workflow.prototype.fill_new_workflow=function(div){var pages=eval("( [] )");var onComplete=function(){this.parent.finish_wizard();};this.workflow.wizard=new Wizard(pages,this.workflow,div,onComplete);var wiz_id=this.workflow.wizard.id;var html=transform("<new_workflow_wizard_page1 wizard_id='"+wiz_id+"'/>","workflow");html=escape(html);var wf_id=this.workflow.workflowid;var onNext=function(){if(O_APP.USER["cadmine_groupname"]&&O_APP.USER["cadmine_groupname"]!=="None"){O_APP.Workflows[wf_id].new_workflow_wizard_page_3_cadmine(O_APP.Workflows[wf_id].wizard.data["dataset_type"]);}else{O_APP.Workflows[wf_id].new_workflow_wizard_page_3_existing(O_APP.Workflows[wf_id].wizard.data["dataset_type"]);}return true;};var page1_idx=this.workflow.wizard.add_page("page1",html,"incomplete",onNext);this.workflow.wizard.data["name"]="New Workflow";this.workflow.wizard.data["description"]="";this.workflow.wizard.data["dataset_type"]=0;this.workflow.wizard.data["interval"]=O_APP.USER.default_block_interval;this.workflow.new_workflow_wizard_page_2(this.workflow.wizard.data["dataset_type"]);this.workflow.wizard.data["num_officers"]=O_APP.USER.default_num_officers;this.workflow.wizard.data["num_hours"]=O_APP.USER.default_hours_per_week;this.workflow.wizard.render();$(wiz_id+"_officers").value=O_APP.USER.default_num_officers;$(wiz_id+"_hours").value=O_APP.USER.default_hours_per_week;var interval_index=interval_to_selectedIndex(O_APP.USER.default_block_interval);$(wiz_id+"_chrono_interval").selectedIndex=interval_index;try{$(wiz_id+"_name").focus();}catch(e){}this.workflow.wizard.disable("next");this.tabcontrol.on("contentReady",function(){this.parent.tabcontrol.set("activeTab",this.parent.tabcontrol.getTab(0));});};YUI_Workflow.prototype.update_wizard_status=function(){var A=this.workflow.wizard.id;if($(A+"_name").value!=""&&$(A+"_officers").value!=""&&$(A+"_hours").value!=""){this.workflow.wizard.enable("next");}else{this.workflow.wizard.disable("next");}};YUI_Workflow.prototype.disable_tabs_after=function(B){var C=this.tabcontrol;var A=this.tabcontrol._queue.length;for(i=0;i<A;i++){if(i>B){C.getTab(i).set("disabled",true);}}};YUI_Workflow.prototype.enable_tabs=function(B){var C=this.tabcontrol;var A=this.tabcontrol._queue.length;if(B!=undefined){C.getTab(B).set("disabled",false);}else{for(i=0;i<A;i++){C.getTab(i).set("disabled",false);}}};YUI_Workflow.prototype.fill_Error_No_Sidebar=function(B){O_APP.log("filling Error_No_Sidebar");var A="<h1>Sorry, there has been an error.</h1><h3/>I did not get a valid 'sidebar' for the Workflow you tried to open...</h3><h3>HAL</h3> ";$(B).innerHTML=A;};