
function update(a,b,c,d,e){
	var ajaxRequest;
	try{
		ajaxRequest = new XMLHttpRequest();
	} catch (e){
		try{
			ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e) {
			try{
				ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP");
			} catch (e){
				alert("Your browser broke!");
				return false;
			}
		}
	}

  if (b == "new" && c == "campaign"){
    var url = "../cgi-bin/update.cgi?newsletterCampaigns";
    var f = document.getElementById('title').value;
    var g = document.getElementById('subtitle').value;
    var h = document.getElementById('genre').value;
    var i = document.getElementById('keywords').value;
    var j = document.getElementById('desc').value;
    var parameters = "id="+a+"&verb="+b+"&item="+c+"&subItem="+d+"&title="+f+"&subtitle="+g+"&genre="+h+"&keywords="+i+"&desc="+j;	
  } else if (b == "status_toggle" && c == "mailout"){
    var url = "../cgi-bin/update.cgi?newsletterCampaigns";
    var f = this.rotation;
    var g = this.mailout_status;
    var parameters = "id="+a+"&verb="+b+"&item="+c+"&subItem="+d+"&rotation="+f+"&status="+g;
  } else if (b == "status_toggle" && c == "campaign"){
    var url = "../cgi-bin/update.cgi?newsletterCampaigns";
    var f = this.campaign_status;
    var parameters = "id="+a+"&verb="+b+"&item="+c+"&subItem="+d+"&status="+f;
  } else if (b == "delete" && c == "campaign"){
    var url = "../cgi-bin/update.cgi?newsletterCampaigns";
    var parameters = "id="+a+"&verb="+b+"&item="+c+"&subItem="+d;
  } else if (b == "delete" && c == "mailout"){
    var url = "../cgi-bin/update.cgi?newsletterCampaigns";
    var f = this.id;
    var parameters = "id="+a+"&verb="+b+"&item="+c+"&subItem="+d+"&rotation="+f;
  } else if (b == "delete" && c == "file"){
    var url = "../cgi-bin/update.cgi?fileManager";
    var parameters = "id="+a+"&verb="+b+"&item="+c+"&subItem="+d;
  } else if (b == "delete" && c == "book"){
    var url = "../cgi-bin/update.cgi?bookManager";
    var parameters = "id="+a+"&verb="+b+"&item="+c+"&subItem="+d;
  } else if (b == "delete" && c == "page"){
    var url = "../cgi-bin/update.cgi?myPages";
    var parameters = "id="+a+"&verb="+b+"&item="+c+"&subItem="+d;
  } else if (b == "add" && c == "book"){
    var url = "../cgi-bin/update.cgi?bookshelf";
    var parameters = "id="+a+"&verb="+b+"&item="+c+"&subItem="+d;
  }
	ajaxRequest.open("POST", url, true);
	ajaxRequest.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	ajaxRequest.setRequestHeader("Content-length", parameters.length);
	ajaxRequest.setRequestHeader("Connection", "close");
  
	ajaxRequest.onreadystatechange = function(){
		if(ajaxRequest.readyState == 4){
      if (ajaxRequest.responseText.length <= 5){
        if (b == "new" && c == "campaign"){
     			window.location = "/widgets/newsletterCampaigns.php?id="+a;
        } else if (b == "delete" && c == "campaign"){
     			window.location = "/widgets/newsletterCampaigns.php?id="+a;
        } else if (b == "delete" && c == "mailout"){
     			window.location = "/widgets/newsletterCampaigns.php?verb=view&item=mailouts&subItem="+d+"&id="+a;
        } else if (b == "delete" && c == "file"){
     			window.location = "/widgets/fileManager.php?id="+a;
        } else if (b == "delete" && c == "book"){
     			window.location = "/widgets/bookManager.php?id="+a;
        } else if (b == "delete" && c == "page"){
     			window.location = "/widgets/myPages.php?&id="+a;
        } else if (b == "status_toggle" && c == "campaign"){
     			window.location = "/widgets/newsletterCampaigns.php?id="+a;
        } else if (b == "status_toggle" && c == "mailout"){
     			window.location = "/widgets/newsletterCampaigns.php?verb=view&item=mailouts&subItem="+d+"&id="+a;
        } else if (b == "add" && c == "book"){
     			window.location = "/widgets/bookShelf2.php?id="+a;
        }
      } else {
  			document.getElementById(e).innerHTML = ajaxRequest.responseText;
      }
		}
	}
  ajaxRequest.send(parameters);
}

