/* *******************************************
// LICENSE INFORMATION
// The code, "Detecting Smartphones Using JavaScript"
// by Anthony Hand, is licensed under a Creative Commons
// Attribution 3.0 United States License.
// License info: http://creativecommons.org/licenses/by/3.0/us/
*/
var isIphone=false;var isTierIphone=false;var isTierRichCss=false;var isTierGenericMobile=false;var engineWebKit="webkit";var deviceAndroid="android";var deviceIphone="iphone";var deviceIpod="ipod";var deviceIpad="ipad";var deviceNuvifone="nuvifone";var deviceSymbian="symbian";var deviceS60="series60";var deviceS70="series70";var deviceS80="series80";var deviceS90="series90";var deviceWinMob="windows ce";var deviceWindows="windows";var deviceIeMob="iemobile";var enginePie="wm5 pie";var deviceBB="blackberry";var vndRIM="vnd.rim";var deviceBBStorm="blackberry95";var deviceBBBold="blackberry97";var deviceBBTour="blackberry96";var deviceBBCurve="blackberry89";var devicePalm="palm";var deviceWebOS="webos";var engineBlazer="blazer";var engineXiino="xiino";var deviceKindle="kindle";var vndwap="vnd.wap";var wml="wml";var deviceBrew="brew";var deviceDanger="danger";var deviceHiptop="hiptop";var devicePlaystation="playstation";var deviceNintendoDs="nitro";var deviceNintendo="nintendo";var deviceWii="wii";var deviceXbox="xbox";var deviceArchos="archos";var engineOpera="opera";var engineNetfront="netfront";var engineUpBrowser="up.browser";var engineOpenWeb="openweb";var deviceMidp="midp";var uplink="up.link";var engineTelecaQ='teleca q';var devicePda="pda";var mini="mini";var mobile="mobile";var mobi="mobi";var maemo="maemo";var maemoTablet="tablet";var linux="linux";var qtembedded="qt embedded";var mylocom2="com2";var manuSonyEricsson="sonyericsson";var manuericsson="ericsson";var manuSamsung1="sec-sgh";var manuSony="sony";var svcDocomo="docomo";var svcKddi="kddi";var svcVodafone="vodafone";var uagent=navigator.userAgent.toLowerCase();function DetectIphone(){if(uagent.search(deviceIphone)>-1){if(uagent.search(deviceIpod)>-1)return false;else return true;}else return false;}function DetectIpod(){if(uagent.search(deviceIpod)>-1)return true;else return false;}function DetectIpad(){if(uagent.search(deviceIpad)>-1&&DetectWebkit())return true;else return false;}function DetectIphoneOrIpod(){if(uagent.search(deviceIphone)>-1||uagent.search(deviceIpod)>-1)return true;else return false;}function DetectAndroid(){if(uagent.search(deviceAndroid)>-1)return true;else return false;}function DetectAndroidWebKit(){if(DetectAndroid()&&DetectWebkit())return true;else return false;}function DetectWebkit(){if(uagent.search(engineWebKit)>-1)return true;else return false;}function DetectS60OssBrowser(){if(DetectWebkit()){if((uagent.search(deviceS60)>-1||uagent.search(deviceSymbian)>-1))return true;else return false;}else return false;}function DetectSymbianOS(){if(uagent.search(deviceSymbian)>-1||uagent.search(deviceS60)>-1||uagent.search(deviceS70)>-1||uagent.search(deviceS80)>-1||uagent.search(deviceS90)>-1)return true;else return false;}function DetectWindowsMobile(){if(uagent.search(deviceWinMob)>-1||uagent.search(deviceIeMob)>-1||uagent.search(enginePie)>-1)return true;else return false;}function DetectBlackBerry(){if(uagent.search(deviceBB)>-1)return true;if(uagent.search(vndRIM)>-1)return true;else return false;}function DetectBlackBerryTouch(){if(uagent.search(deviceBBStorm)>-1)return true;else return false;}function DetectBlackBerryHigh(){if(DetectBlackBerry()){if(DetectBlackBerryTouch()||uagent.search(deviceBBBold)>-1||uagent.search(deviceBBTour)>-1||uagent.search(deviceBBCurve)>-1)return true;else return false;}else return false;}function DetectBlackBerryLow(){if(DetectBlackBerry()){if(DetectBlackBerryHigh())return false;else return true;}else return false;}function DetectPalmOS(){if(uagent.search(devicePalm)>-1||uagent.search(engineBlazer)>-1||uagent.search(engineXiino)>-1){if(DetectPalmWebOS())return false;else return true;}else return false;}function DetectPalmWebOS(){if(uagent.search(deviceWebOS)>-1)return true;else return false;}function DetectGarminNuvifone(){if(uagent.search(deviceNuvifone)>-1)return true;else return false;}function DetectSmartphone(){if(DetectIphoneOrIpod())return true;if(DetectS60OssBrowser())return true;if(DetectSymbianOS())return true;if(DetectWindowsMobile())return true;if(DetectAndroid())return true;if(DetectBlackBerry())return true;if(DetectPalmWebOS())return true;if(DetectPalmOS())return true;if(DetectGarminNuvifone())return true;return false;};function DetectArchos(){if(uagent.search(deviceArchos)>-1)return true;else return false;}function DetectBrewDevice(){if(uagent.search(deviceBrew)>-1)return true;else return false;}function DetectDangerHiptop(){if(uagent.search(deviceDanger)>-1||uagent.search(deviceHiptop))return true;else return false;}function DetectMaemoTablet(){if(uagent.search(maemo)>-1)return true;if(uagent.search(maemoTablet)>-1&&uagent.search(linux))return true;else return false;}function DetectSonyMylo(){if(uagent.search(manuSony)>-1){if(uagent.search(qtembedded)>-1||uagent.search(mylocom2)>-1)return true;else return false;}else return false;}function DetectOperaMobile(){if(uagent.search(engineOpera)>-1){if(uagent.search(mini)>-1||uagent.search(mobi)>-1)return true;else return false;}else return false;}function DetectSonyPlaystation(){if(uagent.search(devicePlaystation))return true;else return false;};function DetectNintendo(){if(uagent.search(deviceNintendo)>-1||uagent.search(deviceWii)>-1||uagent.search(deviceNintendoDs)>-1)return true;else return false;};function DetectXbox(){if(uagent.search(deviceXbox))return true;else return false;};function DetectGameConsole(){if(DetectSonyPlaystation())return true;if(DetectNintendo())return true;if(DetectXbox())return true;else return false;};function DetectKindle(){if(uagent.search(deviceKindle)>-1)return true;else return false;}function DetectMobileQuick(){if(DetectSmartphone())return true;if(uagent.search(deviceWap)>-1||uagent.search(deviceMidp)>-1||uagent.search(deviceWml)>-1||DetectBrewDevice())return true;if(DetectOperaMobile())return true;if(uagent.search(engineNetfront)>-1)return true;if(uagent.search(engineUpBrowser)>-1)return true;if(uagent.search(engineOpenWeb)>-1)return true;if(DetectDangerHiptop())return true;if(DetectMaemoTablet())return true;if(DetectArchos())return true;if(uagent.search(devicePda)>-1)return true;if(uagent.search(mobile)>-1)return true;if(DetectKindle())return true;return false;};function DetectMobileLong(){if(DetectMobileQuick())return true;if(DetectGameConsole())return true;if(DetectSonyMylo())return true;if(uagent.search(manuSamsung1)>-1||uagent.search(manuSonyEricsson)>-1||uagent.search(manuericsson)>-1)return true;if(uagent.search(svcDocomo)>-1)return true;if(uagent.search(svcKddi)>-1)return true;if(uagent.search(svcVodafone)>-1)return true;return false;};function DetectTierIphone(){if(DetectIphoneOrIpod())return true;if(DetectAndroid())return true;if(DetectAndroidWebKit())return true;if(DetectPalmWebOS())return true;if(DetectGarminNuvifone())return true;if(DetectMaemoTablet())return true;else return false;};function DetectTierRichCss(){if(DetectMobileQuick()){if(DetectTierIphone())return false;if(DetectWebkit())return true;if(DetectS60OssBrowser())return true;if(DetectBlackBerryHigh())return true;if(DetectWindowsMobile())return true;if(uagent.search(engineTelecaQ)>-1)return true;else return false;}else return false;};function DetectTierOtherPhones(){if(DetectMobileLong()){if(DetectTierIphone())return false;if(DetectTierRichCss())return false;else return true;}else return false;};
var redirect = null;
redirect = queryString('mRedirectType');
var shouldProcess = true;

