
var listings;var pageSize=0;var listings=new Array();var previous=null;function initPaging(size)
{pageSize=size;var tmp=document.getElementById("listings");var node=tmp.firstChild;var j=0;while(node)
{if(node.tagName=='DIV')
listings[j++]=node;node=node.nextSibling;}
page(0,document.getElementById("page_1"))}
function page(num,clicked)
{if(previous!=null)
previous.className='';clicked.className='current_page';previous=clicked;for(i=0;i<listings.length;++i)
listings[i].style.display='none';var start=pageSize*num;var end=pageSize*(num+1);if(end>listings.length)
end=listings.length;for(i=start;i<end;++i)
listings[i].style.display='block';}
function trim(s)
{return s.replace(/^\s+|\s+$/g,"");}
function clearErrorMessages(errorElement)
{errorElement.className='hide';errorElement.innerHTML='';}
function addErrorMessage(errorElement,message)
{errorElement.className='show';errorElement.innerHTML+=message+'<br />';}
function validate_form(form,errorId)
{var validated=true;var errorElement=document.getElementById(errorId);clearErrorMessages(errorElement);for(i=0;i<form.elements.length;++i)
{var inputElement=form.elements[i];if(inputElement.getAttribute('validation'))
{var validationListings=inputElement.getAttribute('validation')
var validations=validationListings.split(',');for(j=0;j<validations.length;++j)
{var timmedValidation=trim(validations[j]);var message='';var passedValidation=true;switch(timmedValidation)
{case'required':passedValidation=validate_required(inputElement);message=inputElement.name+' is required.';inputElement.focus();break;case'email':passedValidation=validate_email(inputElement);message=inputElement.name+' is not a proper email address.';break;case'url':passedValidation=validate_url(inputElement);message=inputElement.name+' is not a proper url (ie http://www.google.com)';break;case'zip':passedValidation=validate_zip(inputElement);message=inputElement.name+' is not a 5 digit zip code.';break;case'human':passedValidation=validate_human(inputElement);message=inputElement.name+' does not match the expected text.';break;default:alert(timmedValidation);}
if(!passedValidation)
addErrorMessage(errorElement,message);validated=validated&&passedValidation}}}
return validated;}
function validate_regex(input,pattern)
{var value=trim(input.value);if(value=='')return true;var rx=new RegExp(pattern);var matches=rx.exec(value);return(matches!=null&&value==matches[0]);}
function validate_zip(input)
{return validate_regex(input,'\\d{5}');}
function validate_url(input)
{return validate_regex(input,'http(s)?://([\\w-]+\\.)+[\\w-]+(/[\\w- ./?%&=]*)?');}
function validate_email(input)
{return validate_regex(input,'\\w+([-+.\']\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*');}
function validate_human(input)
{return input.value=='asdfg';}
function validate_required(input)
{return input.value!=null&&trim(input.value)!='';}