From ab65afd090c557ce0292f96abb3ae8bc58ec320b Mon Sep 17 00:00:00 2001 From: sachinganesh Date: Thu, 25 May 2023 12:34:50 +0530 Subject: [PATCH] removed old files --- dist/Js/allInOne.js | 96 - dist/Js/auth/apiservice.js | 353 ---- dist/Js/auth/login.js | 720 ------- dist/Js/auth/login_11.js | 383 ---- dist/Js/auth/login_ing.js | 780 -------- dist/Js/components/accordion/accordion.js | 110 -- dist/Js/components/authloader/authloader.js | 162 -- .../Js/components/authloader/passwordinput.js | 0 dist/Js/components/select/selectcomponent.js | 256 --- dist/Js/fontawesome.all.js | 6 - dist/Js/fontawesome.min.js | 6 - dist/Js/footer.js | 446 ----- dist/Js/form.js | 73 - dist/Js/index/index.js | 178 -- dist/Js/jquery.min.js | 2 - dist/Js/json.js | 23 - dist/Js/laptopmuti.js | 14 - dist/Js/localstorage/checkout.js | 18 - dist/Js/localstorage/loginauthlocal.js | 14 - dist/Js/main.js | 1658 ----------------- dist/Js/myaccount/Address.js | 377 ---- dist/Js/myaccount/Myaccount.js | 10 - dist/Js/myaccount/Profile.js | 158 -- dist/Js/myaccount/myaccount_warrenty.js | 158 -- dist/Js/myaccount/orderdetails.js | 171 -- dist/Js/myaccount/support_tickets.js | 79 - dist/Js/navbar.js | 644 ------- dist/Js/navbar1.js | 238 --- dist/Js/navbar2.js | 487 ----- dist/Js/navbar_okay.js | 453 ----- dist/Js/orderDetails/order_summary.js | 271 --- dist/Js/orderconfirmation.js | 160 -- dist/Js/plugins/ajax-mail.js | 48 - dist/Js/plugins/countdown.js | 22 - dist/Js/plugins/easyzoom.js | 7 - dist/Js/plugins/images-loaded.js | 7 - dist/Js/plugins/instafeed.js | 5 - dist/Js/plugins/isotope.js | 12 - dist/Js/plugins/jquery-ui-touch-punch.js | 11 - dist/Js/plugins/jquery-ui.js | 6 - dist/Js/plugins/jquery.nice-select.min.js | 4 - dist/Js/plugins/magnific-popup.js | 6 - dist/Js/plugins/mouse-parallax.js | 2 - dist/Js/plugins/plugins.js | 215 --- dist/Js/plugins/plugins.min.js | 1 - dist/Js/plugins/scrollup.js | 11 - dist/Js/plugins/slick.js | 13 - dist/Js/plugins/svg-injector.min.js | 8 - dist/Js/plugins/wow.js | 3 - dist/Js/product.js | 67 - dist/Js/productdetails/laptopd.js | 943 ---------- dist/Js/productdetails/laptopdetails.js | 606 ------ dist/Js/productdetails/laptopdetails.js-old | 650 ------- dist/Js/productdetails/productdetails.js | 589 ------ dist/Js/productdetails_old.js | 243 --- dist/Js/products/accessories.js | 188 -- dist/Js/products/allinoneproduct.js | 316 ---- dist/Js/products/laptopproduct.js | 419 ----- dist/Js/products/products.js | 302 --- dist/Js/ramproducts/ramproducts.js | 81 - dist/Js/shoppingcart/addtocart.js | 248 --- dist/Js/shoppingcart/select_delivery.js | 825 -------- dist/Js/shoppingcart/shoppingcart.js | 287 --- dist/Js/support/supportticket.js | 29 - dist/Js/utils/cookiehelper.js | 0 dist/Js/utils/helpers.js | 150 -- dist/Js/validate.min.js | 4 - dist/Js/vendor/bootstrap.bundle.min.js | 6 - dist/Js/vendor/bootstrap.min.js | 6 - dist/Js/vendor/jquery-migrate-v3.3.2.min.js | 2 - dist/Js/vendor/jquery-v3.6.0.min.js | 2 - dist/Js/vendor/modernizr-3.11.7.min.js | 3 - dist/Js/vendor/popper.js | 6 - dist/Js/vendor/vendor.js | 34 - dist/Js/vendor/vendor.min.js | 1 - dist/Js/warranty.js | 187 -- 76 files changed, 15079 deletions(-) delete mode 100644 dist/Js/allInOne.js delete mode 100644 dist/Js/auth/apiservice.js delete mode 100644 dist/Js/auth/login.js delete mode 100644 dist/Js/auth/login_11.js delete mode 100644 dist/Js/auth/login_ing.js delete mode 100644 dist/Js/components/accordion/accordion.js delete mode 100644 dist/Js/components/authloader/authloader.js delete mode 100644 dist/Js/components/authloader/passwordinput.js delete mode 100644 dist/Js/components/select/selectcomponent.js delete mode 100644 dist/Js/fontawesome.all.js delete mode 100644 dist/Js/fontawesome.min.js delete mode 100644 dist/Js/footer.js delete mode 100644 dist/Js/form.js delete mode 100644 dist/Js/index/index.js delete mode 100644 dist/Js/jquery.min.js delete mode 100644 dist/Js/json.js delete mode 100644 dist/Js/laptopmuti.js delete mode 100644 dist/Js/localstorage/checkout.js delete mode 100644 dist/Js/localstorage/loginauthlocal.js delete mode 100644 dist/Js/main.js delete mode 100644 dist/Js/myaccount/Address.js delete mode 100644 dist/Js/myaccount/Myaccount.js delete mode 100644 dist/Js/myaccount/Profile.js delete mode 100644 dist/Js/myaccount/myaccount_warrenty.js delete mode 100644 dist/Js/myaccount/orderdetails.js delete mode 100644 dist/Js/myaccount/support_tickets.js delete mode 100644 dist/Js/navbar.js delete mode 100644 dist/Js/navbar1.js delete mode 100644 dist/Js/navbar2.js delete mode 100644 dist/Js/navbar_okay.js delete mode 100644 dist/Js/orderDetails/order_summary.js delete mode 100644 dist/Js/orderconfirmation.js delete mode 100644 dist/Js/plugins/ajax-mail.js delete mode 100644 dist/Js/plugins/countdown.js delete mode 100644 dist/Js/plugins/easyzoom.js delete mode 100644 dist/Js/plugins/images-loaded.js delete mode 100644 dist/Js/plugins/instafeed.js delete mode 100644 dist/Js/plugins/isotope.js delete mode 100644 dist/Js/plugins/jquery-ui-touch-punch.js delete mode 100644 dist/Js/plugins/jquery-ui.js delete mode 100644 dist/Js/plugins/jquery.nice-select.min.js delete mode 100644 dist/Js/plugins/magnific-popup.js delete mode 100644 dist/Js/plugins/mouse-parallax.js delete mode 100644 dist/Js/plugins/plugins.js delete mode 100644 dist/Js/plugins/plugins.min.js delete mode 100644 dist/Js/plugins/scrollup.js delete mode 100644 dist/Js/plugins/slick.js delete mode 100644 dist/Js/plugins/svg-injector.min.js delete mode 100644 dist/Js/plugins/wow.js delete mode 100644 dist/Js/product.js delete mode 100644 dist/Js/productdetails/laptopd.js delete mode 100644 dist/Js/productdetails/laptopdetails.js delete mode 100644 dist/Js/productdetails/laptopdetails.js-old delete mode 100644 dist/Js/productdetails/productdetails.js delete mode 100644 dist/Js/productdetails_old.js delete mode 100644 dist/Js/products/accessories.js delete mode 100644 dist/Js/products/allinoneproduct.js delete mode 100644 dist/Js/products/laptopproduct.js delete mode 100644 dist/Js/products/products.js delete mode 100644 dist/Js/ramproducts/ramproducts.js delete mode 100644 dist/Js/shoppingcart/addtocart.js delete mode 100644 dist/Js/shoppingcart/select_delivery.js delete mode 100644 dist/Js/shoppingcart/shoppingcart.js delete mode 100644 dist/Js/support/supportticket.js delete mode 100644 dist/Js/utils/cookiehelper.js delete mode 100644 dist/Js/utils/helpers.js delete mode 100644 dist/Js/validate.min.js delete mode 100644 dist/Js/vendor/bootstrap.bundle.min.js delete mode 100644 dist/Js/vendor/bootstrap.min.js delete mode 100644 dist/Js/vendor/jquery-migrate-v3.3.2.min.js delete mode 100644 dist/Js/vendor/jquery-v3.6.0.min.js delete mode 100644 dist/Js/vendor/modernizr-3.11.7.min.js delete mode 100644 dist/Js/vendor/popper.js delete mode 100644 dist/Js/vendor/vendor.js delete mode 100644 dist/Js/vendor/vendor.min.js delete mode 100644 dist/Js/warranty.js diff --git a/dist/Js/allInOne.js b/dist/Js/allInOne.js deleted file mode 100644 index 7eef198..0000000 --- a/dist/Js/allInOne.js +++ /dev/null @@ -1,96 +0,0 @@ -$('.owl-carousel').owlCarousel({ - // rtl:true, - // loop:true, - margin:200, - - nav:true, - URLhashListener:true, - autoplayHoverPause:true, - responsiveClass:true, - responsive:{ - 0:{ - items:1, - nav:true, - margin:10 - }, - - 600:{ - items:2, - nav:false, - margin:200 - }, - - 1000:{ - items:3, - nav:true, - loop:false, - margin:10 - }, - 1400:{ - items:5, - nav:true, - loop:false, - margin:200 - } - } -}) - -const controller = new ScrollMagic.Controller(); -const exploreSence = new ScrollMagic.Scene({ - triggerElement:".animateHeadingLeft", - triggerHook:0.5, - reverse:false -}).setClassToggle('.animateHeadingLeft','addTextanimationLeft').addTo(controller) -const controllerNew = new ScrollMagic.Controller(); -new ScrollMagic.Scene({ - triggerElement:".animateHeadingRight", - triggerHook:0.9, - reverse:false -}).setClassToggle('.animateHeadingRight','addTextanimationRight').addTo(controllerNew) - -const controllerThree = new ScrollMagic.Controller(); -new ScrollMagic.Scene({ - triggerElement:".laptoponanimation", - triggerHook:0.9, - reverse:false -}).setClassToggle('.laptoponanimation','addOpacity').addTo(controllerThree) - -const controllerFour = new ScrollMagic.Controller(); -new ScrollMagic.Scene({ - triggerElement:".allinOnepc", - triggerHook:0.9, - reverse:false -}).setClassToggle('.allinOnepc','addOpacity').addTo(controllerFour) - - -const controllerFive = new ScrollMagic.Controller(); -new ScrollMagic.Scene({ - triggerElement:".dualLaptopSlideone", - triggerHook:0.9, - reverse:false -}).setClassToggle('.dualLaptopSlideone','addTextanimationRight').addTo(controllerFive) - -const controllerSix = new ScrollMagic.Controller(); -new ScrollMagic.Scene({ - triggerElement:".dualLaptopSlideLeftone", - triggerHook:0.9, - reverse:false -}).setClassToggle('.dualLaptopSlideLeftone','dualLaptopSlideLeftoneLeft').addTo(controllerSix) - -const controllerSeven = new ScrollMagic.Controller(); -new ScrollMagic.Scene({ - triggerElement:".cpuSlideLeftone", - triggerHook:0.9, - reverse:false -}).setClassToggle('.cpuSlideLeftone','traslateZero').addTo(controllerSeven) - -const controllerEight = new ScrollMagic.Controller(); -new ScrollMagic.Scene({ - triggerElement:".controllerEight", - triggerHook:0.9, - reverse:false -}).setClassToggle('.controllerEight','traslateZero').addTo(controllerSeven) - - - - diff --git a/dist/Js/auth/apiservice.js b/dist/Js/auth/apiservice.js deleted file mode 100644 index 415a8bb..0000000 --- a/dist/Js/auth/apiservice.js +++ /dev/null @@ -1,353 +0,0 @@ -//let SERVERNAME = 'https://anwi.bizgaze.app'; -//let SERVERNAME = 'http://beta.bizgaze.com'; -let SERVERNAME = 'https://qa.anwisystems.com'; - //let SERVERNAME = 'http://localhost:3088'; - -//template -const STAT = 'd8c3dc7ce4d2404484004c02d1d3145f'; - -//live -//const STAT = '23bdb3c6d08d492c939a53daec34e89a'; - -const USER_AUTH_OKAY = 'USER_AUTH_OKAY'; - - -function imgServerNameBuild(path){ - - return `https://appassets.bizgaze.app/${path}`; -} - - -function buildLinkWithServerName(link){ - return `${SERVERNAME}/${link}` -} - - -async function getStatAPIService(url,data={}){ - let config = { - url, - method:'get', - data:data, - headers: { - 'Authorization': `stat ${STAT}`, - 'Content-Type': 'application/json' - }, - } - let response = await axios(config); - - return response; -} - -async function getAPIService(url,data={}){ - - const config = { - url:`${SERVERNAME}/${url}`, - method: "get", - }; - let response = await axios(config); - - return response; -} - -async function postAPIService(url,data={}){ - let config = { - url:`${SERVERNAME}/${url}`, - method:'post', - data:data, - } - let response = await axios(config); - - return response; -} - - -async function postStatAPIService(url,data={}){ - let config = { - url, - method:'post', - data:data, - headers: { - 'Authorization': `stat ${STAT}`, - 'Content-Type': 'application/json' - }, - } - let response = await axios(config); - - return response; -} - - - - - -async function postAPIServiceLocal(url,data={}){ - let config = { - url:`${SERVERNAME}/${url}`, - method:'post', - data:JSON.stringify(data ), - headers: { - 'Authorization': `Basic b67607dd-283e-478e-b2cf-35736e8bad69`, - 'Content-Type': 'application/json' - }, - } - let response = await axios(config); - - return response; -} -async function getAPIServiceLocal(url){ - let config = { - url:`${SERVERNAME}/${url}`, - method:'get', - - headers: { - 'Authorization': `Basic b67607dd-283e-478e-b2cf-35736e8bad69`, - 'Content-Type': 'application/json' - }, - } - let response = await axios(config); - - return response; -} - - -class API_SERVICE_CLASS{ - baseURL = ''; - token=''; - statToken=STAT; - Instance = null; - - constructor(baseurl){ - this.Instance = this; - this.baseURL = baseurl; - - this.getService = this.getService.bind(this); - this.postService = this.postService.bind(this); - this.justGetAPIService =this.justGetAPIService.bind(this); - this.justPostAPIService = this.justPostAPIService.bind(this); - - } - - getService(url,isStat = false){ - return this.baseService(this.buildURL(url),'get',isStat); - } - - postService(url,data,isStat = false){ - return this.baseService(this.buildURL(url),'post',isStat,data); - } - - - - async baseService(url,method,isStat,data){ - let isPost = method == 'get' ? false : true; - const cookieData = COOKIE_HELPER_ACTIONS.getCookie(); - if(!isStat){ - if(!cookieData) return window.location.href = "login.html" - } - let token = isStat ?`stat ${this.statToken}` : `Basic ${cookieData.token}`; - this.token = token; - let successResFun = this.buildSuccessResponse; - let failureResFun = this.buildFailureResponse; - let config = { - url, - method, - headers:{ - 'Authorization': token, - 'Content-Type': 'application/json' - } - } - - if(isPost){ - config['data'] = data; - } - - try { - let response - try { - response = await axios(config); - if(response.data === true || response.data === false){ - return successResFun(response.data) - } - if(response.data.code == '417'){ - // window.location.href = '/index.html' - return failureResFun(response.data) - } - if(response.data.code != '0'){ - return failureResFun(response.data) - } - - if(response.data.errors?.length){ - return failureResFun(response.data) - } - return successResFun(response.data) - - } catch (error) { - return failureResFun(error) - } - - } catch (error) { - return failureResFun(error) - } - - } - - buildURL(url){ - return `${this.baseURL}/${url}`; - } - - buildSuccessResponse(response){ - return { - isError : false, - errorMsg : null, - response:response, - } - } - - buildFailureResponse(error){ - return { - isError : true, - errorMsg : error, - response:null, - } - } - - async justAPI_BaseService(){ - let isPost = method == 'get' ? false : true; - - - let successResFun = this.buildSuccessResponse; - let failureResFun = this.buildFailureResponse; - let config = { - url, - method, - headers:{ - - 'Content-Type': 'application/json' - } - } - - if(isPost){ - config['data'] = data; - } - - try { - let response - try { - response = await axios(config); - if(response.data.code == '417'){ - // window.location.href = '/index.html' - return failureResFun(response.data) - } - if(response.data.code != '0'){ - return failureResFun(response.data) - } - return successResFun(response.data) - - } catch (error) { - return failureResFun(error) - } - - } catch (error) { - return failureResFun(error) - } - } - - justGetAPIService(url){ - return this.justAPI_BaseService('get',url) - } - justPostAPIService(url){ - return this.justAPI_BaseService('post',url) - } - - - isValid(){ - const cookieData = COOKIE_HELPER_ACTIONS.getCookie(); - if(!cookieData){ - return justGetAPIService('/Account/Session/Validate') - } - - - - - } - - -} - -const API_SERVICES = new API_SERVICE_CLASS(SERVERNAME); - -const API_SERVICES_ACTIONS = { - postAPIService:API_SERVICES.postService, - getAPIService:API_SERVICES.getService -} - - -// cookie helper -const AUTH = 'AUTH' - -class COOKIE_HELPER_CLASS{ - constructor(){ - this.getCookie = this.getCookie.bind(this); - } - getCookie(){ - let cookieVal = Cookies.get(AUTH); - if(!cookieVal){ - return null; - } - return JSON.parse(cookieVal) - }; - setCookie(value){ - debugger; - return Cookies.set(AUTH,value) - }; - - removeCookie(token){ - debugger; - Cookies.remove(token) - } - - - async validateToken(){ - return await API_SERVICES_ACTIONS.getAPIService(`Account/Session/Validate`) - } -} - - -const COOKIE_HELPER = new COOKIE_HELPER_CLASS(); -const COOKIE_HELPER_ACTIONS ={ - getCookie : COOKIE_HELPER.getCookie, - setCookie :COOKIE_HELPER.setCookie, - removeAuthCookie:COOKIE_HELPER.removeCookie.bind(null,AUTH) -} - - -function setCookieManual(token){ - Cookies.set(AUTH,{ - token, - userId:null - }) -} - -async function checkValidAuth(cb,redirect=undefined){ - - - document.querySelector('auth-loader').show(); - const res = await COOKIE_HELPER.validateToken(); - if(!res.response){ - if(redirect){ - window.location.href =redirect; - document.querySelector('auth-loader').hide(); - return; - } - window.location.href = '/'; - document.querySelector('auth-loader').hide(); - return; - } - - setTimeout(()=>{ - document.querySelector('auth-loader').hide(); - cb(); - },300); -} - - -// setCookieManual('6eb70fee-35ef-4ca2-95cd-01ebdd616eb1'); \ No newline at end of file diff --git a/dist/Js/auth/login.js b/dist/Js/auth/login.js deleted file mode 100644 index f63874a..0000000 --- a/dist/Js/auth/login.js +++ /dev/null @@ -1,720 +0,0 @@ - - -let AUTH_LOGIN_APIS_URL = { - isUser(user) { - return `account/getuserbyphoneormail/${user}/${user}`; - }, - login() { - return `bizgaze/crm/webapi/crmuserlogin` - }, - signUp() { - return `bizgaze/crm/webapi/registercrmuser`; - }, - resendOTP() { - return `bizgaze/crm/webapi/ReSendOtp`; - }, - sendOTP() { - return `account/sendotp`; - }, - updatePassword() { - return `account/UpdatePassword`; - } -} - -initLogin(); - - - - - -function initLogin() { - - let userDetails = { - otpid: null, - email: null, - password: null, - unibaseid: null - } - let backotp = null; - let backOptions = { - forgotPassword:'forgotPassword', - EmailnotV:'EmailnotV', - signUp:'signUp' - } - let authloginLoadingBtnAction = { - addLoading() { - $('.authloginLoading').addClass('d-none'); - $('.authloginLoadingBtn').removeClass('d-none'); - }, - removeLoading() { - $('.authloginLoading').removeClass('d-none'); - $('.authloginLoadingBtn').addClass('d-none'); - } - } - - let otpLoadingAction = { - addLoadingOTP() { - $('.otploading').removeClass('d-none'); - $('.otploadingtext').addClass('d-none'); - }, - removeLoadingOTP() { - $('.otploading').addClass('d-none'); - $('.otploadingtext').removeClass('d-none'); - } - } - - let formErrorAction = { - addError(message) { - $('.error_msg').removeClass('d-none'); - $('.error_msg_res').html(message); - }, - removeClass() { - $('.error_msg').addClass('d-none'); - $('.error_msg_res').html(''); - } - } - function init() { - const logoauth = $('.logoauth'); - logoauth.removeClass('d-none'); - loginUI(); - //updatePasswordUI(); - //OTP_UI() - } - - - function checkPassword(value){ - const specailHelper = containsSpecialCharsHelper(value); - const isUpperCase = isUpperCaseHelper(value); - const isLowerCase = isLowerCaseHelper(value); - const isNumber = isNumberContainsHelper(value); - const len = value.length>=8; - - return specailHelper && isUpperCase && isLowerCase && isNumber && len; - - } - - init(); - - function updatePasswordUI() { - formErrorAction.removeClass(); - let html = `
Please enter password.
Please enter password.
`; - - $('.authContainerUI').html(html); - updatepasswordEvents(); - } - - function updatepasswordEvents() { - - $('.needs-validation').off('submit'); - loadPasswordListener(); - $('.needs-validation').on('submit', async (event) => { - event.preventDefault(); - let ele = document.querySelector('.needs-validation') - if (!ele.checkValidity()) { - ele.classList.add('was-validated') - return; - } - - - let newPassword = $('#updatepassword').val(); - let passwordConfirm = $('#updateconfirmpassword').val(); - - - if (newPassword != passwordConfirm) { - formErrorAction.addError("Password doesn't match"); - return; - } - - if(!checkPassword(newPassword)){ - formErrorAction.addError("Password doesn't match"); - return; - } - - const forgotpassPayload = { - username: userDetails.unibaseid, - password: passwordConfirm, - }; - - const res = await postAPIService(AUTH_LOGIN_APIS_URL.updatePassword(), forgotpassPayload); - - console.log(res); - - if (res.data.message == 'Password Updated Successfully') { - loginUI(); - toasterHelper("success", "Password updated successfull"); - } - }); - - - } - - function loadPasswordListener(){ - - $('.passwordvalidui').off().on('keyup',function (e){ - - $(this).parent().find('.pswd_info').css('display','block'); - let value = $(this).val(); - - const specailHelper = containsSpecialCharsHelper(value); - const isUpperCase = isUpperCaseHelper(value); - const isLowerCase = isLowerCaseHelper(value); - const isNumber = isNumberContainsHelper(value); - - - if(isLowerCase){ - $(this).parent().find('#chck_small').addClass('text-decoration-line-through'); - }else{ - $(this).parent().find('#chck_small').removeClass('text-decoration-line-through'); - } - - if(specailHelper){ - $(this).parent().find('#chck_special').addClass('text-decoration-line-through'); - }else{ - $(this).parent().find('#chck_special').removeClass('text-decoration-line-through'); - } - - if(isUpperCase){ - $(this).parent().find('#chck_capital').addClass('text-decoration-line-through'); - }else{ - $(this).parent().find('#chck_capital').removeClass('text-decoration-line-through'); - } - - if(value.length>=8){ - $(this).parent().find('#chck_length').addClass('text-decoration-line-through'); - }else{ - $(this).parent().find('#chck_length').removeClass('text-decoration-line-through'); - } - - if(isNumber){ - $(this).parent().find('#chck_number').addClass('text-decoration-line-through'); - }else{ - $(this).parent().find('#chck_number').removeClass('text-decoration-line-through'); - } - - - }).blur(function (e){ - $(this).parent().find('.pswd_info').css('display','none'); - }) - - $('.eyePassword').off(); - $('.eyePassword').click(function (e){ - e.stopPropagation(); - let eyeOpen = ''; - let eyeClose = ''; - console.log(this); - let isClose = $(this).find(`.fa-eye-slash`).length; - - if(isClose){ - $(this).html(eyeOpen); - $(this).parent().find('.passwordvalidui').attr('type','text'); - }else{ - $(this).html(eyeClose); - $(this).parent().find('.passwordvalidui').attr('type','password'); - } - }); - } - - async function resendOTP() { - otpLoadingAction.addLoadingOTP(); - let payload = { - "FirstName": "", - "LastName": "", - "ContactNumber": "", - "Email": "", - "TenantName": "", - "ContactOrEmail": userDetails.email, - "IsSignup": false, - "IsRegisterUser": true, - "IsForgotPswd": false, - "UnibaseId": userDetails.unibaseid, - "OtpId": parseInt(userDetails.otpid), - "UserOtp": "" - } - let res = await postAPIService(AUTH_LOGIN_APIS_URL.resendOTP(), payload); - res = res.data; - if (res.code != '0' || res.message != 'OTP resent successfully') { - return; - } - userDetails = { ...userDetails, otpid: res.result }; - otpLoadingAction.removeLoadingOTP(); - } - - function loadForpasswordsEvents() { - $('.needs-validation').off('submit'); - $('.needs-validation').on('submit', async (event) => { - event.preventDefault() - let ele = document.querySelector('.needs-validation') - if (!ele.checkValidity()) { - ele.classList.add('was-validated') - return; - } - debugger; - - const email = $('#forgotpassword').val(); - - await sendOTPService(email,1,backOptions.forgotPassword); - - authloginLoadingBtnAction.removeLoading(); - - - - - }); - - $('.btnForgotback').click(function (e) { - loginUI(); - }) - } - - function forgotPasswordUIEmail() { - formErrorAction.removeClass(); - let html = `
Forgot Password?
Enter the email associated with your account and we'll send an email with instructions to reset your password.
Please enter email.
`; - $('.authContainerUI').html(html); - loadForpasswordsEvents(); - } - - - - function loginEvents() { - - - // submit event - $('.needs-validation').off('submit'); - $('.needs-validation').on('submit', async (event) => { - event.preventDefault(); - let ele = document.querySelector('.needs-validation') - if (!ele.checkValidity()) { - ele.classList.add('was-validated') - return; - } - - debugger; - const email = $('#User_Email').val(); - - const isUserURL = AUTH_LOGIN_APIS_URL.isUser(email); - authloginLoadingBtnAction.addLoading(); - const user = await getAPIService(isUserURL); - const isUser = user.data.result === null && user.data.message === `Email/Phonenumber doesn't exist`; - - if (!isUser) { - loginUser(); - } else { - debugger; - signUpUser(); - } - }); - - // forgot password - $('.forgotpasswordBtn').click(function (e) { - forgotPasswordUIEmail(); - }); - - - - loadPasswordListener(); - - - - - } - - - - async function loginUserService(email, passord) { - const loginPayload = { - username: email, - Password: passord, - UnibaseId: "", - RememberMe: false, - }; - - let res = await postAPIService(AUTH_LOGIN_APIS_URL.login(), - loginPayload - ); - - return res; - } - - async function loginUser() { - formErrorAction.removeClass(); - let userEmail = $("#User_Email").val(); - let userPassword = $("#User_password").val(); - - - let res = await loginUserService(userEmail, userPassword); - res = res.data; - - let isError = res.code != '0'; - - - userDetails['email'] = userEmail; - userDetails['password'] = userPassword; - debugger; - if (isError) { - if (res.message === 'Email is not verified') { - formErrorAction.addError(`${res.message} Valid here`); - - $('.validemail').off('click') - $('.validemail').click(async function (e) { - await sendOTPService(userEmail,2,backOptions.EmailnotV); - formErrorAction.removeClass(); - authloginLoadingBtnAction.removeLoading(); - - }); - authloginLoadingBtnAction.removeLoading(); - return; - } - - formErrorAction.addError(`${res.message}`); - authloginLoadingBtnAction.removeLoading(); - return; - } - let authObj = { - token: res.result.sessionId, - userId: res.result.userId, - unibaseId:res.result.unibaseId, - sessionId:res.result.sessionId, - tenantId:res.result.tenantId, - name:res.result.name, - assetUrl:res.result.assetUrl - }; - - COOKIE_HELPER_ACTIONS.setCookie(authObj); - - - localStorage.setItem("userdata",JSON.stringify(res.result)); - - - const isCartAdded = localStorage.getItem(CART_ADD); - if(isCartAdded){ - localStorage.removeItem(CART_ADD); - window.location.href = `/selectdelivery.html`; - return; - } - localStorage.setItem(USER_AUTH_OKAY,2); - window.location.href = '/'; - //authloginLoadingBtnAction.removeLoading(); - console.log(res); - } - - async function sendOTPService(userEmail,num=0,option) { - const isUserURL = AUTH_LOGIN_APIS_URL.isUser(userEmail); - authloginLoadingBtnAction.addLoading(); - const user = await getAPIService(isUserURL); - const isUser = user.data.result === null || user.data.message === `Email/Phonenumber doesn't exist`; - if (isUser) { - formErrorAction.addError(user.data.message); - authloginLoadingBtnAction.removeLoading(); - return; - } - - const forgotpassPayload = { - firstname: "", - lastname: "", - contactnumber: "", - email: "", - tenantname: "", - contactoremail: user.data.result.email, - IsSignup: false, - IsRegisterUser: false, - IsForgotPswd: true, - UnibaseId: user.data.result.userName, - OtpId: 0, - UserOtp: "", - }; - - const forgetpassRes = await postAPIService( - AUTH_LOGIN_APIS_URL.sendOTP(), - forgotpassPayload - ); - - userDetails.email = userEmail; - userDetails.otpid = forgetpassRes.data; - userDetails.unibaseid = user.data.result.userName; - - console.log(forgetpassRes, userDetails); - backotp = option - OTP_UI(num); - - } - - async function signUpUser() { - formErrorAction.removeClass(); - let userEmail = $("#User_Email").val(); - let userPassword = $("#User_password").val(); - let checkPasswordValue = checkPassword(userPassword); - if(!checkPasswordValue){ - authloginLoadingBtnAction.removeLoading(); - formErrorAction.addError('Password must contain one specail letter ,number,small letter, uppercase letter and 8 letters'); - return; - } - - - const userRegistratioNPayload = { - organizationtypeid: "2", - organizationid: "0", - contactid: "0", - userid: "0", - username: "0", - users_phonenumber: "0", - password: userPassword, - users_emailaddress: "0", - emailaddress: userEmail, - contactname: userEmail.split('@')[0], - phonenumber: "0", - branchid: "0", - tenantname: "Anwi Systems", - rolename: "Customer Admin", - currencyid: "0", - customerformuniqueid: "Bizgaze_Platform_Crm_RegisterCRMUser", - }; - - let res = await postAPIService( - AUTH_LOGIN_APIS_URL.signUp(), - userRegistratioNPayload - ); - - console.log(res); - - res = res.data; - if (res.code != '0') { - formErrorAction.addError(res.message); - authloginLoadingBtnAction.removeLoading(); - return; - } - - res = res.result; - - userDetails['otpid'] = res.OtpId; - userDetails['email'] = userEmail; - userDetails['password'] = userPassword; - userDetails['unibaseid'] = res.UnibaseId; - backotp = backOptions.signUp - OTP_UI(); - - - } - - - function loginUI() { - formErrorAction.removeClass(); - let html = `
- Login / Signup -
-
-
- - -
Please enter email.
-
-
- - - - - -
Please enter password.
- -
-
By continuing, I agree to the Terms of Use & Privacy Policy
-
- -
-
-
- Forgot password? -
- `; - $('.authContainerUI').html(html); - - loginEvents(); - } - - function OTP_UI(forgot = 0) { - formErrorAction.removeClass(); - let html = `
- - - - -

Enter OTP

We have send OTP to your email

-
Verfiy OTP
Resend OTP
`; - $('.authContainerUI').html(html); - loadOTPEvents(forgot); - } - - async function validOTP(email, id, otp) { - const validateForgotpass = { - email: email, - otpid: id, - userotp: otp, - }; - - const res = await postAPIService( - `hyperfusion/validateotp`, - validateForgotpass - ); - - return res; - } - - function loadOTPEvents(forgot) { - - - $('.resendOTP').click(function (e) { - resendOTP(); - }) - - - $('.btnForgotback').off().click(function(e){ - debugger; - if(backotp === backOptions.forgotPassword){ - forgotPasswordUIEmail(); - }else if(backotp === backOptions.EmailnotV){ - loginUI(); - }else if(backotp === backOptions.signUp){ - loginUI(); - } - }); - - $("#email_validate_proceed").click(async function () { - debugger; - otpLoadingAction.addLoadingOTP(); - let userotp = ''; - $(".otp-validation .otp-input-group input").each(function () { - let presVal = $(this).val(); - userotp += presVal; - }); -debugger; - if (userotp.length == 6) { - // const validateForgotpass = { - // email: userDetails.email, - // otpid: userDetails.otpid, - // userotp: userotp, - // }; - $('#email_validate_proceed').hide() - $(".loader-btn").show(); - const validate_email_resopt = await validOTP(userDetails.email, userDetails.otpid, userotp); - - $(".loader-btn").hide(); - $('#email_validate_proceed').show() - const Resotp = validate_email_resopt.data.result; - if (Resotp == "Otp verified successfully") { - if (forgot == 1) { - updatePasswordUI(); - return; - } else if (forgot == 2) { - loginUI(); - toasterHelper("success", "Email has been verified"); - return; - } - let res = await loginUserService(userDetails.email, userDetails.password); - res = res.data; - - let authObj = { - token: res.result.sessionId, - userId: res.result.userId, - unibaseId:res.result.unibaseId, - sessionId:res.result.sessionId, - tenantId:res.result.tenantId, - name:res.result.name, - assetUrl:res.result.assetUrl - }; - - COOKIE_HELPER_ACTIONS.setCookie(authObj); - localStorage.setItem("userdata",JSON.stringify(res.result)); - const isCartAdded = localStorage.getItem(CART_ADD); - if(isCartAdded){ - localStorage.removeItem(CART_ADD); - window.location.href = `/selectdelivery.html`; - return; - } - localStorage.setItem(USER_AUTH_OKAY,1); - window.location.href = '/'; - otpLoadingAction.removeLoadingOTP(); - } else { - // toasterOpts() - // Command: toastr["error"]("Please enter Valid OTP"); - otpLoadingAction.removeLoadingOTP(); - formErrorAction.addError("Please enter Valid OTP") - - } - } - else { - otpLoadingAction.removeLoadingOTP(); - formErrorAction.addError("Please enter Valid OTP") - } - }); - - $(".otp-validation .otp-input-group").on("paste", function (p) { - let data = p.originalEvent.clipboardData.getData("text"); - let dataLength = data.length; - for (let i = 0; i < dataLength; i++) { - let input = $( - '.otp-validation .otp-input-group input[tabindex="' + (i + 1) + '"]' - ); - input.val(data.charAt(i)); - if (input.val().length >= input.attr("maxlength")) { - let nextInput = $( - '.otp-validation .otp-input-group input[tabindex="' + - (i + 2) + - '"]' - ); - if (nextInput) { - nextInput.focus(); - } - } - } - p.preventDefault(); - }); - - $('.otp-validation .otp-input-group input[type="text"]').on( - "keyup", - function (e) { - if ($(this).val().length >= $(this).attr("maxlength")) { - if (e.keyCode !== 9 && e.keyCode !== 16) { - let tabIndex = parseInt($(this).attr("tabindex")) + 1; - $( - '.otp-validation .otp-input-group input[tabindex="' + - $(this).attr("tabindex") + - '"]' - ).val($(this).val()); - $( - '.otp-validation .otp-input-group input[tabindex="' + - tabIndex + - '"]' - ).focus(); - } - } else { - if (e.keyCode === 8) { - let tabIndex = parseInt($(this).attr("tabindex")) - 1; - $( - '.otp-validation .otp-input-group input[tabindex="' + - tabIndex + - '"]' - ).focus(); - } - } - } - ); - } -} \ No newline at end of file diff --git a/dist/Js/auth/login_11.js b/dist/Js/auth/login_11.js deleted file mode 100644 index 2b58723..0000000 --- a/dist/Js/auth/login_11.js +++ /dev/null @@ -1,383 +0,0 @@ -function initLogin() { - let reg_name, reg_email, reg_number, reg_pwd, reg_otp_email; - let loginForm = $("#login_form"); - let registerForm = $("#register_form"); - - // document.querySelector('#register_form .otp-input-group input.press').addEventListener("paste", function (p) { - // var data = p.clipboardData.getData('text'); - // var dataLength = data.length; - - // for (var i = 0; i < dataLength; i++) { - // var input = document.querySelector("#register_form .otp-input-group input[tabindex='" + (i + 1) + "']"); - // input.value = data.charAt(i); - // if (input.value.length >= input.maxLength) { - // var nextInput = document.querySelector("#register_form .otp-input-group input[tabindex='" + (i + 2) + "']"); - // if (nextInput) { - // nextInput.focus(); - // } - // } - // } - // p.preventDefault(); - // }); - // document.querySelectorAll('#register_form .otp-input-group input[type="text"]').forEach(function (input) { - // input.addEventListener('keyup', function (e) { - // if (this.value.length >= this.maxLength) { - // if (e.keyCode !== 9 && e.keyCode !== 16) { - // var tabIndex = this.tabIndex + 1; - // document.querySelector("#register_form .otp-input-group input[tabindex='" + this.tabIndex + "']").value = this.value; - // document.querySelector("#register_form .otp-input-group input[tabindex='" + tabIndex + "']").focus(); - // } - // } else { - // if (e.keyCode === 8) { - // var tabIndex = this.tabIndex - 1; - // document.querySelector("#register_form .otp-input-group input[tabindex='" + tabIndex + "']").focus(); - // } - // } - // }); - // }); - - $('#register_form .otp-input-group input.press').on('paste', function (p) { - var data = p.originalEvent.clipboardData.getData('text'); - var dataLength = data.length; - - for (var i = 0; i < dataLength; i++) { - var input = $('#register_form .otp-input-group input[tabindex="' + (i + 1) + '"]'); - input.val(data.charAt(i)); - if (input.val().length >= input.attr('maxlength')) { - var nextInput = $('#register_form .otp-input-group input[tabindex="' + (i + 2) + '"]'); - if (nextInput) { - nextInput.focus(); - } - } - } - p.preventDefault(); - }); - - $('#register_form .otp-input-group input[type="text"]').on('keyup', function (e) { - if ($(this).val().length >= $(this).attr('maxlength')) { - if (e.keyCode !== 9 && e.keyCode !== 16) { - var tabIndex = parseInt($(this).attr('tabindex')) + 1; - $('#register_form .otp-input-group input[tabindex="' + $(this).attr('tabindex') + '"]').val($(this).val()); - $('#register_form .otp-input-group input[tabindex="' + tabIndex + '"]').focus(); - } - } else { - if (e.keyCode === 8) { - var tabIndex = parseInt($(this).attr('tabindex')) - 1; - $('#register_form .otp-input-group input[tabindex="' + tabIndex + '"]').focus(); - } - } - }); - - - loginForm.find("#User_Email,#User_password").keypress(function (e) { - if (e.which == 13) - document.getElementById("Login_btn").click(); - - }); - - $("#Login_btn").click(function () { - loginForm.find(".loader-btn").show(); - $(this).hide(); - let userEmail = loginForm.find("#User_Email").val(); - let userPassword = loginForm.find("#User_password").val(); - let emailInput = loginForm.find(".email-login-inputgroup"); - let passwordInput = loginForm.find(".password-login-inputgroup"); - if (userEmail == "") { - emailInput.find('#User_Email').addClass('is-invalid'); - emailInput.find('.form-floating').addClass('is-invalid'); - emailInput.find('.invalid-feedback').text('Please enter your email'); - loginForm.find(".loader-btn").hide(); - $(this).show(); - - } - if (userPassword == "") { - passwordInput.find('#User_password').addClass('is-invalid'); - passwordInput.find('.form-floating').addClass('is-invalid'); - loginForm.find(".loader-btn").hide(); - $(this).show(); - } - else { - emailInput.find('#User_Email').removeClass('is-invalid'); - emailInput.find('.form-floating').removeClass('is-invalid'); - passwordInput.find('#User_password').removeClass('is-invalid'); - passwordInput.find('.form-floating').removeClass('is-invalid'); - if (validateEmail(userEmail)) { - let port = SERVERNAME - // let port = "http://localhost:3088"; - let url = `${port}/account/getuserbyphoneormail/${userEmail}/${userEmail}`; - getDataStatAxios(url, userEmail); - } else { - loginForm.find(".loader-btn").hide(); - $(this).show(); - emailInput.find('#User_Email').addClass('is-invalid'); - emailInput.find('.form-floating').addClass('is-invalid'); - emailInput.find('.invalid-feedback').text('Please enter a valid email'); - } - } - }); - - async function getDataStatAxios(url, userEmail) { - const config = { - url, - method: "get", - }; - let response = await axios(config); - if (response.data.result == null) { - $('.error-div').text(response.data.message); - } - else { - let userEmail = $("#User_Email").val(); - let userPassword = $("#User_password").val(); - const loginPayload = { - username: userEmail, - Password: userPassword, - UnibaseId: "", - RememberMe: false, - }; - const res = await postAPIService( - `bizgaze/crm/webapi/crmuserlogin`, - loginPayload - ); - debugger; - console.log(res); - if (res.data.message == "200") { - // Command: toastr["success"]("Logged in successfully") - // toasterOpts(); - debugger; - COOKIE_HELPER_ACTIONS.setCookie({ - token: res.data.result.sessionId, - userid: res.data.result.userId, - ...res.data.result - }) - // setInitLoginLocal(); - // window.localStorage.setItem("Useremail", userEmail); - //window.localStorage.setItem("Userpassword", userPassword); - //window.localStorage.setItem("Isloggedin", true); - const isCartAdded = localStorage.getItem(CART_ADD); - if(isCartAdded){ - localStorage.removeItem(CART_ADD); - window.location.href = `/selectdelivery.html`; - return; - } - window.location.href = `/index.html`; - } else { - $("#empt_num").removeClass("d-none text-success").text(res.data.message).addClass('text-danger'); - $(".my_avatar").attr("href", "./login.html"); - } - } - } - - // this function will be triggered on new user registration - async function userRegistration() { - reg_form = $('#register_form'); - // reg_name = $("#User_Name").val(); - reg_email = reg_form.find("#User_Email").val(); - // reg_otp_email = $("#User_otp_Email").val(); - // reg_number = $("#user_number").val(); - reg_pwd = reg_form.find("#User_password").val(); - let userName = reg_email.split("@"); - let otpRes = null; - const userRegistratioNPayload = { - organizationtypeid: "2", - organizationid: "0", - contactid: "0", - userid: "0", - username: "0", - users_phonenumber: "0", - password: reg_pwd, - users_emailaddress: "0", - emailaddress: reg_email, - contactname: userName[0], - phonenumber: "0", - branchid: "0", - tenantname: "Anwi Systems", - rolename: "Customer Admin", - currencyid: "0", - customerformuniqueid: "Bizgaze_Platform_Crm_RegisterCRMUser", - }; - $('.spinner-border').removeClass('d-none'); - const res = await postAPIService( - `bizgaze/crm/webapi/registercrmuser`, - userRegistratioNPayload - ); - console.log(res, "register"); - $('.spinner-border').addClass('d-none'); - if (res.data.message == "User Already Exists!") { - $('.error-div').text('User Already Exists!'); - // $(".useralready_exist").removeClass("d-none"); - } else { - } - - $("#proceed").click(async function () { - let userEnterOtp = ""; - let userEmail = registerForm.find("#User_Email").val(); - $('.otp-input-group input').each(function () { - let presVal = $(this).val(); - userEnterOtp += presVal; - }) - console.log(userEnterOtp); - debugger; - const userotppayload = { - email: userEmail, - otpid: res.data.result.OtpId, - userotp: userEnterOtp, - }; - $('.spinner-border').removeClass('d-none'); - otpRes = await postAPIService( - `bizgaze/crm/webapi/ValidateOtp`, - userotppayload - ); - $('.spinner-border').addClass('d-none'); - debugger; - console.log(otpRes, "otp"); - const verifyotpStatus = otpRes.data.result; - debugger; - if (verifyotpStatus == "Otp verified successfully") { - alert("Account created successfully"); - window.location.href = `/myaccount.html`; - } else { - alert("please enter valid otp"); - } - }); - } - - // to validate password on keyup in password input field - function passwordValidate(pswd) { - if (pswd.length < 11) { - $('#chck_length').removeClass('pswd_valid').addClass('pswd_invalid'); - } else { - $('#chck_length').removeClass('pswd_invalid').addClass('pswd_valid'); - } - // validate uppercase letter - if (pswd.match(/[A-Z]/)) { - $('#chck_capital').removeClass('pswd_invalid').addClass('pswd_valid'); - } else { - $('#chck_capital').removeClass('pswd_valid').addClass('pswd_invalid'); - } - //validate special letter - if (pswd.match(/[!@#$%^&*]/)) { - $('#chck_special').removeClass('pswd_invalid').addClass('pswd_valid'); - } else { - $('#chck_special').removeClass('pswd_valid').addClass('pswd_invalid'); - } - let pswdVal = $('#register_form #User_password').val(); - let pattern = /^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[^a-zA-Z0-9]).{11,}$/; - if (pswdVal.match(pattern)) { - $('#pswd_info').hide() - } - else { - $('#pswd_info').show() - } - //validate number - if (pswd.match(/\d/)) { - $('#chck_number').removeClass('pswd_invalid').addClass('pswd_valid'); - } else { - $('#chck_number').removeClass('pswd_valid').addClass('pswd_invalid'); - } - - }; - - //you have to use keyup, because keydown will not catch the currently entered value - $('#register_form #User_password').keyup(function () { - // set password variable - var pswd = $(this).val(); - passwordValidate(pswd); - }).focus(function () { - let pswdVal = $('#register_form #User_password').val(); - let pattern = /^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[^a-zA-Z0-9]).{11,}$/; - if (pswdVal.match(pattern)) { - $('#pswd_info').hide() - } - else { - $('#pswd_info').show() - } - }).blur(function () { - $('#pswd_info').hide(); - }); - - // function to validate user entered email - function validateEmail(userEmail) { - var pattern = - /^([\w-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([\w-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$/; - return $.trim(userEmail).match(pattern) ? true : false; - } - - // function to validate user entered password - function validatepassword(userPassword) { - var pattern = /^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[^a-zA-Z0-9]).{11,}$/; - return $.trim(userPassword).match(pattern) ? true : false; - } - - registerForm.find("#User_Email,#User_password").keypress(function (e) { - if (e.which == 13) - document.getElementById("register_btn").click(); - - }); - - // this will be triggered on clicking continue in signup form - $("#register_btn").click(function () { - registerForm.find(".loader-btn").show(); - $(this).hide(); - let userEmail = registerForm.find("#User_Email").val(); - let userPassword = registerForm.find("#User_password").val(); - let emailInput = registerForm.find(".email-login-inputgroup"); - let passwordInput = registerForm.find(".password-login-inputgroup"); - if (userEmail == "") { - emailInput.find('#User_Email').addClass('is-invalid'); - emailInput.find('.form-floating').addClass('is-invalid'); - emailInput.find('.invalid-feedback').text('Please enter your email'); - registerForm.find(".loader-btn").hide(); - $(this).show(); - } - if (userPassword == "") { - passwordInput.find('#User_password').addClass('is-invalid'); - passwordInput.find('.form-floating').addClass('is-invalid'); - registerForm.find(".loader-btn").hide(); - $(this).show(); - } - else { - emailInput.find('#User_Email').removeClass('is-invalid'); - emailInput.find('.form-floating').removeClass('is-invalid'); - passwordInput.find('#User_password').removeClass('is-invalid'); - passwordInput.find('.form-floating').removeClass('is-invalid'); - if (validateEmail(userEmail)) { - $('#register_form .email-password-group').hide(); - $('#register_form .otp-input-group').show(); - $('#register_form .otp-input-group .otp-sent-email').text(userEmail); - userRegistration(); - } else { - emailInput.find('#User_Email').addClass('is-invalid'); - emailInput.find('.form-floating').addClass('is-invalid'); - emailInput.find('.invalid-feedback').text('Please enter a valid email'); - registerForm.find(".loader-btn").hide(); - $(this).show(); - } - } - }); - - $('#forgotPassword').click(function () { - $('.login-email-password-div').hide(); - $('.login-forgot-passsword-div').show(); - }) - - function toasterOpts() { - toastr.options = { - "closeButton": true, - "debug": false, - "newestOnTop": true, - "progressBar": true, - "positionClass": "toast-top-center", - "preventDuplicates": true, - "showDuration": "300", - "hideDuration": "1000", - "timeOut": "3000", - "extendedTimeOut": "1000", - "showEasing": "swing", - "hideEasing": "linear", - "showMethod": "fadeIn", - "hideMethod": "fadeOut" - } - } -} - -initLogin(); diff --git a/dist/Js/auth/login_ing.js b/dist/Js/auth/login_ing.js deleted file mode 100644 index d93ba1c..0000000 --- a/dist/Js/auth/login_ing.js +++ /dev/null @@ -1,780 +0,0 @@ -function initLogin() { - // alert('as') - // Command: toastr["success"]("Logged in successfully") - // Command: toastr["success"]("My name is Inigo Montoya. You killed my father. Prepare to die!") - - // toasterOpts(); - let reg_name, reg_email, reg_number, reg_pwd, reg_otp_email; - let loginForm = $("#login_form"); - let registerForm = $("#register_form"); - - $("#register_form .otp-input-group input.press").on("paste", function (p) { - var data = p.originalEvent.clipboardData.getData("text"); - var dataLength = data.length; - - for (var i = 0; i < dataLength; i++) { - var input = $( - '#register_form .otp-input-group input[tabindex="' + (i + 1) + '"]' - ); - input.val(data.charAt(i)); - if (input.val().length >= input.attr("maxlength")) { - var nextInput = $( - '#register_form .otp-input-group input[tabindex="' + (i + 2) + '"]' - ); - if (nextInput) { - nextInput.focus(); - } - } - } - p.preventDefault(); - }); - - $('#register_form .otp-input-group input[type="text"]').on( - "keyup", - function (e) { - if ($(this).val().length >= $(this).attr("maxlength")) { - if (e.keyCode !== 9 && e.keyCode !== 16) { - var tabIndex = parseInt($(this).attr("tabindex")) + 1; - $( - '#register_form .otp-input-group input[tabindex="' + - $(this).attr("tabindex") + - '"]' - ).val($(this).val()); - $( - '#register_form .otp-input-group input[tabindex="' + tabIndex + '"]' - ).focus(); - } - } else { - if (e.keyCode === 8) { - var tabIndex = parseInt($(this).attr("tabindex")) - 1; - $( - '#register_form .otp-input-group input[tabindex="' + tabIndex + '"]' - ).focus(); - } - } - } - ); - - loginForm.find("#User_Email,#User_password").keypress(function (e) { - if (e.which == 13) $("#Login_btn").click(); - }); - - $("#Login_btn").click(function () { - $('.error_msg').hide(); - // loginForm.find(".loader-btn").show(); - let userEmail = loginForm.find("#User_Email").val(); - let userPassword = loginForm.find("#User_password").val(); - let emailInput = loginForm.find(".email-login-inputgroup"); - let passwordInput = loginForm.find(".password-login-inputgroup"); - if (userEmail == "") { - emailInput.find("#User_Email").addClass("is-invalid"); - emailInput.find(".form-floating").addClass("is-invalid"); - emailInput.find(".invalid-feedback").text("Please enter your email"); - loginForm.find(".loader-btn").hide(); - $(this).show(); - } - if (userPassword == "") { - passwordInput.find("#User_password").addClass("is-invalid"); - passwordInput.find(".form-floating").addClass("is-invalid"); - loginForm.find(".loader-btn").hide(); - $(this).show(); - } else { - emailInput.find("#User_Email").removeClass("is-invalid"); - emailInput.find(".form-floating").removeClass("is-invalid"); - passwordInput.find("#User_password").removeClass("is-invalid"); - passwordInput.find(".form-floating").removeClass("is-invalid"); - if (validateEmail(userEmail)) { - let port = SERVERNAME - // let port = "http://localhost:3088"; - let url = `${port}/account/getuserbyphoneormail/${userEmail}/${userEmail}`; - getDataStatAxios(url, userEmail); - } else { - loginForm.find(".loader-btn").hide(); - $(this).show(); - emailInput.find("#User_Email").addClass("is-invalid"); - emailInput.find(".form-floating").addClass("is-invalid"); - emailInput.find(".invalid-feedback").text("Please enter a valid email"); - } - } - }); - async function getDataStatAxios(url, userEmail) { - const config = { - url, - method: "get", - }; - let response = await axios(config); - if (response.data.result == null) { - $('.error_msg').show(); - $('.error_msg .error_msg_res').html(`User doesn't exists with the email, Sign Up `); - $(".register_sectionbtn").click(function(){ - - - $(".login_section").css("display","none"); - $(".register_section").css("display","block"); - $(".login_section").find("#User_Email").removeClass("is-invalid"); - $(".login_section").find(".form-floating").removeClass("is-invalid"); - $(".login_section").find("#User_password").removeClass("is-invalid"); - $(".login_section").find(".form-floating").removeClass("is-invalid"); - $('.error_msg').hide(); - }); - // toasterOpts(); - - // Command: toastr["error"]("Please enter Valid email / password"); - } else { - let userEmail = $("#User_Email").val(); - let userPassword = $("#User_password").val(); - const loginPayload = { - username: userEmail, - Password: userPassword, - UnibaseId: "", - RememberMe: false, - }; - $("#Login_btn").hide(); - $(".loader-btn").show(); - const res = await postAPIService( - `bizgaze/crm/webapi/crmuserlogin`, - loginPayload - ); - debugger; - console.log(res); - $(".loader-btn").hide(); - $("#Login_btn").show(); - if (res.data.message == "200") { - debugger; - // Command: toastr["success"]("Logged in successfully") - // toasterOpts(); - COOKIE_HELPER_ACTIONS.setCookie({ - token: res.data.result.sessionId, - userid: res.data.result.userId, - ...res.data.result - }); - // setInitLoginLocal(); - window.localStorage.setItem("Useremail", userEmail); - //window.localStorage.setItem("Userpassword", userPassword); - window.localStorage.setItem("Isloggedintoaster", true); - window.localStorage.setItem("Isloggedin", true); - - const isCartAdded = localStorage.getItem(CART_ADD); - if(isCartAdded){ - localStorage.removeItem(CART_ADD); - window.location.href = `/selectdelivery.html`; - return; - } - - window.location.href = `./index.html`; - } else { - $('.error_msg').show(); - $('.error_msg .error_msg_res').html(res.data.message + ' Validate Email'); - // toasterOpts(); - // Command: toastr["error"]() - /*Email validation*/ - $('.validate_mail').click(function(){ - $(".login_section").hide(); - $(".email-validate-div").show(); - $('.error_msg').hide(); - }) - } - } - } - - // this function will be triggered on new user registration - async function userRegistration() { - reg_form = $("#register_form"); - // reg_name = $("#User_Name").val(); - reg_email = reg_form.find("#User_Email").val(); - // reg_otp_email = $("#User_otp_Email").val(); - // reg_number = $("#user_number").val(); - reg_pwd = reg_form.find("#User_password").val(); - let userName = reg_email.split("@"); - let otpRes = null; - const userRegistratioNPayload = { - organizationtypeid: "2", - organizationid: "0", - contactid: "0", - userid: "0", - username: "0", - users_phonenumber: "0", - password: reg_pwd, - users_emailaddress: "0", - emailaddress: reg_email, - contactname: userName[0], - phonenumber: "0", - branchid: "0", - tenantname: "Anwi Systems", - rolename: "Customer Admin", - currencyid: "0", - customerformuniqueid: "Bizgaze_Platform_Crm_RegisterCRMUser", - }; - debugger; - $('#register_btn').hide() - $(".loader-btn").show(); - debugger; - const res = await postAPIService( - `bizgaze/crm/webapi/registercrmuser`, - userRegistratioNPayload - ); - console.log(res, "register"); - $(".loader-btn").hide(); - $('#register_btn').show() - if (res.data.code == "404" ) { - // toasterOpts(); - // Command: toastr["error"](res.data.message) - $('.error_msg').show(); - $('.error_msg .error_msg_res').html(res.data.message); - return; - } - else { - $("#register_form .email-password-group").hide(); - $("#register_form .register_otp.otp-input-group").show(); - } - - $("#proceed").click(async function () { - let userEnterOtp = ""; - let userEmail = registerForm.find("#User_Email").val(); - $(".otp-input-group input").each(function () { - let presVal = $(this).val(); - userEnterOtp += presVal; - }); - console.log(userEnterOtp); - debugger; - const userotppayload = { - email: userEmail, - otpid: res.data.result.OtpId, - userotp: userEnterOtp, - }; - $(".loader-btn").show(); - $('#proceed').hide() - otpRes = await postAPIService( - `bizgaze/crm/webapi/ValidateOtp`, - userotppayload - ); - $(".loader-btn").hide(); - $('#proceed').show() - debugger; - console.log(otpRes, "otp"); - const verifyotpStatus = otpRes.data.result; - if (verifyotpStatus == "Otp verified successfully") { - const loginPayload = { - username: reg_email, - Password: reg_pwd, - UnibaseId: "", - RememberMe: false, - }; - const res = await postAPIService( - `bizgaze/crm/webapi/crmuserlogin`, - loginPayload - ); - if (res.data.message == "200") { - debugger; - // Command: toastr["success"]("Logged in successfully") - // toasterOpts(); - COOKIE_HELPER_ACTIONS.setCookie({ - token: res.data.result.sessionId, - userid: res.data.result.userId, - ...res.data.result - }); - // setInitLoginLocal(); - window.localStorage.setItem("Useremail", userEmail); - //window.localStorage.setItem("Userpassword", userPassword); - window.localStorage.setItem("isaccountCreated", true); - const isCartAdded = localStorage.getItem(CART_ADD); - if(isCartAdded){ - localStorage.removeItem(CART_ADD); - window.location.href = `/selectdelivery.html`; - return; - } - window.location.href = `./index.html`; - } else { - // toasterOpts(); - // Command: toastr["error"](res.data.message) - $('.error_msg').show(); - $('.error_msg .error_msg_res').html(res.data.message); - } - } else { - // toasterOpts(); - // Command: toastr["error"]("Please enter Valid OTP"); - $('.error_msg').show(); - $('.error_msg .error_msg_res').html("Please enter Valid OTP"); - } - }); - } - - // to validate password on keyup in password input field - function passwordValidate(pswd) { - if (pswd.length < 8) { - $("#chck_length").removeClass("pswd_valid").addClass("pswd_invalid"); - } else { - $("#chck_length").removeClass("pswd_invalid").addClass("pswd_valid"); - } - // validate uppercase letter - if (pswd.match(/[A-Z]/)) { - $("#chck_capital").removeClass("pswd_invalid").addClass("pswd_valid"); - } else { - $("#chck_capital").removeClass("pswd_valid").addClass("pswd_invalid"); - } - //validate special letter - if (pswd.match(/[!@#$%^&*]/)) { - $("#chck_special").removeClass("pswd_invalid").addClass("pswd_valid"); - } else { - $("#chck_special").removeClass("pswd_valid").addClass("pswd_invalid"); - } - let pswdVal = $("#register_form #User_password").val(); - let pattern = /^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[^a-zA-Z0-9]).{8,}$/; - if (pswdVal.match(pattern)) { - $(".pswd_info").hide(); - } else { - $(".pswd_info").show(); - } - //validate number - if (pswd.match(/\d/)) { - $("#chck_number").removeClass("pswd_invalid").addClass("pswd_valid"); - } else { - $("#chck_number").removeClass("pswd_valid").addClass("pswd_invalid"); - } - } - - //you have to use keyup, because keydown will not catch the currently entered value - $("#register_form #User_password") - .keyup(function () { - // set password variable - var pswd = $(this).val(); - passwordValidate(pswd); - }) - .focus(function () { - let pswdVal = $("#register_form #User_password").val(); - let pattern = /^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[^a-zA-Z0-9]).{11,}$/; - if (pswdVal.match(pattern)) { - $(".pswd_info").hide(); - } else { - $(".pswd_info").show(); - } - }) - .blur(function () { - $(".pswd_info").hide(); - }); - - // function to validate user entered email - function validateEmail(userEmail) { - var pattern = /^([\w-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([\w-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$/; - // return $.trim(userEmail).test(pattern) ? true : false; - return pattern.test(userEmail) ? true : false; - } - - // function to validate user entered password - function validatepassword(userPassword) { - var pattern = /^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[^a-zA-Z0-9])(?!.*\s).{8,15}$/; - // return $.trim(userPassword).test(pattern) ? true : false; - return pattern.test(userPassword) ? true : false; - } - - registerForm.find("#User_Email,#User_password").keypress(function (e) { - if (e.which == 13) $("#register_btn").click(); - }); - - // this will be triggered on clicking continue in signup form - $("#register_btn").click(function () { - $('.error_msg').hide(); - registerForm.find(".loader-btn").show(); - $(this).hide(); - let userEmail = registerForm.find("#User_Email").val(); - let userPassword = registerForm.find("#User_password").val(); - let emailInput = registerForm.find(".email-login-inputgroup"); - let passwordInput = registerForm.find(".password-login-inputgroup"); - if (userEmail == "") { - emailInput.find("#User_Email").addClass("is-invalid"); - emailInput.find(".form-floating").addClass("is-invalid"); - emailInput.find(".invalid-feedback").text("Please enter your email"); - registerForm.find(".loader-btn").hide(); - $(this).show(); - } - if (userPassword == "") { - passwordInput.find("#User_password").addClass("is-invalid"); - passwordInput.find(".form-floating").addClass("is-invalid"); - registerForm.find(".loader-btn").hide(); - $(this).show(); - } else { - emailInput.find("#User_Email").removeClass("is-invalid"); - emailInput.find(".form-floating").removeClass("is-invalid"); - passwordInput.find("#User_password").removeClass("is-invalid"); - passwordInput.find(".form-floating").removeClass("is-invalid"); - let Email_valid = validateEmail(userEmail); - let Pwd_valid = validatepassword(userPassword); - if (Email_valid === true && Pwd_valid === true) { - userRegistration(); - $("#register_form .otp-input-group .otp-sent-email").text(userEmail); - } else if(Email_valid === false) { - emailInput.find("#User_Email").addClass("is-invalid"); - emailInput.find(".form-floating").addClass("is-invalid"); - emailInput.find(".invalid-feedback").text("Please enter a valid email"); - registerForm.find(".loader-btn").hide(); - $(this).show(); - }else if(Pwd_valid === false){ - passwordInput.find("#User_password").addClass("is-invalid"); - passwordInput.find(".form-floating").addClass("is-invalid"); - passwordInput.find(".invalid-feedback").text("Please check the password!"); - registerForm.find(".loader-btn").hide(); - $(this).show(); - } - } - }); - $(".pswd_eye").click(function(){ - let eyeClass = $(this).find('svg').hasClass("fa-eye-slash"); - if(eyeClass == true){ - $(this).find('svg').removeClass("fa-eye-slash"); - $(this).find('svg').addClass("fa-eye"); - $(this).siblings('input').attr('type','password') - }else{ - $(this).find('svg').removeClass("fa-eye"); - $(this).find('svg').addClass("fa-eye-slash"); - $(this).siblings('input').attr('type','text') - } -}) - - $("#forgotPassword").click(function () { - $(".login-email-password-div").hide(); - $(".login-forgot-password-div").show(); - }); - $("#forgot_Password_Back").click(function () { - $(".login-forgot-password-div").hide(); - $(".login-email-password-div").show(); - }); - $("#forgot_password_submit").click(async function () { - let forgot_email = $("#forgot_User_Email").val(); - if(forgot_email == ''){ -$('#forgot_User_Email').addClass('is-invalid') -$('#forgot_User_Email').after(`
Please enter Valid email
`); -return - } - else{ - debugger; - let port = SERVERNAME - // let port = "http://localhost:3088"; - let url = `${port}/account/getuserbyphoneormail/${forgot_email}/${forgot_email}`; - const config = { - url, - method: "get", - }; - $(".loader-btn").show(); - $('#forgot_password_submit').hide() - let response = await axios(config); - debugger; - console.log(response); - $(".loader-btn").hide(); - $('#forgot_password_submit').show() - if (response.data.result != null) { - debugger; - console.log(response.data); - const forgotpassPayload = { - firstname: "", - lastname: "", - contactnumber: "", - email: "", - tenantname: "", - contactoremail: response.data.result.email, - IsSignup: false, - IsRegisterUser: false, - IsForgotPswd: true, - UnibaseId: response.data.result.userName, - OtpId: 0, - UserOtp: "", - }; - $('#forgot_password_submit').hide() - $(".loader-btn").show(); - const forgetpassRes = await postAPIService( - `account/sendotp`, - forgotpassPayload - ); - $(".loader-btn").hide(); - console.log(forgetpassRes); - $(".email-validation").hide(); - $('.user_email').html(forgot_email) - $(".otp-validation .otp-input-group").show(); - $(".otp-validation .otp-input-group").on("paste", function (p) { - let data = p.originalEvent.clipboardData.getData("text"); - let dataLength = data.length; - for (let i = 0; i < dataLength; i++) { - let input = $( - '.otp-validation .otp-input-group input[tabindex="' + (i + 1) + '"]' - ); - input.val(data.charAt(i)); - if (input.val().length >= input.attr("maxlength")) { - let nextInput = $( - '.otp-validation .otp-input-group input[tabindex="' + - (i + 2) + - '"]' - ); - if (nextInput) { - nextInput.focus(); - } - } - } - p.preventDefault(); - }); - - $('.otp-validation .otp-input-group input[type="text"]').on( - "keyup", - function (e) { - if ($(this).val().length >= $(this).attr("maxlength")) { - if (e.keyCode !== 9 && e.keyCode !== 16) { - let tabIndex = parseInt($(this).attr("tabindex")) + 1; - $( - '.otp-validation .otp-input-group input[tabindex="' + - $(this).attr("tabindex") + - '"]' - ).val($(this).val()); - $( - '.otp-validation .otp-input-group input[tabindex="' + - tabIndex + - '"]' - ).focus(); - } - } else { - if (e.keyCode === 8) { - let tabIndex = parseInt($(this).attr("tabindex")) - 1; - $( - '.otp-validation .otp-input-group input[tabindex="' + - tabIndex + - '"]' - ).focus(); - } - } - } - ); - $("#Forgot_pass_proceed").click(async function () { - debugger; - let userotp=''; - $(".otp-validation .otp-input-group input").each(function () { - let presVal = $(this).val(); - userotp += presVal; - }); - console.log(userotp); - const validateForgotpass = { - email: forgot_email, - otpid: forgetpassRes.data, - userotp: userotp, - }; - $('#Forgot_pass_proceed').hide() - $(".loader-btn").show(); - const forgetpassResotp = await postAPIService( - `hyperfusion/validateotp`, - validateForgotpass - ); - $(".loader-btn").hide(); - $('#Forgot_pass_proceed').show() - console.log(forgetpassResotp); - const Resotp = forgetpassResotp.data.result; - if (Resotp == "Otp verified successfully") { - $(".login-forgot-password-details-div").show(); - $(".otp-validation .otp-input-group").hide(); - } else { - // toasterOpts() - // Command: toastr["error"]("Please enter Valid OTP"); - $('.error_msg').show(); - $('.error_msg .error_msg_res').html("Please enter Valid OTP"); - } - }); - $("#forgot_password_details_submit").click(async function () { - debugger; - let pswdone =$("#forgot-password-input-one").val(); - let pswdtwo =$("#forgot-password-input-two").val(); - if(pswdone == pswdtwo) { - const forgotpassPayload = { - username: response.data.result.userName, - password: pswdtwo, - }; - $("#forgot_password_details_submit").hide(); - $(".loader-btn").show(); - const forgetpassRes = await postAPIService( - `account/UpdatePassword`, - forgotpassPayload - ); - console.log(forgetpassRes); - $(".loader-btn").hide(); - $("#forgot_password_details_submit").show(); - window.localStorage.setItem('Ispasswordupdate',true) - window.location.href = `./myaccount.html`; - }else { - $("#forgot-password-input-one").addClass('is-invalid'); - $("#forgot-password-input-two").addClass('is-invalid') - $('.password_display').text('Passwords are not matched !').addClass('text-danger') - } - - - }); - } - else{ - $('#forgot_User_Email').addClass('is-invalid'); - $('#forgot_User_Email').after(`
Please enter Valid email
`); - - } - } - }); - $(".user_pass") - .keyup(function () { - // set password variable - var pswd = $(this).val(); - passwordValidate(pswd); - $('.pswd_info').hide(); - $(this).parent().siblings('.pswd_info').show(); - }) - .focus(function () { - let pswdVal = $(this).val(); - let pattern = /^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[^a-zA-Z0-9]).{8,}$/; - if (pswdVal.match(pattern)) { - $(this).parent().siblings('.pswd_info').hide(); - } else { - $(this).parent().siblings('.pswd_info').show(); - } - }) - .blur(function () { - $(this).parent().siblings('.pswd_info').hide(); - }); - - function toasterOpts(){ - toastr.options = { - "closeButton": true, - "debug": false, - "newestOnTop": true, - "progressBar": true, - "positionClass": "toast-top-center", - "preventDuplicates": true, - "onclick": null, - "showDuration": "300", - "hideDuration": "1000", - "timeOut": "5000", - "extendedTimeOut": "1000", - "showEasing": "swing", - "hideEasing": "linear", - "showMethod": "fadeIn", - "hideMethod": "fadeOut" - } - } -} - $("#email_validate_submit").click(async function () { - let vaidate_otp; - let validate_email = $("#email_validation_input").val(); - if(validate_email == ''){ -$('#email_validation_input').addClass('is-invalid') -$('#email_validation_input').after(`
Please enter Valid email
`); -return - } - else{ - debugger; - let port = SERVERNAME; - // let port = "http://localhost:3088"; - let url = `${port}/account/getuserbyphoneormail/${validate_email}/${validate_email}`; - const config = { - url, - method: "get", - }; - $(".loader-btn").show(); - $('#email_validate_submit').hide() - let response = await axios(config); - debugger; - console.log(response); - $(".loader-btn").hide(); - $('#email_validate_submit').show() - if (response.data.result != null) { - debugger; - console.log(response.data); - const forgotpassPayload = { - firstname: "", - lastname: "", - contactnumber: "", - email: "", - tenantname: "", - contactoremail: response.data.result.email, - IsSignup: false, - IsRegisterUser: false, - IsForgotPswd: true, - UnibaseId: response.data.result.userName, - OtpId: 0, - UserOtp: "", - }; - $('#email_validate_submit').hide() - $(".loader-btn").show(); - const validate_email_res = await postAPIService( - `account/sendotp`, - forgotpassPayload - ); - $(".loader-btn").hide(); - vaidate_otp = validate_email_res.data; - console.log(validate_email_res); - $(".email-validation").hide(); - $('.user_email').html(validate_email) - $(".otp-validation .otp-input-group").show(); - $(".otp-validation .otp-input-group").on("paste", function (p) { - let data = p.originalEvent.clipboardData.getData("text"); - let dataLength = data.length; - for (let i = 0; i < dataLength; i++) { - let input = $( - '.otp-validation .otp-input-group input[tabindex="' + (i + 1) + '"]' - ); - input.val(data.charAt(i)); - if (input.val().length >= input.attr("maxlength")) { - let nextInput = $( - '.otp-validation .otp-input-group input[tabindex="' + - (i + 2) + - '"]' - ); - if (nextInput) { - nextInput.focus(); - } - } - } - p.preventDefault(); - }); - - } - else{ - $('#email_validation_input').addClass('is-invalid'); - $('#email_validation_input').after(`
Please enter Valid email
`); - - } - } - $("#email_validate_proceed").click(async function () { - debugger; - let userotp=''; - let validate_email = $("#email_validation_input").val(); - $(".email-validate-div .otp-validation .otp-input-group input").each(function () { - let presVal = $(this).val(); - userotp += presVal; - }); - - if(userotp.length == 6){ - const validateForgotpass = { - email: validate_email, - otpid: vaidate_otp, - userotp: userotp, - }; - $('#email_validate_proceed').hide() - $(".loader-btn").show(); - const validate_email_resopt = await postAPIService( - `hyperfusion/validateotp`, - validateForgotpass - ); - - $(".loader-btn").hide(); - $('#email_validate_proceed').show() - const Resotp = validate_email_resopt.data.result; - if (Resotp == "Otp verified successfully") { - $(".login_section").show(); - $(".otp-validation .otp-input-group").hide(); - $("#email_validate_back").hide(); - $('.error_msg').hide(); - } else { - // toasterOpts() - // Command: toastr["error"]("Please enter Valid OTP"); - $('.error_msg').show(); - $('.error_msg .error_msg_res').html("Please enter Valid OTP"); - } - } - else{ - $('.error_msg').show(); - $('.error_msg .error_msg_res').html("Please enter OTP"); - } - }); - }); - - -initLogin(); diff --git a/dist/Js/components/accordion/accordion.js b/dist/Js/components/accordion/accordion.js deleted file mode 100644 index 4fa1c4d..0000000 --- a/dist/Js/components/accordion/accordion.js +++ /dev/null @@ -1,110 +0,0 @@ -class AccordionItem extends HTMLElement { - static get observedAttributes() { - return ['title']; - } - - #title = ''; - #collapsed = true; - - constructor() { - super(); - this.attachShadow({ mode: 'open' }); - } - - connectedCallback() { - this.update(); - this.shadowRoot.addEventListener('click', this.toggle.bind(this)); - } - - attributeChangedCallback(name, oldValue, newValue) { - if (name === 'title') { - this.#title = newValue; - } - this.update(); - } - - toggle() { - this.#collapsed = !this.#collapsed; - this.update(); - - // Dispatch a custom event to notify the parent AccordionElement - const event = new CustomEvent('accordion-item-toggle', { - bubbles: true, - detail: { - collapsed: this.#collapsed, - item: this, - }, - }); - this.dispatchEvent(event); - } - - update() { - this.shadowRoot.innerHTML = ` - -
-
${this.#title}
-
- -
-
- `; - } - } - - class AccordionElement extends HTMLElement { - #activeItem = null; - - constructor() { - super(); - this.attachShadow({ mode: 'open' }); - this.shadowRoot.innerHTML = ''; - this.addEventListener('accordion-item-toggle', this.handleItemToggle.bind(this)); - } - - handleItemToggle(event) { - const { collapsed, item } = event.detail; - - // If the active item is different from the toggled item, collapse the active item - if (this.#activeItem && this.#activeItem !== item && !collapsed) { - this.#activeItem.toggle(); - } - - // Update the active item - if (!collapsed) { - this.#activeItem = item; - } else if (this.#activeItem === item) { - this.#activeItem = null; - } - } - } - - customElements.define('accordion-item', AccordionItem); - customElements.define('accordion-element', AccordionElement); - - \ No newline at end of file diff --git a/dist/Js/components/authloader/authloader.js b/dist/Js/components/authloader/authloader.js deleted file mode 100644 index d1ef0ab..0000000 --- a/dist/Js/components/authloader/authloader.js +++ /dev/null @@ -1,162 +0,0 @@ -const template = document.createElement('template'); - -template.innerHTML = ` - -
- -
- - - - - -
-
-
-
- -
-` - -class AuthLoader extends HTMLElement { - constructor() { - super(); - console.log(this.payment); - this._shadowRoot = this.attachShadow({ 'mode': 'open' }); - this._shadowRoot.appendChild(template.content.cloneNode(true)); - this.show(); - } - - static get observedAttributes() { - return ['payment']; - } - - // define getters and setters for attributes - get payment() { - return this.getAttribute('payment'); - } - - set payment(val) { - if (val) { - this.setAttribute('payment', val); - } else { - this.removeAttribute('payment'); - } - } - - - show(){ - // $('.overlayanwiAuth').css('display','block'); - this._shadowRoot.querySelector('.overlayanwiAuth').style.display = "block"; - } - - hide(){ - //$('.overlayanwiAuth').addClass('display','none'); - this._shadowRoot.querySelector('.overlayanwiAuth').style.display = "none"; - } -} - -window.customElements.define('auth-loader', AuthLoader); diff --git a/dist/Js/components/authloader/passwordinput.js b/dist/Js/components/authloader/passwordinput.js deleted file mode 100644 index e69de29..0000000 diff --git a/dist/Js/components/select/selectcomponent.js b/dist/Js/components/select/selectcomponent.js deleted file mode 100644 index fb41b4d..0000000 --- a/dist/Js/components/select/selectcomponent.js +++ /dev/null @@ -1,256 +0,0 @@ - -class SearchableMulti extends HTMLElement { - static get observedAttributes() { - return ['placeholder']; - } - - constructor() { - super(); - this._values = []; - this._placeholder = 'Search...'; - } - - connectedCallback() { - if(!this._rendered) { - this._rendered = true; - this.attachShadow({ mode: 'open' }); - this.shadowRoot.appendChild(this._template()); - this._refresh(); - } - - this._nonSelected.addEventListener('click', this); - this._selected.addEventListener('click', this); - this._search.addEventListener('keyup', this); - } - - disconnectedCallback() { - this._nonSelected.removeEventListener('click', this); - this._selected.removeEventListener('click', this); - this._search.removeEventListener('keyup', this); - } - - attributeChangedCallback(name, oldVal, newVal) { - if(name === 'placeholder') { - this.placeholder = newVal; - } - } - - get value() { - return this._values; - } - - get placeholder() { - return this._placeholder; - } - - set placeholder(val) { - this._placeholder = val; - if(this._rendered) { - this.shadowRoot.querySelector('input').placeholder = val; - } - } - - handleEvent(ev) { - var el = ev.target; - switch(ev.type) { - case 'click': - if(el.className === 'item') { - if(el.parentNode.className === 'non-selected-wrapper') { - this._nonSelectedClick(el); - } else { - this._selectedClick(el); - } - } - break; - case 'keyup': - if(ev.keyCode === 32 || ev.keyCode === 13) { - if(el.className === 'item') { - if(el.parentNode.className === 'non-selected-wrapper') { - this._nonSelectedClick(el); - } else { - this._selectedClick(el); - } - ev.preventDefault(); - } - } else { - this._onSearch(); - } - break; - } - } - - _nonSelectedClick(el) { - // Not already selected - if(!el._selected) { - this._setSelected(el); - this.dispatchEvent(new Event('change')); - } - } - - _setSelected(el) { - el._option.selected = true; - var clone = el._selected = el.cloneNode(true); - clone._nonSelected = el; - this._selected.appendChild(clone); - this._values.push(el.dataset.value); - } - - _selectedClick(el) { - var nonSelected = el._nonSelected; - var option = nonSelected._option; - nonSelected._selected = undefined; - el.parentNode.removeChild(el); - - // Deselect the option - option.selected = false; - - // Remove from values - var idx = this._values.indexOf(el.dataset.value); - if(idx !== -1) { - this._values.splice(idx, 1); - this.dispatchEvent(new Event('change')); - } - } - - _onSearch() { - var term = this._search.value.toLowerCase(); - - function includes(str) { - return str.toLowerCase().indexOf(term) !== -1; - } - - var nonSelected, d; - for(var i = 0, len = this._nonSelected.children.length; i < len; i++) { - nonSelected = this._nonSelected.children[i]; - - if(term && !includes(nonSelected.dataset.value) && - !includes(nonSelected.textContent)) { - d = 'none'; - } else { - d = ''; - } - nonSelected.style.display = d; - if(nonSelected._selected) { - nonSelected._selected.style.display = d; - } - } - } - - _template() { - var doc = this.ownerDocument; - var wrapper = doc.createElement('div'); - wrapper.className = 'wrapper'; - - var style = doc.createElement('style'); - style.textContent = this._styles(); - - var input = this._search = doc.createElement('input'); - input.type = 'text'; - input.className = 'search-input'; - input.placeholder = this.placeholder; - - var nonSelected = this._nonSelected = doc.createElement('div'); - nonSelected.className = 'non-selected-wrapper'; - - var selected = this._selected = doc.createElement('div'); - selected.className = 'selected-wrapper'; - - wrapper.appendChild(style); - wrapper.appendChild(input); - wrapper.appendChild(nonSelected); - wrapper.appendChild(selected); - return wrapper; - } - - _styles() { - return ` - :host { - display: block; - } - - .wrapper { - border: 1px solid #ccc; - border-radius: 3px; - overflow: hidden; - width: 100%; - } - - .non-selected-wrapper, - .selected-wrapper { - box-sizing: border-box; - display: inline-block; - height: 200px; - overflow-y: scroll;; - padding: 10px; - vertical-align: top; - width: 50%; - } - - .non-selected-wrapper { - background: #fafafa; - border-right: 1px solid #ccc; - } - - .selected-wrapper { - background: #fff; - } - - .item { - cursor: pointer; - display: block; - padding: 5px 10px; - } - - .item:hover { - background: #ececec; - border-radius: 2px; - } - - .search-input { - border: 0; - border-bottom: 1px solid #ccc; - border-radius: 0; - display: block; - font-size: 1em; - margin: 0; - outline: 0; - padding: 10px 20px; - width: 100%; - } - - .non-selected-wrapper .item.selected { - opacity: 0.5; - } - - .non-selected-wrapper .row.selected:hover { - background: inherit; - cursor: inherit; - } - `; - } - - _refresh() { - this._selected.innerHTML = this._nonSelected.innerHTML = ''; - - var term = this._search.value; - var options = [].slice.call(this.querySelectorAll('option')); - var doc = this.ownerDocument; - - options.forEach(function(option){ - var row = doc.createElement('a'); - row.setAttribute('tabindex', "0"); - row.setAttribute('role', 'button'); - row.textContent = option.textContent; - row.dataset.value = option.value; - row.className = 'item'; - row._option = option; - this._nonSelected.appendChild(row); - - if(option.selected) { - this._setSelected(row); - } - }.bind(this)); - } - } - - customElements.define('searchable-multi', SearchableMulti); \ No newline at end of file diff --git a/dist/Js/fontawesome.all.js b/dist/Js/fontawesome.all.js deleted file mode 100644 index d354b44..0000000 --- a/dist/Js/fontawesome.all.js +++ /dev/null @@ -1,6 +0,0 @@ -/*! - * Font Awesome Free 6.4.0 by @fontawesome - https://fontawesome.com - * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) - * Copyright 2023 Fonticons, Inc. - */ -!function(){"use strict";var c={},l={};try{"undefined"!=typeof window&&(c=window),"undefined"!=typeof document&&(l=document)}catch(c){}var s=(c.navigator||{}).userAgent,a=void 0===s?"":s,z=c,e=l;z.document,e.documentElement&&e.head&&"function"==typeof e.addEventListener&&e.createElement,~a.indexOf("MSIE")||a.indexOf("Trident/");function H(l,c){var s,a=Object.keys(l);return Object.getOwnPropertySymbols&&(s=Object.getOwnPropertySymbols(l),c&&(s=s.filter(function(c){return Object.getOwnPropertyDescriptor(l,c).enumerable})),a.push.apply(a,s)),a}function t(l){for(var c=1;cc.length)&&(l=c.length);for(var s=0,a=new Array(l);sc.length)&&(l=c.length);for(var s=0,a=new Array(l);sc.length)&&(l=c.length);for(var s=0,a=new Array(l);sc.length)&&(l=c.length);for(var s=0,a=new Array(l);s>>0;s--;)l[s]=c[s];return l}function a1(c){return c.classList?s1(c.classList):(c.getAttribute("class")||"").split(" ").filter(function(c){return c})}function z1(c){return"".concat(c).replace(/&/g,"&").replace(/"/g,""").replace(/'/g,"'").replace(//g,">")}function e1(s){return Object.keys(s||{}).reduce(function(c,l){return c+"".concat(l,": ").concat(s[l].trim(),";")},"")}function H1(c){return c.size!==J.size||c.x!==J.x||c.y!==J.y||c.rotate!==J.rotate||c.flipX||c.flipY}function t1(){var c,l,s=b,a=Q.cssPrefix,z=Q.replacementClass,e=':host,:root{--fa-font-solid:normal 900 1em/1 "Font Awesome 6 Solid";--fa-font-regular:normal 400 1em/1 "Font Awesome 6 Regular";--fa-font-light:normal 300 1em/1 "Font Awesome 6 Light";--fa-font-thin:normal 100 1em/1 "Font Awesome 6 Thin";--fa-font-duotone:normal 900 1em/1 "Font Awesome 6 Duotone";--fa-font-sharp-solid:normal 900 1em/1 "Font Awesome 6 Sharp";--fa-font-sharp-regular:normal 400 1em/1 "Font Awesome 6 Sharp";--fa-font-sharp-light:normal 300 1em/1 "Font Awesome 6 Sharp";--fa-font-brands:normal 400 1em/1 "Font Awesome 6 Brands"}svg:not(:host).svg-inline--fa,svg:not(:root).svg-inline--fa{overflow:visible;box-sizing:content-box}.svg-inline--fa{display:var(--fa-display,inline-block);height:1em;overflow:visible;vertical-align:-.125em}.svg-inline--fa.fa-2xs{vertical-align:.1em}.svg-inline--fa.fa-xs{vertical-align:0}.svg-inline--fa.fa-sm{vertical-align:-.0714285705em}.svg-inline--fa.fa-lg{vertical-align:-.2em}.svg-inline--fa.fa-xl{vertical-align:-.25em}.svg-inline--fa.fa-2xl{vertical-align:-.3125em}.svg-inline--fa.fa-pull-left{margin-right:var(--fa-pull-margin,.3em);width:auto}.svg-inline--fa.fa-pull-right{margin-left:var(--fa-pull-margin,.3em);width:auto}.svg-inline--fa.fa-li{width:var(--fa-li-width,2em);top:.25em}.svg-inline--fa.fa-fw{width:var(--fa-fw-width,1.25em)}.fa-layers svg.svg-inline--fa{bottom:0;left:0;margin:auto;position:absolute;right:0;top:0}.fa-layers-counter,.fa-layers-text{display:inline-block;position:absolute;text-align:center}.fa-layers{display:inline-block;height:1em;position:relative;text-align:center;vertical-align:-.125em;width:1em}.fa-layers svg.svg-inline--fa{-webkit-transform-origin:center center;transform-origin:center center}.fa-layers-text{left:50%;top:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);-webkit-transform-origin:center center;transform-origin:center center}.fa-layers-counter{background-color:var(--fa-counter-background-color,#ff253a);border-radius:var(--fa-counter-border-radius,1em);box-sizing:border-box;color:var(--fa-inverse,#fff);line-height:var(--fa-counter-line-height,1);max-width:var(--fa-counter-max-width,5em);min-width:var(--fa-counter-min-width,1.5em);overflow:hidden;padding:var(--fa-counter-padding,.25em .5em);right:var(--fa-right,0);text-overflow:ellipsis;top:var(--fa-top,0);-webkit-transform:scale(var(--fa-counter-scale,.25));transform:scale(var(--fa-counter-scale,.25));-webkit-transform-origin:top right;transform-origin:top right}.fa-layers-bottom-right{bottom:var(--fa-bottom,0);right:var(--fa-right,0);top:auto;-webkit-transform:scale(var(--fa-layers-scale,.25));transform:scale(var(--fa-layers-scale,.25));-webkit-transform-origin:bottom right;transform-origin:bottom right}.fa-layers-bottom-left{bottom:var(--fa-bottom,0);left:var(--fa-left,0);right:auto;top:auto;-webkit-transform:scale(var(--fa-layers-scale,.25));transform:scale(var(--fa-layers-scale,.25));-webkit-transform-origin:bottom left;transform-origin:bottom left}.fa-layers-top-right{top:var(--fa-top,0);right:var(--fa-right,0);-webkit-transform:scale(var(--fa-layers-scale,.25));transform:scale(var(--fa-layers-scale,.25));-webkit-transform-origin:top right;transform-origin:top right}.fa-layers-top-left{left:var(--fa-left,0);right:auto;top:var(--fa-top,0);-webkit-transform:scale(var(--fa-layers-scale,.25));transform:scale(var(--fa-layers-scale,.25));-webkit-transform-origin:top left;transform-origin:top left}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-2xs{font-size:.625em;line-height:.1em;vertical-align:.225em}.fa-xs{font-size:.75em;line-height:.0833333337em;vertical-align:.125em}.fa-sm{font-size:.875em;line-height:.0714285718em;vertical-align:.0535714295em}.fa-lg{font-size:1.25em;line-height:.05em;vertical-align:-.075em}.fa-xl{font-size:1.5em;line-height:.0416666682em;vertical-align:-.125em}.fa-2xl{font-size:2em;line-height:.03125em;vertical-align:-.1875em}.fa-fw{text-align:center;width:1.25em}.fa-ul{list-style-type:none;margin-left:var(--fa-li-margin,2.5em);padding-left:0}.fa-ul>li{position:relative}.fa-li{left:calc(var(--fa-li-width,2em) * -1);position:absolute;text-align:center;width:var(--fa-li-width,2em);line-height:inherit}.fa-border{border-color:var(--fa-border-color,#eee);border-radius:var(--fa-border-radius,.1em);border-style:var(--fa-border-style,solid);border-width:var(--fa-border-width,.08em);padding:var(--fa-border-padding,.2em .25em .15em)}.fa-pull-left{float:left;margin-right:var(--fa-pull-margin,.3em)}.fa-pull-right{float:right;margin-left:var(--fa-pull-margin,.3em)}.fa-beat{-webkit-animation-name:fa-beat;animation-name:fa-beat;-webkit-animation-delay:var(--fa-animation-delay,0s);animation-delay:var(--fa-animation-delay,0s);-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal);-webkit-animation-duration:var(--fa-animation-duration,1s);animation-duration:var(--fa-animation-duration,1s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,ease-in-out);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-bounce{-webkit-animation-name:fa-bounce;animation-name:fa-bounce;-webkit-animation-delay:var(--fa-animation-delay,0s);animation-delay:var(--fa-animation-delay,0s);-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal);-webkit-animation-duration:var(--fa-animation-duration,1s);animation-duration:var(--fa-animation-duration,1s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,cubic-bezier(.28,.84,.42,1));animation-timing-function:var(--fa-animation-timing,cubic-bezier(.28,.84,.42,1))}.fa-fade{-webkit-animation-name:fa-fade;animation-name:fa-fade;-webkit-animation-delay:var(--fa-animation-delay,0s);animation-delay:var(--fa-animation-delay,0s);-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal);-webkit-animation-duration:var(--fa-animation-duration,1s);animation-duration:var(--fa-animation-duration,1s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1));animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1))}.fa-beat-fade{-webkit-animation-name:fa-beat-fade;animation-name:fa-beat-fade;-webkit-animation-delay:var(--fa-animation-delay,0s);animation-delay:var(--fa-animation-delay,0s);-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal);-webkit-animation-duration:var(--fa-animation-duration,1s);animation-duration:var(--fa-animation-duration,1s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1));animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1))}.fa-flip{-webkit-animation-name:fa-flip;animation-name:fa-flip;-webkit-animation-delay:var(--fa-animation-delay,0s);animation-delay:var(--fa-animation-delay,0s);-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal);-webkit-animation-duration:var(--fa-animation-duration,1s);animation-duration:var(--fa-animation-duration,1s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,ease-in-out);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-shake{-webkit-animation-name:fa-shake;animation-name:fa-shake;-webkit-animation-delay:var(--fa-animation-delay,0s);animation-delay:var(--fa-animation-delay,0s);-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal);-webkit-animation-duration:var(--fa-animation-duration,1s);animation-duration:var(--fa-animation-duration,1s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,linear);animation-timing-function:var(--fa-animation-timing,linear)}.fa-spin{-webkit-animation-name:fa-spin;animation-name:fa-spin;-webkit-animation-delay:var(--fa-animation-delay,0s);animation-delay:var(--fa-animation-delay,0s);-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal);-webkit-animation-duration:var(--fa-animation-duration,2s);animation-duration:var(--fa-animation-duration,2s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,linear);animation-timing-function:var(--fa-animation-timing,linear)}.fa-spin-reverse{--fa-animation-direction:reverse}.fa-pulse,.fa-spin-pulse{-webkit-animation-name:fa-spin;animation-name:fa-spin;-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal);-webkit-animation-duration:var(--fa-animation-duration,1s);animation-duration:var(--fa-animation-duration,1s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,steps(8));animation-timing-function:var(--fa-animation-timing,steps(8))}@media (prefers-reduced-motion:reduce){.fa-beat,.fa-beat-fade,.fa-bounce,.fa-fade,.fa-flip,.fa-pulse,.fa-shake,.fa-spin,.fa-spin-pulse{-webkit-animation-delay:-1ms;animation-delay:-1ms;-webkit-animation-duration:1ms;animation-duration:1ms;-webkit-animation-iteration-count:1;animation-iteration-count:1;-webkit-transition-delay:0s;transition-delay:0s;-webkit-transition-duration:0s;transition-duration:0s}}@-webkit-keyframes fa-beat{0%,90%{-webkit-transform:scale(1);transform:scale(1)}45%{-webkit-transform:scale(var(--fa-beat-scale,1.25));transform:scale(var(--fa-beat-scale,1.25))}}@keyframes fa-beat{0%,90%{-webkit-transform:scale(1);transform:scale(1)}45%{-webkit-transform:scale(var(--fa-beat-scale,1.25));transform:scale(var(--fa-beat-scale,1.25))}}@-webkit-keyframes fa-bounce{0%{-webkit-transform:scale(1,1) translateY(0);transform:scale(1,1) translateY(0)}10%{-webkit-transform:scale(var(--fa-bounce-start-scale-x,1.1),var(--fa-bounce-start-scale-y,.9)) translateY(0);transform:scale(var(--fa-bounce-start-scale-x,1.1),var(--fa-bounce-start-scale-y,.9)) translateY(0)}30%{-webkit-transform:scale(var(--fa-bounce-jump-scale-x,.9),var(--fa-bounce-jump-scale-y,1.1)) translateY(var(--fa-bounce-height,-.5em));transform:scale(var(--fa-bounce-jump-scale-x,.9),var(--fa-bounce-jump-scale-y,1.1)) translateY(var(--fa-bounce-height,-.5em))}50%{-webkit-transform:scale(var(--fa-bounce-land-scale-x,1.05),var(--fa-bounce-land-scale-y,.95)) translateY(0);transform:scale(var(--fa-bounce-land-scale-x,1.05),var(--fa-bounce-land-scale-y,.95)) translateY(0)}57%{-webkit-transform:scale(1,1) translateY(var(--fa-bounce-rebound,-.125em));transform:scale(1,1) translateY(var(--fa-bounce-rebound,-.125em))}64%{-webkit-transform:scale(1,1) translateY(0);transform:scale(1,1) translateY(0)}100%{-webkit-transform:scale(1,1) translateY(0);transform:scale(1,1) translateY(0)}}@keyframes fa-bounce{0%{-webkit-transform:scale(1,1) translateY(0);transform:scale(1,1) translateY(0)}10%{-webkit-transform:scale(var(--fa-bounce-start-scale-x,1.1),var(--fa-bounce-start-scale-y,.9)) translateY(0);transform:scale(var(--fa-bounce-start-scale-x,1.1),var(--fa-bounce-start-scale-y,.9)) translateY(0)}30%{-webkit-transform:scale(var(--fa-bounce-jump-scale-x,.9),var(--fa-bounce-jump-scale-y,1.1)) translateY(var(--fa-bounce-height,-.5em));transform:scale(var(--fa-bounce-jump-scale-x,.9),var(--fa-bounce-jump-scale-y,1.1)) translateY(var(--fa-bounce-height,-.5em))}50%{-webkit-transform:scale(var(--fa-bounce-land-scale-x,1.05),var(--fa-bounce-land-scale-y,.95)) translateY(0);transform:scale(var(--fa-bounce-land-scale-x,1.05),var(--fa-bounce-land-scale-y,.95)) translateY(0)}57%{-webkit-transform:scale(1,1) translateY(var(--fa-bounce-rebound,-.125em));transform:scale(1,1) translateY(var(--fa-bounce-rebound,-.125em))}64%{-webkit-transform:scale(1,1) translateY(0);transform:scale(1,1) translateY(0)}100%{-webkit-transform:scale(1,1) translateY(0);transform:scale(1,1) translateY(0)}}@-webkit-keyframes fa-fade{50%{opacity:var(--fa-fade-opacity,.4)}}@keyframes fa-fade{50%{opacity:var(--fa-fade-opacity,.4)}}@-webkit-keyframes fa-beat-fade{0%,100%{opacity:var(--fa-beat-fade-opacity,.4);-webkit-transform:scale(1);transform:scale(1)}50%{opacity:1;-webkit-transform:scale(var(--fa-beat-fade-scale,1.125));transform:scale(var(--fa-beat-fade-scale,1.125))}}@keyframes fa-beat-fade{0%,100%{opacity:var(--fa-beat-fade-opacity,.4);-webkit-transform:scale(1);transform:scale(1)}50%{opacity:1;-webkit-transform:scale(var(--fa-beat-fade-scale,1.125));transform:scale(var(--fa-beat-fade-scale,1.125))}}@-webkit-keyframes fa-flip{50%{-webkit-transform:rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),var(--fa-flip-angle,-180deg));transform:rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),var(--fa-flip-angle,-180deg))}}@keyframes fa-flip{50%{-webkit-transform:rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),var(--fa-flip-angle,-180deg));transform:rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),var(--fa-flip-angle,-180deg))}}@-webkit-keyframes fa-shake{0%{-webkit-transform:rotate(-15deg);transform:rotate(-15deg)}4%{-webkit-transform:rotate(15deg);transform:rotate(15deg)}24%,8%{-webkit-transform:rotate(-18deg);transform:rotate(-18deg)}12%,28%{-webkit-transform:rotate(18deg);transform:rotate(18deg)}16%{-webkit-transform:rotate(-22deg);transform:rotate(-22deg)}20%{-webkit-transform:rotate(22deg);transform:rotate(22deg)}32%{-webkit-transform:rotate(-12deg);transform:rotate(-12deg)}36%{-webkit-transform:rotate(12deg);transform:rotate(12deg)}100%,40%{-webkit-transform:rotate(0);transform:rotate(0)}}@keyframes fa-shake{0%{-webkit-transform:rotate(-15deg);transform:rotate(-15deg)}4%{-webkit-transform:rotate(15deg);transform:rotate(15deg)}24%,8%{-webkit-transform:rotate(-18deg);transform:rotate(-18deg)}12%,28%{-webkit-transform:rotate(18deg);transform:rotate(18deg)}16%{-webkit-transform:rotate(-22deg);transform:rotate(-22deg)}20%{-webkit-transform:rotate(22deg);transform:rotate(22deg)}32%{-webkit-transform:rotate(-12deg);transform:rotate(-12deg)}36%{-webkit-transform:rotate(12deg);transform:rotate(12deg)}100%,40%{-webkit-transform:rotate(0);transform:rotate(0)}}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}.fa-rotate-90{-webkit-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-webkit-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{-webkit-transform:scale(-1,1);transform:scale(-1,1)}.fa-flip-vertical{-webkit-transform:scale(1,-1);transform:scale(1,-1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{-webkit-transform:scale(-1,-1);transform:scale(-1,-1)}.fa-rotate-by{-webkit-transform:rotate(var(--fa-rotate-angle,none));transform:rotate(var(--fa-rotate-angle,none))}.fa-stack{display:inline-block;vertical-align:middle;height:2em;position:relative;width:2.5em}.fa-stack-1x,.fa-stack-2x{bottom:0;left:0;margin:auto;position:absolute;right:0;top:0;z-index:var(--fa-stack-z-index,auto)}.svg-inline--fa.fa-stack-1x{height:1em;width:1.25em}.svg-inline--fa.fa-stack-2x{height:2em;width:2.5em}.fa-inverse{color:var(--fa-inverse,#fff)}.fa-sr-only,.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.fa-sr-only-focusable:not(:focus),.sr-only-focusable:not(:focus){position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.svg-inline--fa .fa-primary{fill:var(--fa-primary-color,currentColor);opacity:var(--fa-primary-opacity,1)}.svg-inline--fa .fa-secondary{fill:var(--fa-secondary-color,currentColor);opacity:var(--fa-secondary-opacity,.4)}.svg-inline--fa.fa-swap-opacity .fa-primary{opacity:var(--fa-secondary-opacity,.4)}.svg-inline--fa.fa-swap-opacity .fa-secondary{opacity:var(--fa-primary-opacity,1)}.svg-inline--fa mask .fa-primary,.svg-inline--fa mask .fa-secondary{fill:#000}.fa-duotone.fa-inverse,.fad.fa-inverse{color:var(--fa-inverse,#fff)}';return"fa"===a&&z===s||(c=new RegExp("\\.".concat("fa","\\-"),"g"),l=new RegExp("\\--".concat("fa","\\-"),"g"),s=new RegExp("\\.".concat(s),"g"),e=e.replace(c,".".concat(a,"-")).replace(l,"--".concat(a,"-")).replace(s,".".concat(z))),e}var V1=!1;function r1(){Q.autoAddCss&&!V1&&(function(c){if(c&&L){var l=C.createElement("style");l.setAttribute("type","text/css"),l.innerHTML=c;for(var s=C.head.childNodes,a=null,z=s.length-1;-1").concat(a.map(o1).join(""),"")}function f1(c,l,s){if(c&&c[l]&&c[l][s])return{prefix:l,iconName:s,icon:c[l][s]}}L&&((i1=(C.documentElement.doScroll?/^loaded|^c/:/^loaded|^i|^c/).test(C.readyState))||C.addEventListener("DOMContentLoaded",M1));function v1(c,l,s,a){for(var z,e,H=Object.keys(c),t=H.length,V=void 0!==a?C1(l,a):l,r=void 0===s?(z=1,c[H[0]]):(z=0,s);zt.length)&&(a=t.length);for(var e=0,n=new Array(a);e>>0;e--;)a[e]=t[e];return a}function nt(t){return t.classList?et(t.classList):(t.getAttribute("class")||"").split(" ").filter(function(t){return t})}function it(t){return"".concat(t).replace(/&/g,"&").replace(/"/g,""").replace(/'/g,"'").replace(//g,">")}function rt(e){return Object.keys(e||{}).reduce(function(t,a){return t+"".concat(a,": ").concat(e[a].trim(),";")},"")}function ot(t){return t.size!==$.size||t.x!==$.x||t.y!==$.y||t.rotate!==$.rotate||t.flipX||t.flipY}function st(){var t,a,e=A,n=J.cssPrefix,i=J.replacementClass,r=':host,:root{--fa-font-solid:normal 900 1em/1 "Font Awesome 6 Solid";--fa-font-regular:normal 400 1em/1 "Font Awesome 6 Regular";--fa-font-light:normal 300 1em/1 "Font Awesome 6 Light";--fa-font-thin:normal 100 1em/1 "Font Awesome 6 Thin";--fa-font-duotone:normal 900 1em/1 "Font Awesome 6 Duotone";--fa-font-sharp-solid:normal 900 1em/1 "Font Awesome 6 Sharp";--fa-font-sharp-regular:normal 400 1em/1 "Font Awesome 6 Sharp";--fa-font-sharp-light:normal 300 1em/1 "Font Awesome 6 Sharp";--fa-font-brands:normal 400 1em/1 "Font Awesome 6 Brands"}svg:not(:host).svg-inline--fa,svg:not(:root).svg-inline--fa{overflow:visible;box-sizing:content-box}.svg-inline--fa{display:var(--fa-display,inline-block);height:1em;overflow:visible;vertical-align:-.125em}.svg-inline--fa.fa-2xs{vertical-align:.1em}.svg-inline--fa.fa-xs{vertical-align:0}.svg-inline--fa.fa-sm{vertical-align:-.0714285705em}.svg-inline--fa.fa-lg{vertical-align:-.2em}.svg-inline--fa.fa-xl{vertical-align:-.25em}.svg-inline--fa.fa-2xl{vertical-align:-.3125em}.svg-inline--fa.fa-pull-left{margin-right:var(--fa-pull-margin,.3em);width:auto}.svg-inline--fa.fa-pull-right{margin-left:var(--fa-pull-margin,.3em);width:auto}.svg-inline--fa.fa-li{width:var(--fa-li-width,2em);top:.25em}.svg-inline--fa.fa-fw{width:var(--fa-fw-width,1.25em)}.fa-layers svg.svg-inline--fa{bottom:0;left:0;margin:auto;position:absolute;right:0;top:0}.fa-layers-counter,.fa-layers-text{display:inline-block;position:absolute;text-align:center}.fa-layers{display:inline-block;height:1em;position:relative;text-align:center;vertical-align:-.125em;width:1em}.fa-layers svg.svg-inline--fa{-webkit-transform-origin:center center;transform-origin:center center}.fa-layers-text{left:50%;top:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);-webkit-transform-origin:center center;transform-origin:center center}.fa-layers-counter{background-color:var(--fa-counter-background-color,#ff253a);border-radius:var(--fa-counter-border-radius,1em);box-sizing:border-box;color:var(--fa-inverse,#fff);line-height:var(--fa-counter-line-height,1);max-width:var(--fa-counter-max-width,5em);min-width:var(--fa-counter-min-width,1.5em);overflow:hidden;padding:var(--fa-counter-padding,.25em .5em);right:var(--fa-right,0);text-overflow:ellipsis;top:var(--fa-top,0);-webkit-transform:scale(var(--fa-counter-scale,.25));transform:scale(var(--fa-counter-scale,.25));-webkit-transform-origin:top right;transform-origin:top right}.fa-layers-bottom-right{bottom:var(--fa-bottom,0);right:var(--fa-right,0);top:auto;-webkit-transform:scale(var(--fa-layers-scale,.25));transform:scale(var(--fa-layers-scale,.25));-webkit-transform-origin:bottom right;transform-origin:bottom right}.fa-layers-bottom-left{bottom:var(--fa-bottom,0);left:var(--fa-left,0);right:auto;top:auto;-webkit-transform:scale(var(--fa-layers-scale,.25));transform:scale(var(--fa-layers-scale,.25));-webkit-transform-origin:bottom left;transform-origin:bottom left}.fa-layers-top-right{top:var(--fa-top,0);right:var(--fa-right,0);-webkit-transform:scale(var(--fa-layers-scale,.25));transform:scale(var(--fa-layers-scale,.25));-webkit-transform-origin:top right;transform-origin:top right}.fa-layers-top-left{left:var(--fa-left,0);right:auto;top:var(--fa-top,0);-webkit-transform:scale(var(--fa-layers-scale,.25));transform:scale(var(--fa-layers-scale,.25));-webkit-transform-origin:top left;transform-origin:top left}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-2xs{font-size:.625em;line-height:.1em;vertical-align:.225em}.fa-xs{font-size:.75em;line-height:.0833333337em;vertical-align:.125em}.fa-sm{font-size:.875em;line-height:.0714285718em;vertical-align:.0535714295em}.fa-lg{font-size:1.25em;line-height:.05em;vertical-align:-.075em}.fa-xl{font-size:1.5em;line-height:.0416666682em;vertical-align:-.125em}.fa-2xl{font-size:2em;line-height:.03125em;vertical-align:-.1875em}.fa-fw{text-align:center;width:1.25em}.fa-ul{list-style-type:none;margin-left:var(--fa-li-margin,2.5em);padding-left:0}.fa-ul>li{position:relative}.fa-li{left:calc(var(--fa-li-width,2em) * -1);position:absolute;text-align:center;width:var(--fa-li-width,2em);line-height:inherit}.fa-border{border-color:var(--fa-border-color,#eee);border-radius:var(--fa-border-radius,.1em);border-style:var(--fa-border-style,solid);border-width:var(--fa-border-width,.08em);padding:var(--fa-border-padding,.2em .25em .15em)}.fa-pull-left{float:left;margin-right:var(--fa-pull-margin,.3em)}.fa-pull-right{float:right;margin-left:var(--fa-pull-margin,.3em)}.fa-beat{-webkit-animation-name:fa-beat;animation-name:fa-beat;-webkit-animation-delay:var(--fa-animation-delay,0s);animation-delay:var(--fa-animation-delay,0s);-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal);-webkit-animation-duration:var(--fa-animation-duration,1s);animation-duration:var(--fa-animation-duration,1s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,ease-in-out);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-bounce{-webkit-animation-name:fa-bounce;animation-name:fa-bounce;-webkit-animation-delay:var(--fa-animation-delay,0s);animation-delay:var(--fa-animation-delay,0s);-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal);-webkit-animation-duration:var(--fa-animation-duration,1s);animation-duration:var(--fa-animation-duration,1s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,cubic-bezier(.28,.84,.42,1));animation-timing-function:var(--fa-animation-timing,cubic-bezier(.28,.84,.42,1))}.fa-fade{-webkit-animation-name:fa-fade;animation-name:fa-fade;-webkit-animation-delay:var(--fa-animation-delay,0s);animation-delay:var(--fa-animation-delay,0s);-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal);-webkit-animation-duration:var(--fa-animation-duration,1s);animation-duration:var(--fa-animation-duration,1s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1));animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1))}.fa-beat-fade{-webkit-animation-name:fa-beat-fade;animation-name:fa-beat-fade;-webkit-animation-delay:var(--fa-animation-delay,0s);animation-delay:var(--fa-animation-delay,0s);-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal);-webkit-animation-duration:var(--fa-animation-duration,1s);animation-duration:var(--fa-animation-duration,1s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1));animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1))}.fa-flip{-webkit-animation-name:fa-flip;animation-name:fa-flip;-webkit-animation-delay:var(--fa-animation-delay,0s);animation-delay:var(--fa-animation-delay,0s);-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal);-webkit-animation-duration:var(--fa-animation-duration,1s);animation-duration:var(--fa-animation-duration,1s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,ease-in-out);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-shake{-webkit-animation-name:fa-shake;animation-name:fa-shake;-webkit-animation-delay:var(--fa-animation-delay,0s);animation-delay:var(--fa-animation-delay,0s);-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal);-webkit-animation-duration:var(--fa-animation-duration,1s);animation-duration:var(--fa-animation-duration,1s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,linear);animation-timing-function:var(--fa-animation-timing,linear)}.fa-spin{-webkit-animation-name:fa-spin;animation-name:fa-spin;-webkit-animation-delay:var(--fa-animation-delay,0s);animation-delay:var(--fa-animation-delay,0s);-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal);-webkit-animation-duration:var(--fa-animation-duration,2s);animation-duration:var(--fa-animation-duration,2s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,linear);animation-timing-function:var(--fa-animation-timing,linear)}.fa-spin-reverse{--fa-animation-direction:reverse}.fa-pulse,.fa-spin-pulse{-webkit-animation-name:fa-spin;animation-name:fa-spin;-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal);-webkit-animation-duration:var(--fa-animation-duration,1s);animation-duration:var(--fa-animation-duration,1s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,steps(8));animation-timing-function:var(--fa-animation-timing,steps(8))}@media (prefers-reduced-motion:reduce){.fa-beat,.fa-beat-fade,.fa-bounce,.fa-fade,.fa-flip,.fa-pulse,.fa-shake,.fa-spin,.fa-spin-pulse{-webkit-animation-delay:-1ms;animation-delay:-1ms;-webkit-animation-duration:1ms;animation-duration:1ms;-webkit-animation-iteration-count:1;animation-iteration-count:1;-webkit-transition-delay:0s;transition-delay:0s;-webkit-transition-duration:0s;transition-duration:0s}}@-webkit-keyframes fa-beat{0%,90%{-webkit-transform:scale(1);transform:scale(1)}45%{-webkit-transform:scale(var(--fa-beat-scale,1.25));transform:scale(var(--fa-beat-scale,1.25))}}@keyframes fa-beat{0%,90%{-webkit-transform:scale(1);transform:scale(1)}45%{-webkit-transform:scale(var(--fa-beat-scale,1.25));transform:scale(var(--fa-beat-scale,1.25))}}@-webkit-keyframes fa-bounce{0%{-webkit-transform:scale(1,1) translateY(0);transform:scale(1,1) translateY(0)}10%{-webkit-transform:scale(var(--fa-bounce-start-scale-x,1.1),var(--fa-bounce-start-scale-y,.9)) translateY(0);transform:scale(var(--fa-bounce-start-scale-x,1.1),var(--fa-bounce-start-scale-y,.9)) translateY(0)}30%{-webkit-transform:scale(var(--fa-bounce-jump-scale-x,.9),var(--fa-bounce-jump-scale-y,1.1)) translateY(var(--fa-bounce-height,-.5em));transform:scale(var(--fa-bounce-jump-scale-x,.9),var(--fa-bounce-jump-scale-y,1.1)) translateY(var(--fa-bounce-height,-.5em))}50%{-webkit-transform:scale(var(--fa-bounce-land-scale-x,1.05),var(--fa-bounce-land-scale-y,.95)) translateY(0);transform:scale(var(--fa-bounce-land-scale-x,1.05),var(--fa-bounce-land-scale-y,.95)) translateY(0)}57%{-webkit-transform:scale(1,1) translateY(var(--fa-bounce-rebound,-.125em));transform:scale(1,1) translateY(var(--fa-bounce-rebound,-.125em))}64%{-webkit-transform:scale(1,1) translateY(0);transform:scale(1,1) translateY(0)}100%{-webkit-transform:scale(1,1) translateY(0);transform:scale(1,1) translateY(0)}}@keyframes fa-bounce{0%{-webkit-transform:scale(1,1) translateY(0);transform:scale(1,1) translateY(0)}10%{-webkit-transform:scale(var(--fa-bounce-start-scale-x,1.1),var(--fa-bounce-start-scale-y,.9)) translateY(0);transform:scale(var(--fa-bounce-start-scale-x,1.1),var(--fa-bounce-start-scale-y,.9)) translateY(0)}30%{-webkit-transform:scale(var(--fa-bounce-jump-scale-x,.9),var(--fa-bounce-jump-scale-y,1.1)) translateY(var(--fa-bounce-height,-.5em));transform:scale(var(--fa-bounce-jump-scale-x,.9),var(--fa-bounce-jump-scale-y,1.1)) translateY(var(--fa-bounce-height,-.5em))}50%{-webkit-transform:scale(var(--fa-bounce-land-scale-x,1.05),var(--fa-bounce-land-scale-y,.95)) translateY(0);transform:scale(var(--fa-bounce-land-scale-x,1.05),var(--fa-bounce-land-scale-y,.95)) translateY(0)}57%{-webkit-transform:scale(1,1) translateY(var(--fa-bounce-rebound,-.125em));transform:scale(1,1) translateY(var(--fa-bounce-rebound,-.125em))}64%{-webkit-transform:scale(1,1) translateY(0);transform:scale(1,1) translateY(0)}100%{-webkit-transform:scale(1,1) translateY(0);transform:scale(1,1) translateY(0)}}@-webkit-keyframes fa-fade{50%{opacity:var(--fa-fade-opacity,.4)}}@keyframes fa-fade{50%{opacity:var(--fa-fade-opacity,.4)}}@-webkit-keyframes fa-beat-fade{0%,100%{opacity:var(--fa-beat-fade-opacity,.4);-webkit-transform:scale(1);transform:scale(1)}50%{opacity:1;-webkit-transform:scale(var(--fa-beat-fade-scale,1.125));transform:scale(var(--fa-beat-fade-scale,1.125))}}@keyframes fa-beat-fade{0%,100%{opacity:var(--fa-beat-fade-opacity,.4);-webkit-transform:scale(1);transform:scale(1)}50%{opacity:1;-webkit-transform:scale(var(--fa-beat-fade-scale,1.125));transform:scale(var(--fa-beat-fade-scale,1.125))}}@-webkit-keyframes fa-flip{50%{-webkit-transform:rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),var(--fa-flip-angle,-180deg));transform:rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),var(--fa-flip-angle,-180deg))}}@keyframes fa-flip{50%{-webkit-transform:rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),var(--fa-flip-angle,-180deg));transform:rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),var(--fa-flip-angle,-180deg))}}@-webkit-keyframes fa-shake{0%{-webkit-transform:rotate(-15deg);transform:rotate(-15deg)}4%{-webkit-transform:rotate(15deg);transform:rotate(15deg)}24%,8%{-webkit-transform:rotate(-18deg);transform:rotate(-18deg)}12%,28%{-webkit-transform:rotate(18deg);transform:rotate(18deg)}16%{-webkit-transform:rotate(-22deg);transform:rotate(-22deg)}20%{-webkit-transform:rotate(22deg);transform:rotate(22deg)}32%{-webkit-transform:rotate(-12deg);transform:rotate(-12deg)}36%{-webkit-transform:rotate(12deg);transform:rotate(12deg)}100%,40%{-webkit-transform:rotate(0);transform:rotate(0)}}@keyframes fa-shake{0%{-webkit-transform:rotate(-15deg);transform:rotate(-15deg)}4%{-webkit-transform:rotate(15deg);transform:rotate(15deg)}24%,8%{-webkit-transform:rotate(-18deg);transform:rotate(-18deg)}12%,28%{-webkit-transform:rotate(18deg);transform:rotate(18deg)}16%{-webkit-transform:rotate(-22deg);transform:rotate(-22deg)}20%{-webkit-transform:rotate(22deg);transform:rotate(22deg)}32%{-webkit-transform:rotate(-12deg);transform:rotate(-12deg)}36%{-webkit-transform:rotate(12deg);transform:rotate(12deg)}100%,40%{-webkit-transform:rotate(0);transform:rotate(0)}}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}.fa-rotate-90{-webkit-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-webkit-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{-webkit-transform:scale(-1,1);transform:scale(-1,1)}.fa-flip-vertical{-webkit-transform:scale(1,-1);transform:scale(1,-1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{-webkit-transform:scale(-1,-1);transform:scale(-1,-1)}.fa-rotate-by{-webkit-transform:rotate(var(--fa-rotate-angle,none));transform:rotate(var(--fa-rotate-angle,none))}.fa-stack{display:inline-block;vertical-align:middle;height:2em;position:relative;width:2.5em}.fa-stack-1x,.fa-stack-2x{bottom:0;left:0;margin:auto;position:absolute;right:0;top:0;z-index:var(--fa-stack-z-index,auto)}.svg-inline--fa.fa-stack-1x{height:1em;width:1.25em}.svg-inline--fa.fa-stack-2x{height:2em;width:2.5em}.fa-inverse{color:var(--fa-inverse,#fff)}.fa-sr-only,.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.fa-sr-only-focusable:not(:focus),.sr-only-focusable:not(:focus){position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.svg-inline--fa .fa-primary{fill:var(--fa-primary-color,currentColor);opacity:var(--fa-primary-opacity,1)}.svg-inline--fa .fa-secondary{fill:var(--fa-secondary-color,currentColor);opacity:var(--fa-secondary-opacity,.4)}.svg-inline--fa.fa-swap-opacity .fa-primary{opacity:var(--fa-secondary-opacity,.4)}.svg-inline--fa.fa-swap-opacity .fa-secondary{opacity:var(--fa-primary-opacity,1)}.svg-inline--fa mask .fa-primary,.svg-inline--fa mask .fa-secondary{fill:#000}.fa-duotone.fa-inverse,.fad.fa-inverse{color:var(--fa-inverse,#fff)}';return"fa"===n&&i===e||(t=new RegExp("\\.".concat("fa","\\-"),"g"),a=new RegExp("\\--".concat("fa","\\-"),"g"),e=new RegExp("\\.".concat(e),"g"),r=r.replace(t,".".concat(n,"-")).replace(a,"--".concat(n,"-")).replace(e,".".concat(i))),r}var ct=!1;function ft(){J.autoAddCss&&!ct&&(function(t){if(t&&y){var a=h.createElement("style");a.setAttribute("type","text/css"),a.innerHTML=t;for(var e=h.head.childNodes,n=null,i=e.length-1;-1").concat(n.map(pt).join(""),"")}function vt(t,a,e){if(t&&t[a]&&t[a][e])return{prefix:a,iconName:e,icon:t[a][e]}}y&&((dt=(h.documentElement.doScroll?/^loaded|^c/:/^loaded|^i|^c/).test(h.readyState))||h.addEventListener("DOMContentLoaded",lt));function gt(t,a,e,n){for(var i,r,o=Object.keys(t),s=o.length,c=void 0!==n?ht(a,n):a,f=void 0===e?(i=1,t[o[0]]):(i=0,e);i - - - `; - $("#footer-head").after(cookie); - let footerHtml = ``; - $("#footer-head").html(footerHtml); - - - - $("[alt=footer-rocket-img]").click(function (e) { - document.documentElement.scrollTop = 0; - }) - cookiesPolicyPrompt(); - - function cookiesPolicyPrompt() { - if (Cookies.get('AnwiCookiesPolicy') !== "yes") { - $("#cookieAcceptBar").fadeIn("slow"); - } - $('#btnAcceptCookiePolicy').on('click', function () { - Cookies.set('AnwiCookiesPolicy', 'yes', { expires: 30 }); - $("#cookieAcceptBar").fadeOut("slow"); - }); - let width = $(window).width(); - if (width < 575) { - $("#cookieAcceptBar").css({ - "max-width": "100%", - }); - } else if (width <= 1600 && width > 1200) { - $("#cookieAcceptBar").css({ - "max-width": "28%", - }); - } - else if (width <= 1200 && width > 575) { - $("#cookieAcceptBar").css({ - "max-width": "50%", - }); - } - } - - - //services pages links and sources - - let $body_pg = $("body").hasClass("services_page"); - let $nav_img ="../dist/assets/imgs/anwi-logo-1.png"; - let $footer_img = "../dist/assets/imgs/anwi-logo-2.png"; - let $scrool_top_img = "../dist/assets/imgs/Home/rocket-footer.png"; - - if($body_pg == true){ - $("#footer-head").find(".footer-logo img").attr("src",$footer_img); - $(".footer-socailImg").each(function(){ - let $social_img = $(this).find("img").attr("src"); - let $social_img_mbil = $social_img.includes("https://anwisystems.com/"); - if($social_img_mbil === false){ - let $social_icon_mbil = `.${$social_img}` - $(this).find("img").attr("src",$social_icon_mbil); - } - }) - $(".list-inline").find("li a").each(function(){ - let $footer_link = $(this).attr("href"); - let $footer_in = $footer_link.includes("https://anwisystems.com/"); - if($footer_in === false){ - if( $footer_link != "#"){ - let $in_link = `.${$footer_link}` - $(this).attr("href", $in_link); - } - } - }) - } -}); \ No newline at end of file diff --git a/dist/Js/form.js b/dist/Js/form.js deleted file mode 100644 index fe55fbf..0000000 --- a/dist/Js/form.js +++ /dev/null @@ -1,73 +0,0 @@ -let formHTML = ` - - -`; - -$("#enquire").html(formHTML); -$(".close").on("click", function () { - $("body").removeClass("open"); - }); \ No newline at end of file diff --git a/dist/Js/index/index.js b/dist/Js/index/index.js deleted file mode 100644 index 876e2cc..0000000 --- a/dist/Js/index/index.js +++ /dev/null @@ -1,178 +0,0 @@ -function indexInit(){ - function init(){ - initData(); - } - async function initData(){ - const ids = await getProductIdService(); - if(!ids) return; - let dataAcc = []; - for(let i=0;i -
-
- -

${itemname}

-

Buy Now

-
-
- `; - return `
-
- -

${itemname}

-

Buy Now

- -
-
`; - } - - function getProductIdService(){ - return new Promise(async (reslove,reject)=>{ - let resData =await API_SERVICES_ACTIONS.getAPIService(`apis/v4/bizgaze/integrations/products/getallproducts`,true); - if(resData.isError){ - alert(resData.errorMsg.message); - return; - } - - let res = resData.response; - - res = JSON.parse(res.result); - - - let resultItem = []; - - for(let i=0;i+~]|" + M + ")" + M + "*"), U = new RegExp(M + "|>"), X = new RegExp(F), V = new RegExp("^" + I + "$"), G = { ID: new RegExp("^#(" + I + ")"), CLASS: new RegExp("^\\.(" + I + ")"), TAG: new RegExp("^(" + I + "|[*])"), ATTR: new RegExp("^" + W), PSEUDO: new RegExp("^" + F), CHILD: new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\(" + M + "*(even|odd|(([+-]|)(\\d*)n|)" + M + "*(?:([+-]|)" + M + "*(\\d+)|))" + M + "*\\)|)", "i"), bool: new RegExp("^(?:" + R + ")$", "i"), needsContext: new RegExp("^" + M + "*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\(" + M + "*((?:-\\d)?\\d*)" + M + "*\\)|)(?=[^-]|$)", "i") }, Y = /HTML$/i, Q = /^(?:input|select|textarea|button)$/i, J = /^h\d$/i, K = /^[^{]+\{\s*\[native \w/, Z = /^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/, ee = /[+~]/, te = new RegExp("\\\\[\\da-fA-F]{1,6}" + M + "?|\\\\([^\\r\\n\\f])", "g"), ne = function (e, t) { var n = "0x" + e.slice(1) - 65536; return t || (n < 0 ? String.fromCharCode(n + 65536) : String.fromCharCode(n >> 10 | 55296, 1023 & n | 56320)) }, re = /([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g, ie = function (e, t) { return t ? "\0" === e ? "\ufffd" : e.slice(0, -1) + "\\" + e.charCodeAt(e.length - 1).toString(16) + " " : "\\" + e }, oe = function () { T() }, ae = be(function (e) { return !0 === e.disabled && "fieldset" === e.nodeName.toLowerCase() }, { dir: "parentNode", next: "legend" }); try { H.apply(t = O.call(p.childNodes), p.childNodes), t[p.childNodes.length].nodeType } catch (e) { H = { apply: t.length ? function (e, t) { L.apply(e, O.call(t)) } : function (e, t) { var n = e.length, r = 0; while (e[n++] = t[r++]); e.length = n - 1 } } } function se(t, e, n, r) { var i, o, a, s, u, l, c, f = e && e.ownerDocument, p = e ? e.nodeType : 9; if (n = n || [], "string" != typeof t || !t || 1 !== p && 9 !== p && 11 !== p) return n; if (!r && (T(e), e = e || C, S)) { if (11 !== p && (u = Z.exec(t))) if (i = u[1]) { if (9 === p) { if (!(a = e.getElementById(i))) return n; if (a.id === i) return n.push(a), n } else if (f && (a = f.getElementById(i)) && v(e, a) && a.id === i) return n.push(a), n } else { if (u[2]) return H.apply(n, e.getElementsByTagName(t)), n; if ((i = u[3]) && d.getElementsByClassName && e.getElementsByClassName) return H.apply(n, e.getElementsByClassName(i)), n } if (d.qsa && !N[t + " "] && (!y || !y.test(t)) && (1 !== p || "object" !== e.nodeName.toLowerCase())) { if (c = t, f = e, 1 === p && (U.test(t) || z.test(t))) { (f = ee.test(t) && ve(e.parentNode) || e) === e && d.scope || ((s = e.getAttribute("id")) ? s = s.replace(re, ie) : e.setAttribute("id", s = E)), o = (l = h(t)).length; while (o--) l[o] = (s ? "#" + s : ":scope") + " " + xe(l[o]); c = l.join(",") } try { if (d.cssSupportsSelector && !CSS.supports("selector(:is(" + c + "))")) throw new Error; return H.apply(n, f.querySelectorAll(c)), n } catch (e) { N(t, !0) } finally { s === E && e.removeAttribute("id") } } } return g(t.replace(B, "$1"), e, n, r) } function ue() { var r = []; return function e(t, n) { return r.push(t + " ") > b.cacheLength && delete e[r.shift()], e[t + " "] = n } } function le(e) { return e[E] = !0, e } function ce(e) { var t = C.createElement("fieldset"); try { return !!e(t) } catch (e) { return !1 } finally { t.parentNode && t.parentNode.removeChild(t), t = null } } function fe(e, t) { var n = e.split("|"), r = n.length; while (r--) b.attrHandle[n[r]] = t } function pe(e, t) { var n = t && e, r = n && 1 === e.nodeType && 1 === t.nodeType && e.sourceIndex - t.sourceIndex; if (r) return r; if (n) while (n = n.nextSibling) if (n === t) return -1; return e ? 1 : -1 } function de(t) { return function (e) { return "input" === e.nodeName.toLowerCase() && e.type === t } } function he(n) { return function (e) { var t = e.nodeName.toLowerCase(); return ("input" === t || "button" === t) && e.type === n } } function ge(t) { return function (e) { return "form" in e ? e.parentNode && !1 === e.disabled ? "label" in e ? "label" in e.parentNode ? e.parentNode.disabled === t : e.disabled === t : e.isDisabled === t || e.isDisabled !== !t && ae(e) === t : e.disabled === t : "label" in e && e.disabled === t } } function ye(a) { return le(function (o) { return o = +o, le(function (e, t) { var n, r = a([], e.length, o), i = r.length; while (i--) e[n = r[i]] && (e[n] = !(t[n] = e[n])) }) }) } function ve(e) { return e && "undefined" != typeof e.getElementsByTagName && e } for (e in d = se.support = {}, i = se.isXML = function (e) { var t = e && e.namespaceURI, n = e && (e.ownerDocument || e).documentElement; return !Y.test(t || n && n.nodeName || "HTML") }, T = se.setDocument = function (e) { var t, n, r = e ? e.ownerDocument || e : p; return r != C && 9 === r.nodeType && r.documentElement && (a = (C = r).documentElement, S = !i(C), p != C && (n = C.defaultView) && n.top !== n && (n.addEventListener ? n.addEventListener("unload", oe, !1) : n.attachEvent && n.attachEvent("onunload", oe)), d.scope = ce(function (e) { return a.appendChild(e).appendChild(C.createElement("div")), "undefined" != typeof e.querySelectorAll && !e.querySelectorAll(":scope fieldset div").length }), d.cssSupportsSelector = ce(function () { return CSS.supports("selector(*)") && C.querySelectorAll(":is(:jqfake)") && !CSS.supports("selector(:is(*,:jqfake))") }), d.attributes = ce(function (e) { return e.className = "i", !e.getAttribute("className") }), d.getElementsByTagName = ce(function (e) { return e.appendChild(C.createComment("")), !e.getElementsByTagName("*").length }), d.getElementsByClassName = K.test(C.getElementsByClassName), d.getById = ce(function (e) { return a.appendChild(e).id = E, !C.getElementsByName || !C.getElementsByName(E).length }), d.getById ? (b.filter.ID = function (e) { var t = e.replace(te, ne); return function (e) { return e.getAttribute("id") === t } }, b.find.ID = function (e, t) { if ("undefined" != typeof t.getElementById && S) { var n = t.getElementById(e); return n ? [n] : [] } }) : (b.filter.ID = function (e) { var n = e.replace(te, ne); return function (e) { var t = "undefined" != typeof e.getAttributeNode && e.getAttributeNode("id"); return t && t.value === n } }, b.find.ID = function (e, t) { if ("undefined" != typeof t.getElementById && S) { var n, r, i, o = t.getElementById(e); if (o) { if ((n = o.getAttributeNode("id")) && n.value === e) return [o]; i = t.getElementsByName(e), r = 0; while (o = i[r++]) if ((n = o.getAttributeNode("id")) && n.value === e) return [o] } return [] } }), b.find.TAG = d.getElementsByTagName ? function (e, t) { return "undefined" != typeof t.getElementsByTagName ? t.getElementsByTagName(e) : d.qsa ? t.querySelectorAll(e) : void 0 } : function (e, t) { var n, r = [], i = 0, o = t.getElementsByTagName(e); if ("*" === e) { while (n = o[i++]) 1 === n.nodeType && r.push(n); return r } return o }, b.find.CLASS = d.getElementsByClassName && function (e, t) { if ("undefined" != typeof t.getElementsByClassName && S) return t.getElementsByClassName(e) }, s = [], y = [], (d.qsa = K.test(C.querySelectorAll)) && (ce(function (e) { var t; a.appendChild(e).innerHTML = "", e.querySelectorAll("[msallowcapture^='']").length && y.push("[*^$]=" + M + "*(?:''|\"\")"), e.querySelectorAll("[selected]").length || y.push("\\[" + M + "*(?:value|" + R + ")"), e.querySelectorAll("[id~=" + E + "-]").length || y.push("~="), (t = C.createElement("input")).setAttribute("name", ""), e.appendChild(t), e.querySelectorAll("[name='']").length || y.push("\\[" + M + "*name" + M + "*=" + M + "*(?:''|\"\")"), e.querySelectorAll(":checked").length || y.push(":checked"), e.querySelectorAll("a#" + E + "+*").length || y.push(".#.+[+~]"), e.querySelectorAll("\\\f"), y.push("[\\r\\n\\f]") }), ce(function (e) { e.innerHTML = ""; var t = C.createElement("input"); t.setAttribute("type", "hidden"), e.appendChild(t).setAttribute("name", "D"), e.querySelectorAll("[name=d]").length && y.push("name" + M + "*[*^$|!~]?="), 2 !== e.querySelectorAll(":enabled").length && y.push(":enabled", ":disabled"), a.appendChild(e).disabled = !0, 2 !== e.querySelectorAll(":disabled").length && y.push(":enabled", ":disabled"), e.querySelectorAll("*,:x"), y.push(",.*:") })), (d.matchesSelector = K.test(c = a.matches || a.webkitMatchesSelector || a.mozMatchesSelector || a.oMatchesSelector || a.msMatchesSelector)) && ce(function (e) { d.disconnectedMatch = c.call(e, "*"), c.call(e, "[s!='']:x"), s.push("!=", F) }), d.cssSupportsSelector || y.push(":has"), y = y.length && new RegExp(y.join("|")), s = s.length && new RegExp(s.join("|")), t = K.test(a.compareDocumentPosition), v = t || K.test(a.contains) ? function (e, t) { var n = 9 === e.nodeType && e.documentElement || e, r = t && t.parentNode; return e === r || !(!r || 1 !== r.nodeType || !(n.contains ? n.contains(r) : e.compareDocumentPosition && 16 & e.compareDocumentPosition(r))) } : function (e, t) { if (t) while (t = t.parentNode) if (t === e) return !0; return !1 }, j = t ? function (e, t) { if (e === t) return l = !0, 0; var n = !e.compareDocumentPosition - !t.compareDocumentPosition; return n || (1 & (n = (e.ownerDocument || e) == (t.ownerDocument || t) ? e.compareDocumentPosition(t) : 1) || !d.sortDetached && t.compareDocumentPosition(e) === n ? e == C || e.ownerDocument == p && v(p, e) ? -1 : t == C || t.ownerDocument == p && v(p, t) ? 1 : u ? P(u, e) - P(u, t) : 0 : 4 & n ? -1 : 1) } : function (e, t) { if (e === t) return l = !0, 0; var n, r = 0, i = e.parentNode, o = t.parentNode, a = [e], s = [t]; if (!i || !o) return e == C ? -1 : t == C ? 1 : i ? -1 : o ? 1 : u ? P(u, e) - P(u, t) : 0; if (i === o) return pe(e, t); n = e; while (n = n.parentNode) a.unshift(n); n = t; while (n = n.parentNode) s.unshift(n); while (a[r] === s[r]) r++; return r ? pe(a[r], s[r]) : a[r] == p ? -1 : s[r] == p ? 1 : 0 }), C }, se.matches = function (e, t) { return se(e, null, null, t) }, se.matchesSelector = function (e, t) { if (T(e), d.matchesSelector && S && !N[t + " "] && (!s || !s.test(t)) && (!y || !y.test(t))) try { var n = c.call(e, t); if (n || d.disconnectedMatch || e.document && 11 !== e.document.nodeType) return n } catch (e) { N(t, !0) } return 0 < se(t, C, null, [e]).length }, se.contains = function (e, t) { return (e.ownerDocument || e) != C && T(e), v(e, t) }, se.attr = function (e, t) { (e.ownerDocument || e) != C && T(e); var n = b.attrHandle[t.toLowerCase()], r = n && D.call(b.attrHandle, t.toLowerCase()) ? n(e, t, !S) : void 0; return void 0 !== r ? r : d.attributes || !S ? e.getAttribute(t) : (r = e.getAttributeNode(t)) && r.specified ? r.value : null }, se.escape = function (e) { return (e + "").replace(re, ie) }, se.error = function (e) { throw new Error("Syntax error, unrecognized expression: " + e) }, se.uniqueSort = function (e) { var t, n = [], r = 0, i = 0; if (l = !d.detectDuplicates, u = !d.sortStable && e.slice(0), e.sort(j), l) { while (t = e[i++]) t === e[i] && (r = n.push(i)); while (r--) e.splice(n[r], 1) } return u = null, e }, o = se.getText = function (e) { var t, n = "", r = 0, i = e.nodeType; if (i) { if (1 === i || 9 === i || 11 === i) { if ("string" == typeof e.textContent) return e.textContent; for (e = e.firstChild; e; e = e.nextSibling)n += o(e) } else if (3 === i || 4 === i) return e.nodeValue } else while (t = e[r++]) n += o(t); return n }, (b = se.selectors = { cacheLength: 50, createPseudo: le, match: G, attrHandle: {}, find: {}, relative: { ">": { dir: "parentNode", first: !0 }, " ": { dir: "parentNode" }, "+": { dir: "previousSibling", first: !0 }, "~": { dir: "previousSibling" } }, preFilter: { ATTR: function (e) { return e[1] = e[1].replace(te, ne), e[3] = (e[3] || e[4] || e[5] || "").replace(te, ne), "~=" === e[2] && (e[3] = " " + e[3] + " "), e.slice(0, 4) }, CHILD: function (e) { return e[1] = e[1].toLowerCase(), "nth" === e[1].slice(0, 3) ? (e[3] || se.error(e[0]), e[4] = +(e[4] ? e[5] + (e[6] || 1) : 2 * ("even" === e[3] || "odd" === e[3])), e[5] = +(e[7] + e[8] || "odd" === e[3])) : e[3] && se.error(e[0]), e }, PSEUDO: function (e) { var t, n = !e[6] && e[2]; return G.CHILD.test(e[0]) ? null : (e[3] ? e[2] = e[4] || e[5] || "" : n && X.test(n) && (t = h(n, !0)) && (t = n.indexOf(")", n.length - t) - n.length) && (e[0] = e[0].slice(0, t), e[2] = n.slice(0, t)), e.slice(0, 3)) } }, filter: { TAG: function (e) { var t = e.replace(te, ne).toLowerCase(); return "*" === e ? function () { return !0 } : function (e) { return e.nodeName && e.nodeName.toLowerCase() === t } }, CLASS: function (e) { var t = m[e + " "]; return t || (t = new RegExp("(^|" + M + ")" + e + "(" + M + "|$)")) && m(e, function (e) { return t.test("string" == typeof e.className && e.className || "undefined" != typeof e.getAttribute && e.getAttribute("class") || "") }) }, ATTR: function (n, r, i) { return function (e) { var t = se.attr(e, n); return null == t ? "!=" === r : !r || (t += "", "=" === r ? t === i : "!=" === r ? t !== i : "^=" === r ? i && 0 === t.indexOf(i) : "*=" === r ? i && -1 < t.indexOf(i) : "$=" === r ? i && t.slice(-i.length) === i : "~=" === r ? -1 < (" " + t.replace($, " ") + " ").indexOf(i) : "|=" === r && (t === i || t.slice(0, i.length + 1) === i + "-")) } }, CHILD: function (h, e, t, g, y) { var v = "nth" !== h.slice(0, 3), m = "last" !== h.slice(-4), x = "of-type" === e; return 1 === g && 0 === y ? function (e) { return !!e.parentNode } : function (e, t, n) { var r, i, o, a, s, u, l = v !== m ? "nextSibling" : "previousSibling", c = e.parentNode, f = x && e.nodeName.toLowerCase(), p = !n && !x, d = !1; if (c) { if (v) { while (l) { a = e; while (a = a[l]) if (x ? a.nodeName.toLowerCase() === f : 1 === a.nodeType) return !1; u = l = "only" === h && !u && "nextSibling" } return !0 } if (u = [m ? c.firstChild : c.lastChild], m && p) { d = (s = (r = (i = (o = (a = c)[E] || (a[E] = {}))[a.uniqueID] || (o[a.uniqueID] = {}))[h] || [])[0] === k && r[1]) && r[2], a = s && c.childNodes[s]; while (a = ++s && a && a[l] || (d = s = 0) || u.pop()) if (1 === a.nodeType && ++d && a === e) { i[h] = [k, s, d]; break } } else if (p && (d = s = (r = (i = (o = (a = e)[E] || (a[E] = {}))[a.uniqueID] || (o[a.uniqueID] = {}))[h] || [])[0] === k && r[1]), !1 === d) while (a = ++s && a && a[l] || (d = s = 0) || u.pop()) if ((x ? a.nodeName.toLowerCase() === f : 1 === a.nodeType) && ++d && (p && ((i = (o = a[E] || (a[E] = {}))[a.uniqueID] || (o[a.uniqueID] = {}))[h] = [k, d]), a === e)) break; return (d -= y) === g || d % g == 0 && 0 <= d / g } } }, PSEUDO: function (e, o) { var t, a = b.pseudos[e] || b.setFilters[e.toLowerCase()] || se.error("unsupported pseudo: " + e); return a[E] ? a(o) : 1 < a.length ? (t = [e, e, "", o], b.setFilters.hasOwnProperty(e.toLowerCase()) ? le(function (e, t) { var n, r = a(e, o), i = r.length; while (i--) e[n = P(e, r[i])] = !(t[n] = r[i]) }) : function (e) { return a(e, 0, t) }) : a } }, pseudos: { not: le(function (e) { var r = [], i = [], s = f(e.replace(B, "$1")); return s[E] ? le(function (e, t, n, r) { var i, o = s(e, null, r, []), a = e.length; while (a--) (i = o[a]) && (e[a] = !(t[a] = i)) }) : function (e, t, n) { return r[0] = e, s(r, null, n, i), r[0] = null, !i.pop() } }), has: le(function (t) { return function (e) { return 0 < se(t, e).length } }), contains: le(function (t) { return t = t.replace(te, ne), function (e) { return -1 < (e.textContent || o(e)).indexOf(t) } }), lang: le(function (n) { return V.test(n || "") || se.error("unsupported lang: " + n), n = n.replace(te, ne).toLowerCase(), function (e) { var t; do { if (t = S ? e.lang : e.getAttribute("xml:lang") || e.getAttribute("lang")) return (t = t.toLowerCase()) === n || 0 === t.indexOf(n + "-") } while ((e = e.parentNode) && 1 === e.nodeType); return !1 } }), target: function (e) { var t = n.location && n.location.hash; return t && t.slice(1) === e.id }, root: function (e) { return e === a }, focus: function (e) { return e === C.activeElement && (!C.hasFocus || C.hasFocus()) && !!(e.type || e.href || ~e.tabIndex) }, enabled: ge(!1), disabled: ge(!0), checked: function (e) { var t = e.nodeName.toLowerCase(); return "input" === t && !!e.checked || "option" === t && !!e.selected }, selected: function (e) { return e.parentNode && e.parentNode.selectedIndex, !0 === e.selected }, empty: function (e) { for (e = e.firstChild; e; e = e.nextSibling)if (e.nodeType < 6) return !1; return !0 }, parent: function (e) { return !b.pseudos.empty(e) }, header: function (e) { return J.test(e.nodeName) }, input: function (e) { return Q.test(e.nodeName) }, button: function (e) { var t = e.nodeName.toLowerCase(); return "input" === t && "button" === e.type || "button" === t }, text: function (e) { var t; return "input" === e.nodeName.toLowerCase() && "text" === e.type && (null == (t = e.getAttribute("type")) || "text" === t.toLowerCase()) }, first: ye(function () { return [0] }), last: ye(function (e, t) { return [t - 1] }), eq: ye(function (e, t, n) { return [n < 0 ? n + t : n] }), even: ye(function (e, t) { for (var n = 0; n < t; n += 2)e.push(n); return e }), odd: ye(function (e, t) { for (var n = 1; n < t; n += 2)e.push(n); return e }), lt: ye(function (e, t, n) { for (var r = n < 0 ? n + t : t < n ? t : n; 0 <= --r;)e.push(r); return e }), gt: ye(function (e, t, n) { for (var r = n < 0 ? n + t : n; ++r < t;)e.push(r); return e }) } }).pseudos.nth = b.pseudos.eq, { radio: !0, checkbox: !0, file: !0, password: !0, image: !0 }) b.pseudos[e] = de(e); for (e in { submit: !0, reset: !0 }) b.pseudos[e] = he(e); function me() { } function xe(e) { for (var t = 0, n = e.length, r = ""; t < n; t++)r += e[t].value; return r } function be(s, e, t) { var u = e.dir, l = e.next, c = l || u, f = t && "parentNode" === c, p = r++; return e.first ? function (e, t, n) { while (e = e[u]) if (1 === e.nodeType || f) return s(e, t, n); return !1 } : function (e, t, n) { var r, i, o, a = [k, p]; if (n) { while (e = e[u]) if ((1 === e.nodeType || f) && s(e, t, n)) return !0 } else while (e = e[u]) if (1 === e.nodeType || f) if (i = (o = e[E] || (e[E] = {}))[e.uniqueID] || (o[e.uniqueID] = {}), l && l === e.nodeName.toLowerCase()) e = e[u] || e; else { if ((r = i[c]) && r[0] === k && r[1] === p) return a[2] = r[2]; if ((i[c] = a)[2] = s(e, t, n)) return !0 } return !1 } } function we(i) { return 1 < i.length ? function (e, t, n) { var r = i.length; while (r--) if (!i[r](e, t, n)) return !1; return !0 } : i[0] } function Te(e, t, n, r, i) { for (var o, a = [], s = 0, u = e.length, l = null != t; s < u; s++)(o = e[s]) && (n && !n(o, r, i) || (a.push(o), l && t.push(s))); return a } function Ce(d, h, g, y, v, e) { return y && !y[E] && (y = Ce(y)), v && !v[E] && (v = Ce(v, e)), le(function (e, t, n, r) { var i, o, a, s = [], u = [], l = t.length, c = e || function (e, t, n) { for (var r = 0, i = t.length; r < i; r++)se(e, t[r], n); return n }(h || "*", n.nodeType ? [n] : n, []), f = !d || !e && h ? c : Te(c, s, d, n, r), p = g ? v || (e ? d : l || y) ? [] : t : f; if (g && g(f, p, n, r), y) { i = Te(p, u), y(i, [], n, r), o = i.length; while (o--) (a = i[o]) && (p[u[o]] = !(f[u[o]] = a)) } if (e) { if (v || d) { if (v) { i = [], o = p.length; while (o--) (a = p[o]) && i.push(f[o] = a); v(null, p = [], i, r) } o = p.length; while (o--) (a = p[o]) && -1 < (i = v ? P(e, a) : s[o]) && (e[i] = !(t[i] = a)) } } else p = Te(p === t ? p.splice(l, p.length) : p), v ? v(null, t, p, r) : H.apply(t, p) }) } function Se(e) { for (var i, t, n, r = e.length, o = b.relative[e[0].type], a = o || b.relative[" "], s = o ? 1 : 0, u = be(function (e) { return e === i }, a, !0), l = be(function (e) { return -1 < P(i, e) }, a, !0), c = [function (e, t, n) { var r = !o && (n || t !== w) || ((i = t).nodeType ? u(e, t, n) : l(e, t, n)); return i = null, r }]; s < r; s++)if (t = b.relative[e[s].type]) c = [be(we(c), t)]; else { if ((t = b.filter[e[s].type].apply(null, e[s].matches))[E]) { for (n = ++s; n < r; n++)if (b.relative[e[n].type]) break; return Ce(1 < s && we(c), 1 < s && xe(e.slice(0, s - 1).concat({ value: " " === e[s - 2].type ? "*" : "" })).replace(B, "$1"), t, s < n && Se(e.slice(s, n)), n < r && Se(e = e.slice(n)), n < r && xe(e)) } c.push(t) } return we(c) } return me.prototype = b.filters = b.pseudos, b.setFilters = new me, h = se.tokenize = function (e, t) { var n, r, i, o, a, s, u, l = x[e + " "]; if (l) return t ? 0 : l.slice(0); a = e, s = [], u = b.preFilter; while (a) { for (o in n && !(r = _.exec(a)) || (r && (a = a.slice(r[0].length) || a), s.push(i = [])), n = !1, (r = z.exec(a)) && (n = r.shift(), i.push({ value: n, type: r[0].replace(B, " ") }), a = a.slice(n.length)), b.filter) !(r = G[o].exec(a)) || u[o] && !(r = u[o](r)) || (n = r.shift(), i.push({ value: n, type: o, matches: r }), a = a.slice(n.length)); if (!n) break } return t ? a.length : a ? se.error(e) : x(e, s).slice(0) }, f = se.compile = function (e, t) { var n, y, v, m, x, r, i = [], o = [], a = A[e + " "]; if (!a) { t || (t = h(e)), n = t.length; while (n--) (a = Se(t[n]))[E] ? i.push(a) : o.push(a); (a = A(e, (y = o, m = 0 < (v = i).length, x = 0 < y.length, r = function (e, t, n, r, i) { var o, a, s, u = 0, l = "0", c = e && [], f = [], p = w, d = e || x && b.find.TAG("*", i), h = k += null == p ? 1 : Math.random() || .1, g = d.length; for (i && (w = t == C || t || i); l !== g && null != (o = d[l]); l++) { if (x && o) { a = 0, t || o.ownerDocument == C || (T(o), n = !S); while (s = y[a++]) if (s(o, t || C, n)) { r.push(o); break } i && (k = h) } m && ((o = !s && o) && u--, e && c.push(o)) } if (u += l, m && l !== u) { a = 0; while (s = v[a++]) s(c, f, t, n); if (e) { if (0 < u) while (l--) c[l] || f[l] || (f[l] = q.call(r)); f = Te(f) } H.apply(r, f), i && !e && 0 < f.length && 1 < u + v.length && se.uniqueSort(r) } return i && (k = h, w = p), c }, m ? le(r) : r))).selector = e } return a }, g = se.select = function (e, t, n, r) { var i, o, a, s, u, l = "function" == typeof e && e, c = !r && h(e = l.selector || e); if (n = n || [], 1 === c.length) { if (2 < (o = c[0] = c[0].slice(0)).length && "ID" === (a = o[0]).type && 9 === t.nodeType && S && b.relative[o[1].type]) { if (!(t = (b.find.ID(a.matches[0].replace(te, ne), t) || [])[0])) return n; l && (t = t.parentNode), e = e.slice(o.shift().value.length) } i = G.needsContext.test(e) ? 0 : o.length; while (i--) { if (a = o[i], b.relative[s = a.type]) break; if ((u = b.find[s]) && (r = u(a.matches[0].replace(te, ne), ee.test(o[0].type) && ve(t.parentNode) || t))) { if (o.splice(i, 1), !(e = r.length && xe(o))) return H.apply(n, r), n; break } } } return (l || f(e, c))(r, t, !S, n, !t || ee.test(e) && ve(t.parentNode) || t), n }, d.sortStable = E.split("").sort(j).join("") === E, d.detectDuplicates = !!l, T(), d.sortDetached = ce(function (e) { return 1 & e.compareDocumentPosition(C.createElement("fieldset")) }), ce(function (e) { return e.innerHTML = "", "#" === e.firstChild.getAttribute("href") }) || fe("type|href|height|width", function (e, t, n) { if (!n) return e.getAttribute(t, "type" === t.toLowerCase() ? 1 : 2) }), d.attributes && ce(function (e) { return e.innerHTML = "", e.firstChild.setAttribute("value", ""), "" === e.firstChild.getAttribute("value") }) || fe("value", function (e, t, n) { if (!n && "input" === e.nodeName.toLowerCase()) return e.defaultValue }), ce(function (e) { return null == e.getAttribute("disabled") }) || fe(R, function (e, t, n) { var r; if (!n) return !0 === e[t] ? t.toLowerCase() : (r = e.getAttributeNode(t)) && r.specified ? r.value : null }), se }(C); E.find = d, E.expr = d.selectors, E.expr[":"] = E.expr.pseudos, E.uniqueSort = E.unique = d.uniqueSort, E.text = d.getText, E.isXMLDoc = d.isXML, E.contains = d.contains, E.escapeSelector = d.escape; var h = function (e, t, n) { var r = [], i = void 0 !== n; while ((e = e[t]) && 9 !== e.nodeType) if (1 === e.nodeType) { if (i && E(e).is(n)) break; r.push(e) } return r }, T = function (e, t) { for (var n = []; e; e = e.nextSibling)1 === e.nodeType && e !== t && n.push(e); return n }, k = E.expr.match.needsContext; function A(e, t) { return e.nodeName && e.nodeName.toLowerCase() === t.toLowerCase() } var N = /^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i; function j(e, n, r) { return m(n) ? E.grep(e, function (e, t) { return !!n.call(e, t, e) !== r }) : n.nodeType ? E.grep(e, function (e) { return e === n !== r }) : "string" != typeof n ? E.grep(e, function (e) { return -1 < i.call(n, e) !== r }) : E.filter(n, e, r) } E.filter = function (e, t, n) { var r = t[0]; return n && (e = ":not(" + e + ")"), 1 === t.length && 1 === r.nodeType ? E.find.matchesSelector(r, e) ? [r] : [] : E.find.matches(e, E.grep(t, function (e) { return 1 === e.nodeType })) }, E.fn.extend({ find: function (e) { var t, n, r = this.length, i = this; if ("string" != typeof e) return this.pushStack(E(e).filter(function () { for (t = 0; t < r; t++)if (E.contains(i[t], this)) return !0 })); for (n = this.pushStack([]), t = 0; t < r; t++)E.find(e, i[t], n); return 1 < r ? E.uniqueSort(n) : n }, filter: function (e) { return this.pushStack(j(this, e || [], !1)) }, not: function (e) { return this.pushStack(j(this, e || [], !0)) }, is: function (e) { return !!j(this, "string" == typeof e && k.test(e) ? E(e) : e || [], !1).length } }); var D, q = /^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/; (E.fn.init = function (e, t, n) { var r, i; if (!e) return this; if (n = n || D, "string" == typeof e) { if (!(r = "<" === e[0] && ">" === e[e.length - 1] && 3 <= e.length ? [null, e, null] : q.exec(e)) || !r[1] && t) return !t || t.jquery ? (t || n).find(e) : this.constructor(t).find(e); if (r[1]) { if (t = t instanceof E ? t[0] : t, E.merge(this, E.parseHTML(r[1], t && t.nodeType ? t.ownerDocument || t : S, !0)), N.test(r[1]) && E.isPlainObject(t)) for (r in t) m(this[r]) ? this[r](t[r]) : this.attr(r, t[r]); return this } return (i = S.getElementById(r[2])) && (this[0] = i, this.length = 1), this } return e.nodeType ? (this[0] = e, this.length = 1, this) : m(e) ? void 0 !== n.ready ? n.ready(e) : e(E) : E.makeArray(e, this) }).prototype = E.fn, D = E(S); var L = /^(?:parents|prev(?:Until|All))/, H = { children: !0, contents: !0, next: !0, prev: !0 }; function O(e, t) { while ((e = e[t]) && 1 !== e.nodeType); return e } E.fn.extend({ has: function (e) { var t = E(e, this), n = t.length; return this.filter(function () { for (var e = 0; e < n; e++)if (E.contains(this, t[e])) return !0 }) }, closest: function (e, t) { var n, r = 0, i = this.length, o = [], a = "string" != typeof e && E(e); if (!k.test(e)) for (; r < i; r++)for (n = this[r]; n && n !== t; n = n.parentNode)if (n.nodeType < 11 && (a ? -1 < a.index(n) : 1 === n.nodeType && E.find.matchesSelector(n, e))) { o.push(n); break } return this.pushStack(1 < o.length ? E.uniqueSort(o) : o) }, index: function (e) { return e ? "string" == typeof e ? i.call(E(e), this[0]) : i.call(this, e.jquery ? e[0] : e) : this[0] && this[0].parentNode ? this.first().prevAll().length : -1 }, add: function (e, t) { return this.pushStack(E.uniqueSort(E.merge(this.get(), E(e, t)))) }, addBack: function (e) { return this.add(null == e ? this.prevObject : this.prevObject.filter(e)) } }), E.each({ parent: function (e) { var t = e.parentNode; return t && 11 !== t.nodeType ? t : null }, parents: function (e) { return h(e, "parentNode") }, parentsUntil: function (e, t, n) { return h(e, "parentNode", n) }, next: function (e) { return O(e, "nextSibling") }, prev: function (e) { return O(e, "previousSibling") }, nextAll: function (e) { return h(e, "nextSibling") }, prevAll: function (e) { return h(e, "previousSibling") }, nextUntil: function (e, t, n) { return h(e, "nextSibling", n) }, prevUntil: function (e, t, n) { return h(e, "previousSibling", n) }, siblings: function (e) { return T((e.parentNode || {}).firstChild, e) }, children: function (e) { return T(e.firstChild) }, contents: function (e) { return null != e.contentDocument && r(e.contentDocument) ? e.contentDocument : (A(e, "template") && (e = e.content || e), E.merge([], e.childNodes)) } }, function (r, i) { E.fn[r] = function (e, t) { var n = E.map(this, i, e); return "Until" !== r.slice(-5) && (t = e), t && "string" == typeof t && (n = E.filter(t, n)), 1 < this.length && (H[r] || E.uniqueSort(n), L.test(r) && n.reverse()), this.pushStack(n) } }); var P = /[^\x20\t\r\n\f]+/g; function R(e) { return e } function M(e) { throw e } function I(e, t, n, r) { var i; try { e && m(i = e.promise) ? i.call(e).done(t).fail(n) : e && m(i = e.then) ? i.call(e, t, n) : t.apply(void 0, [e].slice(r)) } catch (e) { n.apply(void 0, [e]) } } E.Callbacks = function (r) { var e, n; r = "string" == typeof r ? (e = r, n = {}, E.each(e.match(P) || [], function (e, t) { n[t] = !0 }), n) : E.extend({}, r); var i, t, o, a, s = [], u = [], l = -1, c = function () { for (a = a || r.once, o = i = !0; u.length; l = -1) { t = u.shift(); while (++l < s.length) !1 === s[l].apply(t[0], t[1]) && r.stopOnFalse && (l = s.length, t = !1) } r.memory || (t = !1), i = !1, a && (s = t ? [] : "") }, f = { add: function () { return s && (t && !i && (l = s.length - 1, u.push(t)), function n(e) { E.each(e, function (e, t) { m(t) ? r.unique && f.has(t) || s.push(t) : t && t.length && "string" !== w(t) && n(t) }) }(arguments), t && !i && c()), this }, remove: function () { return E.each(arguments, function (e, t) { var n; while (-1 < (n = E.inArray(t, s, n))) s.splice(n, 1), n <= l && l-- }), this }, has: function (e) { return e ? -1 < E.inArray(e, s) : 0 < s.length }, empty: function () { return s && (s = []), this }, disable: function () { return a = u = [], s = t = "", this }, disabled: function () { return !s }, lock: function () { return a = u = [], t || i || (s = t = ""), this }, locked: function () { return !!a }, fireWith: function (e, t) { return a || (t = [e, (t = t || []).slice ? t.slice() : t], u.push(t), i || c()), this }, fire: function () { return f.fireWith(this, arguments), this }, fired: function () { return !!o } }; return f }, E.extend({ Deferred: function (e) { var o = [["notify", "progress", E.Callbacks("memory"), E.Callbacks("memory"), 2], ["resolve", "done", E.Callbacks("once memory"), E.Callbacks("once memory"), 0, "resolved"], ["reject", "fail", E.Callbacks("once memory"), E.Callbacks("once memory"), 1, "rejected"]], i = "pending", a = { state: function () { return i }, always: function () { return s.done(arguments).fail(arguments), this }, "catch": function (e) { return a.then(null, e) }, pipe: function () { var i = arguments; return E.Deferred(function (r) { E.each(o, function (e, t) { var n = m(i[t[4]]) && i[t[4]]; s[t[1]](function () { var e = n && n.apply(this, arguments); e && m(e.promise) ? e.promise().progress(r.notify).done(r.resolve).fail(r.reject) : r[t[0] + "With"](this, n ? [e] : arguments) }) }), i = null }).promise() }, then: function (t, n, r) { var u = 0; function l(i, o, a, s) { return function () { var n = this, r = arguments, e = function () { var e, t; if (!(i < u)) { if ((e = a.apply(n, r)) === o.promise()) throw new TypeError("Thenable self-resolution"); t = e && ("object" == typeof e || "function" == typeof e) && e.then, m(t) ? s ? t.call(e, l(u, o, R, s), l(u, o, M, s)) : (u++, t.call(e, l(u, o, R, s), l(u, o, M, s), l(u, o, R, o.notifyWith))) : (a !== R && (n = void 0, r = [e]), (s || o.resolveWith)(n, r)) } }, t = s ? e : function () { try { e() } catch (e) { E.Deferred.exceptionHook && E.Deferred.exceptionHook(e, t.stackTrace), u <= i + 1 && (a !== M && (n = void 0, r = [e]), o.rejectWith(n, r)) } }; i ? t() : (E.Deferred.getStackHook && (t.stackTrace = E.Deferred.getStackHook()), C.setTimeout(t)) } } return E.Deferred(function (e) { o[0][3].add(l(0, e, m(r) ? r : R, e.notifyWith)), o[1][3].add(l(0, e, m(t) ? t : R)), o[2][3].add(l(0, e, m(n) ? n : M)) }).promise() }, promise: function (e) { return null != e ? E.extend(e, a) : a } }, s = {}; return E.each(o, function (e, t) { var n = t[2], r = t[5]; a[t[1]] = n.add, r && n.add(function () { i = r }, o[3 - e][2].disable, o[3 - e][3].disable, o[0][2].lock, o[0][3].lock), n.add(t[3].fire), s[t[0]] = function () { return s[t[0] + "With"](this === s ? void 0 : this, arguments), this }, s[t[0] + "With"] = n.fireWith }), a.promise(s), e && e.call(s, s), s }, when: function (e) { var n = arguments.length, t = n, r = Array(t), i = s.call(arguments), o = E.Deferred(), a = function (t) { return function (e) { r[t] = this, i[t] = 1 < arguments.length ? s.call(arguments) : e, --n || o.resolveWith(r, i) } }; if (n <= 1 && (I(e, o.done(a(t)).resolve, o.reject, !n), "pending" === o.state() || m(i[t] && i[t].then))) return o.then(); while (t--) I(i[t], a(t), o.reject); return o.promise() } }); var W = /^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/; E.Deferred.exceptionHook = function (e, t) { C.console && C.console.warn && e && W.test(e.name) && C.console.warn("jQuery.Deferred exception: " + e.message, e.stack, t) }, E.readyException = function (e) { C.setTimeout(function () { throw e }) }; var F = E.Deferred(); function $() { S.removeEventListener("DOMContentLoaded", $), C.removeEventListener("load", $), E.ready() } E.fn.ready = function (e) { return F.then(e)["catch"](function (e) { E.readyException(e) }), this }, E.extend({ isReady: !1, readyWait: 1, ready: function (e) { (!0 === e ? --E.readyWait : E.isReady) || (E.isReady = !0) !== e && 0 < --E.readyWait || F.resolveWith(S, [E]) } }), E.ready.then = F.then, "complete" === S.readyState || "loading" !== S.readyState && !S.documentElement.doScroll ? C.setTimeout(E.ready) : (S.addEventListener("DOMContentLoaded", $), C.addEventListener("load", $)); var B = function (e, t, n, r, i, o, a) { var s = 0, u = e.length, l = null == n; if ("object" === w(n)) for (s in i = !0, n) B(e, t, s, n[s], !0, o, a); else if (void 0 !== r && (i = !0, m(r) || (a = !0), l && (a ? (t.call(e, r), t = null) : (l = t, t = function (e, t, n) { return l.call(E(e), n) })), t)) for (; s < u; s++)t(e[s], n, a ? r : r.call(e[s], s, t(e[s], n))); return i ? e : l ? t.call(e) : u ? t(e[0], n) : o }, _ = /^-ms-/, z = /-([a-z])/g; function U(e, t) { return t.toUpperCase() } function X(e) { return e.replace(_, "ms-").replace(z, U) } var V = function (e) { return 1 === e.nodeType || 9 === e.nodeType || !+e.nodeType }; function G() { this.expando = E.expando + G.uid++ } G.uid = 1, G.prototype = { cache: function (e) { var t = e[this.expando]; return t || (t = {}, V(e) && (e.nodeType ? e[this.expando] = t : Object.defineProperty(e, this.expando, { value: t, configurable: !0 }))), t }, set: function (e, t, n) { var r, i = this.cache(e); if ("string" == typeof t) i[X(t)] = n; else for (r in t) i[X(r)] = t[r]; return i }, get: function (e, t) { return void 0 === t ? this.cache(e) : e[this.expando] && e[this.expando][X(t)] }, access: function (e, t, n) { return void 0 === t || t && "string" == typeof t && void 0 === n ? this.get(e, t) : (this.set(e, t, n), void 0 !== n ? n : t) }, remove: function (e, t) { var n, r = e[this.expando]; if (void 0 !== r) { if (void 0 !== t) { n = (t = Array.isArray(t) ? t.map(X) : (t = X(t)) in r ? [t] : t.match(P) || []).length; while (n--) delete r[t[n]] } (void 0 === t || E.isEmptyObject(r)) && (e.nodeType ? e[this.expando] = void 0 : delete e[this.expando]) } }, hasData: function (e) { var t = e[this.expando]; return void 0 !== t && !E.isEmptyObject(t) } }; var Y = new G, Q = new G, J = /^(?:\{[\w\W]*\}|\[[\w\W]*\])$/, K = /[A-Z]/g; function Z(e, t, n) { var r, i; if (void 0 === n && 1 === e.nodeType) if (r = "data-" + t.replace(K, "-$&").toLowerCase(), "string" == typeof (n = e.getAttribute(r))) { try { n = "true" === (i = n) || "false" !== i && ("null" === i ? null : i === +i + "" ? +i : J.test(i) ? JSON.parse(i) : i) } catch (e) { } Q.set(e, t, n) } else n = void 0; return n } E.extend({ hasData: function (e) { return Q.hasData(e) || Y.hasData(e) }, data: function (e, t, n) { return Q.access(e, t, n) }, removeData: function (e, t) { Q.remove(e, t) }, _data: function (e, t, n) { return Y.access(e, t, n) }, _removeData: function (e, t) { Y.remove(e, t) } }), E.fn.extend({ data: function (n, e) { var t, r, i, o = this[0], a = o && o.attributes; if (void 0 === n) { if (this.length && (i = Q.get(o), 1 === o.nodeType && !Y.get(o, "hasDataAttrs"))) { t = a.length; while (t--) a[t] && 0 === (r = a[t].name).indexOf("data-") && (r = X(r.slice(5)), Z(o, r, i[r])); Y.set(o, "hasDataAttrs", !0) } return i } return "object" == typeof n ? this.each(function () { Q.set(this, n) }) : B(this, function (e) { var t; if (o && void 0 === e) return void 0 !== (t = Q.get(o, n)) ? t : void 0 !== (t = Z(o, n)) ? t : void 0; this.each(function () { Q.set(this, n, e) }) }, null, e, 1 < arguments.length, null, !0) }, removeData: function (e) { return this.each(function () { Q.remove(this, e) }) } }), E.extend({ queue: function (e, t, n) { var r; if (e) return t = (t || "fx") + "queue", r = Y.get(e, t), n && (!r || Array.isArray(n) ? r = Y.access(e, t, E.makeArray(n)) : r.push(n)), r || [] }, dequeue: function (e, t) { t = t || "fx"; var n = E.queue(e, t), r = n.length, i = n.shift(), o = E._queueHooks(e, t); "inprogress" === i && (i = n.shift(), r--), i && ("fx" === t && n.unshift("inprogress"), delete o.stop, i.call(e, function () { E.dequeue(e, t) }, o)), !r && o && o.empty.fire() }, _queueHooks: function (e, t) { var n = t + "queueHooks"; return Y.get(e, n) || Y.access(e, n, { empty: E.Callbacks("once memory").add(function () { Y.remove(e, [t + "queue", n]) }) }) } }), E.fn.extend({ queue: function (t, n) { var e = 2; return "string" != typeof t && (n = t, t = "fx", e--), arguments.length < e ? E.queue(this[0], t) : void 0 === n ? this : this.each(function () { var e = E.queue(this, t, n); E._queueHooks(this, t), "fx" === t && "inprogress" !== e[0] && E.dequeue(this, t) }) }, dequeue: function (e) { return this.each(function () { E.dequeue(this, e) }) }, clearQueue: function (e) { return this.queue(e || "fx", []) }, promise: function (e, t) { var n, r = 1, i = E.Deferred(), o = this, a = this.length, s = function () { --r || i.resolveWith(o, [o]) }; "string" != typeof e && (t = e, e = void 0), e = e || "fx"; while (a--) (n = Y.get(o[a], e + "queueHooks")) && n.empty && (r++, n.empty.add(s)); return s(), i.promise(t) } }); var ee = /[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source, te = new RegExp("^(?:([+-])=|)(" + ee + ")([a-z%]*)$", "i"), ne = ["Top", "Right", "Bottom", "Left"], re = S.documentElement, ie = function (e) { return E.contains(e.ownerDocument, e) }, oe = { composed: !0 }; re.getRootNode && (ie = function (e) { return E.contains(e.ownerDocument, e) || e.getRootNode(oe) === e.ownerDocument }); var ae = function (e, t) { return "none" === (e = t || e).style.display || "" === e.style.display && ie(e) && "none" === E.css(e, "display") }; function se(e, t, n, r) { var i, o, a = 20, s = r ? function () { return r.cur() } : function () { return E.css(e, t, "") }, u = s(), l = n && n[3] || (E.cssNumber[t] ? "" : "px"), c = e.nodeType && (E.cssNumber[t] || "px" !== l && +u) && te.exec(E.css(e, t)); if (c && c[3] !== l) { u /= 2, l = l || c[3], c = +u || 1; while (a--) E.style(e, t, c + l), (1 - o) * (1 - (o = s() / u || .5)) <= 0 && (a = 0), c /= o; c *= 2, E.style(e, t, c + l), n = n || [] } return n && (c = +c || +u || 0, i = n[1] ? c + (n[1] + 1) * n[2] : +n[2], r && (r.unit = l, r.start = c, r.end = i)), i } var ue = {}; function le(e, t) { for (var n, r, i, o, a, s, u, l = [], c = 0, f = e.length; c < f; c++)(r = e[c]).style && (n = r.style.display, t ? ("none" === n && (l[c] = Y.get(r, "display") || null, l[c] || (r.style.display = "")), "" === r.style.display && ae(r) && (l[c] = (u = a = o = void 0, a = (i = r).ownerDocument, s = i.nodeName, (u = ue[s]) || (o = a.body.appendChild(a.createElement(s)), u = E.css(o, "display"), o.parentNode.removeChild(o), "none" === u && (u = "block"), ue[s] = u)))) : "none" !== n && (l[c] = "none", Y.set(r, "display", n))); for (c = 0; c < f; c++)null != l[c] && (e[c].style.display = l[c]); return e } E.fn.extend({ show: function () { return le(this, !0) }, hide: function () { return le(this) }, toggle: function (e) { return "boolean" == typeof e ? e ? this.show() : this.hide() : this.each(function () { ae(this) ? E(this).show() : E(this).hide() }) } }); var ce, fe, pe = /^(?:checkbox|radio)$/i, de = /<([a-z][^\/\0>\x20\t\r\n\f]*)/i, he = /^$|^module$|\/(?:java|ecma)script/i; ce = S.createDocumentFragment().appendChild(S.createElement("div")), (fe = S.createElement("input")).setAttribute("type", "radio"), fe.setAttribute("checked", "checked"), fe.setAttribute("name", "t"), ce.appendChild(fe), v.checkClone = ce.cloneNode(!0).cloneNode(!0).lastChild.checked, ce.innerHTML = "", v.noCloneChecked = !!ce.cloneNode(!0).lastChild.defaultValue, ce.innerHTML = "", v.option = !!ce.lastChild; var ge = { thead: [1, "", "
"], col: [2, "", "
"], tr: [2, "", "
"], td: [3, "", "
"], _default: [0, "", ""] }; function ye(e, t) { var n; return n = "undefined" != typeof e.getElementsByTagName ? e.getElementsByTagName(t || "*") : "undefined" != typeof e.querySelectorAll ? e.querySelectorAll(t || "*") : [], void 0 === t || t && A(e, t) ? E.merge([e], n) : n } function ve(e, t) { for (var n = 0, r = e.length; n < r; n++)Y.set(e[n], "globalEval", !t || Y.get(t[n], "globalEval")) } ge.tbody = ge.tfoot = ge.colgroup = ge.caption = ge.thead, ge.th = ge.td, v.option || (ge.optgroup = ge.option = [1, ""]); var me = /<|&#?\w+;/; function xe(e, t, n, r, i) { for (var o, a, s, u, l, c, f = t.createDocumentFragment(), p = [], d = 0, h = e.length; d < h; d++)if ((o = e[d]) || 0 === o) if ("object" === w(o)) E.merge(p, o.nodeType ? [o] : o); else if (me.test(o)) { a = a || f.appendChild(t.createElement("div")), s = (de.exec(o) || ["", ""])[1].toLowerCase(), u = ge[s] || ge._default, a.innerHTML = u[1] + E.htmlPrefilter(o) + u[2], c = u[0]; while (c--) a = a.lastChild; E.merge(p, a.childNodes), (a = f.firstChild).textContent = "" } else p.push(t.createTextNode(o)); f.textContent = "", d = 0; while (o = p[d++]) if (r && -1 < E.inArray(o, r)) i && i.push(o); else if (l = ie(o), a = ye(f.appendChild(o), "script"), l && ve(a), n) { c = 0; while (o = a[c++]) he.test(o.type || "") && n.push(o) } return f } var be = /^([^.]*)(?:\.(.+)|)/; function we() { return !0 } function Te() { return !1 } function Ce(e, t) { return e === function () { try { return S.activeElement } catch (e) { } }() == ("focus" === t) } function Se(e, t, n, r, i, o) { var a, s; if ("object" == typeof t) { for (s in "string" != typeof n && (r = r || n, n = void 0), t) Se(e, s, n, r, t[s], o); return e } if (null == r && null == i ? (i = n, r = n = void 0) : null == i && ("string" == typeof n ? (i = r, r = void 0) : (i = r, r = n, n = void 0)), !1 === i) i = Te; else if (!i) return e; return 1 === o && (a = i, (i = function (e) { return E().off(e), a.apply(this, arguments) }).guid = a.guid || (a.guid = E.guid++)), e.each(function () { E.event.add(this, t, i, r, n) }) } function Ee(e, i, o) { o ? (Y.set(e, i, !1), E.event.add(e, i, { namespace: !1, handler: function (e) { var t, n, r = Y.get(this, i); if (1 & e.isTrigger && this[i]) { if (r.length) (E.event.special[i] || {}).delegateType && e.stopPropagation(); else if (r = s.call(arguments), Y.set(this, i, r), t = o(this, i), this[i](), r !== (n = Y.get(this, i)) || t ? Y.set(this, i, !1) : n = {}, r !== n) return e.stopImmediatePropagation(), e.preventDefault(), n && n.value } else r.length && (Y.set(this, i, { value: E.event.trigger(E.extend(r[0], E.Event.prototype), r.slice(1), this) }), e.stopImmediatePropagation()) } })) : void 0 === Y.get(e, i) && E.event.add(e, i, we) } E.event = { global: {}, add: function (t, e, n, r, i) { var o, a, s, u, l, c, f, p, d, h, g, y = Y.get(t); if (V(t)) { n.handler && (n = (o = n).handler, i = o.selector), i && E.find.matchesSelector(re, i), n.guid || (n.guid = E.guid++), (u = y.events) || (u = y.events = Object.create(null)), (a = y.handle) || (a = y.handle = function (e) { return "undefined" != typeof E && E.event.triggered !== e.type ? E.event.dispatch.apply(t, arguments) : void 0 }), l = (e = (e || "").match(P) || [""]).length; while (l--) d = g = (s = be.exec(e[l]) || [])[1], h = (s[2] || "").split(".").sort(), d && (f = E.event.special[d] || {}, d = (i ? f.delegateType : f.bindType) || d, f = E.event.special[d] || {}, c = E.extend({ type: d, origType: g, data: r, handler: n, guid: n.guid, selector: i, needsContext: i && E.expr.match.needsContext.test(i), namespace: h.join(".") }, o), (p = u[d]) || ((p = u[d] = []).delegateCount = 0, f.setup && !1 !== f.setup.call(t, r, h, a) || t.addEventListener && t.addEventListener(d, a)), f.add && (f.add.call(t, c), c.handler.guid || (c.handler.guid = n.guid)), i ? p.splice(p.delegateCount++, 0, c) : p.push(c), E.event.global[d] = !0) } }, remove: function (e, t, n, r, i) { var o, a, s, u, l, c, f, p, d, h, g, y = Y.hasData(e) && Y.get(e); if (y && (u = y.events)) { l = (t = (t || "").match(P) || [""]).length; while (l--) if (d = g = (s = be.exec(t[l]) || [])[1], h = (s[2] || "").split(".").sort(), d) { f = E.event.special[d] || {}, p = u[d = (r ? f.delegateType : f.bindType) || d] || [], s = s[2] && new RegExp("(^|\\.)" + h.join("\\.(?:.*\\.|)") + "(\\.|$)"), a = o = p.length; while (o--) c = p[o], !i && g !== c.origType || n && n.guid !== c.guid || s && !s.test(c.namespace) || r && r !== c.selector && ("**" !== r || !c.selector) || (p.splice(o, 1), c.selector && p.delegateCount--, f.remove && f.remove.call(e, c)); a && !p.length && (f.teardown && !1 !== f.teardown.call(e, h, y.handle) || E.removeEvent(e, d, y.handle), delete u[d]) } else for (d in u) E.event.remove(e, d + t[l], n, r, !0); E.isEmptyObject(u) && Y.remove(e, "handle events") } }, dispatch: function (e) { var t, n, r, i, o, a, s = new Array(arguments.length), u = E.event.fix(e), l = (Y.get(this, "events") || Object.create(null))[u.type] || [], c = E.event.special[u.type] || {}; for (s[0] = u, t = 1; t < arguments.length; t++)s[t] = arguments[t]; if (u.delegateTarget = this, !c.preDispatch || !1 !== c.preDispatch.call(this, u)) { a = E.event.handlers.call(this, u, l), t = 0; while ((i = a[t++]) && !u.isPropagationStopped()) { u.currentTarget = i.elem, n = 0; while ((o = i.handlers[n++]) && !u.isImmediatePropagationStopped()) u.rnamespace && !1 !== o.namespace && !u.rnamespace.test(o.namespace) || (u.handleObj = o, u.data = o.data, void 0 !== (r = ((E.event.special[o.origType] || {}).handle || o.handler).apply(i.elem, s)) && !1 === (u.result = r) && (u.preventDefault(), u.stopPropagation())) } return c.postDispatch && c.postDispatch.call(this, u), u.result } }, handlers: function (e, t) { var n, r, i, o, a, s = [], u = t.delegateCount, l = e.target; if (u && l.nodeType && !("click" === e.type && 1 <= e.button)) for (; l !== this; l = l.parentNode || this)if (1 === l.nodeType && ("click" !== e.type || !0 !== l.disabled)) { for (o = [], a = {}, n = 0; n < u; n++)void 0 === a[i = (r = t[n]).selector + " "] && (a[i] = r.needsContext ? -1 < E(i, this).index(l) : E.find(i, this, null, [l]).length), a[i] && o.push(r); o.length && s.push({ elem: l, handlers: o }) } return l = this, u < t.length && s.push({ elem: l, handlers: t.slice(u) }), s }, addProp: function (t, e) { Object.defineProperty(E.Event.prototype, t, { enumerable: !0, configurable: !0, get: m(e) ? function () { if (this.originalEvent) return e(this.originalEvent) } : function () { if (this.originalEvent) return this.originalEvent[t] }, set: function (e) { Object.defineProperty(this, t, { enumerable: !0, configurable: !0, writable: !0, value: e }) } }) }, fix: function (e) { return e[E.expando] ? e : new E.Event(e) }, special: { load: { noBubble: !0 }, click: { setup: function (e) { var t = this || e; return pe.test(t.type) && t.click && A(t, "input") && Ee(t, "click", we), !1 }, trigger: function (e) { var t = this || e; return pe.test(t.type) && t.click && A(t, "input") && Ee(t, "click"), !0 }, _default: function (e) { var t = e.target; return pe.test(t.type) && t.click && A(t, "input") && Y.get(t, "click") || A(t, "a") } }, beforeunload: { postDispatch: function (e) { void 0 !== e.result && e.originalEvent && (e.originalEvent.returnValue = e.result) } } } }, E.removeEvent = function (e, t, n) { e.removeEventListener && e.removeEventListener(t, n) }, E.Event = function (e, t) { if (!(this instanceof E.Event)) return new E.Event(e, t); e && e.type ? (this.originalEvent = e, this.type = e.type, this.isDefaultPrevented = e.defaultPrevented || void 0 === e.defaultPrevented && !1 === e.returnValue ? we : Te, this.target = e.target && 3 === e.target.nodeType ? e.target.parentNode : e.target, this.currentTarget = e.currentTarget, this.relatedTarget = e.relatedTarget) : this.type = e, t && E.extend(this, t), this.timeStamp = e && e.timeStamp || Date.now(), this[E.expando] = !0 }, E.Event.prototype = { constructor: E.Event, isDefaultPrevented: Te, isPropagationStopped: Te, isImmediatePropagationStopped: Te, isSimulated: !1, preventDefault: function () { var e = this.originalEvent; this.isDefaultPrevented = we, e && !this.isSimulated && e.preventDefault() }, stopPropagation: function () { var e = this.originalEvent; this.isPropagationStopped = we, e && !this.isSimulated && e.stopPropagation() }, stopImmediatePropagation: function () { var e = this.originalEvent; this.isImmediatePropagationStopped = we, e && !this.isSimulated && e.stopImmediatePropagation(), this.stopPropagation() } }, E.each({ altKey: !0, bubbles: !0, cancelable: !0, changedTouches: !0, ctrlKey: !0, detail: !0, eventPhase: !0, metaKey: !0, pageX: !0, pageY: !0, shiftKey: !0, view: !0, "char": !0, code: !0, charCode: !0, key: !0, keyCode: !0, button: !0, buttons: !0, clientX: !0, clientY: !0, offsetX: !0, offsetY: !0, pointerId: !0, pointerType: !0, screenX: !0, screenY: !0, targetTouches: !0, toElement: !0, touches: !0, which: !0 }, E.event.addProp), E.each({ focus: "focusin", blur: "focusout" }, function (t, e) { E.event.special[t] = { setup: function () { return Ee(this, t, Ce), !1 }, trigger: function () { return Ee(this, t), !0 }, _default: function (e) { return Y.get(e.target, t) }, delegateType: e } }), E.each({ mouseenter: "mouseover", mouseleave: "mouseout", pointerenter: "pointerover", pointerleave: "pointerout" }, function (e, i) { E.event.special[e] = { delegateType: i, bindType: i, handle: function (e) { var t, n = e.relatedTarget, r = e.handleObj; return n && (n === this || E.contains(this, n)) || (e.type = r.origType, t = r.handler.apply(this, arguments), e.type = i), t } } }), E.fn.extend({ on: function (e, t, n, r) { return Se(this, e, t, n, r) }, one: function (e, t, n, r) { return Se(this, e, t, n, r, 1) }, off: function (e, t, n) { var r, i; if (e && e.preventDefault && e.handleObj) return r = e.handleObj, E(e.delegateTarget).off(r.namespace ? r.origType + "." + r.namespace : r.origType, r.selector, r.handler), this; if ("object" == typeof e) { for (i in e) this.off(i, t, e[i]); return this } return !1 !== t && "function" != typeof t || (n = t, t = void 0), !1 === n && (n = Te), this.each(function () { E.event.remove(this, e, n, t) }) } }); var ke = /\s*$/g; function je(e, t) { return A(e, "table") && A(11 !== t.nodeType ? t : t.firstChild, "tr") && E(e).children("tbody")[0] || e } function De(e) { return e.type = (null !== e.getAttribute("type")) + "/" + e.type, e } function qe(e) { return "true/" === (e.type || "").slice(0, 5) ? e.type = e.type.slice(5) : e.removeAttribute("type"), e } function Le(e, t) { var n, r, i, o, a, s; if (1 === t.nodeType) { if (Y.hasData(e) && (s = Y.get(e).events)) for (i in Y.remove(t, "handle events"), s) for (n = 0, r = s[i].length; n < r; n++)E.event.add(t, i, s[i][n]); Q.hasData(e) && (o = Q.access(e), a = E.extend({}, o), Q.set(t, a)) } } function He(n, r, i, o) { r = g(r); var e, t, a, s, u, l, c = 0, f = n.length, p = f - 1, d = r[0], h = m(d); if (h || 1 < f && "string" == typeof d && !v.checkClone && Ae.test(d)) return n.each(function (e) { var t = n.eq(e); h && (r[0] = d.call(this, e, t.html())), He(t, r, i, o) }); if (f && (t = (e = xe(r, n[0].ownerDocument, !1, n, o)).firstChild, 1 === e.childNodes.length && (e = t), t || o)) { for (s = (a = E.map(ye(e, "script"), De)).length; c < f; c++)u = e, c !== p && (u = E.clone(u, !0, !0), s && E.merge(a, ye(u, "script"))), i.call(n[c], u, c); if (s) for (l = a[a.length - 1].ownerDocument, E.map(a, qe), c = 0; c < s; c++)u = a[c], he.test(u.type || "") && !Y.access(u, "globalEval") && E.contains(l, u) && (u.src && "module" !== (u.type || "").toLowerCase() ? E._evalUrl && !u.noModule && E._evalUrl(u.src, { nonce: u.nonce || u.getAttribute("nonce") }, l) : b(u.textContent.replace(Ne, ""), u, l)) } return n } function Oe(e, t, n) { for (var r, i = t ? E.filter(t, e) : e, o = 0; null != (r = i[o]); o++)n || 1 !== r.nodeType || E.cleanData(ye(r)), r.parentNode && (n && ie(r) && ve(ye(r, "script")), r.parentNode.removeChild(r)); return e } E.extend({ htmlPrefilter: function (e) { return e }, clone: function (e, t, n) { var r, i, o, a, s, u, l, c = e.cloneNode(!0), f = ie(e); if (!(v.noCloneChecked || 1 !== e.nodeType && 11 !== e.nodeType || E.isXMLDoc(e))) for (a = ye(c), r = 0, i = (o = ye(e)).length; r < i; r++)s = o[r], u = a[r], void 0, "input" === (l = u.nodeName.toLowerCase()) && pe.test(s.type) ? u.checked = s.checked : "input" !== l && "textarea" !== l || (u.defaultValue = s.defaultValue); if (t) if (n) for (o = o || ye(e), a = a || ye(c), r = 0, i = o.length; r < i; r++)Le(o[r], a[r]); else Le(e, c); return 0 < (a = ye(c, "script")).length && ve(a, !f && ye(e, "script")), c }, cleanData: function (e) { for (var t, n, r, i = E.event.special, o = 0; void 0 !== (n = e[o]); o++)if (V(n)) { if (t = n[Y.expando]) { if (t.events) for (r in t.events) i[r] ? E.event.remove(n, r) : E.removeEvent(n, r, t.handle); n[Y.expando] = void 0 } n[Q.expando] && (n[Q.expando] = void 0) } } }), E.fn.extend({ detach: function (e) { return Oe(this, e, !0) }, remove: function (e) { return Oe(this, e) }, text: function (e) { return B(this, function (e) { return void 0 === e ? E.text(this) : this.empty().each(function () { 1 !== this.nodeType && 11 !== this.nodeType && 9 !== this.nodeType || (this.textContent = e) }) }, null, e, arguments.length) }, append: function () { return He(this, arguments, function (e) { 1 !== this.nodeType && 11 !== this.nodeType && 9 !== this.nodeType || je(this, e).appendChild(e) }) }, prepend: function () { return He(this, arguments, function (e) { if (1 === this.nodeType || 11 === this.nodeType || 9 === this.nodeType) { var t = je(this, e); t.insertBefore(e, t.firstChild) } }) }, before: function () { return He(this, arguments, function (e) { this.parentNode && this.parentNode.insertBefore(e, this) }) }, after: function () { return He(this, arguments, function (e) { this.parentNode && this.parentNode.insertBefore(e, this.nextSibling) }) }, empty: function () { for (var e, t = 0; null != (e = this[t]); t++)1 === e.nodeType && (E.cleanData(ye(e, !1)), e.textContent = ""); return this }, clone: function (e, t) { return e = null != e && e, t = null == t ? e : t, this.map(function () { return E.clone(this, e, t) }) }, html: function (e) { return B(this, function (e) { var t = this[0] || {}, n = 0, r = this.length; if (void 0 === e && 1 === t.nodeType) return t.innerHTML; if ("string" == typeof e && !ke.test(e) && !ge[(de.exec(e) || ["", ""])[1].toLowerCase()]) { e = E.htmlPrefilter(e); try { for (; n < r; n++)1 === (t = this[n] || {}).nodeType && (E.cleanData(ye(t, !1)), t.innerHTML = e); t = 0 } catch (e) { } } t && this.empty().append(e) }, null, e, arguments.length) }, replaceWith: function () { var n = []; return He(this, arguments, function (e) { var t = this.parentNode; E.inArray(this, n) < 0 && (E.cleanData(ye(this)), t && t.replaceChild(e, this)) }, n) } }), E.each({ appendTo: "append", prependTo: "prepend", insertBefore: "before", insertAfter: "after", replaceAll: "replaceWith" }, function (e, a) { E.fn[e] = function (e) { for (var t, n = [], r = E(e), i = r.length - 1, o = 0; o <= i; o++)t = o === i ? this : this.clone(!0), E(r[o])[a](t), u.apply(n, t.get()); return this.pushStack(n) } }); var Pe = new RegExp("^(" + ee + ")(?!px)[a-z%]+$", "i"), Re = /^--/, Me = function (e) { var t = e.ownerDocument.defaultView; return t && t.opener || (t = C), t.getComputedStyle(e) }, Ie = function (e, t, n) { var r, i, o = {}; for (i in t) o[i] = e.style[i], e.style[i] = t[i]; for (i in r = n.call(e), t) e.style[i] = o[i]; return r }, We = new RegExp(ne.join("|"), "i"), Fe = "[\\x20\\t\\r\\n\\f]", $e = new RegExp("^" + Fe + "+|((?:^|[^\\\\])(?:\\\\.)*)" + Fe + "+$", "g"); function Be(e, t, n) { var r, i, o, a, s = Re.test(t), u = e.style; return (n = n || Me(e)) && (a = n.getPropertyValue(t) || n[t], s && a && (a = a.replace($e, "$1") || void 0), "" !== a || ie(e) || (a = E.style(e, t)), !v.pixelBoxStyles() && Pe.test(a) && We.test(t) && (r = u.width, i = u.minWidth, o = u.maxWidth, u.minWidth = u.maxWidth = u.width = a, a = n.width, u.width = r, u.minWidth = i, u.maxWidth = o)), void 0 !== a ? a + "" : a } function _e(e, t) { return { get: function () { if (!e()) return (this.get = t).apply(this, arguments); delete this.get } } } !function () { function e() { if (l) { u.style.cssText = "position:absolute;left:-11111px;width:60px;margin-top:1px;padding:0;border:0", l.style.cssText = "position:relative;display:block;box-sizing:border-box;overflow:scroll;margin:auto;border:1px;padding:1px;width:60%;top:1%", re.appendChild(u).appendChild(l); var e = C.getComputedStyle(l); n = "1%" !== e.top, s = 12 === t(e.marginLeft), l.style.right = "60%", o = 36 === t(e.right), r = 36 === t(e.width), l.style.position = "absolute", i = 12 === t(l.offsetWidth / 3), re.removeChild(u), l = null } } function t(e) { return Math.round(parseFloat(e)) } var n, r, i, o, a, s, u = S.createElement("div"), l = S.createElement("div"); l.style && (l.style.backgroundClip = "content-box", l.cloneNode(!0).style.backgroundClip = "", v.clearCloneStyle = "content-box" === l.style.backgroundClip, E.extend(v, { boxSizingReliable: function () { return e(), r }, pixelBoxStyles: function () { return e(), o }, pixelPosition: function () { return e(), n }, reliableMarginLeft: function () { return e(), s }, scrollboxSize: function () { return e(), i }, reliableTrDimensions: function () { var e, t, n, r; return null == a && (e = S.createElement("table"), t = S.createElement("tr"), n = S.createElement("div"), e.style.cssText = "position:absolute;left:-11111px;border-collapse:separate", t.style.cssText = "border:1px solid", t.style.height = "1px", n.style.height = "9px", n.style.display = "block", re.appendChild(e).appendChild(t).appendChild(n), r = C.getComputedStyle(t), a = parseInt(r.height, 10) + parseInt(r.borderTopWidth, 10) + parseInt(r.borderBottomWidth, 10) === t.offsetHeight, re.removeChild(e)), a } })) }(); var ze = ["Webkit", "Moz", "ms"], Ue = S.createElement("div").style, Xe = {}; function Ve(e) { var t = E.cssProps[e] || Xe[e]; return t || (e in Ue ? e : Xe[e] = function (e) { var t = e[0].toUpperCase() + e.slice(1), n = ze.length; while (n--) if ((e = ze[n] + t) in Ue) return e }(e) || e) } var Ge = /^(none|table(?!-c[ea]).+)/, Ye = { position: "absolute", visibility: "hidden", display: "block" }, Qe = { letterSpacing: "0", fontWeight: "400" }; function Je(e, t, n) { var r = te.exec(t); return r ? Math.max(0, r[2] - (n || 0)) + (r[3] || "px") : t } function Ke(e, t, n, r, i, o) { var a = "width" === t ? 1 : 0, s = 0, u = 0; if (n === (r ? "border" : "content")) return 0; for (; a < 4; a += 2)"margin" === n && (u += E.css(e, n + ne[a], !0, i)), r ? ("content" === n && (u -= E.css(e, "padding" + ne[a], !0, i)), "margin" !== n && (u -= E.css(e, "border" + ne[a] + "Width", !0, i))) : (u += E.css(e, "padding" + ne[a], !0, i), "padding" !== n ? u += E.css(e, "border" + ne[a] + "Width", !0, i) : s += E.css(e, "border" + ne[a] + "Width", !0, i)); return !r && 0 <= o && (u += Math.max(0, Math.ceil(e["offset" + t[0].toUpperCase() + t.slice(1)] - o - u - s - .5)) || 0), u } function Ze(e, t, n) { var r = Me(e), i = (!v.boxSizingReliable() || n) && "border-box" === E.css(e, "boxSizing", !1, r), o = i, a = Be(e, t, r), s = "offset" + t[0].toUpperCase() + t.slice(1); if (Pe.test(a)) { if (!n) return a; a = "auto" } return (!v.boxSizingReliable() && i || !v.reliableTrDimensions() && A(e, "tr") || "auto" === a || !parseFloat(a) && "inline" === E.css(e, "display", !1, r)) && e.getClientRects().length && (i = "border-box" === E.css(e, "boxSizing", !1, r), (o = s in e) && (a = e[s])), (a = parseFloat(a) || 0) + Ke(e, t, n || (i ? "border" : "content"), o, r, a) + "px" } function et(e, t, n, r, i) { return new et.prototype.init(e, t, n, r, i) } E.extend({ cssHooks: { opacity: { get: function (e, t) { if (t) { var n = Be(e, "opacity"); return "" === n ? "1" : n } } } }, cssNumber: { animationIterationCount: !0, columnCount: !0, fillOpacity: !0, flexGrow: !0, flexShrink: !0, fontWeight: !0, gridArea: !0, gridColumn: !0, gridColumnEnd: !0, gridColumnStart: !0, gridRow: !0, gridRowEnd: !0, gridRowStart: !0, lineHeight: !0, opacity: !0, order: !0, orphans: !0, widows: !0, zIndex: !0, zoom: !0 }, cssProps: {}, style: function (e, t, n, r) { if (e && 3 !== e.nodeType && 8 !== e.nodeType && e.style) { var i, o, a, s = X(t), u = Re.test(t), l = e.style; if (u || (t = Ve(s)), a = E.cssHooks[t] || E.cssHooks[s], void 0 === n) return a && "get" in a && void 0 !== (i = a.get(e, !1, r)) ? i : l[t]; "string" === (o = typeof n) && (i = te.exec(n)) && i[1] && (n = se(e, t, i), o = "number"), null != n && n == n && ("number" !== o || u || (n += i && i[3] || (E.cssNumber[s] ? "" : "px")), v.clearCloneStyle || "" !== n || 0 !== t.indexOf("background") || (l[t] = "inherit"), a && "set" in a && void 0 === (n = a.set(e, n, r)) || (u ? l.setProperty(t, n) : l[t] = n)) } }, css: function (e, t, n, r) { var i, o, a, s = X(t); return Re.test(t) || (t = Ve(s)), (a = E.cssHooks[t] || E.cssHooks[s]) && "get" in a && (i = a.get(e, !0, n)), void 0 === i && (i = Be(e, t, r)), "normal" === i && t in Qe && (i = Qe[t]), "" === n || n ? (o = parseFloat(i), !0 === n || isFinite(o) ? o || 0 : i) : i } }), E.each(["height", "width"], function (e, u) { E.cssHooks[u] = { get: function (e, t, n) { if (t) return !Ge.test(E.css(e, "display")) || e.getClientRects().length && e.getBoundingClientRect().width ? Ze(e, u, n) : Ie(e, Ye, function () { return Ze(e, u, n) }) }, set: function (e, t, n) { var r, i = Me(e), o = !v.scrollboxSize() && "absolute" === i.position, a = (o || n) && "border-box" === E.css(e, "boxSizing", !1, i), s = n ? Ke(e, u, n, a, i) : 0; return a && o && (s -= Math.ceil(e["offset" + u[0].toUpperCase() + u.slice(1)] - parseFloat(i[u]) - Ke(e, u, "border", !1, i) - .5)), s && (r = te.exec(t)) && "px" !== (r[3] || "px") && (e.style[u] = t, t = E.css(e, u)), Je(0, t, s) } } }), E.cssHooks.marginLeft = _e(v.reliableMarginLeft, function (e, t) { if (t) return (parseFloat(Be(e, "marginLeft")) || e.getBoundingClientRect().left - Ie(e, { marginLeft: 0 }, function () { return e.getBoundingClientRect().left })) + "px" }), E.each({ margin: "", padding: "", border: "Width" }, function (i, o) { E.cssHooks[i + o] = { expand: function (e) { for (var t = 0, n = {}, r = "string" == typeof e ? e.split(" ") : [e]; t < 4; t++)n[i + ne[t] + o] = r[t] || r[t - 2] || r[0]; return n } }, "margin" !== i && (E.cssHooks[i + o].set = Je) }), E.fn.extend({ css: function (e, t) { return B(this, function (e, t, n) { var r, i, o = {}, a = 0; if (Array.isArray(t)) { for (r = Me(e), i = t.length; a < i; a++)o[t[a]] = E.css(e, t[a], !1, r); return o } return void 0 !== n ? E.style(e, t, n) : E.css(e, t) }, e, t, 1 < arguments.length) } }), ((E.Tween = et).prototype = { constructor: et, init: function (e, t, n, r, i, o) { this.elem = e, this.prop = n, this.easing = i || E.easing._default, this.options = t, this.start = this.now = this.cur(), this.end = r, this.unit = o || (E.cssNumber[n] ? "" : "px") }, cur: function () { var e = et.propHooks[this.prop]; return e && e.get ? e.get(this) : et.propHooks._default.get(this) }, run: function (e) { var t, n = et.propHooks[this.prop]; return this.options.duration ? this.pos = t = E.easing[this.easing](e, this.options.duration * e, 0, 1, this.options.duration) : this.pos = t = e, this.now = (this.end - this.start) * t + this.start, this.options.step && this.options.step.call(this.elem, this.now, this), n && n.set ? n.set(this) : et.propHooks._default.set(this), this } }).init.prototype = et.prototype, (et.propHooks = { _default: { get: function (e) { var t; return 1 !== e.elem.nodeType || null != e.elem[e.prop] && null == e.elem.style[e.prop] ? e.elem[e.prop] : (t = E.css(e.elem, e.prop, "")) && "auto" !== t ? t : 0 }, set: function (e) { E.fx.step[e.prop] ? E.fx.step[e.prop](e) : 1 !== e.elem.nodeType || !E.cssHooks[e.prop] && null == e.elem.style[Ve(e.prop)] ? e.elem[e.prop] = e.now : E.style(e.elem, e.prop, e.now + e.unit) } } }).scrollTop = et.propHooks.scrollLeft = { set: function (e) { e.elem.nodeType && e.elem.parentNode && (e.elem[e.prop] = e.now) } }, E.easing = { linear: function (e) { return e }, swing: function (e) { return .5 - Math.cos(e * Math.PI) / 2 }, _default: "swing" }, E.fx = et.prototype.init, E.fx.step = {}; var tt, nt, rt, it, ot = /^(?:toggle|show|hide)$/, at = /queueHooks$/; function st() { nt && (!1 === S.hidden && C.requestAnimationFrame ? C.requestAnimationFrame(st) : C.setTimeout(st, E.fx.interval), E.fx.tick()) } function ut() { return C.setTimeout(function () { tt = void 0 }), tt = Date.now() } function lt(e, t) { var n, r = 0, i = { height: e }; for (t = t ? 1 : 0; r < 4; r += 2 - t)i["margin" + (n = ne[r])] = i["padding" + n] = e; return t && (i.opacity = i.width = e), i } function ct(e, t, n) { for (var r, i = (ft.tweeners[t] || []).concat(ft.tweeners["*"]), o = 0, a = i.length; o < a; o++)if (r = i[o].call(n, t, e)) return r } function ft(o, e, t) { var n, a, r = 0, i = ft.prefilters.length, s = E.Deferred().always(function () { delete u.elem }), u = function () { if (a) return !1; for (var e = tt || ut(), t = Math.max(0, l.startTime + l.duration - e), n = 1 - (t / l.duration || 0), r = 0, i = l.tweens.length; r < i; r++)l.tweens[r].run(n); return s.notifyWith(o, [l, n, t]), n < 1 && i ? t : (i || s.notifyWith(o, [l, 1, 0]), s.resolveWith(o, [l]), !1) }, l = s.promise({ elem: o, props: E.extend({}, e), opts: E.extend(!0, { specialEasing: {}, easing: E.easing._default }, t), originalProperties: e, originalOptions: t, startTime: tt || ut(), duration: t.duration, tweens: [], createTween: function (e, t) { var n = E.Tween(o, l.opts, e, t, l.opts.specialEasing[e] || l.opts.easing); return l.tweens.push(n), n }, stop: function (e) { var t = 0, n = e ? l.tweens.length : 0; if (a) return this; for (a = !0; t < n; t++)l.tweens[t].run(1); return e ? (s.notifyWith(o, [l, 1, 0]), s.resolveWith(o, [l, e])) : s.rejectWith(o, [l, e]), this } }), c = l.props; for (!function (e, t) { var n, r, i, o, a; for (n in e) if (i = t[r = X(n)], o = e[n], Array.isArray(o) && (i = o[1], o = e[n] = o[0]), n !== r && (e[r] = o, delete e[n]), (a = E.cssHooks[r]) && "expand" in a) for (n in o = a.expand(o), delete e[r], o) n in e || (e[n] = o[n], t[n] = i); else t[r] = i }(c, l.opts.specialEasing); r < i; r++)if (n = ft.prefilters[r].call(l, o, c, l.opts)) return m(n.stop) && (E._queueHooks(l.elem, l.opts.queue).stop = n.stop.bind(n)), n; return E.map(c, ct, l), m(l.opts.start) && l.opts.start.call(o, l), l.progress(l.opts.progress).done(l.opts.done, l.opts.complete).fail(l.opts.fail).always(l.opts.always), E.fx.timer(E.extend(u, { elem: o, anim: l, queue: l.opts.queue })), l } E.Animation = E.extend(ft, { tweeners: { "*": [function (e, t) { var n = this.createTween(e, t); return se(n.elem, e, te.exec(t), n), n }] }, tweener: function (e, t) { m(e) ? (t = e, e = ["*"]) : e = e.match(P); for (var n, r = 0, i = e.length; r < i; r++)n = e[r], ft.tweeners[n] = ft.tweeners[n] || [], ft.tweeners[n].unshift(t) }, prefilters: [function (e, t, n) { var r, i, o, a, s, u, l, c, f = "width" in t || "height" in t, p = this, d = {}, h = e.style, g = e.nodeType && ae(e), y = Y.get(e, "fxshow"); for (r in n.queue || (null == (a = E._queueHooks(e, "fx")).unqueued && (a.unqueued = 0, s = a.empty.fire, a.empty.fire = function () { a.unqueued || s() }), a.unqueued++, p.always(function () { p.always(function () { a.unqueued--, E.queue(e, "fx").length || a.empty.fire() }) })), t) if (i = t[r], ot.test(i)) { if (delete t[r], o = o || "toggle" === i, i === (g ? "hide" : "show")) { if ("show" !== i || !y || void 0 === y[r]) continue; g = !0 } d[r] = y && y[r] || E.style(e, r) } if ((u = !E.isEmptyObject(t)) || !E.isEmptyObject(d)) for (r in f && 1 === e.nodeType && (n.overflow = [h.overflow, h.overflowX, h.overflowY], null == (l = y && y.display) && (l = Y.get(e, "display")), "none" === (c = E.css(e, "display")) && (l ? c = l : (le([e], !0), l = e.style.display || l, c = E.css(e, "display"), le([e]))), ("inline" === c || "inline-block" === c && null != l) && "none" === E.css(e, "float") && (u || (p.done(function () { h.display = l }), null == l && (c = h.display, l = "none" === c ? "" : c)), h.display = "inline-block")), n.overflow && (h.overflow = "hidden", p.always(function () { h.overflow = n.overflow[0], h.overflowX = n.overflow[1], h.overflowY = n.overflow[2] })), u = !1, d) u || (y ? "hidden" in y && (g = y.hidden) : y = Y.access(e, "fxshow", { display: l }), o && (y.hidden = !g), g && le([e], !0), p.done(function () { for (r in g || le([e]), Y.remove(e, "fxshow"), d) E.style(e, r, d[r]) })), u = ct(g ? y[r] : 0, r, p), r in y || (y[r] = u.start, g && (u.end = u.start, u.start = 0)) }], prefilter: function (e, t) { t ? ft.prefilters.unshift(e) : ft.prefilters.push(e) } }), E.speed = function (e, t, n) { var r = e && "object" == typeof e ? E.extend({}, e) : { complete: n || !n && t || m(e) && e, duration: e, easing: n && t || t && !m(t) && t }; return E.fx.off ? r.duration = 0 : "number" != typeof r.duration && (r.duration in E.fx.speeds ? r.duration = E.fx.speeds[r.duration] : r.duration = E.fx.speeds._default), null != r.queue && !0 !== r.queue || (r.queue = "fx"), r.old = r.complete, r.complete = function () { m(r.old) && r.old.call(this), r.queue && E.dequeue(this, r.queue) }, r }, E.fn.extend({ fadeTo: function (e, t, n, r) { return this.filter(ae).css("opacity", 0).show().end().animate({ opacity: t }, e, n, r) }, animate: function (t, e, n, r) { var i = E.isEmptyObject(t), o = E.speed(e, n, r), a = function () { var e = ft(this, E.extend({}, t), o); (i || Y.get(this, "finish")) && e.stop(!0) }; return a.finish = a, i || !1 === o.queue ? this.each(a) : this.queue(o.queue, a) }, stop: function (i, e, o) { var a = function (e) { var t = e.stop; delete e.stop, t(o) }; return "string" != typeof i && (o = e, e = i, i = void 0), e && this.queue(i || "fx", []), this.each(function () { var e = !0, t = null != i && i + "queueHooks", n = E.timers, r = Y.get(this); if (t) r[t] && r[t].stop && a(r[t]); else for (t in r) r[t] && r[t].stop && at.test(t) && a(r[t]); for (t = n.length; t--;)n[t].elem !== this || null != i && n[t].queue !== i || (n[t].anim.stop(o), e = !1, n.splice(t, 1)); !e && o || E.dequeue(this, i) }) }, finish: function (a) { return !1 !== a && (a = a || "fx"), this.each(function () { var e, t = Y.get(this), n = t[a + "queue"], r = t[a + "queueHooks"], i = E.timers, o = n ? n.length : 0; for (t.finish = !0, E.queue(this, a, []), r && r.stop && r.stop.call(this, !0), e = i.length; e--;)i[e].elem === this && i[e].queue === a && (i[e].anim.stop(!0), i.splice(e, 1)); for (e = 0; e < o; e++)n[e] && n[e].finish && n[e].finish.call(this); delete t.finish }) } }), E.each(["toggle", "show", "hide"], function (e, r) { var i = E.fn[r]; E.fn[r] = function (e, t, n) { return null == e || "boolean" == typeof e ? i.apply(this, arguments) : this.animate(lt(r, !0), e, t, n) } }), E.each({ slideDown: lt("show"), slideUp: lt("hide"), slideToggle: lt("toggle"), fadeIn: { opacity: "show" }, fadeOut: { opacity: "hide" }, fadeToggle: { opacity: "toggle" } }, function (e, r) { E.fn[e] = function (e, t, n) { return this.animate(r, e, t, n) } }), E.timers = [], E.fx.tick = function () { var e, t = 0, n = E.timers; for (tt = Date.now(); t < n.length; t++)(e = n[t])() || n[t] !== e || n.splice(t--, 1); n.length || E.fx.stop(), tt = void 0 }, E.fx.timer = function (e) { E.timers.push(e), E.fx.start() }, E.fx.interval = 13, E.fx.start = function () { nt || (nt = !0, st()) }, E.fx.stop = function () { nt = null }, E.fx.speeds = { slow: 600, fast: 200, _default: 400 }, E.fn.delay = function (r, e) { return r = E.fx && E.fx.speeds[r] || r, e = e || "fx", this.queue(e, function (e, t) { var n = C.setTimeout(e, r); t.stop = function () { C.clearTimeout(n) } }) }, rt = S.createElement("input"), it = S.createElement("select").appendChild(S.createElement("option")), rt.type = "checkbox", v.checkOn = "" !== rt.value, v.optSelected = it.selected, (rt = S.createElement("input")).value = "t", rt.type = "radio", v.radioValue = "t" === rt.value; var pt, dt = E.expr.attrHandle; E.fn.extend({ attr: function (e, t) { return B(this, E.attr, e, t, 1 < arguments.length) }, removeAttr: function (e) { return this.each(function () { E.removeAttr(this, e) }) } }), E.extend({ attr: function (e, t, n) { var r, i, o = e.nodeType; if (3 !== o && 8 !== o && 2 !== o) return "undefined" == typeof e.getAttribute ? E.prop(e, t, n) : (1 === o && E.isXMLDoc(e) || (i = E.attrHooks[t.toLowerCase()] || (E.expr.match.bool.test(t) ? pt : void 0)), void 0 !== n ? null === n ? void E.removeAttr(e, t) : i && "set" in i && void 0 !== (r = i.set(e, n, t)) ? r : (e.setAttribute(t, n + ""), n) : i && "get" in i && null !== (r = i.get(e, t)) ? r : null == (r = E.find.attr(e, t)) ? void 0 : r) }, attrHooks: { type: { set: function (e, t) { if (!v.radioValue && "radio" === t && A(e, "input")) { var n = e.value; return e.setAttribute("type", t), n && (e.value = n), t } } } }, removeAttr: function (e, t) { var n, r = 0, i = t && t.match(P); if (i && 1 === e.nodeType) while (n = i[r++]) e.removeAttribute(n) } }), pt = { set: function (e, t, n) { return !1 === t ? E.removeAttr(e, n) : e.setAttribute(n, n), n } }, E.each(E.expr.match.bool.source.match(/\w+/g), function (e, t) { var a = dt[t] || E.find.attr; dt[t] = function (e, t, n) { var r, i, o = t.toLowerCase(); return n || (i = dt[o], dt[o] = r, r = null != a(e, t, n) ? o : null, dt[o] = i), r } }); var ht = /^(?:input|select|textarea|button)$/i, gt = /^(?:a|area)$/i; function yt(e) { return (e.match(P) || []).join(" ") } function vt(e) { return e.getAttribute && e.getAttribute("class") || "" } function mt(e) { return Array.isArray(e) ? e : "string" == typeof e && e.match(P) || [] } E.fn.extend({ prop: function (e, t) { return B(this, E.prop, e, t, 1 < arguments.length) }, removeProp: function (e) { return this.each(function () { delete this[E.propFix[e] || e] }) } }), E.extend({ prop: function (e, t, n) { var r, i, o = e.nodeType; if (3 !== o && 8 !== o && 2 !== o) return 1 === o && E.isXMLDoc(e) || (t = E.propFix[t] || t, i = E.propHooks[t]), void 0 !== n ? i && "set" in i && void 0 !== (r = i.set(e, n, t)) ? r : e[t] = n : i && "get" in i && null !== (r = i.get(e, t)) ? r : e[t] }, propHooks: { tabIndex: { get: function (e) { var t = E.find.attr(e, "tabindex"); return t ? parseInt(t, 10) : ht.test(e.nodeName) || gt.test(e.nodeName) && e.href ? 0 : -1 } } }, propFix: { "for": "htmlFor", "class": "className" } }), v.optSelected || (E.propHooks.selected = { get: function (e) { var t = e.parentNode; return t && t.parentNode && t.parentNode.selectedIndex, null }, set: function (e) { var t = e.parentNode; t && (t.selectedIndex, t.parentNode && t.parentNode.selectedIndex) } }), E.each(["tabIndex", "readOnly", "maxLength", "cellSpacing", "cellPadding", "rowSpan", "colSpan", "useMap", "frameBorder", "contentEditable"], function () { E.propFix[this.toLowerCase()] = this }), E.fn.extend({ addClass: function (t) { var e, n, r, i, o, a; return m(t) ? this.each(function (e) { E(this).addClass(t.call(this, e, vt(this))) }) : (e = mt(t)).length ? this.each(function () { if (r = vt(this), n = 1 === this.nodeType && " " + yt(r) + " ") { for (o = 0; o < e.length; o++)i = e[o], n.indexOf(" " + i + " ") < 0 && (n += i + " "); a = yt(n), r !== a && this.setAttribute("class", a) } }) : this }, removeClass: function (t) { var e, n, r, i, o, a; return m(t) ? this.each(function (e) { E(this).removeClass(t.call(this, e, vt(this))) }) : arguments.length ? (e = mt(t)).length ? this.each(function () { if (r = vt(this), n = 1 === this.nodeType && " " + yt(r) + " ") { for (o = 0; o < e.length; o++) { i = e[o]; while (-1 < n.indexOf(" " + i + " ")) n = n.replace(" " + i + " ", " ") } a = yt(n), r !== a && this.setAttribute("class", a) } }) : this : this.attr("class", "") }, toggleClass: function (t, n) { var e, r, i, o, a = typeof t, s = "string" === a || Array.isArray(t); return m(t) ? this.each(function (e) { E(this).toggleClass(t.call(this, e, vt(this), n), n) }) : "boolean" == typeof n && s ? n ? this.addClass(t) : this.removeClass(t) : (e = mt(t), this.each(function () { if (s) for (o = E(this), i = 0; i < e.length; i++)r = e[i], o.hasClass(r) ? o.removeClass(r) : o.addClass(r); else void 0 !== t && "boolean" !== a || ((r = vt(this)) && Y.set(this, "__className__", r), this.setAttribute && this.setAttribute("class", r || !1 === t ? "" : Y.get(this, "__className__") || "")) })) }, hasClass: function (e) { var t, n, r = 0; t = " " + e + " "; while (n = this[r++]) if (1 === n.nodeType && -1 < (" " + yt(vt(n)) + " ").indexOf(t)) return !0; return !1 } }); var xt = /\r/g; E.fn.extend({ val: function (n) { var r, e, i, t = this[0]; return arguments.length ? (i = m(n), this.each(function (e) { var t; 1 === this.nodeType && (null == (t = i ? n.call(this, e, E(this).val()) : n) ? t = "" : "number" == typeof t ? t += "" : Array.isArray(t) && (t = E.map(t, function (e) { return null == e ? "" : e + "" })), (r = E.valHooks[this.type] || E.valHooks[this.nodeName.toLowerCase()]) && "set" in r && void 0 !== r.set(this, t, "value") || (this.value = t)) })) : t ? (r = E.valHooks[t.type] || E.valHooks[t.nodeName.toLowerCase()]) && "get" in r && void 0 !== (e = r.get(t, "value")) ? e : "string" == typeof (e = t.value) ? e.replace(xt, "") : null == e ? "" : e : void 0 } }), E.extend({ valHooks: { option: { get: function (e) { var t = E.find.attr(e, "value"); return null != t ? t : yt(E.text(e)) } }, select: { get: function (e) { var t, n, r, i = e.options, o = e.selectedIndex, a = "select-one" === e.type, s = a ? null : [], u = a ? o + 1 : i.length; for (r = o < 0 ? u : a ? o : 0; r < u; r++)if (((n = i[r]).selected || r === o) && !n.disabled && (!n.parentNode.disabled || !A(n.parentNode, "optgroup"))) { if (t = E(n).val(), a) return t; s.push(t) } return s }, set: function (e, t) { var n, r, i = e.options, o = E.makeArray(t), a = i.length; while (a--) ((r = i[a]).selected = -1 < E.inArray(E.valHooks.option.get(r), o)) && (n = !0); return n || (e.selectedIndex = -1), o } } } }), E.each(["radio", "checkbox"], function () { E.valHooks[this] = { set: function (e, t) { if (Array.isArray(t)) return e.checked = -1 < E.inArray(E(e).val(), t) } }, v.checkOn || (E.valHooks[this].get = function (e) { return null === e.getAttribute("value") ? "on" : e.value }) }), v.focusin = "onfocusin" in C; var bt = /^(?:focusinfocus|focusoutblur)$/, wt = function (e) { e.stopPropagation() }; E.extend(E.event, { trigger: function (e, t, n, r) { var i, o, a, s, u, l, c, f, p = [n || S], d = y.call(e, "type") ? e.type : e, h = y.call(e, "namespace") ? e.namespace.split(".") : []; if (o = f = a = n = n || S, 3 !== n.nodeType && 8 !== n.nodeType && !bt.test(d + E.event.triggered) && (-1 < d.indexOf(".") && (d = (h = d.split(".")).shift(), h.sort()), u = d.indexOf(":") < 0 && "on" + d, (e = e[E.expando] ? e : new E.Event(d, "object" == typeof e && e)).isTrigger = r ? 2 : 3, e.namespace = h.join("."), e.rnamespace = e.namespace ? new RegExp("(^|\\.)" + h.join("\\.(?:.*\\.|)") + "(\\.|$)") : null, e.result = void 0, e.target || (e.target = n), t = null == t ? [e] : E.makeArray(t, [e]), c = E.event.special[d] || {}, r || !c.trigger || !1 !== c.trigger.apply(n, t))) { if (!r && !c.noBubble && !x(n)) { for (s = c.delegateType || d, bt.test(s + d) || (o = o.parentNode); o; o = o.parentNode)p.push(o), a = o; a === (n.ownerDocument || S) && p.push(a.defaultView || a.parentWindow || C) } i = 0; while ((o = p[i++]) && !e.isPropagationStopped()) f = o, e.type = 1 < i ? s : c.bindType || d, (l = (Y.get(o, "events") || Object.create(null))[e.type] && Y.get(o, "handle")) && l.apply(o, t), (l = u && o[u]) && l.apply && V(o) && (e.result = l.apply(o, t), !1 === e.result && e.preventDefault()); return e.type = d, r || e.isDefaultPrevented() || c._default && !1 !== c._default.apply(p.pop(), t) || !V(n) || u && m(n[d]) && !x(n) && ((a = n[u]) && (n[u] = null), E.event.triggered = d, e.isPropagationStopped() && f.addEventListener(d, wt), n[d](), e.isPropagationStopped() && f.removeEventListener(d, wt), E.event.triggered = void 0, a && (n[u] = a)), e.result } }, simulate: function (e, t, n) { var r = E.extend(new E.Event, n, { type: e, isSimulated: !0 }); E.event.trigger(r, null, t) } }), E.fn.extend({ trigger: function (e, t) { return this.each(function () { E.event.trigger(e, t, this) }) }, triggerHandler: function (e, t) { var n = this[0]; if (n) return E.event.trigger(e, t, n, !0) } }), v.focusin || E.each({ focus: "focusin", blur: "focusout" }, function (n, r) { var i = function (e) { E.event.simulate(r, e.target, E.event.fix(e)) }; E.event.special[r] = { setup: function () { var e = this.ownerDocument || this.document || this, t = Y.access(e, r); t || e.addEventListener(n, i, !0), Y.access(e, r, (t || 0) + 1) }, teardown: function () { var e = this.ownerDocument || this.document || this, t = Y.access(e, r) - 1; t ? Y.access(e, r, t) : (e.removeEventListener(n, i, !0), Y.remove(e, r)) } } }); var Tt = C.location, Ct = { guid: Date.now() }, St = /\?/; E.parseXML = function (e) { var t, n; if (!e || "string" != typeof e) return null; try { t = (new C.DOMParser).parseFromString(e, "text/xml") } catch (e) { } return n = t && t.getElementsByTagName("parsererror")[0], t && !n || E.error("Invalid XML: " + (n ? E.map(n.childNodes, function (e) { return e.textContent }).join("\n") : e)), t }; var Et = /\[\]$/, kt = /\r?\n/g, At = /^(?:submit|button|image|reset|file)$/i, Nt = /^(?:input|select|textarea|keygen)/i; function jt(n, e, r, i) { var t; if (Array.isArray(e)) E.each(e, function (e, t) { r || Et.test(n) ? i(n, t) : jt(n + "[" + ("object" == typeof t && null != t ? e : "") + "]", t, r, i) }); else if (r || "object" !== w(e)) i(n, e); else for (t in e) jt(n + "[" + t + "]", e[t], r, i) } E.param = function (e, t) { var n, r = [], i = function (e, t) { var n = m(t) ? t() : t; r[r.length] = encodeURIComponent(e) + "=" + encodeURIComponent(null == n ? "" : n) }; if (null == e) return ""; if (Array.isArray(e) || e.jquery && !E.isPlainObject(e)) E.each(e, function () { i(this.name, this.value) }); else for (n in e) jt(n, e[n], t, i); return r.join("&") }, E.fn.extend({ serialize: function () { return E.param(this.serializeArray()) }, serializeArray: function () { return this.map(function () { var e = E.prop(this, "elements"); return e ? E.makeArray(e) : this }).filter(function () { var e = this.type; return this.name && !E(this).is(":disabled") && Nt.test(this.nodeName) && !At.test(e) && (this.checked || !pe.test(e)) }).map(function (e, t) { var n = E(this).val(); return null == n ? null : Array.isArray(n) ? E.map(n, function (e) { return { name: t.name, value: e.replace(kt, "\r\n") } }) : { name: t.name, value: n.replace(kt, "\r\n") } }).get() } }); var Dt = /%20/g, qt = /#.*$/, Lt = /([?&])_=[^&]*/, Ht = /^(.*?):[ \t]*([^\r\n]*)$/gm, Ot = /^(?:GET|HEAD)$/, Pt = /^\/\//, Rt = {}, Mt = {}, It = "*/".concat("*"), Wt = S.createElement("a"); function Ft(o) { return function (e, t) { "string" != typeof e && (t = e, e = "*"); var n, r = 0, i = e.toLowerCase().match(P) || []; if (m(t)) while (n = i[r++]) "+" === n[0] ? (n = n.slice(1) || "*", (o[n] = o[n] || []).unshift(t)) : (o[n] = o[n] || []).push(t) } } function $t(t, i, o, a) { var s = {}, u = t === Mt; function l(e) { var r; return s[e] = !0, E.each(t[e] || [], function (e, t) { var n = t(i, o, a); return "string" != typeof n || u || s[n] ? u ? !(r = n) : void 0 : (i.dataTypes.unshift(n), l(n), !1) }), r } return l(i.dataTypes[0]) || !s["*"] && l("*") } function Bt(e, t) { var n, r, i = E.ajaxSettings.flatOptions || {}; for (n in t) void 0 !== t[n] && ((i[n] ? e : r || (r = {}))[n] = t[n]); return r && E.extend(!0, e, r), e } Wt.href = Tt.href, E.extend({ active: 0, lastModified: {}, etag: {}, ajaxSettings: { url: Tt.href, type: "GET", isLocal: /^(?:about|app|app-storage|.+-extension|file|res|widget):$/.test(Tt.protocol), global: !0, processData: !0, async: !0, contentType: "application/x-www-form-urlencoded; charset=UTF-8", accepts: { "*": It, text: "text/plain", html: "text/html", xml: "application/xml, text/xml", json: "application/json, text/javascript" }, contents: { xml: /\bxml\b/, html: /\bhtml/, json: /\bjson\b/ }, responseFields: { xml: "responseXML", text: "responseText", json: "responseJSON" }, converters: { "* text": String, "text html": !0, "text json": JSON.parse, "text xml": E.parseXML }, flatOptions: { url: !0, context: !0 } }, ajaxSetup: function (e, t) { return t ? Bt(Bt(e, E.ajaxSettings), t) : Bt(E.ajaxSettings, e) }, ajaxPrefilter: Ft(Rt), ajaxTransport: Ft(Mt), ajax: function (e, t) { "object" == typeof e && (t = e, e = void 0), t = t || {}; var c, f, p, n, d, r, h, g, i, o, y = E.ajaxSetup({}, t), v = y.context || y, m = y.context && (v.nodeType || v.jquery) ? E(v) : E.event, x = E.Deferred(), b = E.Callbacks("once memory"), w = y.statusCode || {}, a = {}, s = {}, u = "canceled", T = { readyState: 0, getResponseHeader: function (e) { var t; if (h) { if (!n) { n = {}; while (t = Ht.exec(p)) n[t[1].toLowerCase() + " "] = (n[t[1].toLowerCase() + " "] || []).concat(t[2]) } t = n[e.toLowerCase() + " "] } return null == t ? null : t.join(", ") }, getAllResponseHeaders: function () { return h ? p : null }, setRequestHeader: function (e, t) { return null == h && (e = s[e.toLowerCase()] = s[e.toLowerCase()] || e, a[e] = t), this }, overrideMimeType: function (e) { return null == h && (y.mimeType = e), this }, statusCode: function (e) { var t; if (e) if (h) T.always(e[T.status]); else for (t in e) w[t] = [w[t], e[t]]; return this }, abort: function (e) { var t = e || u; return c && c.abort(t), l(0, t), this } }; if (x.promise(T), y.url = ((e || y.url || Tt.href) + "").replace(Pt, Tt.protocol + "//"), y.type = t.method || t.type || y.method || y.type, y.dataTypes = (y.dataType || "*").toLowerCase().match(P) || [""], null == y.crossDomain) { r = S.createElement("a"); try { r.href = y.url, r.href = r.href, y.crossDomain = Wt.protocol + "//" + Wt.host != r.protocol + "//" + r.host } catch (e) { y.crossDomain = !0 } } if (y.data && y.processData && "string" != typeof y.data && (y.data = E.param(y.data, y.traditional)), $t(Rt, y, t, T), h) return T; for (i in (g = E.event && y.global) && 0 == E.active++ && E.event.trigger("ajaxStart"), y.type = y.type.toUpperCase(), y.hasContent = !Ot.test(y.type), f = y.url.replace(qt, ""), y.hasContent ? y.data && y.processData && 0 === (y.contentType || "").indexOf("application/x-www-form-urlencoded") && (y.data = y.data.replace(Dt, "+")) : (o = y.url.slice(f.length), y.data && (y.processData || "string" == typeof y.data) && (f += (St.test(f) ? "&" : "?") + y.data, delete y.data), !1 === y.cache && (f = f.replace(Lt, "$1"), o = (St.test(f) ? "&" : "?") + "_=" + Ct.guid++ + o), y.url = f + o), y.ifModified && (E.lastModified[f] && T.setRequestHeader("If-Modified-Since", E.lastModified[f]), E.etag[f] && T.setRequestHeader("If-None-Match", E.etag[f])), (y.data && y.hasContent && !1 !== y.contentType || t.contentType) && T.setRequestHeader("Content-Type", y.contentType), T.setRequestHeader("Accept", y.dataTypes[0] && y.accepts[y.dataTypes[0]] ? y.accepts[y.dataTypes[0]] + ("*" !== y.dataTypes[0] ? ", " + It + "; q=0.01" : "") : y.accepts["*"]), y.headers) T.setRequestHeader(i, y.headers[i]); if (y.beforeSend && (!1 === y.beforeSend.call(v, T, y) || h)) return T.abort(); if (u = "abort", b.add(y.complete), T.done(y.success), T.fail(y.error), c = $t(Mt, y, t, T)) { if (T.readyState = 1, g && m.trigger("ajaxSend", [T, y]), h) return T; y.async && 0 < y.timeout && (d = C.setTimeout(function () { T.abort("timeout") }, y.timeout)); try { h = !1, c.send(a, l) } catch (e) { if (h) throw e; l(-1, e) } } else l(-1, "No Transport"); function l(e, t, n, r) { var i, o, a, s, u, l = t; h || (h = !0, d && C.clearTimeout(d), c = void 0, p = r || "", T.readyState = 0 < e ? 4 : 0, i = 200 <= e && e < 300 || 304 === e, n && (s = function (e, t, n) { var r, i, o, a, s = e.contents, u = e.dataTypes; while ("*" === u[0]) u.shift(), void 0 === r && (r = e.mimeType || t.getResponseHeader("Content-Type")); if (r) for (i in s) if (s[i] && s[i].test(r)) { u.unshift(i); break } if (u[0] in n) o = u[0]; else { for (i in n) { if (!u[0] || e.converters[i + " " + u[0]]) { o = i; break } a || (a = i) } o = o || a } if (o) return o !== u[0] && u.unshift(o), n[o] }(y, T, n)), !i && -1 < E.inArray("script", y.dataTypes) && E.inArray("json", y.dataTypes) < 0 && (y.converters["text script"] = function () { }), s = function (e, t, n, r) { var i, o, a, s, u, l = {}, c = e.dataTypes.slice(); if (c[1]) for (a in e.converters) l[a.toLowerCase()] = e.converters[a]; o = c.shift(); while (o) if (e.responseFields[o] && (n[e.responseFields[o]] = t), !u && r && e.dataFilter && (t = e.dataFilter(t, e.dataType)), u = o, o = c.shift()) if ("*" === o) o = u; else if ("*" !== u && u !== o) { if (!(a = l[u + " " + o] || l["* " + o])) for (i in l) if ((s = i.split(" "))[1] === o && (a = l[u + " " + s[0]] || l["* " + s[0]])) { !0 === a ? a = l[i] : !0 !== l[i] && (o = s[0], c.unshift(s[1])); break } if (!0 !== a) if (a && e["throws"]) t = a(t); else try { t = a(t) } catch (e) { return { state: "parsererror", error: a ? e : "No conversion from " + u + " to " + o } } } return { state: "success", data: t } }(y, s, T, i), i ? (y.ifModified && ((u = T.getResponseHeader("Last-Modified")) && (E.lastModified[f] = u), (u = T.getResponseHeader("etag")) && (E.etag[f] = u)), 204 === e || "HEAD" === y.type ? l = "nocontent" : 304 === e ? l = "notmodified" : (l = s.state, o = s.data, i = !(a = s.error))) : (a = l, !e && l || (l = "error", e < 0 && (e = 0))), T.status = e, T.statusText = (t || l) + "", i ? x.resolveWith(v, [o, l, T]) : x.rejectWith(v, [T, l, a]), T.statusCode(w), w = void 0, g && m.trigger(i ? "ajaxSuccess" : "ajaxError", [T, y, i ? o : a]), b.fireWith(v, [T, l]), g && (m.trigger("ajaxComplete", [T, y]), --E.active || E.event.trigger("ajaxStop"))) } return T }, getJSON: function (e, t, n) { return E.get(e, t, n, "json") }, getScript: function (e, t) { return E.get(e, void 0, t, "script") } }), E.each(["get", "post"], function (e, i) { E[i] = function (e, t, n, r) { return m(t) && (r = r || n, n = t, t = void 0), E.ajax(E.extend({ url: e, type: i, dataType: r, data: t, success: n }, E.isPlainObject(e) && e)) } }), E.ajaxPrefilter(function (e) { var t; for (t in e.headers) "content-type" === t.toLowerCase() && (e.contentType = e.headers[t] || "") }), E._evalUrl = function (e, t, n) { return E.ajax({ url: e, type: "GET", dataType: "script", cache: !0, async: !1, global: !1, converters: { "text script": function () { } }, dataFilter: function (e) { E.globalEval(e, t, n) } }) }, E.fn.extend({ wrapAll: function (e) { var t; return this[0] && (m(e) && (e = e.call(this[0])), t = E(e, this[0].ownerDocument).eq(0).clone(!0), this[0].parentNode && t.insertBefore(this[0]), t.map(function () { var e = this; while (e.firstElementChild) e = e.firstElementChild; return e }).append(this)), this }, wrapInner: function (n) { return m(n) ? this.each(function (e) { E(this).wrapInner(n.call(this, e)) }) : this.each(function () { var e = E(this), t = e.contents(); t.length ? t.wrapAll(n) : e.append(n) }) }, wrap: function (t) { var n = m(t); return this.each(function (e) { E(this).wrapAll(n ? t.call(this, e) : t) }) }, unwrap: function (e) { return this.parent(e).not("body").each(function () { E(this).replaceWith(this.childNodes) }), this } }), E.expr.pseudos.hidden = function (e) { return !E.expr.pseudos.visible(e) }, E.expr.pseudos.visible = function (e) { return !!(e.offsetWidth || e.offsetHeight || e.getClientRects().length) }, E.ajaxSettings.xhr = function () { try { return new C.XMLHttpRequest } catch (e) { } }; var _t = { 0: 200, 1223: 204 }, zt = E.ajaxSettings.xhr(); v.cors = !!zt && "withCredentials" in zt, v.ajax = zt = !!zt, E.ajaxTransport(function (i) { var o, a; if (v.cors || zt && !i.crossDomain) return { send: function (e, t) { var n, r = i.xhr(); if (r.open(i.type, i.url, i.async, i.username, i.password), i.xhrFields) for (n in i.xhrFields) r[n] = i.xhrFields[n]; for (n in i.mimeType && r.overrideMimeType && r.overrideMimeType(i.mimeType), i.crossDomain || e["X-Requested-With"] || (e["X-Requested-With"] = "XMLHttpRequest"), e) r.setRequestHeader(n, e[n]); o = function (e) { return function () { o && (o = a = r.onload = r.onerror = r.onabort = r.ontimeout = r.onreadystatechange = null, "abort" === e ? r.abort() : "error" === e ? "number" != typeof r.status ? t(0, "error") : t(r.status, r.statusText) : t(_t[r.status] || r.status, r.statusText, "text" !== (r.responseType || "text") || "string" != typeof r.responseText ? { binary: r.response } : { text: r.responseText }, r.getAllResponseHeaders())) } }, r.onload = o(), a = r.onerror = r.ontimeout = o("error"), void 0 !== r.onabort ? r.onabort = a : r.onreadystatechange = function () { 4 === r.readyState && C.setTimeout(function () { o && a() }) }, o = o("abort"); try { r.send(i.hasContent && i.data || null) } catch (e) { if (o) throw e } }, abort: function () { o && o() } } }), E.ajaxPrefilter(function (e) { e.crossDomain && (e.contents.script = !1) }), E.ajaxSetup({ accepts: { script: "text/javascript, application/javascript, application/ecmascript, application/x-ecmascript" }, contents: { script: /\b(?:java|ecma)script\b/ }, converters: { "text script": function (e) { return E.globalEval(e), e } } }), E.ajaxPrefilter("script", function (e) { void 0 === e.cache && (e.cache = !1), e.crossDomain && (e.type = "GET") }), E.ajaxTransport("script", function (n) { var r, i; if (n.crossDomain || n.scriptAttrs) return { send: function (e, t) { r = E("