﻿var currentGameTitle = '';
var UserIdForContact = 0;
var UserNameForContact = '';
/*
dialogs() - 
Function writes the dialog container divs to the master span
*/
function dialogs()
{
    var spanObj = document.getElementById("dSpan");
    spanObj.innerHTML = '<div style="display:none;" title="הרשמה לאתר טריפו" id="RegDialogPlace"></div><div style="display:none;" title="כניסה לחשבון שלי בטריפו" id="LoginDialogPlace"></div><div style="display:none;" title="שכחתי את הסיסמה שלי" id="PasswordDialogPlace"></div><div style="display:none;" id="UserContactDialogPlace"></div><div style="display:none;" id="FacebookLoginDialogPlace"></div>';
    $(window).load(function() 
    {
        GetDialog("Login", "LoginDialogPlace");
        GetDialog("SendPass", "PasswordDialogPlace");
        GetDialog("Register", "RegDialogPlace");
        GetDialog("ContactUser", "UserContactDialogPlace");
        GetDialog("FacebookLogin", "FacebookLoginDialogPlace");
    });
}



/*
getDialog(dialogFileName, writeInDiv) - 
Function writes dialog html content in an HTML Object
*/
function GetDialog(DialogFileName, WriteInObjectId)
{

    var inDiv = document.getElementById(WriteInObjectId);
    var currentTime = new Date();
    var d = currentTime.getTime();

    var pageURL = "/Dialogs/" + DialogFileName + ".html?d=" + d;

    var xObj = getHttpRequestObj();
    xObj.onreadystatechange = function() {
        if (xObj.readyState == 4) {
            var response = xObj.responseText;
            inDiv.innerHTML = response;
            try {
                loadDates();
            }
            catch (ex) {

            }
        }
    };

    xObj.open ("get", pageURL ,true);
    xObj.send(null);
}

////////////////////////////////////////////////////////
// Password Reminder

/*
ShowPassReminder() - 
Function displays pass reminder user dialog
*/
function ShowPassReminder() 
{

    document.getElementById("UserEmailTxT").value = '';
    document.getElementById("PassLoading").style.display = 'none';
    document.getElementById("PassErr").style.display = 'none';
    $('#PasswordDialogPlace').dialog('open');
    $('#PasswordDialogPlace').keyup(function(e) { if (e.keyCode == 13) { SendPass(); }});
}



/*
ClearPassErrs() - 
Function clear all pass reminder error
*/
function ClearPassErrs()
{
    document.getElementById("PassErr").innerHTML = "";
}


/*
SendPass() - 
Function for sending user password reminder
*/
function SendPass()
{
    document.getElementById("PassLoading").style.display = '';
    document.getElementById("PassErr").style.display = 'none';
    var UserEmail = document.getElementById("UserEmailTxT").value;

    if (trim(UserEmail) == '' || !validateMail(UserEmail)) 
    {

        document.getElementById("PassErr").innerHTML = '<img src="/images/Dialogs/ex.png" /><b>יש להזין כתובת אימייל תקנית</b>';
        document.getElementById("PassErr").style.display = '';
        document.getElementById("PassLoading").style.display = 'none';
        return;
    }

    
    var pageURL = "/ajax/sendPass.aspx?";
    pageURL += "m=" + encodeURIComponent(UserEmail);
    

    var xObj = getHttpRequestObj();
    xObj.onreadystatechange =  function () 
        {
            if(xObj.readyState==4)
            {
               var response = xObj.responseText;

               document.getElementById("PassLoading").style.display = 'none'; 
               if(response == '0')
               {
                   document.getElementById("PassErr").style.display = '';
                   document.getElementById("PassErr").innerHTML = '<img src="/images/Dialogs/ex.png" /><b>כתובת האימייל לא נמצאה במערכת.</b>';
               }
               else
               {
                   document.getElementById("PassErr").style.display = '';
                   document.getElementById("PassErr").innerHTML = '<img src="/images/Dialogs/ok.gif" /><b>הסיסמה נשלחה לכתובת האימייל.</b>';
               }
            }
        };

    xObj.open ("post", pageURL ,true);
    xObj.send(null);
}

