﻿    // JScript File
        var FB_nickname = "";
        var FB_id = "";
        var FB_name = "";
        var FB_birthday = "";
        var FB_gender = "";
        var FB_email = "";
        var FB_verifyemail = "0";
        var FB_LoginClicked = "0";
        var FB_UserSaveClicked = "0";
	  
	  showMe = function(response) 
	  {
	  
			if (!response.session) 
			{
				  //do nothing
			} 
			else 
			{
				  FB.api('/me', function(response)
				  {
						  for (var key in response) 
						  {
						  
						        if(key=='id')
						        {
						            FB_id = response[key];
						        }
						        if(key=='name')
						        {
						            FB_name = response[key];
						        }
						        if(key=='birthday')
						        {
						            FB_birthday = response[key];
						        }
						        if(key=='gender')
						        {
						            FB_gender = response[key];
						        }
						        if(key=='email')
						        {
						            FB_email = response[key];
						            
						            if(FB_email.indexOf("proxymail.facebook.com") > -1)
						            {
						                FB_email = "";
						            }
						        }
						    }
						    
						    if(FB_LoginClicked == "1")
			                {			                
			                    FB_LoginClicked = "0";    
                                FacebookUserLogin("1");	
                            }	
				    });		 
				 
			}			
	  };

	FB.init({appId: '00bea33b0b3703c75c6b66de0850111d', status: true, cookie: false, xfbml: true});

	FB.getLoginStatus(function(response) 
	{
		 showMe(response);
		 FB.Event.subscribe('auth.sessionChange', showMe);
		 FB.Event.subscribe('auth.login', function(response) {
            // do something with response.session
            FB_LoginClicked = "1";
        });

	});
	
	function FacebookUserLogin(data)
	{
	    
            $.ajax({
                type: "POST",
                url: "SocialSiteLogin.aspx",
                data: "ZXFBID="+ encodeURIComponent(FB_id)+"&ZXFBEM="+ encodeURIComponent(FB_email)+"&ZXSNNAME=facebook",
                dataType: 'json',
                "cache":false,
                error:function(response){},
                success: function(response)
                {
                    if(response["status"]["code"]=="1")
                    {
                        if(response["status"]["redirectURL"].indexOf("MemberLogin.aspx") != -1)
                        {   FB.logout(function(response) {
                              // user is now logged out 
                            });
                        }
                        window.location=response["status"]["redirectURL"];
                        return;
                    }
                    else if(response["status"]["code"]=="2" && data != "2" && data != "3")
                    {
                      addFacebookUser();                               
                    }
                    
                    else if(response["status"]["code"]=="0")
                    {
                        $("div[id$='errorMsg']").html(response["status"]["msg"]).show();
                    }
                }
                }); 
	}
	
	function addFacebookUser()
    {
        
        $("div[role='dialog']").detach();
        var sHTML ="";
        sHTML += '<div id="mDialog"><div id="shrErrorMsg" class="shrErrorMsg" style="display:none"></div><div id="shrSuccessMsg" class="shrSuccessMsg" style="display:none"></div>';
        sHTML += '<div id="addFavoriteSite" style="padding:5px; height:450px; overflow:auto;">';
        sHTML += '<div class="contentNavigation"><b>Sign Up</b><br></div><span class="InputCaption">Nickname</span>';        
        sHTML += '<div style="display:block; float:left; margin-right:6px;"><input type="text" id="txtFB_Nickname" class = "UploadTextBox" value="" maxlength="20" style="width:200px;"/><font class="Required">&nbsp;*</font></div>';
        sHTML += '<div id="divNickName" class="divEmpty">&nbsp;</div><br style="clear:both;" />';
        sHTML += '<span class="captionSU" style="font-size:11px;">This nickname will be used as your Z! Spot (personal URL)<br/>(i.e. www.zingzag.com/<font class="ColorOrange">NickName</font>)</span> ';
        sHTML += '<div id="divFBEmail" style="float:left;width:370px; padding-top:10px;">';
        sHTML += '<span class="InputCaption">Email Address</span>';
        sHTML += '<div style="display:block; float:left; margin-right:6px;"><input type="text" id="txtFB_EmailAddress"  class="UploadTextBox" maxlength="200" value="" style="width:200px;"/><font class="Required">&nbsp;*</font></div>';
        sHTML += '<div id="divEmailAddress" class="divEmpty">&nbsp;</div></div><br style="clear:both;">'; 	
        sHTML += '<div id="divGender" style="float:left;width:370px; padding-top:10px;"><span class="InputCaption">I am</span>';
        sHTML += '<select id="ddlGender" class="UploadTextBox" style="width:200px;">';
        sHTML += '<option value="-1">select sex</option>';
        sHTML += '<option value="1">male</option>';
        sHTML += '<option value="0">female</option></select><font class="Required">&nbsp;*</font></div><br style="clear:both;">';
        sHTML += '<div id="divBirthDay" style="float:left;width:370px; padding-top:10px;">';
        sHTML += '<span class="InputCaption">Birthday (mm/dd/yyyy)</span>';
        sHTML += '<span style="display:block;float:left; margin-right:5px;"><input type="text" id="txtFB_Birthday"  class="UploadTextBox" maxlength="10" value="'+ FB_birthday +'" style="width:200px;"/><font class="Required">&nbsp;*</font>';      
        sHTML += '</span></div><br style="clear:both;">';
        sHTML += '<div style="float:left; padding-top:10px;"><input value="save" id="btnFBConnectSubmit" title="save" class="buttonStyle" style="height:24px;"  type="button">';
        sHTML += '</div></div></div>';
        
        var $dialog = $(sHTML)
		    .dialog({
			    width: 400,
			    height: 400,
			    modal: true,
			    title:"SIGN UP"
		    });
		    
		    $dialog.bind( "dialogclose", function(event, ui) {dialogClosed();});
		    
		     $("input[id$='txtFB_Nickname']").bind("focusout", function(){checkLoginName($.trim($("input[id$='txtFB_Nickname']").val()))});
		     $("input[id$='txtFB_EmailAddress']").bind("focusout", function(e){
                if($.trim($("#txtFB_EmailAddress").val())=="")
                {
                    $("div[id$='divEmailAddress']").removeClass("CheckLoginSuccess");
                    $("div[id$='divEmailAddress']").removeClass("CheckLoginFailure");
                    $("div[id$='divEmailAddress']").addClass("divEmpty");
                    return;
                }
		         $.ajax({
			        type: "POST",
			        url: "checkLoginName.aspx",
			        data:"ZXEM=" + encodeURIComponent($("input[id$='txtFB_EmailAddress']").val()),
			        dataType:"json",
			        "cache":false,
			        error:function(response){$("div[id$='errorMsg']").html(response["msg"]).show();},
			        success: function(response)
			        {
			              if(response["msg"]=="1")
				          {
        				  
						        $("div[id$='divEmailAddress']").removeClass("divEmpty");
						        $("div[id$='divEmailAddress']").removeClass("CheckLoginFailure");
						        $("div[id$='divEmailAddress']").addClass("CheckLoginSuccess");
				          }
				          else if(response["msg"]=="0")
				          {
        				        
						        $("div[id$='divEmailAddress']").removeClass("divEmpty");
						        $("div[id$='divEmailAddress']").removeClass("CheckLoginSuccess");
						        $("div[id$='divEmailAddress']").addClass("CheckLoginFailure");
				          }				
			        }
		        });
	         });
    
       $("#btnFBConnectSubmit").bind("click", function(e){saveFacebookUser()});
       
       if(FB_email != "")
       {
             $("#divFBEmail").hide();
       }
       
       if(FB_gender != "")
       {
             $("#divGender").hide();
       }                       
    }
    
    function dialogClosed()
    {
       if(FB_UserSaveClicked == "0")
       {
            FB.logout(function(response) {
              // user is now logged out 
            });
       }
    }
    
    function checkLoginName(data)
   {
         if(data=="")
         {
            $("div[id$='divNickName']").removeClass("CheckLoginSuccess");
            $("div[id$='divNickName']").removeClass("CheckLoginFailure");
            $("div[id$='divNickName']").addClass("divEmpty");
            return;
         }
     
		 $.ajax({
			type: "POST",
			url: "checkLoginName.aspx",
			data:"ZXNN=" + encodeURIComponent(data),
			dataType:"json",
			"cache":false,
			error:function(response){$("div[id$='errorMsg']").html(response["msg"]).show();},
			success: function(response)
			{
			      if(response["msg"]=="1")
				  {
				  
						$("div[id$='divNickName']").removeClass("divEmpty");
						$("div[id$='divNickName']").removeClass("CheckLoginFailure");
						$("div[id$='divNickName']").addClass("CheckLoginSuccess");
				  }
				  else if(response["msg"]=="0")
				  {
				        
						$("div[id$='divNickName']").removeClass("divEmpty");
						$("div[id$='divNickName']").removeClass("CheckLoginSuccess");
						$("div[id$='divNickName']").addClass("CheckLoginFailure");
				  }				
			}
		});
   }
   

    function saveFacebookUser()
    {
      
//       FB_UserSaveClicked = "1";
        
       FB_nickname = $.trim($("#txtFB_Nickname").val());
        
       if(FB_email == "")
       {
             FB_email = $.trim($("#txtFB_EmailAddress").val());
             FB_verifyemail = "1";
       }
       
       if(FB_gender == "")
       {
          if($('#ddlGender :selected').val() != "-1")
          { 
            FB_gender = $('#ddlGender :selected').text();
          }          
       }
       
       FB_birthday = $.trim($("#txtFB_Birthday").val());      
        
	    $("div[id$='shrSuccessMsg']").empty().hide();
	    $("div[id$='shrErrorMsg']").empty().hide();        
	    if(FB_nickname == "" || FB_email == "" || FB_gender == "" || FB_birthday == "" )
	    {
		    $("div[id$='shrErrorMsg']").html("fields marked with ( * ) are required.").show();
		    if (FB_nickname == ""){$("#txtFB_Nickname").focus();}
		    else if (FB_email == ""){$("#txtFB_EmailAddress").focus();}
		    else if (FB_gender == ""){$("#ddlGender").focus();}
		    else {$("#txtFB_Birthday").focus();}
		    return;
	    }

	    $("#btnFBConnectSubmit").attr("disabled", "disabled");
	    $("#btnFBConnectSubmit").val("processing");

	    $.ajax({
		type: "POST",
		url: "addSocialSiteUser.aspx",
		data: "FBID="+ encodeURIComponent(FB_id)+"&name="+ encodeURIComponent(FB_name) +"&nickname="+ encodeURIComponent(FB_nickname) +"&email=" + encodeURIComponent(FB_email)+"&birthday=" + encodeURIComponent(FB_birthday)+"&gender=" + encodeURIComponent(FB_gender)+"&verifyemail=" + encodeURIComponent(FB_verifyemail)+"&SN_Name=facebook",
		dataType: 'json',
		"cache":false,
		error:function(response){$("div[id$='shrErrorMsg']").html(response["status"]["msg"]).show();$("#btnFBConnectSubmit").removeAttr("disabled");$("#btnFBConnectSubmit").val("save");},
		success: function(response)
		{
		      
		      if(response["status"]["code"]=="1")
		      {
		        FB_UserSaveClicked = "1";
		        if(FB_verifyemail == "1")
		        {
		            window.location="Download.aspx?regSuccess=1";
                    return;
		        }
		        else
		        {
		            $(this).dialog('close');
		            FacebookUserLogin("2");		            
		        }
		      }
		      else if(response["status"]["code"]=="2")
		      {
		        FB_UserSaveClicked = "0";
			    $("div[id$='shrErrorMsg']").html(response["status"]["msg"]).show();
			    $("div[id$='shrSuccessMsg']").empty().hide();
		      }                             
		      $("#btnFBConnectSubmit").removeAttr("disabled");
		      $("#btnFBConnectSubmit").val("save");
		}
	    });
    }

    function FB_Logout()
    {                  
         
         if(FB.getSession() != null)
         {
             FB.logout(function(response) {
              // user is now logged out 
              window.location="logout.aspx";
              return;
            });
        }
        else if(MSID.Container.get() != null)
        {
            MSID.Connect.logout();
            MS_Val = 0;
            window.location="logout.aspx";
            return;
        }
        else
        {        
            window.location="logout.aspx";
            return;
        }
    }  
