// Online Promotion Code handling
function updateOPC(opc, sourcecode, season, domain)
{
    var dateNow = new Date();
    var expireDate = new Date();
    expireDate.setFullYear(dateNow.getFullYear() + 10);
    var domain = location.href;
    
    if (season == "A")
    {
        expireDate.setMonth(11, 31);
    }
    else
    {
        expireDate.setMonth(3, 30);
    }

    if (expireDate.getTime() < dateNow.getTime())
    {
        expireDate.setFullYear(dateNow.getFullYear() + 10);
    }
    expireDate.setHours(23, 59, 59, 59);
    
    if( domain.indexOf('wmps-cps.com') > -1 )
    {
    	domain = domain.match(/\.24[a-zA-Z]*/);
    	domain += ".wmps-cps.com"
		}
    else
    {
    	domain = domain.match(/\.24[a-zA-Z]*/);
    	domain += ".co.uk"
		}

    document.cookie = "cssurn=" + opc +"; expires=" + expireDate.toGMTString() + "; path=/; domain=" + domain;
    document.cookie = "csssc=" + sourcecode +"; expires=" + expireDate.toGMTString() + "; path=/; domain=" + domain;

    return;
}


function expireOPC()
{
    var exp = new Date();
    var earlier = exp.getTime() - (24*60*60*1000);//1 day ago
    exp.setTime(earlier);
    var domain = location.href;
    
    if( domain.indexOf('wmps-cps.com') )
    {
    	domain = domain.match(/\.24[a-zA-Z]*/);
    	domain += ".wmps-cps.com"
		}
    else
    {
    	domain = domain.match(/\.24[a-zA-Z]*/);
    	domain += ".co.uk"
		}
    
    document.cookie = "cssurn=; expires=" + exp.toGMTString() + "; path=/; domain=" + domain;
    document.cookie = "csssc=; expires=" + exp.toGMTString() + "; path=/; domain=" + domain;

    return;
}


function setOPC(opc)
{
  if (document.location.href.indexOf('24ace') > -1 || document.location.href.indexOf('24studio') > -1 )
  {
    formObj = document.forms.frmPromotion;
    if (formObj == null)
        return;
    if (formObj.txtOPC) {
        if (document.cookie.indexOf('cssurn=') > -1)
        {
          formObj.txtOPC.value = document.cookie.match('cssurn=[^;]*')[0].substr(7);
        }
    }
	}
  return;
}

/*function getOPC()
{
    if (document.cookie.indexOf('opc=') > -1)
    {
      return document.cookie.match('opc=[^;]*')[0].substr(4);
    }
    return;
}*/


function checkOPC()
{
    var strOPC = "";
    formObj = document.forms.frmPromotion;
    if (formObj == null)
        return false; 
    regSpace = /(\s)/g;
    strOPC = formObj.txtOPC.value.replace(regSpace, '');
    strOPC = strOPC.toUpperCase();
    if (strOPC.length != 11 && strOPC.length != 3)
    {
        alert("Sorry - the Online Promotion Code you entered is not valid. Please click Ok, then check the Code printed on your order form.");
        return false;
    }

    else 
    {
      var regExp=/^\d{3}|[A-Z]{3}\d{8}|\d{8}[A-Z]{3}|\d{4}[A-Z]{3}\d{4}$/ //regular expression for OPC or order code
  
      if (strOPC.search(regExp)==-1) //if match failed
      {
          alert("Sorry - the Online Promotion Code you entered is not valid. Please click Ok, then check the Code printed on your order form.");
          return false;
      }

      else // check for order code & reload page
      {
        if (strOPC.match('^\\d{3}$'))
        {

          pageUrl = location.href;
          if (pageUrl.lastIndexOf('/') != pageUrl.length-1)
          {
             pageUrl += '/'; 
          }
          //else pageUrl += '/';
          
          pageUrl += 'cssoc/' +strOPC;
          location.replace(pageUrl)
          return false;
        }
      }
    }
    return true; // submit OPC value to WMPS
    
}

function checkOPC2()
{
    var strOPC = "";
    formObj = document.forms.frmPromotion2;
    if (formObj == null)
        return false; 
    regSpace = /(\s)/g;
    strOPC = formObj.txtOPC.value.replace(regSpace, '');
    strOPC = strOPC.toUpperCase();
    if (strOPC.length != 11 && strOPC.length != 3)
    {
        alert("Sorry - the Online Promotion Code you entered is not valid. Please click Ok, then check the Code printed on your order form.");
        return false;
    }

    else 
    {
      var regExp=/^\d{3}|[A-Z]{3}\d{8}|\d{8}[A-Z]{3}|\d{4}[A-Z]{3}\d{4}$/ //regular expression for OPC or order code
  
      if (strOPC.search(regExp)==-1) //if match failed
      {
          alert("Sorry - the Online Promotion Code you entered is not valid. Please click Ok, then check the Code printed on your order form.");
          return false;
      }

      else // check for order code & reload page
      {
        if (strOPC.match('^\\d{3}$'))
        {

          pageUrl = location.href;
          if (pageUrl.lastIndexOf('/') != pageUrl.length-1)
          {
             pageUrl += '/'; 
          }
          //else pageUrl += '/';
          
          pageUrl += 'cssoc/' +strOPC;
          location.replace(pageUrl)
          return false;
        }
      }
    }
    return true; // submit OPC value to WMPS
    
}


function submitOPC(opc)
{
    document.frmPromotion.txtOPC.value = opc;
    if (checkOPC())
        document.frmPromotion.submit();
    
}

// Bounce homepage if OPC cookie is set
//updateOPC('1234XYZ5678', 'AB2C', 'S', '');// FORCE COOKIE VALUE FOR TESTING
/*if (document.cookie.indexOf('cssurn=') > -1)
{
  if (document.location.pathname.indexOf('index.jsp') > -1 || document.location.pathname == '/')
  {
    var pageUrl = document.location.href;
    var brand = '24studio'; // default
    if (pageUrl.indexOf('24ace') > -1) 
    {
      brand = '24ace';
    }
alert('Forced cookie value for testing: "' +document.cookie.match('cssurn=[^;]*')[0].substr(7) +'" redirecting to WMPS...');
    document.location.href = 'http://homeshopping.' +brand +'.co.uk/';  
  }
}*/
