1 2( function ( w, $ ) { 3 w.app = w.app || {}; 4 w.app.backend = w.app.backend || {}; 5 6 var UserService = { 7 8 init: function () { 9 this.initResetForm(); 10 this.initForgetPassForm(); 11 this.initActivationForm(); 12 this.initLoginAgreementsForm(); 13 this.initDisableGtmForm(); 14 }, 15 16 initResetForm : function() { 17 var form = document.getElementById("password-reset-form"), 18 moredata = ''; 19 if (form && form.getAttribute('data-token-userid-needed')) { 20 moredata = this.getTokenAndUserId(); 21 } else if (form && form.getAttribute('data-token-needed')) { 22 moredata = this.getToken(); 23 } 24 25 $('#reset-btn').off("click").on("click", function (event) { 26 event.preventDefault(); 27 28 var formId = "#password-reset-form"; 29 30 var jqxhr = $.ajax({ 31 method: "POST", 32 url: $(formId).attr('action'), 33 data: $(formId).serialize() + moredata 34 }) 35 .done(function (data) { 36 $(formId).replaceWith(data); 37 38 app.backend.UserService.initResetForm(); 39 window.app.forms.password_fields(); 40 }) 41 .fail(function () { 42 43 }) 44 .always(function () { 45 46 }); 47 }); 48 }, 49 50 initForgetPassForm: function () { 51 $('#forget-pass-btn').off("click").on("click", function (event) { 52 event.preventDefault(); 53 54 var formId = "#forget-pass-btn"; 55 56 var jqxhr = $.ajax({ 57 method: "POST", 58 url: $(formId).attr('action'), 59 data: $(formId).serialize() 60 }) 61 .done(function (data) { 62 $(formId).replaceWith(data); 63 64 app.backend.UserService.initForgetPassForm(); 65 window.app.forms.password_fields(); 66 }) 67 .fail(function () { 68 69 }) 70 .always(function () { 71 72 }); 73 }); 74 }, 75 76 initDisableGtmForm: function () { 77 $('#form-disablegtm-submit').off("click").on("click", function (event) { 78 event.preventDefault(); 79 80 if (!$("#disablegtm").is(':checked')) { 81 return; 82 } 83 84 var disablegtm = $("#disablegtm").is(':checked'); 85 86 var stateDisabled = (document.cookie.indexOf("disabledGTM=true") != -1) 87 88 if (!stateDisabled) { 89 var d = new Date(); 90 d.setTime(d.getTime() + (10 * 356 * 24 * 60 * 60 * 1000)); 91 var expires = "expires=" + d.toUTCString(); 92 document.cookie = "disabledGTM=true;" + expires + ";path=/"; 93 } 94 else 95 { 96 document.cookie = "disabledGTM=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;"; 97 } 98 99 $('#form-disablegtm').hide(); 100 $('#gtm-info').show(); 101 }); 102 103 if (document.cookie.indexOf("disabledGTM") != -1) { 104 $('#gtm-disable-info').hide(); 105 $('#gtm-enable-info').show(); 106 } 107 else { 108 $('#gtm-disable-info').show(); 109 $('#gtm-enable-info').hide(); 110 } 111 112 $('#disablegtm').on('change', function (event) { 113 if ($("#disablegtm").is(':checked')) { 114 $('#form-disablegtm-submit').prop("disabled", false); 115 } 116 else { 117 $('#form-disablegtm-submit').prop("disabled", true); 118 } 119 }); 120 121 $('#gtm-main-div').show(); 122 123 }, 124 125 initActivationForm: function () {
126 $('#account-activation-btn').off("click").on("click", function (event) { 127 event.preventDefault(); 128 129 app.backend.UserService.processActivationForm("#account-activation-form"); 130 }); 131 }, 132 133 initLoginAgreementsForm: function () { 134 app.backend.UserService.processLoginAgreementsForm("#account-login-agreements-form"); 135 }, 136 137 initRegisterFB: function (handlerSuccess, handlerError) { 138 try { 139 FB.login(function (response) { 140 console.log(response); 141 142 if (response.authResponse) { 143 // user sucessfully logged in 144 var accessToken = response.authResponse.accessToken; 145 146 FB.api('/me?fields=id,email,first_name,last_name,picture.width(100).height(100)', function (response) { 147 handlerSuccess( accessToken, response); 148 }); 149 150 } 151 else { 152 handlerError(window.app.global.labeldata.errorMsg.registrationForm["socialAuthorize" ]); 153 } 154 }, { scope: 'email' }); 155 } 156 catch (ex) { 157 handlerError(window.app.global.labeldata.errorMsg.OnFail); 158 } 159 }, 160 161 initLoginFB: function (url, handlerSuccess, handleError) { 162 try { 163 FB.login(function (response) { 164 165 if (response.authResponse) { 166 // user sucessfully logged in 167 var accessToken = response.authResponse.accessToken; 168 var uid = response.authResponse.userID; 169 170 app.backend.UserService.loginFB(url, uid, accessToken, handlerSuccess, handleError); 171 } 172 }, { scope: 'email' }); 173 } 174 catch (ex) { 175 handleError( ); 176 } 177 }, 178 179 loginFB : function(url, uid, accessToken, handlerSuccess, handleError) { 180 181 var postdata = { 182 token: accessToken, 183 socialid: uid, 184 type: "fb" 185 }; 186 187 var jqxhr = $.ajax({ 188 method: "POST", 189 url: url, 190 data: postdata 191 }) 192 .done(function (data) { 193 194 data.token = postdata.token; 195 data.socialid = postdata.socialid; 196 data.type = postdata.type; 197 198 if (data.error != "0") { 199 FB.api('/me?fields=id,email,first_name,last_name,picture.width(100).height(100)', function (response) { 200 data.user = response; 201 handleError(data); 202 }); 203 } else { 204 handlerSuccess(data); 205 } 206 }) 207 .fail(function () { 208 handleError(); 209 }) 210 }, 211 212 loginGoogle: function (url, googleUser, handlerSuccess, handleError) { 213 var profile = googleUser.getBasicProfile(); 214 215 var postdata = { 216 token : googleUser.getAuthResponse().id_token, 217 socialid : profile.getId(), 218 type : "g", 219 thumbURL: profile.getImageUrl() || "" 220 }; 221 222 var jqxhr = $.ajax({ 223 method: "POST", 224 url: url, 225 data: postdata 226 }) 227 .done(function (data) { 228 229 data.token = postdata.token; 230 data.socialid = postdata.socialid; 231 data.type = postdata.type; 232 233 if (data.error != "0") { 234 if (data.error != 3) { 235 try { 236 var adobeErrorMessage = (data.message) ? data.message : ''; 237 _satellite.track("error", { errormessage: `login google|${data.error}|${adobeErrorMessage}` }); 238 } 239 catch (error) { 240 console.log(error); 241 } 242 } 243 244 handleError(data); 245 } 246 else { 247 try { 248 _satellite.track("login", { logintype: 'g' }); 249 } 250 catch (error) { 251 console.log(error); 252 } 253 254 handlerSuccess(data); 255 } 256 }) 257 .fail(function () { 258 handleError(); 259 }); 260 }, 261 262 processLoginAgreementsForm: function (dataFormId) { 263 264 var formId = dataFormId; 265 266 var formOpt = { 267 268 errorClass: 'form__field--error', 269 errorPlacement: function errorPlacement(error, element) { 270 271 }, 272 highlight: function highlight(element, errorClass, validClass) { 273 $(element).closest('.form__field').addClass(errorClass); 274 }, 275 unhighlight: function unhighlight(element, errorClass, validClass) { 276 $(element).closest('.form__field').removeClass(errorClass).parent().find('.field--error').removeClass('field--error'); 277 }, 278 submitHandler: function submitHandler(form) { 279 280 window.app.loader.start(); 281 282 var formData = { 283 __RequestVerificationToken: $(formId).find("input[name='__RequestVerificationToken']").val(), 284 Token: $(formId).find("input[name='Token']").val(), 285 AgreementMarketing: $(formId).find("input[name='marketing']").is(':checked') ? "on" : "", 286 AgreementPartners: $(formId).find("input[name='partners']").is(':checked') ? "on" : "", 287 AgreementProfiling: $(formId).find("input[name='profiling']").is(':checked') ? "on" : "", 288 }; 289 290 var jqxhr = $.ajax({
291 method: "POST", 292 url: $(formId).attr('action'), 293 data: formData 294 }) 295 .done(function (data) { 296 if (data.status) { 297 window.location.replace(data.message); 298 } 299 else { 300 $(formId).parent().find(".msg-form-error").show(); 301 $(formId).hide(); 302 } 303 }) 304 .fail(function () { 305 $(formId).find(".msg-error").show(); 306 $(formId).hide(); 307 }) 308 .always(function () { 309 window.app.loader.stop(); 310 }); 311 } 312 }; 313 314 $(formId).validate(formOpt); 315 316 317 }, 318 319 processActivationForm: function(dataFormId) { 320 321 var formId = dataFormId; 322 323 var formData = { 324 __RequestVerificationToken: $(formId).find("input[name='__RequestVerificationToken']").val(), 325 Token: $(formId).find("input[name='Token']").val(), 326 AgreementMarketing: $(formId).find("input[name='AgreementMarketing']").is(':checked') ? "1" : "", 327 AgreementPartners: $(formId).find("input[name='AgreementPartners']").is(':checked') ? "1" : "", 328 AgreementGeolocation: $(formId).find("input[name='AgreementGeolocation']").is(':checked') ? "1" : "", 329 AgreementProfiling: $(formId).find("input[name='AgreementProfiling']").is(':checked') ? "1" : "", 330 }; 331 332 var jqxhr = $.ajax({ 333 method: "POST", 334 url: $(formId).attr('action'), 335 data: formData 336 }) 337 .done(function (data) { 338 if (data.status) { 339 $(formId).parent().find(".msg-form-success").show(); 340 $(formId).hide(); 341 } 342 else { 343 $(formId).parent().find(".msg-form-error").show(); 344 $(formId).hide(); 345 } 346 }) 347 .fail(function () { 348 $(formId).find(".msg-error").show(); 349 $(formId).hide(); 350 }) 351 .always(function () { 352 353 }); 354 }, 355 356 registerWantSeeISender: function ( email ) { 357 var filmId = $(document.body).data('selected-filmid'); 358 var cinemaId = $(document.body).data('selected-locationid'); 359 var k = ""; 360 var d = ""; 361 362 if ( ( typeof email === 'undefined' ) || email === "" || ( typeof filmId === undefined ) || filmId === "") { 363 return false; 364 } 365 366 var a = "//em.isender.pl/am/Id5KJWMs_see.php?e=" + encodeURIComponent(email) + "&fid=" + encodeURIComponent(filmId) + "&cid=" + encodeURIComponent(cinemaId) + "&cat=" + encodeURIComponent(k) + "&info=" + encodeURIComponent(d); 367 $.ajax({
368 url: a, 369 jsonp: "callback", 370 dataType: "jsonp" 371 }); 372 return true 373 }, 374 375 /** Parse url and takes last two parts into form as a token and userId: (...)/{auth_user_id}/{auth_opt_key} 376 * 377 * @returns {String} - serialized string with values: &token={auth_opt_key}&userId={auth_user_id} 378 */ 379 getTokenAndUserId: function() { 380 var url = window.location.pathname, 381 valArr = url.split('/'), 382 userId = '', 383 token = '', 384 serializedString = '' 385 ; 386 if( valArr.length > 1 ){ 387 for( var i = valArr.length - 1; i >= 0; i--){ 388 if( valArr[i].length ){ 389 if( token === '' ){ 390 token = valArr[i]; 391 serializedString = "&token="+ token; 392 } 393 else if( userId === '' ){ 394 userId = valArr[i]; 395 serializedString += "&userId="+ userId; 396 break; 397 } 398 } 399 } 400 } 401 402 return serializedString; 403 }, 404 405 getToken: function () { 406 var url = window.location.pathname, 407 valArr = url.split('/'), 408 token = '', 409 serializedString = '' 410 ; 411 if (valArr.length > 0) { 412 token = valArr[valArr.length - 1]; 413 serializedString = "&token=" + token; 414 } 415 416 return serializedString; 417 } 418 }; 419 420 var AnalyticsService = { 421 baseUrl : "/analytics", 422 423 init: function () { 424 425 }, 426 427 registerGoal: function ( goal, desc ) { 428 var data = { 429 EventName: goal, 430 EventText: desc 431 }; 432 433 var jqxhr = $.ajax({ 434 method: "POST", 435 url: baseUrl + "/RegisterGoal", 436 data: data 437 }) 438 .done(function (data) { }) 439 }, 440 441 registerVirtualPageView: function ( page ) { 442 var data = { 443 PageUrl: page 444 }; 445 446 var jqxhr = $.ajax({ 447 method: "POST", 448 url: baseUrl + "/RegisterPageView", 449 data: data 450 }) 451 .done(function (data) { }) 452 } 453 }; 454 455 w.app.backend.UserService = UserService; 456 457 w.app.backend.AnalyticsService = AnalyticsService; 458 459 $(function () { 460 app.backend.UserService.init(); 461 app.backend.AnalyticsService.init(); 462 }); 463 464})(this, jQuery);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.