if (redirect) {
    switch(redirect) {
        case 'perm':
            SetCookie('mRedirected', true, 1, '/', window.location.hostname);
            break;
        case 'once':
	    shouldProcess = false;
            break;
	case 'single':
	    shouldProcess = false;
    }
}

if (shouldProcess) {

	var cookie = GetCookie('mRedirected');

	if (!cookie && DetectSmartphone()){
	    var redirectToItem = false;
	    if (!cookie) {
		var loc = window.location + '';
		var file;

		if ((file = loc.lastIndexOf('/')) != -1) {
		    if (file != loc.length - 1) {
			var firstpos = file + 1;
			var lastpos = loc.lastIndexOf('.');

			var mid = loc.substring(firstpos, lastpos);

			if (mid && mid != 'index') {
			    redirectToItem = true;
			}

		    }
		}

		if (!redirectToItem) {
		    window.location="http://m.worldsoccershop.com";
		} else {
		    window.location="http://m.worldsoccershop.com/item/view/id/" + mid;
		}

	    }
	}
}

function SetCookie( name, value, expires, path, domain, secure ) {
// set time, it's in milliseconds
var today = new Date();
today.setTime( today.getTime() );

/*
if the expires variable is set, make the correct
expires time, the current script below will set
it for x number of days, to make it for hours,
delete * 24, for minutes, delete * 60 * 24
*/
if ( expires )
{
expires = expires * 1000 * 60 * 60 * 24;
}
var expires_date = new Date( today.getTime() + (expires) );

document.cookie = name + "=" +escape( value ) +
( ( expires ) ? ";expires=" + expires_date.toGMTString() : "" ) +
( ( path ) ? ";path=" + path : "" ) +
( ( domain ) ? ";domain=" + domain : "" ) +
( ( secure ) ? ";secure" : "" );

}

