function isValidListname(evt)
{

    var charCode = (evt.which) ? evt.which : event.keyCode
    var isValid = false;
    if ((charCode > 94 && charCode < 123)){
    isValid = true;
    }
    else if ((charCode > 36 && charCode < 60)){
    isValid = true;
    }
    else if ((charCode > 62 && charCode < 91)){
    isValid = true;
    }  
    else if ((charCode == 163)){
    isValid = true;
    }          
    else if ((charCode < 32)){
    isValid = true;
    }           
    else{
    isValid = false;
    }

    return isValid;
}    

function confirm_delete_list() {
    if (confirm("Are you sure you want to remove this list? this cannot be undone") == true)
        return true;
    else
        return false;
}

function confirm_delete_campaign() {
    if (confirm("Are you sure you want to remove this campaign? this cannot be undone") == true)
        return true;
    else
        return false;
}
    
function showHide(vID){
	var vVisObj = document.getElementById(vID).style.display;

	if (vVisObj == "none")
	{
		document.getElementById(vID).style.display = "";
	}
	else
	{
		document.getElementById(vID).style.display = "none";
	}
}

function SwapImg(vID,vNewImg,vOldImg)
{
	var vImg = document.getElementById(vID).src;
	vImg = vImg.replace(vOldImg, vNewImg);
	document.getElementById(vID).src = vImg;
}

function Navigate(vPath)
{
	window.open(vPath,"main")
}

function set_button_state(vID,vbutton)
{
	if (RTrim(document.getElementById(vID).value) != "")
	{
		document.getElementById(vbutton).disabled = false;
	}
	else
	{
		document.getElementById(vbutton).disabled = true;
	}
}

function set_button_state_on_0(vID,vbutton)
{
	if (RTrim(document.getElementById(vID).value) != "0")
	{
		document.getElementById(vbutton).disabled = false;
	}
	else
	{
		document.getElementById(vbutton).disabled = true;
	}
}

function active_other()
{
	if(RTrim(document.forms[0].txtDelimiter.value) != "")
	{
		document.forms[0].optDelimiter[4].checked = true;
	}
}

function clear_other()
{
	if(document.forms[0].optDelimiter[4].checked != true)
	{
		document.forms[0].txtDelimiter.value = "";
	}
}

function RTrim(String)
{
	var i = 0;
	var j = String.length - 1;

	if (String == null)
		return (false);

	for(j = String.length - 1; j >= 0; j--)
	{
		if (String.substr(j, 1) != ' ' &&
			String.substr(j, 1) != '\t')
		break;
	}

	if (i <= j)
		return (String.substr(i, (j+1)-i));
	else
		return ('');
}

function IsEmail(Expression)
{
	if (Expression == null)
		return (false);

	var supported = 0;
	if (window.RegExp)
	{
		var tempStr = "a";
		var tempReg = new RegExp(tempStr);
		if (tempReg.test(tempStr)) supported = 1;
	}
	if (!supported)
		return (Expression.indexOf(".") > 2) && (Expression.indexOf("@") > 0);
	var r1 = new RegExp("(@.*@)|(\\.\\.)|(@\\.)|(^\\.)");
	var r2 = new RegExp("^.+\\@(\\[?)[a-zA-Z0-9\\-\\.]+\\.([a-zA-Z]{2,3}|[0-9]{1,3})(\\]?)$");
	return (!r1.test(Expression) && r2.test(Expression));
}

function validate_step1()
{
	if (document.forms[0].optDelimiter[4].checked == true &&  RTrim(document.forms[0].txtDelimiter.value) == "")
	{
		alert("Please supply a delimiter charactor");
		return false;
	}
	if (document.forms[0].optDelimiter[4].checked == true &&  RTrim(document.forms[0].txtDelimiter.value) == ".")
	{
		alert("you can not use a dot charactor as a delimiter");
		return false;
	}
	if (document.forms[0].optDelimiter[4].checked == true &&  RTrim(document.forms[0].txtDelimiter.value) == "@")
	{
		alert("you can not use the @ charactor as a delimiter");
		return false;
	}
	if (document.forms[0].optDelimiter[4].checked == true &&  RTrim(document.forms[0].txtDelimiter.value) == "'")
	{
		alert("you can not use the single quote charactor as a delimiter");
		return false;
	}
	if (RTrim(document.forms[0].txtListName.value) == "")
	{
		alert("Please supply a list name");
		return false;
	}
}

function validate_step2()
{
	if (RTrim(document.forms[0].txtFileName.value) == "")
	{
		alert("Please select a file name");
		return false;
	}
}

