﻿
var hActionValue = '';
function sortListBoxItems(a, b) {
    var x = a.get_text().toLowerCase();
    var y = b.get_text().toLowerCase();
    return ((x < y) ? -1 : ((x > y) ? 1 : 0));
}
function ScrollToTop() {
   
    window.scroll(0, 0);
}

function CloseCustomeService() {
    var oArg = new Object();
    oArg.From = "CustomeService";

    GetRadWindow().close(oArg);
}

function OpenWindow(url, width, height) {
    if (typeof (url) != 'undefined') {
        
        var ownd = radopen(url, "");
        if (typeof (width) != 'undefined' && typeof (height) != undefined)
            ownd.SetSize(width, height);
        ownd.center();
        ownd.show();
    }
}

function ShowWindow(windowID, url, width, height) {
    
    var ownd = $find(windowID);
    if (!ownd) {
        OpenWindow(url, width, height);
        return;
    }
    if (typeof (url) != 'undefined') ownd.setUrl(url);
    if (typeof (width) != 'undefined' && typeof (height) != undefined) ownd.SetSize(width, height);
    ownd.center();
    ownd.show();
}

function CloseAndRebind(args, timeout) {
    //alert("here");
    if (typeof (timeout) != 'undefined') {
        setTimeout(function () {
            CloseAndRebind(args);
        }, timeout);
    }
    else {
        try {
            GetRadWindow().BrowserWindow.refreshGrid(args);

        } catch (e) { }
        GetRadWindow().close(args);
    }
}

function GetRadWindow() {
    var oWindow = null;
    if (window.radWindow) oWindow = window.radWindow; //Will work in Moz in all cases, including clasic dialog
    else if (window.frameElement.radWindow) oWindow = window.frameElement.radWindow; //IE (and Moz as well)
    //alert(oWindow);
    return oWindow;
}

function CloseComposeEmail(timeout) {
   // alert(document.getElementById("hComposeAction").value);
    var oArg = new Object();
    oArg.From = "Email";
    try {
        oArg.EmailActions = document.getElementById("hComposeAction").value;

    } catch (e) { oArg.EmailActions = ''; } 


   CloseAndRebind(oArg, timeout);
}
function OnCloseWindoAction(Action) {
    // alert(document.getElementById("hComposeAction").value);
    var oArg = new Object();
    oArg.From = Action;
    GetRadWindow().close(oArg);
}
function CloseNoRebind(args, timeout) {
    
   
    
    if (typeof (timeout) != 'undefined') {
        setTimeout(function () {
            CloseAndRebind(args);
        }, timeout);
    }
    else {
         
        GetRadWindow().close(args);
    }
}
function RebindLogic(actions) {

    $("#" + hUpdateSectionsClientID).val(actions);   
    
    __doPostBack(lbUpdateSectionsClientID, '');
}
function OnClientClose(ownd, args) {

    //get the transferred argument
    var arg = args.get_argument();
    
    if (arg) {
        
        if (arg.From == "Email") {
            if (arg.EmailActions.indexOf('BlockedInCompose') != -1 && lbUpdateCompatibilityUniqueID != undefined) {
                __doPostBack(lbUpdateCompatibilityUniqueID, '');
            }
        }
        else if (arg.From == "ErrorPage") {
            window.location = "Error.aspx";
        }
        else if (arg.From == "LoginPassword") {
             
            window.location = "Dashboard.aspx";
        }
        else if (arg.From == "LoginAuthentication") {
            window.location = "Signup.aspx";
        }
        else if (arg.From == "CustomeService") {

            window.location = "http://ticket.roommateclick.com/";
        }
    }

}
function OnClientPageLoad(sender, eventArgs) {
  //  alert(eventArgs);
}
function OnClientCommand(sender, eventArgs) {
   // alert("<strong>OnClientCommand</strong>: Command is " + eventArgs.get_commandName());
}
function CancelEdit() {
    GetRadWindow().close();
}

function LoginDelayed(windowID, url) {
    var func = "ShowWindow('" + windowID + "','" + url + "');";
    setTimeout(func, 300);
}
function OnRequestStart(sender, args) {
    
}

function OnResponseEnd(sender, args) {
   
    
}

function OnRequestStartSearch(sender, args) {
    document.getElementById("imgSearch").style.display = "";
}

function OnResponseEndSearch(sender, args) {
    document.getElementById("imgSearch").style.display = "none";
    CheckBoxAge();
}

function OnRequestStartSearchSort(sender, args) {
    $('div.black-cell.with-gap').find('span').addClass('loadingEx');
}