function GetCookie( check_name ) {
	// first we'll split this cookie up into name/value pairs
	// note: document.cookie only returns name=value, not the other components
	var a_all_cookies = document.cookie.split( ';' );
	var a_temp_cookie = '';
	var cookie_name = '';
	var cookie_value = '';
	var b_cookie_found = false; // set boolean t/f default f

	for ( i = 0; i < a_all_cookies.length; i++ )
	{
		// now we'll split apart each name=value pair
		a_temp_cookie = a_all_cookies[i].split( '=' );


		// and trim left/right whitespace while we're at it
		cookie_name = a_temp_cookie[0].replace(/^\s+|\s+$/g, '');

		// if the extracted name matches passed check_name
		if ( cookie_name == check_name )
		{
			b_cookie_found = true;
			// we need to handle case where cookie has no value but exists (no = sign, that is):
			if ( a_temp_cookie.length > 1 )
			{
				cookie_value = unescape( a_temp_cookie[1].replace(/^\s+|\s+$/g, '') );
			}
			// note that in cases where cookie is initialized but no value, null is returned
			return cookie_value;
			break;
		}
		a_temp_cookie = null;
		cookie_name = '';
	}
	if ( !b_cookie_found )
	{
		return null;
	}
}

function DeleteCookie( name, path, domain ) {
if ( Get_Cookie( name ) ) document.cookie = name + "=" +
( ( path ) ? ";path=" + path : "") +
( ( domain ) ? ";domain=" + domain : "" ) +
";expires=Thu, 01-Jan-1970 00:00:01 GMT";
}


function PageQuery(q) {
    if(q.length > 1)
        this.q = q.substring(1, q.length);
    else this.q = null;
        this.keyValuePairs = new Array();

    if(q) {

        for(var i=0; i < this.q.split("&").length; i++) {
            this.keyValuePairs[i] = this.q.split("&")[i];
        }
    }

    this.getKeyValuePairs = function() { return this.keyValuePairs; }
    this.getValue = function(s) {
        for(var j=0; j < this.keyValuePairs.length; j++) {
            if(this.keyValuePairs[j].split("=")[0] == s)
                return this.keyValuePairs[j].split("=")[1];
        }
            return false;
    }

    this.getParameters = function() {
        var a = new Array(this.getLength());
        for(var j=0; j < this.keyValuePairs.length; j++) {
            a[j] = this.keyValuePairs[j].split("=")[0];
        }
        return a;
    }
    this.getLength = function() { return this.keyValuePairs.length; }
}