function validate_image()
{
	if (RTrim(document.forms[0].txtFileName.value) == "")
	{
		alert("Please select a file name");
		return false;
	}

	var temphidFile = document.forms[0].hidFilename.value;
	var temptxtFile = document.forms[0].txtFileName.value;
	var startPos = temptxtFile.length - temphidFile.length

	temptxtFile = temptxtFile.substring(startPos, temptxtFile.length);

	if(temphidFile.toLowerCase() != temptxtFile.toLowerCase())
	{
		alert("The file name selected does not match the file name to be  uploaded.");
		return false;
	}
}

function Show_Urls(vLinkID, vCampID)
{
	window.open('view_link_hits.asp?link_id=' + vLinkID + '&camp_id=' + vCampID,'','width=750, height=300, menubar=no, toolbar=no, status=no, resizable=yes, scrollbars=yes');
}

function Show_Valid()
{
	window.open('valid emails.asp','','width=580, height=300, menubar=no, toolbar=no, status=no, resizable=yes, scrollbars=yes');
}

function Show_Invalid()
{
	window.open('invalid emails.asp','','width=580, height=300, menubar=no, toolbar=no, status=no, resizable=yes, scrollbars=yes');
}

function Show_Table()
{
	window.open('view table.asp','','width=800, height=600, menubar=no, toolbar=no, status=no, resizable=yes, scrollbars=yes');
}

function Show_Image(vFilePath)
{
	window.open('view_image.asp?vFilePath=' + vFilePath,'','width=800, height=600, menubar=no, toolbar=no, status=no, resizable=yes, scrollbars=yes');
}

function Show_Table_No_Value()
{

	window.open('view table.asp?ListName='+ document.getElementById("cboListName").value,'','width=800, height=600, menubar=no, toolbar=no, status=no, resizable=yes, scrollbars=yes');
}

function Show_Table_Send_ID(strID)
{
	window.open('view table.asp?ListName='+ document.getElementById(strID).value,'','width=800, height=700, menubar=no, toolbar=no, status=no, resizable=yes, scrollbars=yes');
}

function Show_Table_Use_Parameter(vListID)
{

	window.open('view table.asp?ListName='+ vListID,'','width=800, height=600, menubar=no, toolbar=no, status=no, resizable=yes, scrollbars=yes');
}
function Delete_Table(strID)
{
  if (confirm("Are you sure you want to delete this list? Any saved campaigns linked to this list will be changed!"))
  {
	  document.getElementById(strID).value = "delete";
	  return true;
  }
  else
  {
	  return false;
  }
}

function Change_Selected(vCheckBoxName, vListName, vListID)
{
	if (document.getElementById(vCheckBoxName).checked == true)
	{
		 document.getElementById("hidSelected").value = document.getElementById("hidSelected").value + vListName + "; ";
		 document.getElementById("hidSelectedID").value = document.getElementById("hidSelectedID").value + vListID + "; ";
	}
	else
	{
			var vReplace = document.getElementById("hidSelected").value;
			document.getElementById("hidSelected").value = vReplace.replace(vListName + "; ", "");
			var vReplace = document.getElementById("hidSelectedID").value;
			document.getElementById("hidSelectedID").value = vReplace.replace(vListID + "; ", "");
	}
}


function validate_campaign_step0()
{
	if (RTrim(document.getElementById("cboCampaign").value) == "0")
	{
		alert("Please select a campaign.");
		return false;
	}
	if (RTrim(document.getElementById("cboCampaign").value) == "empty")
	{
		alert("Please select a campaign.");
		return false;
	}
	if (RTrim(document.getElementById("hidSelected").value) == "")
	{
		alert("Please select at least one list name.");
		return false;
	}
	return true;
}


function validate_campaign_step1()
{
	if (RTrim(document.getElementById("hidSelected").value) == "")
	{
		alert("Please select at least one list name.");
		return false;
	}
	if (RTrim(document.getElementById("hidSelectedCampaign").value) == "")
	{
		alert("Please enter a name for the campaign.");
		return false;
	}
	return true;
}

function set_hidden_nav(vAction)
{
	document.getElementById("hidAction").value = vAction
}

function Delete_Campaign()
{
  if (confirm("Are you sure you want to delete this campaign?"))
  {
	  document.getElementById("hidAction").value = "delete";
	  return true;
  }
  else
  {
	  return false;
  }
}

function Delete_Email(lngID)
{
  if (confirm("Are you sure you want to delete this email address?"))
  {
		document.getElementById("hidNewValue").value = document.getElementById("txtemail_" + lngID).value;
		document.getElementById("hidID").value = lngID;
		document.getElementById("hidAction").value = "delete";
	  	return true;
  }
  else
  {
	  return false;
  }
}

function Move_Campaign()
{
  if (confirm("Are you sure you want to duplicate this campaign move it into 'modify drafts'?"))
  {
	  document.getElementById("hidAction").value = "reuse";
	  return true;
  }
  else
  {
	  return false;
  }
}

function Upload_HTML()
{
	document.getElementById("hidSubject_HTML").value = document.getElementById("txtSubject").value;
	frmHTML.submit();
}

