extensions/net.sf.basedb.otp/trunk/resources/scripts/login.js

Code
Comments
Other
Rev Date Author Line
4849 13 Jun 18 nicklas 1 'use strict';
4849 13 Jun 18 nicklas 2
4849 13 Jun 18 nicklas 3 var OTP = function()
4849 13 Jun 18 nicklas 4 {
4849 13 Jun 18 nicklas 5   var otp = {};
4849 13 Jun 18 nicklas 6   
4849 13 Jun 18 nicklas 7   otp.initPage = function()
4849 13 Jun 18 nicklas 8   {
5146 26 Nov 18 nicklas 9     if (Data.get(document.body, 'login-form') != 'net.sf.basedb.otp.login-form') 
5146 26 Nov 18 nicklas 10     {
5146 26 Nov 18 nicklas 11       // Not the OTP login form
5146 26 Nov 18 nicklas 12       return;
5146 26 Nov 18 nicklas 13     }
5146 26 Nov 18 nicklas 14     
4918 08 Aug 18 nicklas 15     // The OTP field can be either the password field or the
4918 08 Aug 18 nicklas 16     // extra field
4918 08 Aug 18 nicklas 17     var otpField = Doc.element('extraField');
4918 08 Aug 18 nicklas 18     if (!otpField) otpField = Doc.element('password');
4918 08 Aug 18 nicklas 19     // If the OTP field is text type, the user is not 
4918 08 Aug 18 nicklas 20     // supposed to enter password into it
4918 08 Aug 18 nicklas 21     if (otpField.type == 'text')
4863 19 Jun 18 nicklas 22     {
5185 06 Dec 18 nicklas 23       // Disable auto-complete and set maxlength to 6 digits
4918 08 Aug 18 nicklas 24       otpField.setAttribute('autocomplete', 'off');
5185 06 Dec 18 nicklas 25       otpField.setAttribute('maxlength', '6');
4863 19 Jun 18 nicklas 26     }
4849 13 Jun 18 nicklas 27   }
4849 13 Jun 18 nicklas 28
4849 13 Jun 18 nicklas 29   otp.initElements = function(element, autoInit)
4849 13 Jun 18 nicklas 30   {
4849 13 Jun 18 nicklas 31     if (autoInit == 'setup-otp')
4849 13 Jun 18 nicklas 32     {
4849 13 Jun 18 nicklas 33       Buttons.addClickHandler(element, otp.setupOtpDialog);
4849 13 Jun 18 nicklas 34       Doc.addClass(element, 'setup-otp');
4849 13 Jun 18 nicklas 35     }
4849 13 Jun 18 nicklas 36   }
4849 13 Jun 18 nicklas 37   
4849 13 Jun 18 nicklas 38   otp.setupOtpDialog = function()
4849 13 Jun 18 nicklas 39   {
4849 13 Jun 18 nicklas 40     var url = App.getRoot() + 'extensions/base-otp.jar/setup-otp.jsp?ID='+App.getSessionId();
4854 15 Jun 18 nicklas 41     var login = Doc.element('login');
4854 15 Jun 18 nicklas 42     if (login && login.value) 
4854 15 Jun 18 nicklas 43     {
4854 15 Jun 18 nicklas 44       url += '&username='+encodeURIComponent(login.value);
4854 15 Jun 18 nicklas 45     }
4849 13 Jun 18 nicklas 46     
4849 13 Jun 18 nicklas 47     Dialogs.openPopup(url, 'SetupOTP', 800, 600);
4849 13 Jun 18 nicklas 48   }
4849 13 Jun 18 nicklas 49   
4849 13 Jun 18 nicklas 50   return otp;
4849 13 Jun 18 nicklas 51 }();
4849 13 Jun 18 nicklas 52
4849 13 Jun 18 nicklas 53 Doc.addElementInitializer(OTP.initElements);
4863 19 Jun 18 nicklas 54 Doc.onLoad(OTP.initPage);
4849 13 Jun 18 nicklas 55