function queryString(key){
    var page = new PageQuery(window.location.search);
    return unescape(page.getValue(key));
}




var wasTabX = 1;

function showInfoTab(x)
{
 var tabID = "tab" + wasTabX;
 var divID = "tab_content" + wasTabX;
 document.getElementById(tabID).className = "tabB";
 document.getElementById(divID).className = "tabContentB";

 wasTabX = x;

 tabID = "tab" + wasTabX;
 divID = "tab_content" + wasTabX;
 document.getElementById(tabID).className = "tabF";
 document.getElementById(divID).className = "tabContentF";
}

function togglePrices(obj)
{
 if(!document.getElementById('authLetter0').checked)
 {
  //loop, show prices for authentic
  for(var i=1; i<5; i++)
  {
   var basicID = "custom_price_" + i + "_basic";
   var authID = "custom_price_" + i + "_auth";
   if(document.getElementById(basicID))
   { document.getElementById(basicID).style.display = 'none'; }
   if(document.getElementById(authID))
   { document.getElementById(authID).style.display = ''; }
  }
 }
 else
 {
  //loop, show prices for basic
  for(var i=1; i<5; i++)
  {
   var basicID = "custom_price_" + i + "_basic";
   var authID = "custom_price_" + i + "_auth";
   if(document.getElementById(basicID))
   { document.getElementById(basicID).style.display = ''; }
   if(document.getElementById(authID))
   { document.getElementById(authID).style.display = 'none'; }
  }
 }
}

function checkOrder()
{
 var orderOK = "Y";
 var itemSize = '';

 if(document.getElementById("selSize"))
 {
  if(document.getElementById("selSize").selectedIndex==0)
  { alert("Please select a size."); 
    orderOK = '';  }
  else
  { itemSize = document.getElementById("selSize")[document.getElementById("selSize").selectedIndex].value; }
 }

 if(orderOK)
 { 
  if(itemSize)
  { for(i=0; document.getElementById('patch'+i); i++)
    { document.getElementById('patch'+i).value = document.getElementById('patch'+i).value + " " + itemSize; }}
  if(document.getElementById('authLetter0'))
  {
   if(!document.getElementById('authLetter0').checked)
   // get correct pricing for authentic
   {
    var numAuth = 0;
    if(document.getElementById('custom1'))
    { if(document.getElementById('custom1').checked)
      { numAuth++; }}
    if(document.getElementById('custom2'))
    { if(document.getElementById('custom2').checked)
      { numAuth++; }}
    if(numAuth > 0)
    { if(numAuth==2)
      { numAuth = authNumber2Cost; }
      else
      { numAuth = authNumber1Cost; }
      numAuth = numAuth.toFixed(2);
      document.getElementById('hdnAuthNumber').disabled = false;
      document.getElementById('hdnAuthNumber').value = "Yes (+$" + numAuth + ")"; 
    }
   }
   var ltrAuth = 0;
   if(document.getElementById('custom3'))
   { if(document.getElementById('custom3').checked)
     { ltrAuth++; }}
   if(document.getElementById('custom4'))
   { if(document.getElementById('custom4').checked)
     { ltrAuth++; }}
   if(ltrAuth > 0)
   { if(ltrAuth==2)
     { ltrAuth = authLetter2Cost; }
     else
     { ltrAuth= authLetter1Cost; }
     ltrAuth = ltrAuth.toFixed(2);
     document.getElementById('hdnAuthLetter').disabled = false;
     document.getElementById('hdnAuthLetter').value = "Yes (+$" + ltrAuth + ")"; 
   }
   if(document.getElementById('authLetter0').checked)
   {
    if(numAuth>0)
    { document.getElementById('hdnAuthNumber').value = "No"; document.getElementById('hdnAuthNumber').disabled = false; }
    else
    { document.getElementById('hdnAuthNumber').value = ""; document.getElementById('hdnAuthNumber').disabled = true; }
    if(ltrAuth>0)
    { document.getElementById('hdnAuthLetter').value = "No"; document.getElementById('hdnAuthLetter').disabled = false; }
    else
    { document.getElementById('hdnAuthLetter').value = ""; document.getElementById('hdnAuthLetter').disabled = true; }
   }
  }
  else
  {
   if(document.getElementById('hdnAuthLetter'))
   {
    document.getElementById('hdnAuthLetter').disabled = true;
   }
   if(document.getElementById('hdnAuthNumber'))
   {
    document.getElementById('hdnAuthNumber').disabled = true;
   }
  }
  //document.getElementById('formOrder').submit();
  if(document.getElementById('vwattr0_PACKAGE'))
  {
   if(document.getElementById('cust_tac_agreed'))
   {
    if(document.getElementById('cust_tac_agreed').checked)
    { document.getElementById('formOrder').submit(); }
    else
    { alert("You must agree to the terms for this custom item to place your order.\n\nPlease check the box labeled 'I UNDERSTAND' to continue."); }
   }
  }
  else
  { document.getElementById('formOrder').submit(); }
 }
}