function echeck(str) {

  var at="@";
  var dot=".";
  var lat=str.indexOf(at);
  var lstr=str.length;
  var ldot=str.indexOf(dot);
  if (str.indexOf(at)==-1){
    alert("Invalid email address");
  return false;
  }

  if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){
    alert("Invalid email address");
    return false;
  }

  if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){
    alert("Invalid email address");
    return false;
  }

  if (str.indexOf(at,(lat+1))!=-1){
    alert("Invalid email address");
    return false;
  }

  if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){
    alert("Invalid email address");
    return false;
  }

  if (str.indexOf(dot,(lat+2))==-1){
    alert("Invalid email address");
    return false;
  }
		
  if (str.indexOf(" ")!=-1){
    alert("Invalid email address");
    return false;
  }

  return true;			
}

function checkForm(form){
  var filter = /^([a-zA-Z0-9_.-])+@(([a-zA-Z0-9-])+.)+([a-zA-Z0-9]{2,4})+$/;
  var fname = document.getElementById('fname_'+form);
  var email = document.getElementById('email_'+form);
  var campaign_count = document.getElementById('campaign_count');
  var chosen = false; //for the campaign options

  if (campaign_count){
    if (campaign_count.value >= 2){
      for (i=0; i < document.theForm.campaign.length; i++){
        if (document.theForm.campaign[i].checked==true){
          var campaign = document.theForm.campaign[i].value;
          chosen = true;
        }
      }
    }
  }

  if (fname.value == '' || !fname.value){
    alert('Please enter your first name');
    fname.focus();
    return false;
  }

  if ((email.value==null)||(email.value=="")){
    alert("Please enter your email address");
    email.focus();
    return false;
  }

  if (echeck(email.value)==false){
    email.value="";
    email.focus();
    return false;
  }

  if (!filter.test(email.value)) {
    alert('Invalid email address');
    email.value="";
    email.focus();
    return false;
  }

  if (campaign_count){
    if (campaign_count.value >= 2){
      if (chosen == false){
        alert('Please choose a subscription option');
        return false;
      }
    }
  }

  document.getElementById('theForm_'+form).submit();

}

function sendTestMailout(a,b,c,d,e){
	var ajaxRequest;
	try{
		ajaxRequest = new XMLHttpRequest();
	} catch (e){
		try{
			ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e) {
			try{
				ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP");
			} catch (e){
				alert("Your browser broke!");
				return false;
			}
		}
	}

  if (a == "test_mailout" && b && c && d){
    var url = "../widgets/sendTestMailout.php";
    var parameters = "id="+b+"&campaign="+c+"&rotation="+d;	
  }

	ajaxRequest.open("POST", url, true);
	ajaxRequest.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	ajaxRequest.setRequestHeader("Content-length", parameters.length);
	ajaxRequest.setRequestHeader("Connection", "close");
  
	ajaxRequest.onreadystatechange = function(){
		if(ajaxRequest.readyState == 4){
  		document.getElementById(e).innerHTML = ajaxRequest.responseText;
		}
	}
  ajaxRequest.send(parameters);
}

function searchSubscribers(a,b,c,d){
  if (a == ""){
    alert('Please don\'t leave the search term field blank.');
    document.getElementById('searchField').focus();
    return;
  }

  var ajaxRequest;
	try{
		ajaxRequest = new XMLHttpRequest();
	} catch (e){
		try{
			ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e) {
			try{
				ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP");
			} catch (e){
				alert("Your browser broke!");
				return false;
			}
		}
	}
	ajaxRequest.onreadystatechange = function(){
		if(ajaxRequest.readyState == 4){
			document.getElementById(d).innerHTML = ajaxRequest.responseText;
		}
	}

  var queryString = "?searchTerm="+a+"&username="+b+"&action="+c;
	ajaxRequest.open("GET", "../widgets/searchSubscribers.php" + queryString, true);
	ajaxRequest.send(null);
}

