Subversion Repositories SmartDukaan

Rev

Rev 20202 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
20180 aman.kumar 1
var LoginNamespace={};
2
var authDetails=null;
3
var userDetails=null;
20202 aman.kumar 4
 
20180 aman.kumar 5
$(document).ready(function() {
6
	  $.ajaxSetup({ cache: true });
7
	  $.getScript('//connect.facebook.net/en_US/sdk.js', function(){
8
	    FB.init({
9
	      appId: '{716370691734306}',
10
	      version: 'v2.7' // or v2.0, v2.1, v2.2, v2.3
11
	    });     
12
	    $('#loginbutton,#feedbutton').removeAttr('disabled');
7007 amar.kumar 13
 
20180 aman.kumar 14
	  });
15
 
16
	(function(d, s, id) {
17
	  var js, fjs = d.getElementsByTagName(s)[0];
18
	  if (d.getElementById(id)) return;
19
	  js = d.createElement(s); js.id = id;
20
	  js.src = "//connect.facebook.net/en_US/sdk.js#xfbml=1&version=v2.7&appId=716370691734306";
21
	  fjs.parentNode.insertBefore(js, fjs);
22
	}(document, 'script', 'facebook-jssdk'));
23
	});
24
 
20202 aman.kumar 25
var mode = '';
7007 amar.kumar 26
  function checkAndCallFacebookLogin() {
20202 aman.kumar 27
	  mode = $('#loginText').html();
28
	  $('#errormessage').hide();
29
	  $('#errormessage').html('');
7020 amar.kumar 30
	  	//window.fbAsyncInit();
7007 amar.kumar 31
	    FB.getLoginStatus(function(response) {
20180 aman.kumar 32
	  	  // Check login status on load, and if the user is
33
	  	  // already logged in, go directly to the welcome message.
34
	    	authDetails = response;
35
	  	  if (authDetails.status == 'connected') {
36
 
20183 aman.kumar 37
	  		getCurrentUserInfo();
20180 aman.kumar 38
	  	  } else {
39
	  	    // Otherwise, show Login dialog first.
40
	  	    FB.login(function(response) {
41
	  	    	authDetails=response;
20183 aman.kumar 42
	  	    	getCurrentUserInfo();
20180 aman.kumar 43
	  	    }, {scope: 'user_friends, email'});
44
	  	  }
45
	  	});
46
  }
47
 
20202 aman.kumar 48
  function loginregister(){
49
	  mode = $('#loginText').html();
50
	  $('#errormessage').hide();
51
	  $('#errormessage').html('');
52
	  if(mode =='Login'){
53
		  $.ajax({
54
				type : "POST",
55
				url : "/login?email="+$('#email').val()+"&password="+$('#password').val(),
56
				success : function(response) {
57
					response = JSON.parse(response);
58
					if(response.status=='success'){
59
						window.location.reload();
60
					}else{
61
						$('#errormessage').html(response.message);
62
					$('#errormessage').show();
63
					}
64
 
65
				}
66
			});
67
	  }else{
68
		  $.ajax({
69
				type : "POST",
70
				url : "/register?redirectUrl=/&email="+$('#email').val()+"&password="+$('#password').val(),
71
				success : function(response) {
72
					response = JSON.parse(response);
73
					if(response.status=='success'){
74
						window.location.reload();
75
					}else{
76
						$('#errormessage').html(response.message);
77
					$('#errormessage').show();
78
					}
79
				}
80
			});
81
	  }
82
  }
83
 
20183 aman.kumar 84
 
20180 aman.kumar 85
	function getCurrentUserInfo() {
86
	      FB.api('/me?fields=id,name,email,permissions', function(userInfo) {
87
	    	  userDetails = userInfo;
20183 aman.kumar 88
	    	  if(authDetails && authDetails.status=='connected' && userDetails && userDetails.email){
20202 aman.kumar 89
	  			if(mode=='Login'){
90
	    		  $.ajax({
20183 aman.kumar 91
	  				type : "POST",
92
	  				url : "/login!verifyFbUser?accessToken="+authDetails.authResponse.accessToken+"&email="+userDetails.email,
93
	  				success : function(response) {
94
	  					response = JSON.parse(response);
20202 aman.kumar 95
	  					if(response.status=='success'){
96
	  						window.location.reload();
97
	  					}else{
98
	  						$('#errormessage').html(response.message);
99
	  						$('#errormessage').show();
100
	  					}
20183 aman.kumar 101
	  				}
102
	  			});
20202 aman.kumar 103
	  			}else{
104
	  				$.ajax({
105
		  				type : "POST",
106
		  				url : "/login!signupFacebookUser?accessToken="+authDetails.authResponse.accessToken+"&email="+userDetails.email,
107
		  				success : function(response) {
108
		  					response = JSON.parse(response);
109
		  					if(response.status=='success'){
110
		  						window.location.reload();
111
		  					}else{
112
		  						$('#errormessage').html(response.message);
113
		  						$('#errormessage').show();
114
		  					}
115
		  				}
116
 
117
		  			});
118
	  			}
119
 
120
 
20183 aman.kumar 121
	  	  }else{
122
	  		  //retry
123
	  		  //login unsuccessful
124
	  	  }
20180 aman.kumar 125
	      });
126
	    }
127
 
128
 
20202 aman.kumar 129
 
130
		function openpopup(){
131
			$('#register-login-popup').show();
132
			toggleLoginRegisterView('login');
133
		}
20180 aman.kumar 134
 
20202 aman.kumar 135
		function closepopup(){
136
		$('#register-login-popup').hide();
137
		toggleLoginRegisterView('login');
138
		}
139
 