function displayCheckboxNotice(x)
{
 var obj = document.getElementById("custom"+x+"txt");
 if(obj.disabled == true)
 {
  alert("Please check the box to select this customization,\nthen enter a value in this field.");
 }
}

function toggleBox(x)
{
 if(x == 'cust_tac_agreed')
 {
  var cbObj = document.getElementById(x);
  if(cbObj.checked)
  { cbObj.checked = false; }
  else
  { cbObj.checked = true; }
 } 
 else 
 {
  var cbObj = document.getElementById("custom"+x);
  if(cbObj.checked)
  { cbObj.checked = false;
    if(x < 10) {  lockInputField(x);  }}
  else
  { cbObj.checked = true;
    if(x < 10) {  
     unlockInputField(x); 
     document.getElementById("custom"+x+"txt").focus(); }}
 }
}

function toggleInputField(obj, x)
{
 if(obj.checked)
 { unlockInputField(x);
   document.getElementById("custom"+x+"txt").focus(); }
 else
 { lockInputField(x); }
}

function lockInputField(x)
{
 var txtID = "custom" + x + "txt"; 
 document.getElementById(txtID).value = '';
 document.getElementById(txtID).disabled = true;
}

function unlockInputField(x)
{
 var txtID = "custom" + x + "txt"; 
 document.getElementById(txtID).disabled = false;
}

function showCustomizationOptions() {
 var divObj = document.getElementById('item_order_custom_fields');
 divObj.style.height = "1000px";
}

function hideCustomizationOptions() {
 // hide customizations box
 if(document.getElementById('item_order_custom_fields'))
 { document.getElementById('item_order_custom_fields').style.height = "0px"; }

 // reset all customization fields
 if(document.getElementById('cust_tac_agreed'))
 { document.getElementById('cust_tac_agreed').checked = false; }
 for(var i=1; i<5; i++)
 {
  var oID1 = "custom" + i;
  var oID2 = "custom" + i + "txt";
  if(document.getElementById(oID1))
  { document.getElementById(oID1).checked = false; }
  if(document.getElementById(oID2))
  { document.getElementById(oID2).value = "";
    document.getElementById(oID2).disabled = true; }
 }
 for(i=10; document.getElementById('custom'+i); i++)
 {
  document.getElementById('custom'+i).checked = false;
 }
 if(document.getElementById('authLetter0'))
 { document.getElementById('authLetter0').checked = true; }

 if(document.getElementById('divCustomizationInfo'))
 { document.getElementById('divCustomizationInfo').innerHTML = "Your jersey is not currently customized."; }
}



