// MACHINE-GENERATED; DO NOT EDIT // SHA1: d7fb5fcfa020306ee97a9da2fc9e24e7e22f62e6 function get_query_variable(variable) {var query=window.location.search.substring(1);var vars=query.split("&");for(var i=0;i-1;} function add_css_class(el,class_name) {if((el=get_object(el))&&!has_css_class(el,class_name)) {el.className+=' '+class_name;}} function remove_css_class(el,class_name) {if((el=get_object(el))&&has_css_class(el,class_name)) {var pos=el.className.indexOf(class_name);el.className=el.className.substring(0,pos) +el.className.substring(pos+class_name.length);}} function apply_to_descendants_by_css_class(first_parent,css_class,descend_beyond_matches,fn) {function helper(parent) {for(var el=parent.firstChild;el;el=el.nextSibling) {var matched=false;if(el.nodeType==1&&has_css_class(el,css_class)) {fn(el);matched=true;} if(!matched||descend_beyond_matches) {helper(el,css_class);}}} helper(get_object(first_parent),css_class);} function find_descendants_by_css_class(first_parent,css_class,descend_beyond_matches) {var answer=new Array();apply_to_descendants_by_css_class(first_parent,css_class,descend_beyond_matches,function(el){answer.push(el)});return answer;} function eval_children(id) {var e=get_object(id) if(e) {var scripts=e.getElementsByTagName('script');for(var i=0;i0) {for(var j=0;j=3;i-=3) {answer=','+n.substr(i-2,3)+answer;} if(i>=0) {answer=n.substr(0,i+1)+answer;} else {answer=answer.substr(1);} return answer;} function array_keys(a) {var keys=new Array();for(var k in a) {keys.push(k);} return keys;} function array_values(a) {var values=new Array();for(var v in a) {values.push(a[v]);} return values;} function get_selected_options(select_element) {var options=select_element.options;var selected_options=new Array();for(var i=0;i=0;i--) {e.options[i]=null;} e.selectedIndex=-1;} function populate_select(e,values,map,msg,selected) {if(values.length==0) {e.options[0]=new Option('','');} if(e.options.length==0&&msg!=null) {e.options[0]=new Option(msg,'');} for(var i=0;i1){rel_base_url=rel_base_url_parts[1];} var qualified_url;if(base_url_regexp.exec(url)){return url;} if(url.length>0&&url.charAt(0)=='/'){return base_url+url;} return rel_base_url+url;} function redirect(url) {window.location=url;} function get_selected_radio_value(el) {for(var i=0;i0) {args=args+e.name+'='+escape(e.options[e.options.selectedIndex].value)+'&';}} child=window.open(url+args,name,'toolbar=no,resizable=yes,location=no,scrollbars=yes,width='+width+',height='+height);child.focus();return child;} function count_chars(text_elem_id,char_count_span_id,string) {var text_elem=get_object(text_elem_id);var char_count_span=get_object(char_count_span_id);var text_value=text_elem.value;var crlf_re=new RegExp("\r\n","g");text_value=text_value.replace(crlf_re,'\n');string=string.replace("{CHAR}",text_value.length);char_count_span.innerHTML=number_format(string);} function External_Content(p_url,p_elem,p_callback) {var elem=p_elem;var url=p_url;var num_times_loaded=0;var last_open_exception;this.load=function() {var req=create_xml_http_request();req.onreadystatechange=function() {if(req.readyState==4) {num_times_loaded++;if(elem) {elem=get_object(elem);elem.innerHTML=req.responseText;} if(p_callback) {p_callback(req.responseText);}}} try {req.open("GET",add_cache_burster_to_url(url),true);req.send(null);} catch(e) {last_open_exception=e;}} this.get_num_times_loaded=function() {return num_times_loaded;} this.get_last_open_exception=function() {return last_open_exception;}} function External_XML_Content(p_url,p_callback) {var url=p_url;var num_times_loaded=0;var last_open_exception;this.load=function() {var req=create_xml_http_request();req.onreadystatechange=function() {if(req.readyState==4) {num_times_loaded++;if(p_callback) {p_callback(req.responseXML);}}} try {req.open("GET",add_cache_burster_to_url(url),true);req.send(null);} catch(e) {last_open_exception=e;}} this.get_num_times_loaded=function() {return num_times_loaded;} this.get_last_open_exception=function() {return last_open_exception;}} function format_ts_offset(t,use_local_tz,show_time) {function time_of_day(d) {var hh=d.getHours();var mi=d.getMinutes()<10?'0'+d.getMinutes():d.getMinutes();var meridian='am';if(hh>=12) {meridian='pm';if(hh>12) {hh-=12;}} else if(hh==0) {hh=12;} return hh+':'+mi+' '+meridian;} function day_of_year(d) {var mon;switch(d.getMonth()){case 0:mon='Jan';break;case 1:mon='Feb';break;case 2:mon='Mar';break;case 3:mon='Apr';break;case 4:mon='May';break;case 5:mon='June';break;case 6:mon='July';break;case 7:mon='Aug';break;case 8:mon='Sep';break;case 9:mon='Oct';break;case 10:mon='Nov';break;case 11:mon='Dec';break;} return mon+' '+d.getDate();} function full_date(d) {var yy=d.getFullYear()%100;if(yy<10) {yy='0'+yy;} return(d.getMonth()+1)+'/'+d.getDate()+'/'+yy;} var d=new Date(t*1000);if(!use_local_tz) {d.setTime(d.getTime()+((d.getTimezoneOffset()*60)*1000));} var now=new Date();var strtime='';if(show_time) {strtime=', '+time_of_day(d);} if(d.getFullYear()==now.getFullYear()) {if(d.getMonth()==now.getMonth()&&d.getDate()==now.getDate()) {if(show_time) {strtime='Today at ';} return strtime+time_of_day(d);} return day_of_year(d)+strtime;} return full_date(d)+strtime;} function format_ts_datetime(t) {return format_ts_offset(t,true,true);} function format_ts(t) {return format_ts_offset(t,true,false);} function format_ts_utc(t) {return format_ts_offset(t,false,false);} function print_ts(t) {document.write(format_ts(t));} function format_ts_date_range(t) {var now=new Date();var d=new Date(t*1000);d.setTime(d.getTime()+((d.getTimezoneOffset()*60)*1000));var time_diff=now.getTime()-d.getTime();var days=time_diff/1000/60/60/24;var day_diff=now.getDate()-d.getDate();if(days<=1&&day_diff==0) {return"Today";} else if(days<=2&&day_diff==1) {return"Yesterday";} else if(days<=3) {return"Within the last 3 days";} else if(days<=7) {return"Within the last 7 days";} else if(days<=14) {return"Within the last 2 weeks";} else if(days<=30) {return"Within the last 30 days";} else if(days<=90) {return"Within the last 3 months";} else if(days>90) {return"More than 3 months ago";} return"Never logged in";} function print_ts_date_range(ts) {document.write(format_ts_date_range(ts));} function print_current_page() {window.print();} function append_function(g,f) {if(f&&(typeof(f)).toUpperCase()=='FUNCTION') {return function(){f();g();};} return g;} function call_on_window_load(f) {if(window.onload) {window.onload=append_function(f,window.onload);} else {window.onload=f;}} function create_xml_http_request() {try {return new ActiveXObject('Microsoft.XMLHTTP');} catch(e) {return new XMLHttpRequest();}} function get_url_async(url,f) {var req=create_xml_http_request();req.onreadystatechange=function(){if(req.readyState==4) f(req);};req.open('GET',add_cache_burster_to_url(url),true);req.send('');return req;} function get_url_async_set_state(source_element,url,f) {var inRequestOCHandler=function inRequestOCHandler(){return false;};var originalOCHandler=null;var req=create_xml_http_request();req.onreadystatechange=function(){if(req.readyState==4){f(req);if(source_element&&source_element.onclick) {source_element.onclick=originalOCHandler;}}};if(source_element&&source_element.onclick) {originalOCHandler=source_element.onclick;source_element.onclick=inRequestOCHandler;} req.open('GET',add_cache_burster_to_url(url),true);req.send('');return req;} function eval_js_from_url_on_window_load(url) {var retrieve_js_and_eval=function(){eval_js_from_url(key,url);};call_on_window_load(retrieve_js_and_eval);} function draw_deferred_presence_indicators(links,users) {var usernames=array_keys(users);for(var i=0;i2)?args[2]:0;if(refresh_in_sec>0) {setTimeout(function(){load_external_js(key,url,refresh_in_sec)},1000*refresh_in_sec);}} function load_external_js_delayed(key,url) {var args=arguments;var f=(args.length==2)?function(){load_external_js(key,url)}:function(){load_external_js(key,url,args[2])};call_on_window_load(f);} function send_request(url,f) {var req=create_xml_http_request();req.onreadystatechange=function(){if(req.readyState==4){if(window.eval(f)) {eval('f('+req.responseText+')');}}};req.open('GET',add_cache_burster_to_url(url),true);req.send('');return false;} function url_adjoin_qs(url,table) {function cast_to_string(a) {if(typeof a=='boolean'){return a?'1':'0';} if(typeof a=='object'&&!a){return'';} return encodeURIComponent(''+a);} var parts=url.split('?');var vars=[];if(parts.length==2) {var name_value_pairs=parts[1].split('&');for(var i=0;iscore) return class_name+'above';return class_name+'selected';} get_object(id).className='scored';for(var i in scale){var scale_value=scale[i];var e=get_object(id+'_'+scale_value);e.className=decide_class_name(scale_value);} send_request(url+'&score='+score,function(){});return false;} var __original_window_open;function install_window_open() {if(!__original_window_open){__original_window_open=window.open;} window.open=function(url,name,features,replace){if(!arguments[1]) {name='';} if(!arguments[2]) {features='';} if(!arguments[3]) {replace='';} return __original_window_open(qualify_url_using_base_elem(url),name,features,replace);}} call_on_window_load(install_window_open);function redirect_main_window(url) {var w;if(window.opener) {w=window.opener.top;} else {w=top;} w.location=url;w.focus();} function setCookie(name,value,expires,path,domain,secure){document.cookie=name+"="+escape(value)+ ((expires)?"; expires="+expires:"")+ ((path)?"; path="+path:"")+ ((domain)?"; domain="+domain:"")+ ((secure)?"; secure":"");} function deleteCookie(name,path,domain){if(getCookie(name)){document.cookie=name+"="+ ((path)?"; path="+path:"")+ ((domain)?"; domain="+domain:"")+"; expires=Thu, 01-Jan-70 00:00:01 GMT";}} function getCookie(name){var dc=document.cookie;var prefix=name+"=";var begin=dc.indexOf("; "+prefix);if(begin==-1){begin=dc.indexOf(prefix);if(begin!=0)return null;}else{begin+=2;} var end=document.cookie.indexOf(";",begin);if(end==-1){end=dc.length;} return unescape(dc.substring(begin+prefix.length,end));} function analyze_password_strength(password,f) {function preprocess_post_length_check() {password=password.toLowerCase();var i;for(i=1;i=8?'good':'fair';} if(alphanumeric()) {return password.length>=8?'good':'fair';} if(alphanumeric_one_symbol()) {return password.length>=9?'strong':password.length>=7?'good':'fair';} if(alphanumeric_multiple_symbols()) {return password.length>=8?'strong':password.length>=6?'good':'fair';} return password.length>=8?'good':'fair';} f(password_strength());} function validate_email_address(address) {var email_validation_req=new External_Content('/user/validate_email.html?address='+escape(address),'email_status',null);email_validation_req.load();} function validate_email_with_hint_enabled(address) {var show_error=function(r) {r=r.replace(/^\s+|\s+$/g,"");if(r!='') {document.getElementById('email_hint_error').innerHTML=r;document.getElementById('email_hint_error').style.display='block';document.getElementById('email_hint_tip_error').style.display='block';}};var email_validation_req=new External_Content('/user/validate_email.html?address='+escape(address),'email_hint_error',show_error);email_validation_req.load();} function check_username_availability(username) {var username_availability_req=new External_Content('/user/check_username_availability.html?username='+escape(username),'username_availability',null);username_availability_req.load();} function check_username_availability_with_hint_enabled(username,suggestion_base) {var show_error=function(r) {r=r.replace(/^\s+|\s+$/g,"");if(r!='') {var new_str=r.replace('
','');document.getElementById('username_hint_error').innerHTML=new_str;document.getElementById('username_hint_error').style.display='block';document.getElementById('username_hint_tip_error').style.display='block';} else {document.getElementById('username_hint_error').style.display='none';document.getElementById('username_hint_tip_error').style.display='none';}};var check_url='/user/check_username_availability.html?username=' +escape(username);if(suggestion_base)check_url=check_url+'&suggestion_base='+ escape(suggestion_base);var username_availability_req=new External_Content(check_url,'username_hint_error',show_error);username_availability_req.load();} function get_user_age(month,day,year) {if(month&&day&&year) {var dob=new Date(year,month-1,day);var now=new Date();var age=now.getFullYear()-dob.getFullYear();if(now.getMonth()0) {uri.directoryPath=uri.directoryPath.replace(/\/?$/,"/");} return uri;}