140
		function toggleLoginRegisterView(view){
141
			$('#errormessage').hide();
142
			$('#email').html('');
143
			$('#password').html('');
144
			$('#errormessage').html('');
145
 
146
		if(view=='register'){
147
		$('#registerlogin').html('REGISTER');
148
		$('#loginText').html('Register');
149
		$('#loginregistertext').html('Already a member? <a href="javascript: void(0);" style="color:#069" onclick="toggleLoginRegisterView(\'login\')">Login</a></div>');
150
		$('#forgotPassword').hide();
151
		}else{
152
		$('#registerlogin').html('LOGIN');
153
		$('#loginText').html('Login');
154
		$('#loginregistertext').html('Do not have an account?<a href="javascript: void(0);" style="color:#069" onclick="toggleLoginRegisterView(\'register\')">Register</a></div>');
155
		$('#forgotPassword').show();
156
		}
157
		}
158
 
159
	function loginsignup(){
160
		if($('#register-login-popup').length==0){
161
			$('<html><style>#register-login-popup{width:100%;height:100%;position:fixed;top:0;left:0;background:rgba(102,102,102,.55)}.login-container{margin:0 auto;width:740px;z-index:10;height:auto;top:40px;position:relative;background:0 0}.login-inner-container{z-index:95;width:660px;min-height:400px;left:0;right:0;top:0;margin:auto;height:auto;background:#fff;position:relative}div.wrap{width:250px;margin-left:45px}div.wrap div{position:relative;margin:20px 0}.label{position:absolute;top:0;font-size:16px;margin:25px 25px 25px -5px;color:grey;padding:0 10px;background-color:#fff;-webkit-transition:top .2s ease-in-out,font-size .2s ease-in-out;transition:top .2s ease-in-out,font-size .2s ease-in-out}.active{top:-30px;font-size:20px;color:#069}div.wrap input{width:100%;padding:20px 20px 5px 5px;border:none;border-bottom:1px solid grey;font-size:20px;background-color:transparent;color:grey;position:relative;outline:0}div.wrap input:focus{border-color:#069;font-size:16px;-webkit-transition:border-color .15s ease-in-out 0s,box-shadow .15s ease-in-out 0s;transition:border-color .15s ease-in-out 0s,box-shadow .15s ease-in-out 0s}#loginBtn{cursor:pointer;border-radius:5px;width:250px;background-color:#069;padding:5 0;border:2px solid #069;text-align:center;margin-top:40px}#loginBtn:hover{border-color:grey;-webkit-transition:border-color .15s ease-in-out 0s,box-shadow .15s ease-in-out 0s;transition:border-color .15s ease-in-out 0s,box-shadow .15s ease-in-out 0s}#loginText{font-size:24px;color:#fff;margin:10px 0}</style><script src="http://code.jquery.com/jquery-2.1.1.min.js" ></script><div id="register-login-popup" style="display:none"> <div id="iframeContainer" class="login-container"> <div class="login-inner-container"> <div onclick="closepopup()" id="closepopup" style="background-color: #333232;color: #fff;font-size: 24px;padding: 8px;position: absolute;right: -33px;cursor: pointer;">X</div><div style="height:10px;width:100%;margin:0 auto;padding:5px"></div><div id="registerlogin" style="width:100%;margin:0 auto;text-align: center;color:#069;float:left;padding-bottom:5px;font-size:26px;"> LOGIN </div><div style="width:100%;margin:0 auto;text-align: center;float: left;margin-top: 2px;"> <div style="width: 50%;height:auto;background-color: white;float:left;"> <div id="loginCreate" class="register-login" > <div id="errormessage" style="width:100%;text-align:center;font-size:12px;color:red;display:none"> email/password is wrong</div><div class="wrap"> <div> <label class="label" >Email</label> <input id="email" name="email" type="text" autocomplete = "off" class="cool"/> </div><div> <label class="label" >Password</label> <input id="password" name="password" autocomplete="off" type="password" class="cool"/> </div><div id="forgotPassword" style="margin: 0px;margin-top: -19px;margin-right: -162px;font-size: 12px;font-style: italic;"> <a href="/forgot-password" style="color:#069">forgot password?</a></div><div class="loginBtn" id="loginBtn" onclick="loginregister()"> <div id="loginText" > Login </div></div><div id="loginregistertext" style="width:100%;text-align:center;font-size:14px;font-weight:bold;"> Do not have an account? <a href="javascript: void(0);" style="color:#069" onclick="toggleLoginRegisterView(\'register\')">Register</a></div></div></div></div><div style="width:1px;height:300px;background-color: white;float: left;border-left: 1px solid grey;margin-top: 7px;margin-left: 3px;"></div><div style="width: 48%;height:300px;background-color: white;float:right;text-align:center;"><div style="width: 100%;font-size: 23px;color: #069;margin-top: 17px;"> Or Try </div><div onclick="checkAndCallFacebookLogin()" style="text-align:right;background: url(\'images/facebookconnect.png\');background-repeat: no-repeat;height: 42px;background-size: 250px 43px;margin-top: 162px;border-radius: 5px;width: 250px;margin-left: 29px;"><div id="fbloginbtn" style="color:white;font-weight:bold;font-size: 16px;padding: 8px;padding-top: 12px;">Connect with Facebook</div></div></div></div></div></div></div></div></html>').insertAfter('#footer');
162
			$(document).ready(function(){
163
				$('input').focusin( function() {
164
				  $(this).parent().find('label').addClass('active');
165
 
166
				});
167
 
168
				$('input').focusout( function() {
169
				  if (!this.value) {
170
				    $(this).parent().find('label').removeClass('active');
171
 
172
				  }
173
				});
174
 
175
				});
176
 
177
 
20206 aman.kumar 178
 
20202 aman.kumar 179
		}
20206 aman.kumar 180
		openpopup();
20180 aman.kumar 181
	}
182