function saveCustomizationOptions() {
 // make sure some customization fields were selected, if not, just close area
 var hasCustomizations = 0;
 for(var x=1; x<5; x++)
 {
  if(document.getElementById("custom"+x))
  { if(document.getElementById("custom"+x).checked)
    { hasCustomizations++; }
  }
 }

 //check for patches selected and added to item
 for(i=10; document.getElementById('custom'+i); i++)
 {
  if(document.getElementById('custom'+i).checked)
  { hasCustomizations++; }
 }
 
 if(hasCustomizations > 0)
 {
  // make sure each checked box has a corresponding value selected
  var errors = "";

  for(var x=1; x<5; x++)
  {
   if(document.getElementById("custom"+x))
   { if(document.getElementById("custom"+x).checked)
     { 
      var ciTxt = document.getElementById("custom"+x+"txt").value;
      ciTxt = ciTxt.replace(/^\s*/, "").replace(/\s*$/, "");
      if(!ciTxt)
      { errors += "Please enter a value for " + document.getElementById("custom"+x).name.replace(/vwattr..has/,'') + " or uncheck this box.\n"; }      
     }
   }
  }

  if(errors)
  {
   alert(errors);
  }
  else
  {
   // make sure that T&C were agreed to
   if(document.getElementById('cust_tac_agreed').checked)
   {
    // hide customizations box
    document.getElementById('item_order_custom_fields').style.height = "0px";

    // display data from customization fields on order form
    var custTxt = '';
    for(var i=1; i<5; i++)
    {
     var oID2 = "custom" + i + "txt";
     if(document.getElementById(oID2))
     { if(document.getElementById(oID2).value)
       { custTxt += document.getElementById(oID2).name.replace(/vwattr../,'') + ":<b> " + document.getElementById(oID2).value + "</b><br>"; }
     }
    }
    for(i=10; document.getElementById('custom'+i); i++)
    {
     if(document.getElementById('custom'+i).checked)
     { custTxt += "Add <b>" + document.getElementById('patchname'+i).value + "</b> patch<br>"; }
    }
    // set for basic or authentic lettering
    if(document.getElementById('authLetter0').checked) 
    { custTxt += "Lettering Style: <b>Basic</b><br>"; }
    else
    { custTxt += "Lettering Style: <b>Authentic</b><br>"; }

    document.getElementById('divCustomizationInfo').innerHTML = custTxt;
    }
    else
    {
     alert("You must agree to the terms outlined in Step 3 to customize your item.\n\nPlease check the box labeled 'I UNDERSTAND' in Step 3.");
    }
   }
  }
  else
  {
   hideCustomizationOptions();
  }
}


function addScript(url) {
 var s = document.createElement("script");
 s.type = "text/javascript";
 s.src = url;
 document.getElementsByTagName("head")[0].appendChild(s);
}

function addToWishlist(pageID,pageName,imgLoc)
{
 pageName = pageName.replace("&","and");
 var strLocation = "http://fastpivotsoftware.com/legacy/wishlist/v2/addlist.php?"+
				  "storeID=yhst-7223899490465&pageID="+pageID+"&pageName="+pageName+"&imgLoc="+imgLoc;
 var yhst7223899490465popup = window.open(strLocation,"yhst7223899490465popup","toolbar=0,location=0,status=0,menubar=0,scrollbars=1,resizable=0,width=305,height=540");
 yhst7223899490465popup.focus();
}

function readReviews(itemID,itemImage,itemName,storeIcon)
{
	eval("var reviewpopup = window.open('http://www.fastpivotsoftware.com/custom/365i/reviews/soccer-en/index.php?storename=WorldSoccerShop.com&ID="+itemID+"&itemImage="+itemImage+"&itemName="+itemName+"&storeIcon="+storeIcon+"','review_popup','menubar=no,scrollbars=1,width=500,height=420,resizable=yes')");
	reviewpopup.focus();
}

function writeReviews(itemID,itemImage,itemName,storeIcon)
{
	eval("var reviewpopup = window.open('http://www.fastpivotsoftware.com/custom/365i/reviews/soccer-en/write.php?storename=WorldSoccerShop.com&ID="+itemID+"&itemImage="+itemImage+"&itemName="+itemName+"&storeIcon="+storeIcon+"','review_popup','menubar=no,scrollbars=1,width=500,height=640,resizable=yes')");
	reviewpopup.focus();
}


function hideEnlargedItemImage() {
 document.getElementById('product_image_enlarged').className = "product_image_enlarged__hide";
}

function showEnlargedItemImage() {
 document.getElementById('product_image_enlarged').className = "product_image_enlarged__show";
}



