

function doLogin(f,rv){
  if (!validateLoginForm(f)){ return false; }
  var a;
  var params = "l="+$F('login')+"&p="+$F('password');
  if (!rv){ a = new Ajax.Updater('login-info','/df/login',{parameters:params}); }
  return rv;
}
function showReg(){ var a = new Ajax.Updater('content','/df/register/form',{evalScripts:true}); }
function doReg(f,ax){
  if (!validateRegisterForm(f)){ return; }
  if (f.password1.value !== f.password2.value){ alert('Password and confirmed passwords do not match.'); f.password2.focus(); return; }
  if (f.email.value !== f.email2.value){ alert('Email and confirmed email do not match.'); f.email.focus(); return; }
  dwr.checkUniqLogin(f.login.value,function(isUniq){doReg2(isUniq,f,ax);});
}
function doReg2(loginUniq,f,ax){
  if (!loginUniq){ alert('The specified login is already in use.'); f.login.focus(); return; }
  dwr.checkPasswdFmt(f.password1.value,function(fmtOk){doReg3(fmtOk,f,ax);});
}
function doReg3(passok,f,ax){
  var a;
  if (!passok){ alert('Passwords must be at least 6 characters and contain at least one number or non-letter character, and may not contain your login.'); f.password1.focus(); return false; }
  if (ax) { a = new Ajax.Updater('primary','/df/register/submit',{parameters:Form.serialize(f)});
  } else { f.submit(); }
}
function doSearchForm(){
  var st = trim($F('search-field'));
  if (st.length === 0){ alert("Please enter a search term."); return false; }
}
function addLb(imgId){ Element.hide('add-'+imgId); Element.show('indicator-'+imgId); dwr.lightbox(false,imgId,function(msg){finLb(msg,imgId,false);}); }
function finLb(msg,imgId,rm) { upLbCt(msg); Element.hide('indicator-'+imgId); if (rm){ Element.show('add-'+imgId); } else { Element.show('rm-'+imgId);} }
function rmLb(imgId){ Element.hide('rm-'+imgId); Element.show('indicator-'+imgId); dwr.lightbox(true,imgId,function(msg){finLb(msg,imgId,true);}); }
function rmLb2(imgId){ Element.hide('remove-'+imgId); Element.show('indicator-'+imgId); dwr.lightbox(true,imgId,function(msg){finRmLb2(msg,imgId);}); }
function finRmLb2(msg,imgId){ var a = new Ajax.Updater('primary-wrap','/df/lightbox/manage',{evalScripts:true,onComplete:function(){ upLbCt(msg);Element.show('message');Element.hide('indicator-'+imgId);}}); }
function finClrLb(msg,imgId){ var a = new Ajax.Updater('primary-wrap','/df/lightbox/manage',{parameters:Form.serialize('lightboxForm'),evalScripts:true,onComplete:function(){ Element.update('lbcount',msg);}}); }
function clrLb(){ Element.show('indicator-clear-lb'); dwr.clearLightbox(finClrLb); }
function upLbCt(msg){ Element.update('lbcount',msg); }
function pgImg(idx,jid){
  var p = 'idx='+idx; if (jid) p += '&jid='+jid;
  var a = new Ajax.Updater('primary-wrap','/df/session/image/view',{parameters:p,evalScripts:true});}
function pgImgs(pg){ var a = new Ajax.Updater('primary','/df/images/view/multi',{parameters:"pg="+pg,evalScripts:true});}
function pgJobs(pg){ var a = new Ajax.Updater('primary','/df/sessions/view',{parameters:"pg="+pg,evalScripts:true});}
function ftJobs(ft){ var a = new Ajax.Updater('primary','/df/sessions/view',{parameters:"ft="+ft,evalScripts:true});}
function pgJobsMini(pg){ var a = new Ajax.Updater('secondary','/df/sessions/view',{parameters:"pg="+pg+"&mini=1",evalScripts:true});}
function pgJobImgs(pg){ var a = new Ajax.Updater('primary','/df/session/view',{parameters:"pg="+pg,evalScripts:true});}
function changeUsState(sid,cfield){
  if (sid > 0){
    $(cfield).selectedIndex = 1;
  }
}
function changeCountry(cid,sfield,sofield){
  if (cid == 1){ $(sofield).disabled=true; $(sfield).disabled=false; $(sfield).focus();
  } else { $(sofield).disabled=false; $(sofield).focus(); $(sfield).disabled=true; }
}
var navs = ["contact","photogs","credits","news"];
function doNav(lnk) {
  var e;
  for (i=0;i<navs.length;i++){
    e = $((navs[i]+'-a'));
    if (e){
      if (navs[i] ===lnk){
        e.setAttribute('class','on');
      } else {
        e.setAttribute('class','');
      }
    }
  }
}
function vContact(){
	var a = new Ajax.Updater('tinycontentbox','/df/contact',{evalScripts:true});
	var login = $('loginForm');
	var loginLink = $('login-a');
	if ($('login')) {
		login.setAttribute('style','display:none;position:static;');
		loginLink.setAttribute('class','');
	}
	doNav('contact');
}
function vPhotogs(){
	var a = new Ajax.Updater('tinycontentbox','/df/photographers/view',{evalScripts:true});
	var login = $('loginForm');
	var loginLink = $('login-a');
	if ($('login')) {
		login.setAttribute('style','display:none;position:static;');
		loginLink.setAttribute('class','');
	}
	doNav('photogs');
}
function vCredits(){
	var a = new Ajax.Updater('tinycontentbox','/df/credits',{evalScripts:true});
	var login = $('loginForm');
	var loginLink = $('login-a');
	if ($('login')) {
		login.setAttribute('style','display:none;position:static;');
		loginLink.setAttribute('class','');
	}
	// doNav('credits');
}
function vNews(){
	var a = new Ajax.Updater('tinycontentbox','/df/news',{evalScripts:true});
	var login = $('loginForm');
	var loginLink = $('login-a');
	if ($('login')) {
		login.setAttribute('style','display:none;position:static;');
		loginLink.setAttribute('class','');
	}
	doNav('news');
}
//allows external links to be made with attribute rel="external"
function externalLinks() {
 if (!document.getElementsByTagName){ return; }
 var anchors = document.getElementsByTagName("a");
 var anchor;
  for (var i=0; i<anchors.length; i++) {
   anchor = anchors[i];
   if (anchor.getAttribute("href") && anchor.getAttribute("rel") ==="external"){ anchor.target = "_blank"; }
 }
}
// attaches functions to the window.onload event without overriding previous window.onload events
function addLoadEvent(func) {
  var oldonload = window.onload;
  if (typeof window.onload !== 'function') {
    window.onload = func;
  } else {
    window.onload = function() {
      if (oldonload){ oldonload(); }
      func();
    };
  }
}
addLoadEvent(externalLinks);
// show and hide the loading icon for AJAX actions
//function showLoad(el){ var e = $(el); Element.show(e); }
function hideLoad(el){ var e = $(el); Element.hide(e); }
function showLoad(el){ var e = new Effect.Highlight(el,{startcolor:'#fcfcc4', endcolor:'#f0f0f0', duration:30});}
function toggleB(b,eid){
  if (b) $(eid).show();
  else $(eid).hide();
}