function deleteSubscriber(a,b,c){
	var ajaxRequest;
	try{
		ajaxRequest = new XMLHttpRequest();
	} catch (e){
		try{
			ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e) {
			try{
				ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP");
			} catch (e){
				alert("Your browser broke!");
				return false;
			}
		}
	}

  if (a && b){
    var url = "../widgets/searchSubscribers.php";
    var parameters = "id="+a+"&action="+b;	
  }

	ajaxRequest.open("POST", url, true);
	ajaxRequest.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	ajaxRequest.setRequestHeader("Content-length", parameters.length);
	ajaxRequest.setRequestHeader("Connection", "close");
  
	ajaxRequest.onreadystatechange = function(){
		if(ajaxRequest.readyState == 4){
  		document.getElementById(c).innerHTML = ajaxRequest.responseText;
		}
	}
  ajaxRequest.send(parameters);
}

function checkFileSubmit() {
  var fileName = document.getElementById('file');
  if (fileName.value == '' || !fileName.value){
    var shout = 'Please browse for a file to upload.';
    alert(shout);
    return;
  } else {
    document.getElementById('result').innerHTML = "* Uploading... please wait for the page to reload";
    document.getElementById('theForm').submit();
  }
}

function validateMailout(b,c) {
  if (b == "new" || b == "update" && c == "mailout"){
    var f = document.getElementById('subject');
    var g = document.getElementById('body');
    if (f.value == '' || g.value == ''){
      alert('Please fill in both Subject and Body.');
      return;
    }
//    alert(document.getElementById('countFileAttachments').value);
    document.getElementById('theForm').submit();
  }
}

function validateCampaign(a,b,c,d,e,f,g) {
  if (b == "new" && c == "campaign"){
    var h = document.getElementById('title');
    var h_req = document.getElementById('title_req');
    var i = document.getElementById('genre');
    var i_req = document.getElementById('genre_req');
    var j = document.getElementById('keywords');
    var j_req = document.getElementById('keywords_req');
    var k = document.getElementById('desc');
    var k_req = document.getElementById('desc_req');
    var result = document.getElementById('result');
    var oops = false;
    if (h.value == ''){
      h_req.style.setProperty('color','#ff0000',null);
      oops = true;
    } else {
      h_req.style.setProperty('color','#000000',null);
    }
    if (i.value == ''){
      i_req.style.setProperty('color','#ff0000',null);
      oops = true;
    } else {
      i_req.style.setProperty('color','#000000',null);
    }
    if (j.value == ''){
      j_req.style.setProperty('color','#ff0000',null);
      oops = true;
    } else {
      j_req.style.setProperty('color','#000000',null);
    }
    if (k.value == ''){
      k_req.style.setProperty('color','#ff0000',null);
      oops = true;
    } else {
      k_req.style.setProperty('color','#000000',null);
    }
    if (oops == true){
      result.innerHTML = '* There are 1 or more missing required fields below.';
      return;
    } else {
      update(a,b,c,d,e);
    }
  }
}

function validatePage(b,c) {
  if (b == "new" || b == "edit" && c == "subscription"){
    if (b == "new" && c == "subscription"){
      var f = document.getElementById('filename');
    }
    var g = document.getElementById('headline');
    var alertMsg = 'There are 1 or more missing required fields:\n\n';
    var error = 'none';

    if (b == "new" && c == "subscription"){
      if (f.value == ''){
        alertMsg = alertMsg+'Page Name\n';
        error = 'yes';
      }
    }
    if (g.value == ''){
      alertMsg = alertMsg+'Main Headline\n';
      error = 'yes';
    }
    if (error == 'yes'){
      alert(alertMsg);
      return;
    } else {
//      alert(document.getElementById('countFileAttachments').value);
      document.getElementById('theForm').submit();
    }
  }
}

function textCounter(field,cntfield,maxlimit) {
  var textfield = document.getElementById(field);
  var count = document.getElementById(cntfield);
  if (textfield.value.length > maxlimit){
    textfield.value = textfield.value.substring(0, maxlimit);
  } else {
    count.innerHTML = "Characters remaining: "+(maxlimit - textfield.value.length);
  }
}

function textCounter2(field,cntfield) {
  var textfield = document.getElementById(field);
  var count = document.getElementById(cntfield);
  count.innerHTML = 'Total characters: '+(textfield.value.length);
}

