function f(o)
{
	o.value=o.value.replace(/([^0-9])/g,"");
}

var state = "TX";
var district = "21";

function MM_findObj(n, d) { //v4.01
	var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
	d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
	if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
	for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
	if(!x && d.getElementById) x=d.getElementById(n); return x;
}
function MM_validateForm() { //v4.0
	var i,p,q,nm,test,num,min,max,errors='',args=MM_validateForm.arguments;
	for (i=0; i<(args.length-2); i+=3) { test=args[i+2]; val=MM_findObj(args[i]);
	if (val) { nm=args[i+1]; if ((val=val.value)!="") {
    if (test.indexOf('isEmail')!=-1) { p=val.match(/^\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/gi);
      if (p==null) errors+='- '+nm+' must be a valid e-mail address.\n';
	} else if (test!='R') { num = parseFloat(val);
	if (isNaN(val)) errors+='- '+nm+' must contain a number.\n';
	if (test.indexOf('inRange') != -1) { p=test.indexOf(':');
	min=test.substring(8,p); max=test.substring(p+1);
	if (num<min || max<num) errors+='- '+nm+' must contain a number between '+min+' and '+max+'.\n';
	} } } else if (test.charAt(0) == 'R') errors += '- '+nm+' is required.\n'; }
	} if (errors) alert('The following error(s) occurred:\n'+errors);
	document.MM_returnValue = (errors == '');
}

$(function(){
	$('div.galery-holder').each(function(){
	  var cycletainer = $(this);
	  cycletainer.cycle({
	    timeout:0,
	    slideExpr:'.img-holder ul > li',
	    pager:cycletainer.find('.gallery ul'),
	    pagerAnchorBuilder: function(index, DOMelement){
	      return '<li>'+$(DOMelement).find('.thumbnail').html()+'</li>';
	    },
	    activePagerClass:'active',
	    next:cycletainer.find('.gallery .next'),
	    prev:cycletainer.find('.gallery .prev'),
	    before: onBefore
	  });
	});
	$('.data-box .tab').hide();
	$($('.data-box .tab-index a.active').attr('href')).show();
	//$('.tab:hidden').cycle('pause');
	$('.data-box .tab-index a').each(function(){
	  var tabLink = $(this);
	  tabLink.click(function(e){
	    e.preventDefault();
	    $('.data-box .tab-index a').removeClass('active');
	    tabLink.addClass('active');
	    $('.data-box .tab').hide();
	    $($('.data-box .tab-index a.active').attr('href')).show();
	    //$('.tab:hidden').cycle('pause');
	    //$('.tab:not(:hidden)').cycle('resume');
	  });
	});
	AddExitMsg();
	Seeding();
	PopupControl('popup','#modalPopup',[1,2]);
	FormToAkamaiRedirect('lamarsmith.house.gov');
});

function onBefore(currSlideElement, nextSlideElement, options, forwardFlag)
{
  var container = $(nextSlideElement).parents('div.galery-holder');
  var nextIndex = container.find('.img-holder li').index(nextSlideElement);
  var pagerScrollOffset = (nextIndex/4)|0;
  container.find('.g-items ul').animate({'margin-left':-440*pagerScrollOffset},'slow');
	pauseAllVideos();
}

function onYouTubePlayerReady(playerId) {
  ytplayer = document.getElementById(playerId);
  ytplayer.addEventListener("onStateChange", "onytplayerStateChange");
}

function onytplayerStateChange(newState) {
  //alert("Player's new state: " + newState);
  if(newState == 1)
  {
    //$('div.galery-holder').cycle('pause');
  }
  else if(newState == 2 || newState == 0)
  {
    //$('div.galery-holder').cycle('resume');
  }
}

function pauseAllVideos()
{
  var video = $('object[id*=ytplay], embed[id*=ytplay]');
  video.each(function(){
    try{
      this.stopVideo();
    }
    catch(err)
    {
      //var vidError = err;
      //var nothing = 6;
    }
  }); 
}

