From a3644638aaf0418598196a870204e0b632a4c8ad Mon Sep 17 00:00:00 2001
From: Thomas Bruederli <thomas@roundcube.net>
Date: Fri, 17 Apr 2015 06:28:40 -0400
Subject: [PATCH] Allow preference sections to define CSS class names

---
 plugins/password/password.js |   77 ++++++++++++++++++++++----------------
 1 files changed, 44 insertions(+), 33 deletions(-)

diff --git a/plugins/password/password.js b/plugins/password/password.js
index e6fa0b5..d0fd75a 100644
--- a/plugins/password/password.js
+++ b/plugins/password/password.js
@@ -1,36 +1,47 @@
-/* Password change interface (tab) */
+/**
+ * Password plugin script
+ *
+ * @licstart  The following is the entire license notice for the
+ * JavaScript code in this file.
+ *
+ * Copyright (c) 2012-2014, The Roundcube Dev Team
+ *
+ * The JavaScript code in this page is free software: you can redistribute it
+ * and/or modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation, either version 3 of
+ * the License, or (at your option) any later version.
+ *
+ * @licend  The above is the entire license notice
+ * for the JavaScript code in this file.
+ */
 
-if (window.rcmail) {
-  rcmail.addEventListener('init', function(evt) {
-    // <span id="settingstabdefault" class="tablink"><roundcube:button command="preferences" type="link" label="preferences" title="editpreferences" /></span>
-    var tab = $('<span>').attr('id', 'settingstabpluginpassword').addClass('tablink');
-    
-    var button = $('<a>').attr('href', rcmail.env.comm_path+'&_action=plugin.password').html(rcmail.gettext('password')).appendTo(tab);
-    button.bind('click', function(e){ return rcmail.command('plugin.password', this) });
+window.rcmail && rcmail.addEventListener('init', function(evt) {
+    // register command handler
+    rcmail.register_command('plugin.password-save', function() {
+        var input_curpasswd = rcube_find_object('_curpasswd'),
+            input_newpasswd = rcube_find_object('_newpasswd'),
+            input_confpasswd = rcube_find_object('_confpasswd');
 
-    // add button and register commands
-    rcmail.add_element(tab, 'tabs');
-    rcmail.register_command('plugin.password', function() { rcmail.goto_url('plugin.password') }, true);
-    rcmail.register_command('plugin.password-save', function() { 
-	var input_curpasswd = rcube_find_object('_curpasswd');
-	var input_newpasswd = rcube_find_object('_newpasswd');
-        var input_confpasswd = rcube_find_object('_confpasswd');
-	
-	if (input_curpasswd && input_curpasswd.value=='') {
-	    alert(rcmail.gettext('nocurpassword', 'password'));
-	    input_curpasswd.focus();
-	} else if (input_newpasswd && input_newpasswd.value=='') {
-	    alert(rcmail.gettext('nopassword', 'password'));
-	    input_newpasswd.focus();
-	} else if (input_confpasswd && input_confpasswd.value=='') {
-	    alert(rcmail.gettext('nopassword', 'password'));
-	    input_confpasswd.focus();
-	} else if ((input_newpasswd && input_confpasswd) && (input_newpasswd.value != input_confpasswd.value)) {
-	    alert(rcmail.gettext('passwordinconsistency', 'password'));
-	    input_newpasswd.focus();
-	} else {
-	    rcmail.gui_objects.passform.submit();
-	}
+      if (input_curpasswd && input_curpasswd.value == '') {
+          alert(rcmail.gettext('nocurpassword', 'password'));
+          input_curpasswd.focus();
+      }
+      else if (input_newpasswd && input_newpasswd.value == '') {
+          alert(rcmail.gettext('nopassword', 'password'));
+          input_newpasswd.focus();
+      }
+      else if (input_confpasswd && input_confpasswd.value == '') {
+          alert(rcmail.gettext('nopassword', 'password'));
+          input_confpasswd.focus();
+      }
+      else if (input_newpasswd && input_confpasswd && input_newpasswd.value != input_confpasswd.value) {
+          alert(rcmail.gettext('passwordinconsistency', 'password'));
+          input_newpasswd.focus();
+      }
+      else {
+          rcmail.gui_objects.passform.submit();
+      }
     }, true);
-  })
-}
+
+    $('input:not(:hidden):first').focus();
+});

--
Gitblit v1.9.1