function sendText(a,b,c){
	var ajaxRequest;
	try{
		ajaxRequest = new XMLHttpRequest();
	} catch (e){
		try{
			ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e) {
			try{
				ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP");
			} catch (e){
				alert("Your browser broke!");
				return false;
			}
		}
	}

  if (a == "send_text" && b){
    var url = "../widgets/sendMeText.php";
    var message = document.getElementById('message');
    var parameters = "id="+b+"&message="+message.value;
  }

	ajaxRequest.open("POST", url, true);
	ajaxRequest.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	ajaxRequest.setRequestHeader("Content-length", parameters.length);
	ajaxRequest.setRequestHeader("Connection", "close");
  
	ajaxRequest.onreadystatechange = function(){
		if(ajaxRequest.readyState == 4){
  		document.getElementById('content').innerHTML = "";
  		document.getElementById(c).style.display = "";
  		document.getElementById(c).innerHTML = ajaxRequest.responseText;
		}
	}
  ajaxRequest.send(parameters);
}

function rateBook(a){
	var ajaxRequest;
	try{
		ajaxRequest = new XMLHttpRequest();
	} catch (e){
		try{
			ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e) {
			try{
				ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP");
			} catch (e){
				alert("Your browser broke!");
				return false;
			}
		}
	}

  if (a){
    var url = "../widgets/rateBook.php";
    var subscriber_id = document.getElementById('subscriber_id');
    var username = document.getElementById('username');
    var campaign = document.getElementById('campaign');
    var rotation = document.getElementById('rotation');
    var parameters = "subscriber_id="+subscriber_id.value+"&username="+username.value+"&campaign="+campaign.value+"&rotation="+rotation.value+"&rating="+a;
  }

	ajaxRequest.open("POST", url, true);
	ajaxRequest.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	ajaxRequest.setRequestHeader("Content-length", parameters.length);
	ajaxRequest.setRequestHeader("Connection", "close");
  
	ajaxRequest.onreadystatechange = function(){
		if(ajaxRequest.readyState == 4){
  		document.getElementById('rating').innerHTML = ajaxRequest.responseText;
		}
	}
  ajaxRequest.send(parameters);
}

function checkSurveyForm(){
  var rating = document.getElementById('rating');
  var comments = document.getElementById('comments');

  if (rating.innerHTML != "Thank You...") {
    alert('Please click a rating.');
    return false;
  }

  if (comments.value == "") {
    alert('Please make a comment.');
    return false;
  }

  if (rating.innerHTML == "Thank You..." && comments.value != "") {
    document.getElementById('theForm').submit();
  } else {
    return false;
  }
}

function rateChapter(a,b){
	var ajaxRequest;
	try{
		ajaxRequest = new XMLHttpRequest();
	} catch (e){
		try{
			ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e) {
			try{
				ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP");
			} catch (e){
				alert("Your browser broke!");
				return false;
			}
		}
	}

  if (a,b){
    var url = "../widgets/rateChapter.php";
    var userid = document.getElementById('userid');
    var authorname = document.getElementById('authorname');
    var campaign = document.getElementById('campaign');
    var rotation = document.getElementById('rotation');
    var rating = document.getElementById('rating');
    var comments = document.getElementById('comments');
    var saved = document.getElementById('saved');
    var nextChapter = document.getElementById('nextChapter');
    var parameters = "sessionid="+b+"&userid="+userid.value+"&authorname="+authorname.value+"&campaign="+campaign.value+"&rotation="+rotation.value+"&rating="+a;
  }

  nextChapter.innerHTML = '';
  saved.innerHTML = 'Saving Chapter Rating...';

	ajaxRequest.open("POST", url, true);
	ajaxRequest.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	ajaxRequest.setRequestHeader("Content-length", parameters.length);
	ajaxRequest.setRequestHeader("Connection", "close");
  
	ajaxRequest.onreadystatechange = function(){
		if(ajaxRequest.readyState == 4){
      setTimeout(function(){saved.innerHTML = 'Saving Chapter Rating... done';}, 300);
      setTimeout(function(){saved.innerHTML = '&nbsp;'; nextChapter.innerHTML = ajaxRequest.responseText;}, 2000);
		}
	}
  ajaxRequest.send(parameters);
}