//////////////////////////////////////////////////////////////
// Login


/*
ShowLoginUser() - 
Function displays login user dialog
*/
function ShowLoginUser() 
{
    document.getElementById("UserNameTxT").value = '';
    document.getElementById("PasswordTxT").value = '';
    document.getElementById("LoginErr").style.display = 'none';
    $('#LoginDialogPlace').dialog('open');
    $('#LoginDialogPlace').keyup(function(e) { if (e.keyCode == 13) { LoginUser(); } });
}


/*
LoginUser() - 
Function for user login
*/
function LoginUser() {
    document.getElementById("LoginLoading").style.display = '';
    document.getElementById("LoginErr").style.display = 'none';
    ClearLoginErrs();
    var hasErr = 0;
    var UserName = document.getElementById("UserNameTxT").value;
    var Password = document.getElementById("PasswordTxT").value;


    if (trim(UserName) == '') {
        ShowLoginErr("יש להזין שם משתמש", "UserName");
        hasErr = 1;
    }

    if (trim(Password) == '') {
        ShowLoginErr("יש להזין סיסמה", "Password");
        hasErr = 1;
    }



    if (hasErr) {
        document.getElementById("LoginLoading").style.display = 'none';
        return;
    }

    var pageURL = "/ajax/login.aspx?";
    pageURL += "userName=" + encodeURIComponent(UserName) + "&";
    pageURL += "userPassword=" + encodeURIComponent(Password);


    var xObj = getHttpRequestObj();
    xObj.onreadystatechange = function() {
        if (xObj.readyState == 4) {
            var response = '';

            try {
                response = xObj.responseText;
            }
            catch (ex) { }


            document.getElementById("LoginLoading").style.display = 'none';
            if (response != '') {
                document.getElementById("LoginErr").style.display = '';
                document.getElementById("LoginErr").innerHTML = '<img src="/images/Dialogs/ex.png" /><b>שם המשתמש או הסיסמה אינם נכונים</b>';
            }
            else 
            {
                window.location.reload();
            }
        }
    };

    xObj.open("post", pageURL, true);
    xObj.send(null);
}



/*
ClearLoginErrs() - 
Function clear all login error
*/
function ClearLoginErrs() 
{
    document.getElementById("UserNameErr").innerHTML = "";
    document.getElementById("PasswordErr").innerHTML = "";
}


/*
ShowLoginErr(errTxT, objectId) - 
Function displays login error
*/
function ShowLoginErr(errTxT, ObjectId) {
    document.getElementById(ObjectId + "Err").innerHTML = errTxT;

}




/*
showRegUser() - 
Function displays register user dialog
*/
function ShowRegUser()
{
    $('#RegDialogPlace').dialog('open');
    $('#RegDialogPlace').keyup(function(e) {if (e.keyCode == 13) { RegUser(); } });
    var currentTime = new Date();
    var d = currentTime.getTime();
    document.getElementById("RegCaptchaImg").src = "/captcha/JpegImage.aspx?d=" + d;
    
}


