onerror=handleErr
var txt=""

function handleErr(msg,url,l)
   {
    txt="There was an error on this page.\n\n"
    txt+="Error: " + msg + "\n"
    txt+="URL: " + url + "\n"
    txt+="Line: " + l + "\n\n"
    txt+="Click OK to continue.\n\n"
    alert(txt)
    return true
   }



function process_radio_which()
// used in:     display_feed_selection.php
   {

    if (document.getElementById("which_all").checked)
      {
       document.getElementById("how_many").disabled = true;
       document.getElementById("how_recent").disabled = true;
      }
    else if (document.getElementById("which_recentx").checked)
      {
       document.getElementById("how_many").disabled = false;
       document.getElementById("how_recent").disabled = true;
       document.getElementById("how_many").focus();
      }
    else if (document.getElementById("which_fromyy").checked)
      {
       document.getElementById("how_many").disabled = true;
       document.getElementById("how_recent").disabled = false;
       document.getElementById("how_recent").focus();
      }
                           
   }

function process_radio_when()
// used in:     display_feed_selection.php
   {
    var weekdays = document.getElementsByName("which_day");
 // if the "everyday" radio button is checked, each day of the week checkbox element should be disabled.
 // if not, they should all be enabled.
    for (var i=0;i<weekdays.length;i++)
      {
       weekdays.item(i).disabled = document.getElementById("when_everyday").checked;
      }
    
   }

function validate_two_digits(amount)
// used in:     display_feed_selection.php
   {
 // this must contain a number between 1 and 99
    if (amount > 0 && amount < 100)
      {
       return true;
      }
    else
      {
       return false;
      }
   }

function validate_how_many()
// used in:     display_feed_selection.php
   {
    if (!validate_two_digits(document.getElementById("how_many").value))
      {
       alert("Please enter a number of prayers between 1 and 99");
       document.getElementById("which_recentx").checked = true;     
       process_radio_which();
       return false;
      }
    else
      {
       return true;
      }
   }

function validate_how_recent()
// used in:     display_feed_selection.php
   {
    if (!validate_two_digits(document.getElementById("how_recent").value))
      {
       alert("Please enter a number of days between 1 and 99");
       document.getElementById("which_fromyy").checked = true;
       process_radio_which();
       return false;
      }
    else
      {
       return true;
      }
   }

function validate_feed_display_prefences_form()
// used in:     display_feed_selection.php
   {
    var pass_validation = true;
    if (document.getElementById("which_recentx").checked)
      {
       pass_validation = validate_how_many();
      }
    if (document.getElementById("which_fromyy").checked)
      {
       pass_validation = validate_how_recent();
      }
    evaluate_hidden_days_element();
    return pass_validation;
   }


function evaluate_hidden_days_element()
// used in:     display_feed_selection.php
// The purpose of this function is to calculate the value of the days input element - which is hidden in the form, but needs to be sent to the php function that processes the form
   {
    var x = "X";
    var underscore = "_";
    var workstring = "";
    var weekdays = document.getElementsByName("which_day");
 // Build up an array so that each position is X for a day that has been checked, and blank if it hasn't (or it's disabled).
    for (var i=0;i<weekdays.length;i++)
      {
       if (weekdays.item(i).checked && !weekdays.item(i).disabled)
         {
          workstring = workstring.concat(x);
         }
       else
         {
          workstring = workstring.concat(underscore);
         }
      }
    document.getElementById("days").value = workstring;
   }


//function redirect_display_relationships()
//// used in:     nothing
//   {
//    window.location="display_relationships.php";
//   }

function redirect_display_feed_selection()
// used in:     display_feed_selection.php
   {
    window.location="display_feed_selection.php";
   }


function redirect_display_prayers(username)
// used in:     add_prayer.php
   {
    target_location = "display_prayers.php?user_id=";
    target_location = target_location.concat(username);
    window.location=target_location;
   }


function redirect_display_details(username)
// used in:     maintain_user_settings.php
   {
    target_location = "display_user.php?user_id=";
    target_location = target_location.concat(username);
    window.location=target_location;
   }


function redirect_display_group(groupname)
// used in:     edit_group.php
   {
    target_location = "display_group.php?groupname=";
    target_location = target_location.concat(groupname);
    window.location=target_location;
   }


function display_deletion_doublecheck_message()
// used in: edit_user.php
	{
	var r=confirm("Are you sure you want to delete your Prayerfeeder account?");
	return r;
	}

function process_checkbox_change_password()
// used in: edit_user.php
	{
	if (document.getElementById("change_password").checked)
		{
		document.getElementById("newpassword1").disabled = false;
		document.getElementById("newpassword2").disabled = false;
		}
	else
		{
		document.getElementById("newpassword1").disabled = true;
		document.getElementById("newpassword2").disabled = true;
		}
	}

function process_checkbox_change_email()
// used in: edit_user.php
	{
	if (document.getElementById("change_email").checked)
		{
		document.getElementById("email").disabled = false;
		document.getElementById("email2").disabled = false;
		}
	else
		{
		document.getElementById("email").disabled = true;
		document.getElementById("email2").disabled = true;
		}
	}

function process_checkbox_change_name()
// used in: edit_user.php
	{
	if (document.getElementById("change_name").checked)
		{
		document.getElementById("firstname").disabled = false;
		document.getElementById("surname").disabled = false;
		}
	else
		{
		document.getElementById("firstname").disabled = true;
		document.getElementById("surname").disabled = true;
		}
	}

function process_checkbox_change_location()
// used in: edit_user.php
	{
	if (document.getElementById("change_location").checked)
		{
		document.getElementById("town").disabled = false;
		document.getElementById("region").disabled = false;
		document.getElementById("country").disabled = false;
		}
	else
		{
		document.getElementById("town").disabled = true;
		document.getElementById("region").disabled = true;
		document.getElementById("country").disabled = true;
		}
	}

function process_checkbox_change_privacy()
// used in: edit_user.php
	{
	if (document.getElementById("change_privacy").checked)
		{
		document.getElementById("public").disabled = false;
		document.getElementById("private").disabled = false;
		}
	else
		{
		document.getElementById("public").disabled = true;
		document.getElementById("private").disabled = true;
		}
	}

function process_checkbox_delete_user()
// used in: edit_user.php
	{
	if (document.getElementById("delete_user").checked)
		{
		document.getElementById("delete_password").disabled = false;
		document.getElementById("delete_reason").disabled = false;
		document.getElementById("delete_submit").disabled = false;
		document.getElementById("update_submit").disabled = true;
		}
	else
		{
		document.getElementById("delete_password").disabled = true;
		document.getElementById("delete_reason").disabled = true;
		document.getElementById("delete_submit").disabled = true;
		document.getElementById("update_submit").disabled = false;
		}
	}

function new_terms_window()
// used in: register.php
	{
	window.open("http://www.prayerfeeder.com/main/prayerfeeder_terms.php","_blank","toolbar=no, directories=no, location=no, menubar=no, status=no, scrollbars=yes, width=800")
	}


function display_breakup_doublecheck_message()
// used in: display_user.php
	{
	var r=confirm("Are you sure you want to remove this friend?");
	return r;
	}

function display_group_deletion_doublecheck_message()
// used in: edit_user.php
	{
	var r=confirm("Are you sure you want to leave this group?");
	return r;
	}