function OnResponseEndSearchSort(sender, args) {
    $('div.black-cell.with-gap').find('span').removeClass('loadingEx');
}

function OnRequestStartG(sender, args) {
    $('div.button-with-loading').find('span').toggleClass('loading');
    OnRequestStart(sender, args );
}

function OnResponseEndG(sender, args) {
    $('div.button-with-loading').find('span').removeClass('loading');
    OnResponseEnd(sender, args);
}
function AppliCBStyle() {
    $('input:checkbox:not([safari])').checkbox();
}

function ShowImageUpload(IsEdit) {
    //get a reference to the window
    var oWnd = $find(rwUploadImages);
    oWnd.setUrl('PhotoUpload.aspx');
    oWnd.show();
}
function ShowImageUpload(IsEdit, args) {
    var oWnd = $find(rwUploadImages);
    oWnd.setUrl('PhotoUpload.aspx?user=' + args);
    oWnd.show();
}
function HidewImageUpload(reload) {
    //get a reference to the window
   // alert(reload);
    var oArg = new Object();
    oArg.Reload = reload;
    var oWnd = GetRadWindow();
    oWnd.close(oArg);
    


}
function OnImageUploadClientClose(oWnd, args) {
    //get the transferred arguments
    var arg = args.get_argument();
    //alert(arg.Reload);
    if (arg) {
       // alert(arg.Reload);
        if (arg.Reload = true) {
            __doPostBack(lbUpdatePhotos, '');
        }
        
        
    }
}

function CheckCharacters(obj, counterPlace, totalLength) {
    //alert($("#" + counterPlace));
    if ((totalLength + 1) > obj.value.length) {
        $("#" + counterPlace).html(obj.value.length);
    } else {
        $("#" + counterPlace).html(obj.value.length);
        obj.value = obj.value.substr(0, totalLength);
        alert("You can only enter " + totalLength + " characters");
    }
}
function limitChars(textid, limit, infodiv) {
    //alert(textid);
    var text = $('#' + textid).val();
    var textlength = text.length;
    if (textlength > limit) {
        $('#' + infodiv).html('You cannot write more then ' + limit + ' characters!');
        $('#' + textid).val(text.substr(0, limit));
        return false;
    }
    else {
        $('#' + infodiv).html('Characters:<b>' + textlength  + '/' + limit + '</b>.');
        return true;
    }
}

function OnClientShow() {
    //alert("test");
}



function CenterCurrentRadWindow() {
    GetRadWindow().center();
}
function ShowLoadingRadWindow() {
    GetRadWindow().reload();
}
$.extend({
    getUrlVars: function () {
        var vars = [], hash;
        var hashes = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&');
        for (var i = 0; i < hashes.length; i++) {
            hash = hashes[i].split('=');
            vars.push(hash[0]);
            vars[hash[0]] = hash[1];
        }
        return vars;
    },
    getUrlVar: function (name) {
        return $.getUrlVars()[name];
    }
});



//function EndRequestHandler(sender, args) {

//    if (args.get_error() != undefined && args.get_error().httpStatusCode == '500') {
//        
//        var errorMessage = args.get_error().message;
//        args.set_errorHandled(true);

//        radalert("An error ocurred while processing your request, please try again");
//    }
//}

function SessionLost(args) {
    
        GetRadWindow().close();
        CloseAndRebind(args);

    }

    function LoginByExtanalLoginInfo(UserNameFieldName, PasswordFieldName) {
        var oManager = $find(WindowManagerName);
        
        //alert(oManager);
        
        var Username = document.getElementById(UserNameFieldName).value;
        Username = Username.trim();
        var Password = document.getElementById(PasswordFieldName).value;
        Password = Password.trim();
        if (Username == "" || Password == "") {
            oManager.radalert('Please fill Username and Password fields!', 330, 100);
            
            return;
        }
        var exists;
        $.ajax({
            type: "POST",
            contentType: "application/json; charset=utf-8",
            url: "Login.aspx/LoginByWebService",
            data: "{'Username': '" + Username + "','Password': '" + Password + "'}",
            dataType: "json",
            async: false,
            success: function (result) {
                exists = result.d;
            }
        });
        if (exists) {
            window.location = "Dashboard.aspx"
        }
        else {
            oManager.radalert('Username or Password is not valid!', 300, 100);
             
            return;
        }
    }
    String.prototype.trim = function () {
        return this.replace(/^\s+|\s+$/g, "");
    }