/*
regUser() - 
Function for registering new user
*/
function RegUser()
{
    document.getElementById("RegLoading").style.display = '';
    document.getElementById("RegErr").style.display = 'none';
    ClearRegErrs();
    var hasErr = 0;
    var UserName = document.getElementById("RegUserNameTxT").value;
    var UserEmail = document.getElementById("RegUserEmailTxT").value;
    var Password = document.getElementById("RegPasswordTxT").value;
    var FirstName = document.getElementById("RegFirstNameTxT").value;
    var LastName = document.getElementById("RegLastNameTxT").value;
    var BirthDateYear = document.getElementById("BirthDateYearTxT").value;
    var BirthDateMonth = document.getElementById("BirthDateMonthTxT").value;
    var BirthDateDay = document.getElementById("BirthDateDayTxT").value;
    var SexMale = document.getElementById("SexMailCHK").checked;
    var SexFemail = document.getElementById("SexFemailCHK").checked;
    var Area = document.getElementById("AreaList").value;
    var GetMails = document.getElementById("GetMailsCHK").checked;
    var Capcha = document.getElementById("CapTxT").value;

    var UsDate = BirthDateMonth + "/" + BirthDateDay + "/" + BirthDateYear;
    var EurDate = BirthDateDay + "/" + BirthDateMonth + "/" + BirthDateYear;

    if (trim(UserName) == '' || UserName.length < 4) {
       
        ShowRegErr("יש לבחור שם משתמש בן מינימום 4 תווים", "RegUserNameErr");
        hasErr = 1;
    }
    
    if (trim(UserEmail) == '' || !validateMail(UserEmail))
    {
        ShowRegErr("יש להזין כתובת אימייל תקנית", "RegUserEmailErr");
        hasErr = 1;
    }
    
    
    if(trim(Password) == '' || Password.length < 4)
    {
        ShowRegErr("יש לבחור סיסמה בת מינימום 4 תווים", "RegPasswordErr");
        hasErr = 1;
    }
    
    var dateOK = 0;
    try
    {
        dateOK = isDate(EurDate);
    }
    catch(e)
    {
        dateOK = 1;
    }
    
    if(!dateOK)
    {
        ShowRegErr("תאריך הלידה שבחרת אינו תקין", "DateErr");
        hasErr = 1;
    }

    if(Capcha.length == 0 || isNaN(Capcha))
    {
        ShowRegErr("יש להקליד את הספרות המוצגות", "CapErr");
        hasErr = 1;
    }
    
    
    if(hasErr)
    {
        document.getElementById("RegLoading").style.display = 'none';
        return;
    }
    
    var userSex = 1;
    if(SexFemail)
    {
        userSex = 2;
    }
    var getMails = 0;
    if(GetMails)
    {
        getMails = 1;
    }
    
    
    var pageURL = "/ajax/regUser.aspx?";
    pageURL+= "userName=" + encodeURIComponent(UserName) + "&";
    pageURL+= "userPassword=" + encodeURIComponent(Password) + "&";
    pageURL+= "userEmail=" + encodeURIComponent(UserEmail) + "&";
    pageURL += "userBirthDate=" + encodeURIComponent(UsDate) + "&";
    pageURL+= "userFirstName=" + encodeURIComponent(FirstName) + "&";
    pageURL+= "userLastName=" + encodeURIComponent(LastName) + "&";
    pageURL+= "userSex=" + encodeURIComponent(userSex) + "&";
    pageURL+= "areaId=" + encodeURIComponent(Area) + "&";
    pageURL+= "getEmails=" + encodeURIComponent(getMails)+ "&";
    pageURL+= "cap=" + encodeURIComponent(Capcha);

    var xObj = getHttpRequestObj();
    xObj.onreadystatechange =  function () 
        {
            if(xObj.readyState==4)
            {
               var response = xObj.responseText;
               var userId = response.split("|")[0];
               var errText = response.split("|")[1]; 
               document.getElementById("RegLoading").style.display = 'none'; 
               if(errText != '')
               {
                    document.getElementById("RegErr").style.display = '';
                    document.getElementById("RegErr").innerHTML = '<img src="/images/Dialogs/ex.png" /><b>חלה טעות: ' +  errText + '</b>';
               }
               else
               {
                    window.location.reload();               
               }
            }
        };

    xObj.open ("post", pageURL ,true);
    xObj.send(null);
}


/*
ShowRegErr(errTxT, objectId) - 
Function displays register error
*/
function ShowRegErr(errTxT, objectId)
{
    document.getElementById(objectId).innerHTML = errTxT;
    
}

/*
ClearRegErrs() - 
Function clear all register error
*/
function ClearRegErrs()
{
    document.getElementById("RegUserNameErr").innerHTML = "";
    document.getElementById("RegUserEmailErr").innerHTML = "";
    document.getElementById("RegPasswordErr").innerHTML = "";
    document.getElementById("DateErr").innerHTML = "";
    document.getElementById("CapErr").innerHTML = "";
    
}






