Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ! function(a, b, c, d) {
- "use strict";
- a.itwLogin = function(c, e) {
- var f = new RegExp(/^[A-Z0-9\\@._-]+$/i),
- g = new RegExp(/^([A-Z0-9._%+-]+)@([A-Z0-9.-]+\.[A-Z]+)$/i),
- h = new RegExp(/^([A-Z0-9-]+)\\([A-Z0-9._%+-]+)$/i),
- i = new RegExp(/^logondata=dmnName=([^;]+)&lgnName=([^;]+)$/i),
- m = {},
- n = {
- debugEnabled: !1,
- debugStepbyStep: !0,
- debugAjaxCall: !0,
- validateOnBlur: !0,
- preprocessUsername: !1,
- usernameFormat: "netbios",
- checkAccountStatus: !1,
- checkAccountURL: "https://accounts.myworkz.nl/Account/passwordstate/{1}",
- preCheckOnBlur: !0,
- registrationRequired: !0,
- cookiesEnabled: !0,
- cookieName: "itworkzLogon",
- identifierOverride: "it-workz.info",
- selectors: {
- preprocess: "#preUsername",
- username: "#username",
- visibleusername: "",
- password: "#password",
- newpassword: "#newpassword",
- confirmpassword: "#cnewpassword",
- otp: "#passcode",
- domainselect: "#domainSelect",
- submitbutton: "#SubmitCreds",
- debug: "#testAntwoord",
- privatelogon: "#rdoPrvt",
- publiclogon: "#rdoPblc",
- curl: "#curl"
- },
- styleSelectors: {
- wrapper: ".wrapper",
- content: ".content",
- loader: ".loader",
- loadermsg: ".loader-message",
- inlineloader: ".inline-loader"
- },
- domains: [{
- short: "rocwb",
- long: "rocwb.local",
- netbios: "rocwblocal"
- }, {
- short: "svc",
- long: "svc.local",
- netbios: "svc"
- }],
- knownDomains: [{
- short: "mgmt",
- long: "mgmt.it-workz.nl",
- netbios: "mgmt"
- }, {
- short: "digiworkz",
- long: "digiworkz.nl",
- netbios: "digiworkz"
- }, {
- short: "rocwb",
- long: "rocwb.local",
- netbios: "rocwblocal"
- }, {
- short: "svc",
- long: "svc.local",
- netbios: "svc"
- }, {
- short: "myworkz",
- long: "myworkz.nl",
- netbios: "myworkz"
- }],
- accountStatuses: [{
- status: "unlockURL",
- serviceStatus: "AccountUnlockLink"
- }, {
- status: "isLocked",
- serviceStatus: "IsAccountLockedOut"
- }, {
- status: "isRegistered",
- serviceStatus: "IsRegistred"
- }, {
- status: "isExpired",
- serviceStatus: "PasswordExpireState"
- }, {
- status: "pwdChangeURL",
- serviceStatus: "PasswordChangeLink"
- }, {
- status: "registerURL",
- serviceStatus: "PasswordRecoveryInfoLink"
- }, {
- status: "pwdExpiresIn",
- serviceStatus: "PasswordRemainingDays"
- }, {
- status: "pwdResetURL",
- serviceStatus: "PasswordResetLink"
- }, {
- status: "unlockTime",
- serviceStatus: "RemaingLockoutTime"
- }, {
- status: "unlockCount",
- serviceStatus: "UnLockAttemptsRemaining"
- }, {
- status: "isDisabled",
- serviceStatus: "IsAccountDisabled"
- }, {
- status: "MFAisEnabled",
- serviceStatus: "MFAisEnabled"
- }, {
- status: "MFAisRegistered",
- serviceStatus: "MFAisRegistered"
- }, {
- status: "MFAToken",
- serviceStatus: "MFAToken"
- }, {
- status: "MFAMode",
- serviceStatus: "MFAMode"
- }, {
- status: "MFARegistrationURL",
- serviceStatus: "MFARegistrationURL"
- }],
- language: {
- errors: {
- bothBackslashandAtSign: "Uw gebruikersnaam bevat zowel een \\ als een @, vul uw gebruikersnaam in als domeinnaam\\gebruikersnaam of gebruikersnaam@domein.extensie .",
- invalidChars: "Uw gebruikersnaam bevat niet toegestane karakters. <br>Alleen letters, cijfers en de leestekens . _ - \\ @ zijn toegestaan.",
- emptyUsername: "Het gebruikersnaamveld is leeg, u moet een gebruikersnaam opgeven.",
- emptyPassword: "Het wachtwoordveld is leeg, u moet een wachtwoord opgeven.",
- invalidFormat: "Uw gebruikersnaam is niet juist in gevoerd, vul uw gebruikersnaam in als domeinnaam\\gebruikersnaam of gebruikersnaam@domein.extensie."
- },
- loader: {
- standard: "U wordt aangemeld, een ogenblik geduld...",
- notregistered: '<h3><div class="icon warning-icon"></div>Registratie niet voltooid</h3><br>U kunt hierdoor geen gebruik maken van de wachtwoord vergeten functionaliteit.<br><br>U wordt over <span id="countdownTimer"></span> seconden automatisch aangemeld.<br>Klik op onderstaande knop om direct te registeren.<div class=\'button-group\'><a class=\'btn btn-countdown\' href="{1}">Nu registreren</a></div>',
- notregisteredRequired: '<h3><div class="icon error-icon"></div>Registratie niet voltooid</h3><br>U kunt hierdoor geen gebruik maken van de wachtwoord vergeten functionaliteit.<br><br>U wordt over <span id="countdownTimer"></span> seconden automatisch doorgestuurd of klik op onderstaande knop om direct het registratieproces te starten.<div class=\'button-group\'><a class=\'btn btn-countdown\' href="{1}">Nu registreren</a></div>',
- expires: '<h3><div class="icon warning-icon"></div>Uw wachtwoord gaat verlopen</h3><br>Uw wachtwoord verloopt over {1} dagen.<br><br>U wordt over <span id="countdownTimer"></span> seconden automatisch aangemeld.<br>Klik op onderstaande knop om nu uw wachtwoord te wijzigen.<div class=\'button-group\'><a class=\'btn btn-countdown\' href="{2}">Nu wijzigen</a></div>',
- isExpired: '<h3><div class="icon error-icon"></div>Uw wachtwoord is verlopen</h3><br>U wordt over <span id="countdownTimer"></span> seconden automatisch doorgestuurd of klik op onderstaande knop om direct uw wachtwoord te wijzigen.<div class=\'button-group\'><a class=\'btn btn-countdown\' href="{1}">Nu wijzigen</a></div>',
- timeLockedSelfUnlock: '<h3><div class="icon warning-icon"></div>Uw account is geblokkeerd</h3><br>Uw account wordt over <span id="countdownTimer">{1}</span> minuten ({2}) automatisch gedeblokkeerd.<br><br>U hebt vandaag nog {3} pogingen om uw account zelf te deblokkeren.<br><br>Klik op onderstaande knop om uw account te deblokkeren of neem contact op met de Servicedesk van IT-Workz via 088 - 489 6777.<div class=\'button-group\'><a class=\'btn btn-submit\' href="{4}">Nu deblokkeren</a></div>',
- timeLocked: '<h3><div class="icon warning-icon"></div>Uw account is geblokkeerd</h3><br>Uw account wordt over <span id="countdownTimer">{1}</span> minuten ({2}) automatisch gedeblokkeerd.<br><br>Probeert u het dan nog eens<br> of neem contact op met de Servicedesk van IT-Workz via 088 - 489 6777.',
- locked: '<h3><div class="icon error-icon"></div>Uw account is geblokkeerd</h3><br>Neem contact op met de Servicedesk van IT-Workz via 088 - 489 6777.',
- lockedSelfUnlock: "<h3><div class=\"icon warning-icon\"></div>Uw account is geblokkeerd</h3><br>U heeft vandaag nog {1} pogingen om uw account zelf te deblokkeren.<br><br>Klik op onderstaande knop om uw account te deblokkeren of neem contact op met de Servicedesk van IT-Workz via 088 - 489 6777.<div class='button-group'><a class='btn btn-submit' href=\"{2}\">Nu deblokkeren</a></div>",
- accountStatusError: '<h3><div class="icon warning-icon"></div>Accountstatus onbekend</h3><br>We kunnen de status van uw account op dit moment niet opvragen.<br>U wordt over <span id="countdownTimer"></span> seconden automatisch aangemeld.<br><br>Informatie voor de beheerder:<br>{1}',
- loaderError: "<h3><div class=\"icon error-icon\"></div>Storing!</h3><br>Er is een fout opgetreden.<br>Herlaad de pagina om opnieuw te proberen.<br><br>Informatie voor de beheerder: <br>{1}: {2}<div class='button-group'><a class='btn btn-submit' href=\"javascript:window.location.href=window.location.href\">Opnieuw proberen</a></div>",
- disabled: "<h3><div class=\"icon error-icon\"></div>Uw account is niet meer actief</h3><br>Als uw account ten onrechte is uitgeschakeld, <br>kunt u contact opnemen met de Servicedesk van IT-Workz<br> via 088 - 489 6777.<div class='button-group'><a class='btn btn-submit' href=\"javascript:window.location.href=window.location.href\">Opnieuw proberen</a></div>",
- mfanotregistered: '<h3><div class="icon warning-icon"></div>MFA registratie niet voltooid</h3><br>Om van deze dienst gebruik te maken<br>moet het MFA registratie proces voltooid zijn.<br><br>U wordt over <span id="countdownTimer"></span> seconden automatisch doorgestuurd of klik op onderstaande knop om direct het registratieproces te starten.<div class=\'button-group\'><a class=\'btn btn-countdown\' href="{1}">Nu registreren</a></div>',
- mfahasToken: '<h3><div class="icon error-icon"></div>Aanmelden niet mogelijk</h3><br>U maakt gebruik van een e-token.<br>Deze methode wordt niet ondersteund voor deze dienst.<br><br>Maak gebruik van werkplek.rocwb.nl <br>of gebruik uw smartphone als MFA verificatiemethode.',
- mfaMethodApp: '<svg class="icon-svg app-icon"><use xlink:href="#app-icon"></use></svg><br><h3><svg class="spinner" viewbox="0 0 40 40"><circle class="spinnerCircle" cx="20" cy="20" r="18"></circle></svg>Wacht op MFA-verificatie...</h3><br><div class="countdown"><div class="countdown-bar"></div></div><br>Verifieer uw aanmelding in de app<br>op uw smartphone om door te gaan.<br>',
- mfaMethodSMS: '<svg class="icon-svg message-icon"><use xlink:href="#message-icon"></use></svg><br><h3><svg class="spinner" viewbox="0 0 40 40"><circle class="spinnerCircle" cx="20" cy="20" r="18"></circle></svg>Wacht op MFA-verificatie...</h3><br><div class="countdown"><div class="countdown-bar"></div></div><br>U ontvangt een sms met een code.<br>Stuur deze code terug naar de afzender om door te gaan.',
- mfaMethodCall: '<svg class="icon-svg phone-icon"><use xlink:href="#phone-icon"></use></svg><br><h3><svg class="spinner" viewbox="0 0 40 40"><circle class="spinnerCircle" cx="20" cy="20" r="18"></circle></svg>Wacht op MFA-verificatie...</h3><br><div class="countdown"><div class="countdown-bar"></div></div><br>U wordt gebeld.<br>Volg de gesproken instructies om door te gaan.',
- mfaMethodUnknown: '<h3><svg class="spinner" viewbox="0 0 40 40"><circle class="spinnerCircle" cx="20" cy="20" r="18"></circle></svg>Wacht op MFA-verificatie...</h3><br><div class="countdown"><div class="countdown-bar"></div></div><br>Verfieer uw aanmelding door gebruik te maken <br>van de door u gekozen verificatiemethode.'
- }
- }
- },
- o = this;
- o.settings = {};
- var p = a(c);
- o.init = function() {
- o.settings = a.extend({}, n, e), o.settings.selectors.visibleusername = o.settings.preprocessUsername ? o.settings.selectors.preprocess : o.settings.selectors.username, a(o.settings.selectors.visibleusername).val().length > 0 && a(o.settings.selectors.visibleusername).val(""), m = I(), m.rurl !== d && a(o.settings.selectors.curl).val(m.rurl), m.trigger !== d && F(o.settings.language.loader[m.trigger], !1), m.triggerLoader !== d && F(o.settings.language.loader.standard, !0), o.settings.domains.length > 1 ? D(a(o.settings.selectors.domainselect), o.settings.domains) : a(o.settings.selectors.domainselect).html(o.settings.domains[0].short), o.settings.preCheckOnBlur && a(o.settings.selectors.visibleusername).closest(".form-group").after('<div class="form-loader"><div class="inline-loader" style="display:none;"><div></div><div></div><div></div><div></div></div></div>'), N(o.settings.cookieName), a(o.settings.selectors.visibleusername).on("keypress", function(b) {
- 13 == b.which && (b.preventDefault(), a('[data-index="' + (parseFloat(a(b.target).attr("data-index")) + 1).toString() + '"]').trigger("focus"))
- }), a(o.settings.selectors.password).on("keypress", function(b) {
- 13 == b.which && (b.preventDefault(), a(o.settings.selectors.submitbutton).trigger("click"))
- }), o.settings.validateOnBlur && p.on("blur", "[data-validation=true]", function() {
- var b = a(this);
- y(b, "onBlur"), o.settings.checkAccountStatus && o.settings.preCheckOnBlur && "#" + b.attr("id") == o.settings.selectors.visibleusername && v(b)
- }), a(o.settings.selectors.submitbutton).on("click", function(b) {
- b.preventDefault(), x() && (H("Form validatie geslaagd."), a(o.settings.selectors.otp).length > 0 && "" === a(o.settings.selectors.otp).val() && "" != a(o.settings.selectors.password).val() && (a("label[for=" + o.settings.selectors.otp.replace("#", "") + "]").text(""), a(o.settings.selectors.otp).val(a(o.settings.selectors.password).val())), a(o.settings.selectors.privatelogon).prop("checked") && O(o.settings.cookieName, a(o.settings.selectors.visibleusername).val()), a(o.settings.selectors.publiclogon).prop("checked") && P(o.settings.cookieName), o.settings.checkAccountStatus ? (H("Getting URL parameters"), F(o.settings.language.loader.standard, !0), H("Starting AccountStatus proces..."), q(C(a(o.settings.selectors.username).val(), "upn", !0))) : r())
- })
- };
- var q = function(b) {
- H("Getting accountstatus by Ajax..."), s(b, function(c, d, e) {
- c ? 0 != c.Status ? (H("Status - Error while retrieving data: " + status.Message), E(L(o.settings.language.loader.accountStatusError, "AccountStatusService Error: " + status.Message), 14, "#countdownTimer", function() {
- r()
- })) : (H("Accountstatus retrieved:"), H(c), u(a.parseJSON(c.Data), b, !1)) : "Timeout" !== d ? (H("Request - Failed because of: " + e), E(L(o.settings.language.loader.accountStatusError, "Error bij verbinden met AccountStatusService:" + e), 14, "#countdownTimer", function() {
- r()
- })) : (H("Request - Failed because of timeout"), E(L(o.settings.language.loader.accountStatusError, "Timeout bij verbinden met AccountStatusService."), 14, "#countdownTimer", function() {
- r()
- }))
- })
- },
- r = function() {
- H("Starting login process.");
- var b = C(a(o.settings.selectors.visibleusername).val(), o.settings.usernameFormat, !0);
- H("Using username:" + b), a(o.settings.selectors.visibleusername).val(b), H("username: " + a(o.settings.selectors.username).val() + ", password: " + a(o.settings.selectors.password).val() + ", passcode: " + a(o.settings.selectors.otp).val()), setTimeout(function() {
- p.submit()
- }, 200)
- },
- s = function(b, c, e) {
- var e = e || 1e4;
- if (0 == o.settings.debugAjaxCall) return a(o.settings.selectors.debug).val().toString();
- var f = L(o.settings.checkAccountURL, b);
- H("Request - Getting AccountStatus for: " + b + " by using url: " + f);
- a.ajax({
- type: "Get",
- url: f,
- timeout: e,
- dataType: "json",
- cache: !1
- }).done(function(a) {
- H("Request - Answer received: "), c(a)
- }).fail(function(a, b, e) {
- c(d, b, e)
- })
- },
- t = function(b) {
- var c = {};
- return a.each(o.settings.accountStatuses, function(d, e) {
- c[e.status] = b[a.grep(o.settings.accountStatuses, function(a) {
- return a.status === e.status
- })[0].serviceStatus]
- }), c
- },
- u = function(c, d, e) {
- var f = t(c),
- g = o.settings.identifierOverride.length > 0 ? "&authIdentifier=" + o.settings.identifierOverride : "";
- if (H("Parsing AccountStatus"), f.isDisabled) return H("Status - Account is Disabled."), void F(L(o.settings.language.loader.disabled));
- if (!f.isLocked) {
- if (!f.isRegistered && o.settings.registrationRequired) {
- var i = b.location.href,
- p = f.registerURL + "?url=" + encodeURIComponent(i) + "&userPrincipalName=" + d + g + "&phase=registration";
- return H("Using registerURL: " + p), H("Account - Not registered (and is NOT required), authenticate and redirect"), void E(L(o.settings.language.loader.notregisteredRequired, p), 14, "#countdownTimer", function() {
- b.location.href = p
- })
- }
- if (!f.isRegistered && !o.settings.registrationRequired) {
- var i = b.location.href,
- p = f.registerURL + "?url=" + encodeURIComponent(i) + "&userPrincipalName=" + d + g + "&phase=registration";
- return H("Account - Not registered (and is NOT required), authenticate and redirect"), void E(L(o.settings.language.loader.notregistered, p), 14, "#countdownTimer", function() {
- r()
- })
- }
- if (1 !== f.isExpired) {
- var i = b.location.href,
- q = f.pwdResetURL + "?url=" + encodeURIComponent(i) + "&userPrincipalName=" + d + g;
- return 0 === f.isExpired && (H("Account - Password is expired!"), E(L(o.settings.language.loader.isExpired, q), 14, "#countdownTimer", function(c) {
- a("body").animate({
- opacity: 0
- }, 500, function() {
- H("Account - Redirecting to: " + q), b.location.href = q
- })
- })), void(2 === f.isExpired && "preCheck" !== e && (H("Account - Password is about to expire!"), E(L(o.settings.language.loader.expires, f.pwdExpiresIn, q), 14, "#countdownTimer", function() {
- r()
- })))
- }
- if (f.MFAisEnabled) {
- if (!f.MFAisRegistered) return H("Account - MFA is enabled, but not registered!"), void E(L(o.settings.language.loader.mfanotregistered, f.MFARegistrationURL), 14, "#countdownTimer", function() {
- b.location.href = f.MFARegistrationURL
- });
- if (f.MFAisRegistered && "oathToken" == f.MFAMode) return H("Account - MFA is enabled and registration is complete, processing with method: " + f.MFAMode + "."), void setTimeout(function() {
- F(L(o.settings.language.loader.mfahasToken))
- }, 750);
- if (f.MFAisRegistered && "phoneApp" == f.MFAMode && "preCheck" !== e) return H("Account - MFA is enabled and registration is complete, processing with method: " + f.MFAMode + "."), r(), void setTimeout(function() {
- F(L(o.settings.language.loader.mfaMethodApp))
- }, 2e3);
- if (f.MFAisRegistered && "voiceCall" == f.MFAMode && "preCheck" !== e) return H("Account - MFA is enabled and registration is complete, processing with method: " + f.MFAMode + "."), r(), void setTimeout(function() {
- F(L(o.settings.language.loader.mfaMethodCall))
- }, 2e3);
- if (f.MFAisRegistered && "smsText" == f.MFAMode && "preCheck" !== e) return H("Account - MFA is enabled and registration is complete, processing with method: " + f.MFAMode + "."), r(), void setTimeout(function() {
- F(L(o.settings.language.loader.mfaMethodSMS))
- }, 2e3);
- if (f.MFAisRegistered && "preCheck" !== e) return H("Account - MFA is enabled and registration is complete, processing with method: " + f.MFAMode + "."), r(), void setTimeout(function() {
- F(L(o.settings.language.loader.mfaMethodUnknown))
- }, 2e3)
- }
- return H("Account - OK."), "preCheck" === e || void r()
- }
- if (H("Status - Account is Locked"), f.unlockTime < 0 && (f.unlockTime = Math.abs(f.unlockTime)), f.unlockTime > 0) {
- var h = new Date,
- i = b.location.href,
- j = g.length > 0 ? f.unlockURL + "?url=" + encodeURIComponent(i) + "&userPrincipalName=" + d + g : f.unlockURL;
- h.setMinutes(h.getMinutes() + f.unlockTime);
- var k = h.getMinutes(),
- l = h.getHours() + ":" + (k < 10 ? "0" + k : k),
- m = f.unlockTime;
- setInterval(function() {
- 0 !== m ? m-- : m = 0, 0 == m && b.location.reload(), a("#countdownTimer").text(m)
- }, 6e4);
- f.unlockCount > 0 ? (H("Status - Locked; auto-unlock in " + m + " minutes, self-unlocks: " + f.unlockCount), F(L(o.settings.language.loader.timeLockedSelfUnlock, f.unlockTime, l, f.unlockCount, j))) : (H("Status - Locked; auto-unlock in " + m + " minutes, no self-unlocks."), F(L(o.settings.language.loader.timeLocked, f.unlockTime, l)))
- } else f.unlockCount > 0 ? (H("Status - Locked; no auto-unlock, self-unlocks: " + f.unlockCount), F(L(o.settings.language.loader.lockedSelfUnlock, f.unlockCount, j))) : (H("Status - Locked; no auto-unlock, no self-unlocks"), F(L(o.settings.language.loader.locked)))
- },
- v = function(b) {
- var c = a(o.settings.styleSelectors.inlineloader),
- d = b.val();
- if (H("preChecking Account..."), z(d) === !0) {
- c.show();
- var e = C(d, "upn", !0);
- s(e, function(b) {
- b ? 0 != b.Status ? (c.hide(), H("Accountstatus returned an error. Stop prechecking...")) : (c.hide(), u(a.parseJSON(b.Data), e, "preCheck")) : (c.hide(), H("Accountstatus returned no result. Stop prechecking..."))
- }, 5e3)
- }
- },
- w = function(a, b, c) {
- var d = a.val(),
- e = "";
- if (d.length > 0) {
- if ("username" === b) {
- var i = z(d);
- return e = 1 == i ? "" : i, A(a, e, "error"), !(e.length > 0)
- }
- if ("password" === b) return !0;
- A(a, e)
- } else if ("onSubmit" === c) return "username" === b ? e = "emptyUsername" : "password" === b && (e = "emptyPassword"), A(a, e), !1
- },
- x = function() {
- var b = !0;
- return p.find("input[data-validation]").each(function() {
- var c = a(this);
- if ("true" === G(c, "validation")) {
- var d = y(c, "onSubmit");
- b = !!d && b
- }
- }), b
- },
- y = function(a, b) {
- return w(a, G(a, "validation-type"), b)
- },
- z = function(a) {
- var b = a.indexOf("@") > -1,
- c = a.indexOf("\\") > -1;
- return f.test(a) ? b && c ? "bothBackslashandAtSign" : b && !a.match(g) ? "invalidFormat" : (H("Validatie van gebruikersnaam geslaagd: " + a + "."), !0) : "invalidChars"
- },
- A = function(b, c, d) {
- c = c || "", d = d || "";
- var e, f, g = b.closest(".form-group"),
- h = b.attr("id") + "-error",
- i = a("#" + h),
- j = o.settings.language.errors,
- k = "error" === d ? "danger" : "warning";
- if (e = j[c]) {
- if (f = e, i.children("div").attr("id") !== f) {
- i.slideUp(400), b.addClass("validation-" + k), g.addClass("validation-border-" + k);
- var l = "<div id='" + h + "' class='validation-wrapper' style='display:none;'><div id='" + f + "' class='bs-callout-" + k + "'>" + f + "</div></div>";
- g.after(l).next().slideDown(400)
- }
- } else b.removeClass(function(a, b) {
- return (b.match(/\bvalidation-\S+/g) || []).join(" ")
- }), g.removeClass(function(a, b) {
- return (b.match(/\bvalidation-\S+/g) || []).join(" ")
- }), i.slideUp(400, function() {
- i.remove()
- })
- },
- B = function(b, c) {
- var d = c ? o.settings.knownDomains : o.settings.domains,
- e = a.grep(d, function(a) {
- return a.short === b
- });
- return (e.length > 0 || (e = a.grep(d, function(a) {
- return a.long === b
- }), e.length > 0 || (e = a.grep(d, function(a) {
- return a.netbios === b
- }), e.length > 0))) && e
- },
- C = function(b, c, d) {
- var i, j, e = b.indexOf("@") > -1,
- f = b.indexOf("\\") > -1;
- if (e && !f) {
- H("Format username - UPN format detected...");
- var k = b.match(g);
- if (H("Format username - matches: " + k), i = k[1], j = B(k[2], d), !j) return H("Format username - Unknown domain, keeping username: " + b), b
- }
- if (!e && f) {
- H("Format username - Netbios format detected...");
- var k = b.match(h);
- if (i = k[2], j = B(k[1], d), H("Checking domains for " + k[1] + "...result: "), !j) return H("Format username - Unknown domain, keeping username: " + b), o.settings.checkAccountStatus = !1, b
- }
- switch (e || f || (H("Format username - Username format detected..."), i = b, H("Selected domain is: " + a(o.settings.selectors.domainselect).text().replace(/ /g, "")), j = B(a(o.settings.selectors.domainselect).text().replace(/ /g, ""))), c) {
- case "upn":
- var l = i + "@" + j[0].long;
- H("Format username - Requested format: " + c + ", output: " + l);
- break;
- case "netbios":
- var l = j[0].netbios + "\\" + i;
- H("Format username - Requested format: " + c + ", output: " + l);
- break;
- case "usernameOnly":
- var l = i;
- H("Format username - Requested format: " + c + ", output: " + l);
- break;
- default:
- H("Format username - Requested format: None selected, output: " + l);
- var l = b
- }
- return l
- },
- D = function(b, c) {
- b.addClass("dropdown-toggle"), b.attr("data-toggle", "dropdown"), b.html(o.settings.domains[0].short + " <div class='caret'></div>");
- var d = "<ul class='dropdown-menu'>",
- e = 0;
- for (e = 0; e < c.length; e++) d += "<li><a class='domainOption' id='" + c[e].short + "' href='javascript:void(0)'>" + c[e].short + "</a></li>", e != c.length && (d += "<li><div class='break'></div></li>");
- d += "</ul>", b.after(d), a(".domainOption").on("click", function(a) {
- b.html(this.id + " <span class='caret'></span>")
- })
- },
- E = function(b, c, d, e) {
- a(d).text(c);
- setInterval(function() {
- 0 !== c ? c-- : c = 0, a(d).text(c), 0 === c && e()
- }, 1e3);
- F(b)
- },
- F = function(b, c) {
- c = c || !1, b = c ? '<svg class="spinner" viewbox="0 0 40 40"><circle class="spinnerCircle" cx="20" cy="20" r="18"></circle></svg>' + b : b, a(o.settings.styleSelectors.loader).animate({
- opacity: 0
- }, 250, function() {
- a(o.settings.styleSelectors.loadermsg).html(b)
- });
- var d = M();
- a(o.settings.styleSelectors.wrapper).animate({
- "margin-top": d
- }, 500), a(o.settings.styleSelectors.content).animate({
- opacity: 0,
- height: 0
- }, 500, function() {
- a(this).hide()
- }), a(o.settings.styleSelectors.loader).animate({
- opacity: 1
- }, 250)
- },
- G = function(a, b, c) {
- return c === d ? a.attr("data-" + b) : c === !1 || null === c ? a.removeAttr("data-" + b) : a.attr("data-" + b, c)
- },
- H = function(a) {
- var b;
- m.debug !== d && (b = !0), o.settings.debugStepbyStep && (o.settings.debugEnabled || b) && console.log(a)
- },
- I = function() {
- var a, c, d = /\+/g,
- e = /([^&=]+)=?([^&]*)/g,
- f = function(a) {
- return decodeURIComponent(a.replace(d, " "))
- },
- g = b.location.search.substring(1);
- for (a = {}; c = e.exec(g);) a[f(c[1])] = f(c[2]);
- return a
- },
- L = function(a) {
- var b = arguments;
- return a.replace(/\{(\d+)\}/gi, function(a, c) {
- return "undefined" != typeof b[c] ? b[c] : a
- })
- },
- M = function() {
- var c = (a(b).height() - (a(o.settings.styleSelectors.wrapper).outerHeight() - a(o.settings.styleSelectors.content).outerHeight() + a(o.settings.styleSelectors.loader).outerHeight())) / 3;
- return a(b).width() >= 480 ? a(b).width() <= 768 ? Math.max(10, c / 3) : Math.max(0, c) : 0
- },
- N = function(b) {
- if (!o.settings.cookiesEnabled) return !1;
- H("Loading cookie settings...");
- var c = a.cookie(b);
- if (c !== d) {
- H("Cookie found: " + c);
- var e = i.exec(c);
- H("Cookie data matches: " + e);
- var f = a(o.settings.selectors.privatelogon);
- if (f.length > 0 && (jQuery().iCheck() ? f.iCheck("check") : f.trigger("click")), e !== d) {
- if (e[2].length > 0) {
- H("Converting username found in Cookie: " + e[2]);
- var g = C(e[2], "usernameOnly", !1);
- H("Setting username value to: " + g), a(o.settings.selectors.visibleusername).val(g), setTimeout(function() {
- a('[data-index="' + (parseFloat(a(o.settings.selectors.visibleusername).attr("data-index")) + 1).toString() + '"]').trigger("focus")
- }, 1150)
- }
- if (e[1].length > 0) {
- var h = a.grep(o.settings.domains, function(a) {
- return a.short === e[1]
- }),
- j = o.settings.domains.length > 1 ? h[0].short + " <span class='caret'></span>" : h[0].short;
- a(o.settings.selectors.domainselect).html(j)
- }
- }
- } else H("No Cookie found, skipping...")
- },
- O = function(b, c) {
- if (!o.settings.cookiesEnabled) return !1;
- a.removeCookie(b);
- var d = "logondata=dmnName=" + a(o.settings.selectors.domainselect).text().replace(/ /g, "") + "&lgnName=" + c;
- H("Saving Cookie data: " + d), a.cookie(b, d, {
- expires: 14
- })
- },
- P = function(b) {
- return !!o.settings.cookiesEnabled && (H("Cookie data cleared."), void a.removeCookie(b))
- };
- o.init()
- }, a.fn.itwLogin = function(b) {
- return this.each(function() {
- if (d === a(this).data("itwLogin")) {
- var c = new a.itwLogin(this, b);
- a(this).data("itwLogin", c)
- }
- })
- }
- }(jQuery, window, document);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement