From 393afbe5db517433070b586295dfee440700cef2 Mon Sep 17 00:00:00 2001
From: Czémán Arnold <czeman.arnold@cloud.bme.hu>
Date: Mon, 29 May 2017 22:31:31 +0200
Subject: [PATCH] Hide command strings, it solves issue #474

---
 circle/dashboard/static/dashboard/vm-details.js     | 15 ++++++++++-----
 circle/dashboard/templates/dashboard/vm-detail.html | 12 ++++++------
 2 files changed, 16 insertions(+), 11 deletions(-)

diff --git a/circle/dashboard/static/dashboard/vm-details.js b/circle/dashboard/static/dashboard/vm-details.js
index bdda51c..754dfb6 100644
--- a/circle/dashboard/static/dashboard/vm-details.js
+++ b/circle/dashboard/static/dashboard/vm-details.js
@@ -70,12 +70,12 @@ $(function() {
   });
 
   /* for js fallback */
-  $("#vm-details-pw-show").parent("div").children("input").prop("type", "password");
+  $(".vm-details-show-password").parent("div").children("input").prop("type", "password");
 
   /* show password */
-  $("#vm-details-pw-show").click(function() {
+  $(".vm-details-show-password").click(function() {
     var input = $(this).parent("div").children("input");
-    var eye = $(this).children("#vm-details-pw-eye");
+    var eye = $(this).children(".vm-details-password-eye");
     var span = $(this);
 
     span.tooltip("destroy");
@@ -253,6 +253,11 @@ $(function() {
   });
 
   // Clipboard for connection strings
-  if(Clipboard.isSupported())
-    new Clipboard(".vm-details-connection-string-copy");
+  if(Clipboard.isSupported()) {
+    new Clipboard(".vm-details-connection-string-copy", {
+      text: function(trigger) {
+        return $($(trigger).data("clipboard-target")).val();
+      }
+    });
+  }
 });
diff --git a/circle/dashboard/templates/dashboard/vm-detail.html b/circle/dashboard/templates/dashboard/vm-detail.html
index 891e7df..1651ae8 100644
--- a/circle/dashboard/templates/dashboard/vm-detail.html
+++ b/circle/dashboard/templates/dashboard/vm-detail.html
@@ -133,9 +133,9 @@
           <div class="input-group">
             <input type="text" id="vm-details-pw-input" class="form-control input-sm input-tags"
             value="{{ instance.pw }}" spellcheck="false" autocomplete="new-password"/>
-            <span class="input-group-addon btn btn-default input-tags" id="vm-details-pw-show"
+            <span class="input-group-addon btn btn-default input-tags vm-details-show-password"
               title="{% trans "Show password" %}" data-container="body">
-              <i class="fa fa-eye" id="vm-details-pw-eye"></i>
+              <i class="fa fa-eye vm-details-password-eye"></i>
             </span>
           </div>
         </dd>
@@ -160,6 +160,10 @@
         <input type="text" spellcheck="false"
         value="{{ c.cmd }}"
         id="vm-details-connection-string-{{ c.id }}" class="form-control input-tags" />
+        <span class="input-group-addon btn btn-default input-tags vm-details-show-password"
+          title="{% trans "Show password" %}" data-container="body">
+          <i class="fa fa-eye vm-details-password-eye"></i>
+        </span>
         <span class="input-group-addon input-tags btn btn-default vm-details-connection-string-copy"
           title="{% trans "Copy to clipboard" %}"
           data-container="body"
@@ -167,15 +171,11 @@
           <i class="fa fa-copy"></i>
         </span>
       </div>
-
       {% empty %}
       <div class="input-group dashboard-vm-details-connect-command">
         <span class="input-group-addon input-tags">{% trans "Command" %}</span>
         <input type="text" spellcheck="false" value="{% trans "Connection is not possible." %}"
         id="vm-details-connection-string" class="form-control input-tags" />
-        <span class="input-group-addon input-tags" id="vm-details-connection-string-copy">
-          <i class="fa fa-copy" title="{% trans "Select all" %}"></i>
-        </span>
       </div>
       {% endfor %}
       {% if instance.get_connect_uri %}
--
libgit2 0.26.0