function checkChapterForm(a){
	var ajaxRequest;
	try{
		ajaxRequest = new XMLHttpRequest();
	} catch (e){
		try{
			ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e) {
			try{
				ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP");
			} catch (e){
				alert("Your browser broke!");
				return false;
			}
		}
	}
  var url = "../widgets/sendChapterNotes.php";
  var userid = document.getElementById('userid');
  var authorname = document.getElementById('authorname');
  var campaign = document.getElementById('campaign');
  var rotation = document.getElementById('rotation');
  var rating = document.getElementById('rating');
  var comments = document.getElementById('comments');
  var saved = document.getElementById('saved');
  var nextChapter = document.getElementById('nextChapter');
  var parameters = "sessionid="+a+"&userid="+userid.value+"&authorname="+authorname.value+"&campaign="+campaign.value+"&rotation="+rotation.value+"&comments="+comments.value;

  nextChapter.innerHTML = '';
  saved.innerHTML = 'Saving Notes & Comments...';

	ajaxRequest.open("POST", url, true);
	ajaxRequest.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	ajaxRequest.setRequestHeader("Content-length", parameters.length);
	ajaxRequest.setRequestHeader("Connection", "close");
  
	ajaxRequest.onreadystatechange = function(){
		if(ajaxRequest.readyState == 4){
      setTimeout(function(){saved.innerHTML = 'Saving Notes & Comments... done';}, 300);
      setTimeout(function(){saved.innerHTML = '&nbsp;'; nextChapter.innerHTML = ajaxRequest.responseText;}, 2000);
		}
	}
  ajaxRequest.send(parameters);
}

function nextChapter(a,b,c){
	var ajaxRequest;
	try{
		ajaxRequest = new XMLHttpRequest();
	} catch (e){
		try{
			ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e) {
			try{
				ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP");
			} catch (e){
				alert("Your browser broke!");
				return false;
			}
		}
	}

  if (a,b,c){
    var url = "../widgets/nextChapter.php";
    var campaign = document.getElementById('campaign');
    var rotation = document.getElementById('rotation');
    var saved = document.getElementById('saved');
    var parameters = "shelfid="+a+"&id="+b+"&sessionid="+c+"&campaign="+campaign.value+"&rotation="+rotation.value;
  }

  saved.innerHTML = 'Updating Bookmark...';

	ajaxRequest.open("POST", url, true);
	ajaxRequest.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	ajaxRequest.setRequestHeader("Content-length", parameters.length);
	ajaxRequest.setRequestHeader("Connection", "close");
  
	ajaxRequest.onreadystatechange = function(){
		if(ajaxRequest.readyState == 4){
      setTimeout(function(){saved.innerHTML = 'Updating Bookmark... done';}, 300);
      setTimeout(function(){saved.innerHTML = '&nbsp;'; window.location = ajaxRequest.responseText;}, 2000);
		}
	}
  ajaxRequest.send(parameters);
}

function restartBook(a,b){
	var ajaxRequest;
	try{
		ajaxRequest = new XMLHttpRequest();
	} catch (e){
		try{
			ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e) {
			try{
				ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP");
			} catch (e){
				alert("Your browser broke!");
				return false;
			}
		}
	}

  if (a,b){
    var url = "../widgets/nextChapter.php";
    var parameters = "shelfid="+a+"&id="+b+"&verb=restartBook";
  }

	ajaxRequest.open("POST", url, true);
	ajaxRequest.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	ajaxRequest.setRequestHeader("Content-length", parameters.length);
	ajaxRequest.setRequestHeader("Connection", "close");
  
	ajaxRequest.onreadystatechange = function(){
		if(ajaxRequest.readyState == 4){
      window.location = ajaxRequest.responseText;
		}
	}
  ajaxRequest.send(parameters);
}

function videoDisplay(a){
  var vid1 = document.getElementById('vid1').style.display = 'none';
  var vid2 = document.getElementById('vid2').style.display = 'none';
  var vid3 = document.getElementById('vid3').style.display = 'none';
  var vid4 = document.getElementById('vid4').style.display = 'none';
  var theVid = document.getElementById(a).style.display = '';
}