function Send_Email_Values(vAction)
{
	document.getElementById("hidSubject").value = document.getElementById("txtSubject").value;
	document.getElementById("hidFrom").value = document.getElementById("txtFrom").value;
	document.getElementById("hidCopy").value = document.getElementById("txtCopy").value;
	document.getElementById("hidoptSendType").value = document.getElementById("optSendType").value;
	document.getElementById("hidActionpopup").value = vAction;
	document.getElementById("hidID").value = document.getElementById("hidSelectedCampaign").value;
	document.getElementById("hidAction").value = vAction;
	document.getElementById("hidSendTestMode").value = document.getElementById("hidTestMode").value;
	if(vAction == "preview")
	{
		window.open('checklist.htm','new','width=900, height=600, menubar=no, toolbar=no, status=no, resizable=yes, scrollbars=yes');
	}
	else
	{
		window.open('sending.asp','new','width=800, height=600, menubar=no, toolbar=no, status=no, resizable=yes, scrollbars=yes');
	}
	frmpreview.submit();
}

function Send_Email_Validation(vAction)
{
	bln_valid = true;
	err_email="";
	vFrom = document.getElementById("txtCopy").value;
//alert(vFrom.length);
	//if (vFrom.length >= 32768)
	//{
		//err_email = "The body of the email is: " + vFrom.length + " characters long, it can not contain more than 32768 characters.";
		//bln_valid = false;
	//}

	if (RTrim(document.getElementById("txtFrom").value) == "")
	{
		err_email = "An email address must be assigned to the 'From' address";
		bln_valid = false;
	}

	//if(IsEmail(RTrim(document.getElementById("txtFrom").value)) == false)
	//{
		//err_email = "The email address '" + document.getElementById("txtFrom").value + "' assigned to the 'From' address is invalid!"
		//bln_valid = false;
	//}

	if(bln_valid == true)
	{
		document.getElementById("hidSubject").value = document.getElementById("txtSubject").value;
		document.getElementById("hidFrom").value = document.getElementById("txtFrom").value;
		document.getElementById("hidCopy").value = document.getElementById("txtCopy").value;
		document.getElementById("hidActionpopup").value = vAction;
		document.getElementById("hidID").value = document.getElementById("hidSelectedCampaign").value;
		document.getElementById("hidAction").value = vAction;
		document.getElementById("hidAction_HTML").value = vAction;
		return true;
	}
	else
	{
		alert(err_email);
	}
	return false;

}

function UpdateTextArea()
{
	document.getElementById("txtCopy").value = document.getElementById("tempCopy").value;

}

function Update_Email(lngID)
{
	if (RTrim(document.getElementById("txtemail_" + lngID).value) == "")
	{
		alert("The modified email address can not be empty, no save was made!");
		return false;
	}
	if(IsEmail(RTrim(document.getElementById("txtemail_" + lngID).value)) == false)
	{
		alert("The email address '" + document.getElementById("txtemail_" + lngID).value + "' is invalid, no save was made!");
		return false;
	}
	document.getElementById("hidNewValue").value = document.getElementById("txtemail_" + lngID).value;
	document.getElementById("hidID").value = lngID;
	document.getElementById("hidAction").value = "update";
	return true;
}
function DeDupe()
{
	document.getElementById("hidAction").value = "de-dupe";
	return true;
}
function Remove_Unsubcscribed()
{
  if (confirm("Are you sure you want to remove all unsubscribed email addresses?"))
  {
	  document.getElementById("hidAction").value = "UnSub";
	  return true;
  }
  else
  {
	  return false;
  }
}
function AddEmail()
{
	if (RTrim(document.getElementById("txtEmail").value) == "")
	{
		alert("The new email address can not be empty, no save was made!");
		return false;
	}
	if(IsEmail(RTrim(document.getElementById("txtEmail").value)) == false)
	{
		alert("The email address '" + document.getElementById("txtEmail").value + "' is invalid, no save was made!");
		return false;
	}
	document.getElementById("hidAction").value = "add_email";
	return true;
}

function ToggleOption(strOption)
{
	if (strOption == "html")
	{
		document.getElementById("cmdUpload").disabled = false;
		document.getElementById("optSendType").value = "HTML";
		document.getElementById("hidoptSendType").value = "HTML";

	}
	if (strOption == "plain")
	{
		document.getElementById("cmdUpload").disabled = true;
		document.getElementById("optSendType").value = "Plain";
		document.getElementById("hidoptSendType").value = "Plain";
	}
}

function Show_Failed_Emails(strID)
{
	window.open('view failed emails.asp?vCampaignID='+ strID,'','width=580, height=600, menubar=no, toolbar=no, status=no, resizable=yes, scrollbars=yes');
}

function submit_invalid_action(vAction)
{
	document.getElementById("hidAction").value = vAction;
}
