var applId;
var fromSite;
var ssoSite;
var siteString = new String(window.location.toString());
var loginFormHtml = '';

var siteNum = new Array();
siteNum['cafe.themarker.com'] = '30';
siteNum['devcafe.themarker.com']= '30';
siteNum['www.themarker.com'] = '10';
siteNum['finance.themarker.com'] = '20';
siteNum['www.haaretz.co.il'] = '80';
siteNum['polodev.haaretz.co.il'] = '80';
siteNum['www.haaretz.com'] = '85';
siteNum['polodev.haaretz.com'] = '85';


if(siteString.indexOf("mouse")>1){
    applId = '127775787265935';
     fromSite = '40'    ;
    ssoSite='sso.mouse.co.il';
 } else if(siteString.indexOf("themarker")>1) {
    //applId =  '126850200676730';
    applId = '52929925921';
    fromSite = siteNum[window.location.hostname];
    if(fromSite == undefined) {
        fromSite='10';
        }
    ssoSite='sso.themarker.com';
    }  else {
        applId = '110687712359084';
        fromSite = siteNum[window.location.hostname];
        if(fromSite == undefined) {
            fromSite='80';
        }
        ssoSite='sso.haaretz.co.il';
    }


jQuery(document).ready(function() {
var ssoCookie = getCookie("tmsso");
var logOutcookie =  getCookie("logout");
if(!ssoCookie && logOutcookie!='true' && typeof(FB)!=='undefined'){
    FB.init({appId: applId, status: true, cookie: true, xfbml: true});
    FB.getLoginStatus(function(response) {
         if (response.authResponse) {
             // logged in and connected user, someone you know
             var token = response.authResponse.accessToken;
             var script1 = jQuery('<script><' + '/script>');
             script1.attr('src', 'http://'+ssoSite+'/sso/sso/signIn?cb=parseReply1&newsso=true&fromlogin=true&layer=login&fbconnect=true&token='+token);
             jQuery('head').append( script1 );
         }
     });
    }




});



//if(!getCookie("tmsso")){
    jQuery.ajax( {
        cache : false,
        url : 'http://'+ssoSite+'/sso/script/layer.jsp?layer=login',
        type : "GET",
        jsonp:"cb",
        success : function(data, status) {
            //loginFormHtml=data;
            jQuery('#sso_login_form').html('');
            jQuery('#sso_login_form').append(data);
        },
        error : function(data, status) {
            //TODO:do something
        },
        timeout : 3000,
        dataType : 'jsonp',
        cache   : 'true',
        jsonpCallback : 'processData'

    });
//}



function fbRegister(){
      //jQuery('#sso_form').append( arguments[0]);
      //jQuery.blockUI({ message: $('#sso_form') });
       // arguments[0]
        //alert("vova");
        FB.init({
            appId  : applId,  
            status : true, // check login status
            cookie : true, // enable cookies to allow the server to access the session
            xfbml  : true  // parse XFBML
          });
        FB.login(function(response) {
            if (response.authResponse) {
                var token = response.authResponse.accessToken;
                var script = jQuery('<script><' + '/script>');
                script.attr('src', 'http://'+ssoSite+'/sso/user/register?fbconnect=true&cb=parseReply1&newsso=true&fromlogin=true&site=65&token='+token);
                jQuery('head').append( script );

            } else {
                // user is logged in, but did not grant any permissions
              }

          }, {scope:'email,user_birthday,offline_access,user_interests,publish_stream,read_stream'});

    }
jQuery( document ).ready( function(){
	var jQueryQuery = '#facebook_cafe,.facebook_connect';
	
	if (siteNum[window.location.hostname] == '80')
		jQueryQuery = '#facebook_cafe';
	
	jQuery(jQueryQuery).click(function(){
		fbRegister();
	});
	
	jQueryQuery = '#register,.register';
	
	if (siteNum[window.location.hostname] == '80')
		jQueryQuery = '#register';
	
	jQuery('#register,.register').click(registerLayer);
});

/* jQuery( document ).ready( function(){
    jQuery('#register,.register').click(registerLayer);

 }); */



/*jQuery( document ).ready( function(){
    jQuery('#login1,#login2,#login3, .login-cafe,.login').click(function(){
      var script = jQuery('<script><' + '/script>');
      script.attr('src', 'http://'+ssoSite+'/sso/script/layer.jsp?cb=parseReply&layer=login');
      jQuery('head').append( script );
     });
 });*/
jQuery( document ).ready( function(){
     jQuery('#login1,#login2,#login3, .login-cafe,.login').click(function(){
           popUpLogin();
     });
});

