﻿/// <reference path="../../jquery-1.4.1-vsdoc.js" />
/// <reference path="../HTBFunctionV1.js" />

// SSO Feautes
HTB.SSO = {
    // SSO namespace resource namespace
    R: {
        name: 'SSO',
        isAuth: false,
        proxy: {
            deattach: {
                url: 'http://10.2.20.63/SSOCore/SSO/DeAttachIntegratedAccount?callback=?'
            },
            login: {
                url: ''
                , returnUrl: ''
                , type: 'GET'
                , contentType: 'text/html'
            }
        }
    }
     , chkLogin: function() {
         if (!HTB.SSO.R.isAuth) {
             HTB.Cookie.getCookie('SSOCookie',
        function(data) {
            if (!HTB.VL.isNlOrUnOrEmSt(data.Items) && !HTB.VL.isNlOrUnOrEmSt(data.Items.OriginalData) && !HTB.VL.isNlOrUnOrEmSt(data.Items.Signature)) {
                var ReturnUrl = HTB.SSO.R.proxy.login.returnUrl;
                ReturnUrl = ReturnUrl.substr(0, ReturnUrl.lastIndexOf('/'));
                var url = ReturnUrl + "/login.ashx?" + "OriginalData" + "=" + data.Items.OriginalData + "&" +
            "Signature" + "=" + data.Items.Signature + "&" + "ReturnUrl" + "=" + HTB.SSO.R.proxy.login.returnUrl;
                //window.location.href = url;
                $.get(url, function(data) {
                }, function(data) { });

            }
            else {
                //   alert('operation didnt success');
            }
        }, null);
         }
     }

    , login: function() {
        HTB.Cookie.delCookie('eny');
        HTB.SSO.twitterLogin = {};
        var clk = this;
        var loginWindowSettings = "location=0,status=0,width=500,height=600,titlebar=0,toolbar=0";
        HTB.SSO.twitterLogin.loginWindow = window.open(HTB.SSO.R.proxy.login.url, "_blank", loginWindowSettings);
        HTB.SSO.twitterLogin.twitterInterval = window.setInterval(function() {
            if (HTB.SSO.twitterLogin.loginWindow != null && HTB.SSO.twitterLogin.loginWindow.closed) {
                window.clearInterval(HTB.SSO.twitterLogin.twitterInterval);
                HTB.Cookie.getCookie('SSOCookie',
                        function(data) {
                            if (!HTB.VL.isNlOrUnOrEmSt(data.Items) && !HTB.VL.isNlOrUnOrEmSt(data.Items.OriginalData) && !HTB.VL.isNlOrUnOrEmSt(data.Items.Signature)) {
                                var ReturnUrl = HTB.SSO.R.proxy.login.returnUrl;
                                ReturnUrl = ReturnUrl.substr(0, ReturnUrl.lastIndexOf('/'));
                                var url = ReturnUrl + "/login.ashx?" + "OriginalData" + "=" + data.Items.OriginalData + "&" +
                            "Signature" + "=" + data.Items.Signature + "&" + "ReturnUrl" + "=" + HTB.SSO.R.proxy.login.returnUrl;
                                window.location.href = url;

                            }
                            else {
                                //   alert('operation didnt success');
                            }
                        });
            }
        }, 1000)
    }
    , attach: function() {
        HTB.Cookie.delCookie('eny');
        HTB.SSO.twitterLogin = {};
        var clk = this;
        var loginWindowSettings = "location=0,status=0,width=800,height=400,titlebar=0,toolbar=0";
        HTB.SSO.twitterLogin.loginWindow = window.open(HTB.SSO.R.proxy.login.url, "_blank", loginWindowSettings);
        HTB.SSO.twitterLogin.twitterInterval = window.setInterval(function() {
            if (HTB.SSO.twitterLogin.loginWindow != null && HTB.SSO.twitterLogin.loginWindow.closed) {
                window.clearInterval(HTB.SSO.twitterLogin.twitterInterval);
                HTB.Cookie.getCookie('eny',
                      function(data) {
                          if (!HTB.VL.isNlOrUnOrEmSt(data.Items) && !HTB.VL.isNlOrUnOrEmSt(data.Items.twitterUserName)) {
                              $('#tuserName').text('Welcome ' + data.Items.twitterUserName);
                              HTB.SSO.R.isAuth = true;
                          }
                      });
            }
        }, 1000)
    },
    deAttach: function(obj, callback, error) {
        $.ajax({
            url: HTB.SSO.R.proxy.deattach.url
            , type: "GET"
            , data: { delAccountIntegratedAccountObj: obj }
            , dataType: "jsonp"
            , success: function(data) {
                if (callback)
                    callback(data)
            }
            , error: function(data) {
                if (error)
                    error(data);
            }
        });
    }
};
$(document).ready(function() {
   // HTB.SSO.chkLogin();
});