////////////////////////////////////////////////////////
// User Contact

/*
ShowUserContact() - 
Function displays user contact dialog
*/
function ShowUserContact(UserId, UserName) 
{

    UserIdForContact = UserId;
    UserNameForContact = UserName;
    document.getElementById("ContactUserDisplayNameTxT").innerHTML = UserName;
    document.getElementById("ContactUserIdHDN").value = UserId; 
    document.getElementById("ContactUserNameTxT").value = '';
    document.getElementById("ContactUserEmailTxT").value = '';
    document.getElementById("ContactUserMessageTxT").value = '';
    document.getElementById("ContactUserCapTxT").value = '';
    document.getElementById("ContactUserLoading").style.display = 'none';
    document.getElementById("ContactUserErr").style.display = 'none';
    document.getElementById("ContactUserSendButton").disabled = 0;

    ClearUserContactErrs();
    $('#UserContactDialogPlace').dialog('open');
    $('#UserContactDialogPlace').keyup(function(e) { if (e.keyCode == 13) { SendUserContact(); } });
}



/*
ClearUserContactErrs() - 
Function clear all user contact error
*/
function ClearUserContactErrs() 
{
    document.getElementById("ContactUserNameErr").innerHTML = "";
    document.getElementById("ContactUserEmailErr").innerHTML = "";
    document.getElementById("ContactUserMessageErr").innerHTML = "";
    document.getElementById("ContactUserCapErr").innerHTML = "";
}


/*
SendPass() - 
Function for sending user password reminder
*/
function SendUserContact() {

    ClearUserContactErrs();
    document.getElementById("ContactUserLoading").style.display = '';
    document.getElementById("ContactUserErr").style.display = 'none';

    var UserName = document.getElementById("ContactUserNameTxT").value;
    var UserEmail = document.getElementById("ContactUserEmailTxT").value;
    var Message = document.getElementById("ContactUserMessageTxT").value;
    var Captcha = document.getElementById("ContactUserCapTxT").value;
    var SendToUserId = document.getElementById("ContactUserIdHDN").value;

    if (trim(UserName) == '') {

        document.getElementById("ContactUserNameErr").innerHTML = 'יש להזין שם';
        document.getElementById("ContactUserLoading").style.display = 'none';
        return;
    }
    
    if (trim(UserEmail) == '' || !validateMail(UserEmail)) {

        document.getElementById("ContactUserEmailErr").innerHTML = 'יש להזין כתובת אימייל תקנית';
        document.getElementById("ContactUserLoading").style.display = 'none';
        return;
    }

    if (trim(Message) == '') {

        document.getElementById("ContactUserMessageErr").innerHTML = 'יש להזין הודעה';
        document.getElementById("ContactUserLoading").style.display = 'none';
        return;
    }


    if (Captcha.length == 0 || isNaN(Captcha)) 
    {
        document.getElementById("ContactUserCapErr").innerHTML = 'יש להקליד את הספרות המוצגות';
        document.getElementById("ContactUserLoading").style.display = 'none';
        return;
    }


    var pageURL = "/ajax/SendUserContact.aspx?";
    pageURL += "SendingUserName=" + encodeURIComponent(UserName);
    pageURL += "&SendingUserEmail=" + encodeURIComponent(UserEmail);
    pageURL += "&EmailMessage=" + encodeURIComponent(Message);
    pageURL += "&Captcha=" + encodeURIComponent(Captcha);
    pageURL += "&SendToUserId=" + encodeURIComponent(SendToUserId);


    var xObj = getHttpRequestObj();
    xObj.onreadystatechange = function() {
        if (xObj.readyState == 4) {

            var response = xObj.responseText;

            var OK = response.split("|")[0];
            var ErrMsg = response.split("|")[1];
            document.getElementById("ContactUserLoading").style.display = 'none';
            if (OK != '1') {
                document.getElementById("ContactUserErr").style.display = '';
                document.getElementById("ContactUserErr").innerHTML = '<img src="/images/Dialogs/ex.png" /><b>' + ErrMsg + '</b>';
            }
            else {
                document.getElementById("ContactUserLoading").style.display = 'none';
                document.getElementById("ContactUserErr").style.display = '';
                document.getElementById("ContactUserErr").innerHTML = '<img src="/images/Dialogs/ok.gif" /><b>הודעה נשלחה בהצלחה.</b>';
                document.getElementById("ContactUserSendButton").disabled = 1;
            }


        }
    };

    xObj.open("post", pageURL, true);
    xObj.send(null);
}