/* Gallery */

$.extend($.expr[':'],{
  external: function(a,i,m) {
    if(!a.href) {return false;}
    if(/http:\/\/twitter\.com\/LamarSmithTX21/i.test(a.href)) {return false;}
    if(/http:\/\/(?:www.)?youtube.com\/(?:user\/)?LamarSmithTexas21/i.test(a.href)) {return false;}
    if(/http:\/\/(?:www.)?facebook.com\/LamarSmithTX21/i.test(a.href)) {return false;}
    if(a.hostname.search(/house\.gov/i)!=-1) {return false;}
    return a.hostname && a.hostname !== window.location.hostname;
  }
});

function AddExitMsg()
{
  $('a:external').click(function(){
    return(exitMsg());
  });
}

function exitMsg(){
  var answer = confirm("You are now leaving the website of Congressman Lamar Smith. Thank you for visiting. Neither this office nor the U.S. House of Representatives is responsible for the content of the non-House site you are about to access.")
  if (!answer)
  return false;
  return true;
}


function Seeding()
{
  var formID = $.url().param('ID');
  if(formID == '951')
  {
    //var emailBox = $('input[id*=EmailControl]');
    //var fnBox = $('#' + $('label:contains(First Name)').attr('for'));
    //var lnBox = $('#' + $('label:contains(Last Name)').attr('for'));
    //var email = $.url().param('email');
    var numberBoxes = $('.formFieldContainer input:text:not(.inputText)');
    numberBoxes.attr('maxlength','1');
    var allowedChars = /1|2|3|4|5/;
    numberBoxes.each(function(i){
      var index = i;
      var box = $(this);
      box.blur(function(e){
        if(box.val().length > 0 && !allowedChars.test(box.val()))
        {
          alert('Must be a number 1-5');
          box.val('');
        }
        else
        {
          for(var indexConflict = 0; indexConflict < numberBoxes.length; indexConflict++)
          {
            if(indexConflict != index)
            {
              if(box.val() != '' && $(numberBoxes[indexConflict]).val() == box.val())
              {
                alert('That number has already been taken. Remove the duplicate first.');
                box.val('');
              }
            }
          }
        }
      });
    });
  }
}
function SeedHelper (parameterString, targetInput)
{
  var param = $.url().param(parameterString);
  if(param!=null)
  {
    param = unescape(param.replace(/\+/g, ' '));
    targetInput.val(param);
  }
}
function createCookie(name,value,days) {
  if (days) {
    var date = new Date();
    date.setTime(date.getTime()+(days*24*60*60*1000));
    var expires = "; expires="+date.toGMTString();
  }
  else expires = "";
  document.cookie = name+"="+value+expires+"; path=/";
}
function readCookie(name) {
  var nameEQ = name + "=";
  var ca = document.cookie.split(';');
  for(var i=0;i < ca.length;i++) {
    var c = ca[i];
    while (c.charAt(0)==' ') c = c.substring(1,c.length);
    if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
  }
  return null;
}
// JS Popup port
function PopupControl(cookieName, popupLink, integerArray){
  if($(popupLink).size()>0){
    if(readCookie(cookieName + '-session') != 'true'){
      var visitCount = parseInt(readCookie(cookieName), 10);
      if(isNaN(visitCount)){
        visitCount = 1; }
      for (index = 0; index < integerArray.length; index++){
        if(integerArray[index] == visitCount){
          setTimeout('$("'+popupLink+'").click()',200); }
      }
      createCookie(cookieName + '-session', 'true');
      createCookie(cookieName, visitCount + 1, 365);
    }
  }
}
// Send relative links to unSSL canonical DNS
function FormToAkamaiRedirect(defaultDomain)
{
  if(location.hostname != defaultDomain
    || location.protocol != 'http:')
  {
    $('a[href^=\\/]').each(function(){
      var origUrl = $(this).attr('href');
      $(this).attr('href', 'http://' + defaultDomain + origUrl);
    });
  }
}