function popUpLogin(){
/*      if(jQuery('#sso_login_form').html().length==0){
            jQuery('#sso_login_form').html('');
	        jQuery('#sso_login_form').append(loginFormHtml);
      }*/
      jQuery('.error').html('');
      jQuery('.error').hide();
      jQuery.blockUI.defaults.css.backgroundColor = '';
      jQuery.blockUI.defaults.css.border = 'none';
      jQuery.blockUI.defaults.css.textAlign = 'right';
      jQuery.blockUI.defaults.css.cursor = 'default';
      jQuery.blockUI.defaults.overlayCSS.cursor = 'default';
      jQuery.blockUI.defaults.overlayCSS.backgroundColor = 'none' ;
      jQuery.blockUI({ message: $('#sso_login_form') }); 
}

function registerLayer(){
      var script = jQuery('<script><' + '/script>');
      script.attr('src', 'http://'+ssoSite+'/sso/script/layer.jsp?cb=parseReply&layer=register');
      jQuery('head').append( script );
}

function forgotPasswordLayer() {
      jQuery('#sso_form').html('');
      var script = jQuery('<script><' + '/script>');
      script.attr('src', 'http://'+ssoSite+'/sso/script/layer.jsp?cb=parseReply&layer=forgotpassword');
      jQuery('head').append( script );
      return false;
}

function parseReply(){
      jQuery.blockUI.defaults.css.backgroundColor = '';
      jQuery.blockUI.defaults.css.border = 'none';
      jQuery.blockUI.defaults.css.textAlign = 'right';
      jQuery.blockUI.defaults.css.cursor = 'default';
      jQuery.blockUI.defaults.overlayCSS.cursor = 'default';
      jQuery.blockUI.defaults.overlayCSS.backgroundColor = 'none' ;
       jQuery('#sso_form').html('');
       jQuery('#sso_form').append(arguments[0]);

 /*      var num = Math.round(Math.random()*1000);
        jQuery('input[name=firstName]').val('First' + num);
        jQuery('input[name=lastName]').val('last' + num);
        jQuery('input[name=userName]').val('aa@' + num + 'ss' + '.com');
        jQuery('input[name=password]').val('pass' + num);
        jQuery('input[name=confirmPassword]').val('pass' + num); */

       jQuery.blockUI({ message: $('#sso_form') });
}

function submitForm(){

    jQuery( '[id*=_error]').hide();
    jQuery(".inputText").removeClass("inputTextError")
    jQuery('#error').hide();
    var validform = false;

    /*validform &= validateField('firstName');
    validform &= validateField('lastName');
    validform &= validateField('userName');
    validform &= validateField('password'); */
    
    if (validateField('firstName') && validateField('lastName') &&  validateField('userName') && validateField('password')){
    	validform = true ;
    }

   /* if ( jQuery( 'input[name=password]').val() !== jQuery( 'input[name=confirmPassword]').val()){
        validform = false;
        jQuery( '#confirmPassword_error').show();
    } */


    if ( validform ){
    	jQuery('#ajaxLoader').show() ;
        var form = jQuery('#registerForm');
        //alert(jQuery('[name=firstName]',form).val())
        //alert(unescape(collectformData(form)));
        jQuery.ajax({
           type: "GET",
           url: "http://"+ssoSite+"/sso/user/register?cb=parseReply1&newsso=true&layer=createuser&"+form.serialize()+"&site="+fromSite+"&returnTo="+siteString,
           dataType: "script",
           contentType: "application/x-www-form-urlencoded;charset=UTF-8"
         });



        //var script1 = jQuery('<script charset="UTF-8"><' + '/script>');
        //script1.attr('src', 'http://sso.themarker.com:8080/sso/user/register?cb=parseReply1&newsso=true&layer=createuser&'+form.serialize());
        //alert('http://sso.themarker.com:8080/sso/user/register?cb=parseReply1&newsso=true&layer=createuser&'+ collectformData(form));
        //jQuery('head').append( script1 );
    }

    return false;

}

function collectformData(){
     var inputs = "";
     inputs="firstName="+jQuery('[name=firstName]',arguments[0]).val()+"&"+"lastName="+jQuery('[name=lastName]',arguments[0]).val()+"&";
     inputs=inputs + "userName="+jQuery('[name=userName]',arguments[0]).val()+"&"+"password="+jQuery('[name=password]',arguments[0]).val()+"&";
     inputs=inputs+"confirmPassword="+ jQuery('[name=confirmPassword]',arguments[0]).val();
    return inputs;
}




function submitLoginForm(){

    jQuery( '[id*=_error]').hide();
    jQuery(".inputText").removeClass("inputTextError")
    jQuery('#error').hide();
    var validform = false;

   /* validform &= validateField('userName');
    validform &= validateField('password'); */
    
    if (validateField('userName','sso_login_form') && validateField('password','sso_login_form')){
    	validform = true ;
    }
    

    if ( validform ){
    	jQuery('#ajaxLoader').show() ;
        var form = jQuery('#loginForm');
        var script1 = jQuery('<script><' + '/script>');
        script1.attr('src', 'http://'+ssoSite+'/sso/sso/signIn?cb=parseReply1&newsso=true&fromlogin=true&layer=login&'+ form.serialize());
        jQuery('head').append( script1 );
    }

    return false;

}

