NobGit
public nobgit read

NobMail

Based on mailcow: dockerized

Languages

Repository composition by tracked source files.

PHP
PHP 49% JavaScript 35% HTML 9% CSS 4% Shell 2% Python 1% Lua 0% Perl 0% Ruby 0% SCSS 0%
Create file Wiki Documentation
Clone
https://nobgit.com/orgs/nobgit/nobmail.git
ssh://[email protected]:2222/orgs/nobgit/nobmail.git

Commit

[Web] Show JID example when editing a domain

9c4cb21d
andryyy <[email protected]> 5 years ago
data/web/css/site/edit.css |  4 ++++
 data/web/edit.php          |  5 +++--
 data/web/js/site/edit.js   | 54 ++++++++++++++++++++++++++--------------------
 data/web/lang/lang.de.json |  1 +
 data/web/lang/lang.en.json |  1 +
 5 files changed, 40 insertions(+), 25 deletions(-)

Diff

diff --git a/data/web/css/site/edit.css b/data/web/css/site/edit.css
index ac3a430c..8a594ee1 100644
--- a/data/web/css/site/edit.css
+++ b/data/web/css/site/edit.css
@@ -40,4 +40,8 @@ table.footable>tbody>tr.footable-empty>td {
   -moz-transform:rotateX(180deg);
   -webkit-transform:rotateX(180deg);
   transform:rotateX(180deg);
+}
+.input-group-addon-xmpp {
+  background-color: #fff;
+  border: 0px solid #fff;
 }
\ No newline at end of file
diff --git a/data/web/edit.php b/data/web/edit.php
index 6087a7c6..c6bf50c7 100644
--- a/data/web/edit.php
+++ b/data/web/edit.php
@@ -362,12 +362,13 @@ if (isset($_SESSION['mailcow_cc_role'])) {
               </div>
               <div class="form-group" data-acl="<?=$_SESSION['acl']['xmpp_prefix'];?>">
                 <label class="control-label col-sm-2" for="xmpp_prefix"><?=$lang['edit']['xmpp_prefix'];?></label>
-                <div class="col-md-3">
+                <div class="col-md-10">
                   <div class="input-group">
-                    <input type="text" class="form-control" name="xmpp_prefix" value="<?=htmlspecialchars($result['xmpp_prefix'], ENT_QUOTES, 'UTF-8');?>" required>
+                    <input type="text" class="form-control" id="xmpp-prefix" name="xmpp_prefix" value="<?=htmlspecialchars($result['xmpp_prefix'], ENT_QUOTES, 'UTF-8');?>" required>
                     <span class="input-group-addon">.<?=htmlspecialchars($domain, ENT_QUOTES, 'UTF-8');?></span>
                   </div>
                   <small class="help-block"><?=sprintf($lang['edit']['xmpp_prefix_info'], getenv('MAILCOW_HOSTNAME'));?></small>
+                  <p><?=$lang['edit']['xmpp_example_jid'];?>: <code>username@<span class="xmpp-prefix-preview"></span>.<?=htmlspecialchars($domain, ENT_QUOTES, 'UTF-8');?></code></p>
                 </div>
               </div>
               <hr>
diff --git a/data/web/js/site/edit.js b/data/web/js/site/edit.js
index 1626d4b0..5a27da10 100644
--- a/data/web/js/site/edit.js
+++ b/data/web/js/site/edit.js
@@ -28,34 +28,42 @@ $(document).ready(function() {
     $('#mailbox-passwd-hidden-info').addClass('hidden');
     $('#mailbox-passwd-form-groups').removeClass('hidden');
   });
-});
-if ($("#editSelectMultipleBookings").val() == "custom") {
-  $("#multiple_bookings_custom_div").show();
-  $('input[name=multiple_bookings]').val($("#multiple_bookings_custom").val());
-}
-$("#editSelectMultipleBookings").change(function() {
-  $('input[name=multiple_bookings]').val($("#editSelectMultipleBookings").val());
-  if ($('input[name=multiple_bookings]').val() == "custom") {
-    $("#multiple_bookings_custom_div").show();
-  }
-  else {
-    $("#multiple_bookings_custom_div").hide();
-  }
-});
-if ($("#editSelectSenderACL option[value='\*']:selected").length > 0){
-  $("#sender_acl_disabled").show();
-}
-$('#editSelectSenderACL').change(function() {
+  // Preview XMPP JID
+  $('.xmpp-prefix-preview').text($("#xmpp-prefix").val());
+  $("#xmpp-prefix").bind("change keypress keyup blur", function() {
+    $('.xmpp-prefix-preview').text($(this).val());
+  });
+  // Sender ACL
   if ($("#editSelectSenderACL option[value='\*']:selected").length > 0){
     $("#sender_acl_disabled").show();
   }
-  else {
-    $("#sender_acl_disabled").hide();
+  $('#editSelectSenderACL').change(function() {
+    if ($("#editSelectSenderACL option[value='\*']:selected").length > 0){
+      $("#sender_acl_disabled").show();
+    }
+    else {
+      $("#sender_acl_disabled").hide();
+    }
+  });
+  // Resources
+  if ($("#editSelectMultipleBookings").val() == "custom") {
+    $("#multiple_bookings_custom_div").show();
+    $('input[name=multiple_bookings]').val($("#multiple_bookings_custom").val());
   }
+  $("#editSelectMultipleBookings").change(function() {
+    $('input[name=multiple_bookings]').val($("#editSelectMultipleBookings").val());
+    if ($('input[name=multiple_bookings]').val() == "custom") {
+      $("#multiple_bookings_custom_div").show();
+    }
+    else {
+      $("#multiple_bookings_custom_div").hide();
+    }
+  });
+  $("#multiple_bookings_custom").bind("change keypress keyup blur", function() {
+    $('input[name=multiple_bookings]').val($("#multiple_bookings_custom").val());
+  });
 });
-$("#multiple_bookings_custom").bind("change keypress keyup blur", function() {
-  $('input[name=multiple_bookings]').val($("#multiple_bookings_custom").val());
-});
+
 jQuery(function($){
   // http://stackoverflow.com/questions/46155/validate-email-address-in-javascript
   function validateEmail(email) {
diff --git a/data/web/lang/lang.de.json b/data/web/lang/lang.de.json
index 2f99e9b0..8df6ddd7 100644
--- a/data/web/lang/lang.de.json
+++ b/data/web/lang/lang.de.json
@@ -531,6 +531,7 @@
         "xmpp_access_info": "XMPP muss für diese Domain aktiviert sein.",
         "xmpp_admin": "XMPP Administrator",
         "xmpp_admin_info": "<b>Vorsicht:</b> Ernennt den Benutzer zum Administrator der jeweiligen XMPP Domain.",
+        "xmpp_example_jid": "<b>Beispiel JID</b> (Passwort entspricht Mailbox-Passwort)",
         "generate": "generieren",
         "grant_types": "Grant types",
         "hostname": "Servername",
diff --git a/data/web/lang/lang.en.json b/data/web/lang/lang.en.json
index 92559969..195b0867 100644
--- a/data/web/lang/lang.en.json
+++ b/data/web/lang/lang.en.json
@@ -532,6 +532,7 @@
         "xmpp_access_info": "XMPP must be enabled for this domain.",
         "xmpp_admin": "XMPP administrator",
         "xmpp_admin_info": "<b>Danger:</b> Promotes a user to an XMPP administrator of this domain.",
+        "xmpp_example_jid": "<b>Example JID</b> (login with mailbox password)",
         "generate": "generate",
         "grant_types": "Grant types",
         "hostname": "Hostname",