﻿var defaultText = "your e-mail address";

function submitIfNeed(e)
{
	var pK = document.all? window.event.keyCode : e.which;
	if(pK == 13)
	{
		SubmitEmail();
		//window.event.returnValue = false;
		//e.returnValue = false;
		StopEvent(e);
		return false;
	}
	return true;
}

function StopEvent(pE)
{
   if (!pE)
     if (window.event)
	pE = window.event;
     else
	return;
   if (pE.cancelBubble != null)
      pE.cancelBubble = true;
   if (pE.stopPropagation)
      pE.stopPropagation();
   if (pE.preventDefault)
      pE.preventDefault();
   if (window.event)
      pE.returnValue = false;
   if (pE.cancel != null)
      pE.cancel = true;
} 

function FocusEmail()
{
    var fieldEmail = document.getElementById("email");
    if(fieldEmail != null)
    {
        if(fieldEmail.value == defaultText)
        {
            fieldEmail.value = "";
        }
    }
}

function BlurEmail()
{
    var fieldEmail = document.getElementById("email");
    if(fieldEmail != null)
    {
        if(fieldEmail.value == "")
        {
            fieldEmail.value = defaultText;
        }
    }
}

function SubmitEmail()
{
    var fieldEmail = document.getElementById("email");
    if(fieldEmail != null)
    {
        if(fieldEmail.value.length == 0)
        {
            alert("Please enter your email");
            return;
        }
    
        if(ValidateEmail(fieldEmail.value))
        {
            PageMethods.GenerateNewPassword(fieldEmail.value, OnSubmitRequestComplete);
        }
        else
        {
            alert("Incorrect email format");
            return;
        }
    }
}

function OnSubmitRequestComplete(result)
{
    var fieldEmail = document.getElementById("email");
    switch(result)
    {              
        case 0 :
            fieldEmail.value = defaultText;
            alert("Your password is re-generated and resent to you.");            
            break;
        case -1 :
            alert("Your email does not exists in our database");
            break;
        default :
            alert("System error (" + result + ")");
            break;
    }
}

function ValidateEmail(s)
{
        var Count;
        var s2;
        var s3 = s.replace(/[^0-9a-zA-Z@_.-]/,'$');
        if(s3.indexOf('$')>-1) return false;
        if (s.indexOf('@') == -1) return false;
        if (s.indexOf('@') == 0) return false;
        if ((s.lastIndexOf('@')+1) == s.length) return false;

        var firstindex = s.indexOf('@');
        var secondindex = s.lastIndexOf('@');
        if (firstindex != secondindex) return false;

        if (s.indexOf('.') == -1) return false;
        if (s.indexOf('.') == 0) return false;
        if ((s.lastIndexOf('.')+1) == s.length) return false;
        s2=s.substring(s.indexOf('@')+1,s.length);
        if (s2.indexOf('.') == -1) return false;
        if (s2.indexOf('.') == 0) return false;
        return true;
}