function validateField(){
    var fieldId = arguments[0];
    var formId = '';
    if(arguments[1]=='sso_login_form'){
        formId =  '#sso_login_form';
    }   else {
        formId =  '#sso_form';
    }

    if ( jQuery.trim( jQuery(formId +' input[name=' + fieldId + ']').val() ).length == 0 ){
	   // jQuery('#' + fieldId + '_error').show();
    	jQuery(formId +' .error').html(jQuery(formId +' #' + fieldId + '_error').html()) ;
    	jQuery(formId +' #' + fieldId).removeClass("inputBorderSignUp") ;
    	jQuery(formId +' #' + fieldId).addClass("inputTextError") ;
    	jQuery(formId+ ' .error').show();
	    return false;
    }
    return true;
}

function doNothing() {
    var i=0;
    i=i+1;
     //console.log('koko'+i);

}

function parseReply1(){
        
	jQuery('#ajaxLoader').hide() ; 
	
    if(arguments[0] == 'success') {
        if(arguments[1].length>0) {
            var reply =  eval("(" + arguments[1] + ")") ;

        //var img = jQuery('<img></img>');
        //img.attr('id','cookie');
        for(var i in reply){
               // img.attr('src', reply[i]);
                //jQuery('#cookies').append(img);
             jQuery('#cookies').append("<p><img src='" + reply[i] + "' alt='" + i + "' /></p>");
        }
        if(typeof arguments[2] == "undefined"){
            jQuery("#cookies").find('img').batchImageLoad({
                loadingCompleteCallback: docReload
                //imageLoadedCallback: doNothing
                });
        }
      }
      if(typeof arguments[2] != "undefined") {
            jQuery('#sso_form').html('');
            jQuery('#sso_form').append(arguments[2]);
        }

    } else {

          if(typeof arguments[2] != "undefined") {
            if(arguments[2].match(/fatal/)) {
                jQuery('#sso_form').html('');
                jQuery('#sso_form').append(arguments[2]);
            }  else {
                jQuery('.ssoForms .error').html('');
                jQuery('.ssoForms .error').append(arguments[2]);
                jQuery('.ssoForms .error').show();
                /*jQuery('#initPassword').click(function(){
                    var script = jQuery('<script><' + '/script>');
                    script.attr('src', 'http://sso.themarker.com:8080/sso/script/layer.jsp?cb=initPassword&layer=initpassword');
                    jQuery('head').append( script );
                });                                  */
            }
          }
    }
}

function parseReply2(){
	jQuery('#ajaxLoader').hide() ;

    if(arguments[0] == 'success') {
        if(arguments[1].length>0) {
            var reply =  eval("(" + arguments[1] + ")") ;

        //var img = jQuery('<img></img>');
        //img.attr('id','cookie');
        for(var i in reply){
               // img.attr('src', reply[i]);
                //jQuery('#cookies').append(img);
             jQuery('#cookies').append("<p><img src='" + reply[i] + "' alt='" + i + "' /></p>");
        }
        if(typeof arguments[2] == "undefined"){
            jQuery("#cookies").find('img').batchImageLoad({
                loadingCompleteCallback: doNothing,
                imageLoadedCallback: doNothing
                });
        }
      }
    }
}

function docReload(){
        if(getCookie("tmsso")!=null){
            window.location.reload();
        }
}


function initPassword(){

           jQuery( '[id*=_error]').hide();
           jQuery('#error').hide();
           var validform = true;
           validform &= validateField('userName');
           if ( validform ){
	           jQuery('#ajaxLoader').show() ;  
	           var form = jQuery('#forgotPasswordForm');
	           var script1 = jQuery('<script><' + '/script>');
	           script1.attr('src', 'http://'+ssoSite+'/sso/user/initPassword?cb=parseReply1&newsso=true&layer=sendpassword&site='+fromSite+'&'+ form.serialize());
	           jQuery('head').append( script1 );
           }
           return false;
}

function getCookie(){
	var cookieName = arguments[0];
	var cookieValue = null;
	if (document.cookie && document.cookie != '') {
		var cookies = document.cookie.split(';');
		for (var i = 0; i < cookies.length; i++) {
			var cookie = jQuery.trim(cookies[i]);
			// Does this cookie string begin with the name we want?
			if (cookie.substring(0, cookieName.length + 1) == (cookieName + '=')) {
				cookieValue = unescape(cookie.substring(cookieName.length + 1));
				break;
			}
		}
	}
	return cookieValue;
}


/**reads sso data from cookie*/
function getValueFromCookie(){
			ssoData = new Array();
			var tmssoCookie = getCookie("tmsso");
			if (tmssoCookie){
				var lines = tmssoCookie.split(":");
				for (var i = 0; i < lines.length; i++){
					var parts = lines[i].split("=");
					if (parts.length == 2 ){
						ssoData[parts[0]] = parts[1];
					}
				}
			}
    		var key = arguments[0];
			var param = null;
			if (ssoData){
				param = ssoData[key];
			}
			return param;
}