/*
loadDates() - 
Function sets birth date selector in register form.
*/
function loadDates() 
{
    var year = 0;
    var cnt = 0;
    var d = new Date();
    year = d.getFullYear();


    var yearSelect = document.getElementById("BirthDateYearTxT");
    var monthSelect = document.getElementById("BirthDateMonthTxT");
    var daySelect = document.getElementById("BirthDateDayTxT");

    for (i = year - 21; i > year - 85; i--) {
        yearSelect.options[cnt] = new Option(i, i);
        cnt++;

    }
    cnt = 0;
    for (i = 1; i <= 12; i++) {
        monthSelect.options[cnt] = new Option(i, i);
        cnt++;
    }

    cnt = 0;
    for (i = 1; i <= 31; i++) {
        daySelect.options[cnt] = new Option(i, i);
        cnt++;
    }

}


///////////////////////////////////////////////////////
// Facebook Login

function ShowFacebookLogin() 
{
    $('#FacebookLoginDialogPlace').dialog('open');
    ClearFacebookLoginErrs();
}



/*
ClearUserContactErrs() - 
Function clear all user contact error
*/
function ClearFacebookLoginErrs() 
{
    document.getElementById("FacebookLoginErr").innerHTML = "";
    document.getElementById("FacebookLoginErr").style.display = 'none';
    document.getElementById("FacebookLoginLoading").style.display = 'none';
}


function DialogFacebookLogin(UserInfoObj) 
{

    ClearFacebookLoginErrs();
    
    document.getElementById("FacebookLoginLoading").style.display = '';
    document.getElementById("FacebookLoginErr").style.display = 'none';
    


    var pageURL = "/ajax/RegUserFacebook.aspx?";
    pageURL += "UserFacebookId=" + encodeURI(UserInfoObj.UserFacebookId) + "&";
    pageURL += "UserFirstName=" + encodeURI(UserInfoObj.UserFirstName) + "&";
    pageURL += "UserLastName=" + encodeURI(UserInfoObj.UserLastName) + "&";
    pageURL += "UserBirthDate=" + encodeURI(UserInfoObj.UserBirthDate) + "&";
    pageURL += "UserEmail=" + encodeURI(UserInfoObj.UserEmail) + "&";
    pageURL += "UserSex=" + encodeURI(UserInfoObj.UserSex) + "&";
    pageURL += "UserWebsiteLink=" + encodeURI(UserInfoObj.UserWebsiteLink) + "&";
    pageURL += "UserFacebookLink=" + encodeURI(UserInfoObj.UserFacebookLink) + "&";
    pageURL += "UserImage=" + encodeURI(UserInfoObj.UserImage) + "&";
    pageURL += "UserThumbImage=" + encodeURI(UserInfoObj.UserThumbImage);
  
    var xObj = getHttpRequestObj();
    xObj.onreadystatechange = function() {
        if (xObj.readyState == 4) {
            var response = xObj.responseText;
            
            var userId = response.split("|")[0];
            var errText = response.split("|")[1];
            document.getElementById("FacebookLoginLoading").style.display = 'none';
            if (errText != '') {
                document.getElementById("FacebookLoginErr").style.display = '';
                document.getElementById("FacebookLoginErr").innerHTML = '<img src="/images/Dialogs/ex.png" /><b>חלה טעות: ' + errText + '</b>';
            }
            else {
                window.location.reload();
            }
        }
    };

    xObj.open("post", pageURL, true);
    xObj.send(null);

}
