Skip to content

Commit 7389ce5

Browse files
author
OpenShift Bot
authoredNov 21, 2016
Merge pull request #871 from juanvallejo/jvallejo/add-option-to-hide-token-cli-tools-page
Merged by openshift-bot
2 parents c5349e7 + 0b99a35 commit 7389ce5

File tree

7 files changed

+45
-31
lines changed

7 files changed

+45
-31
lines changed
 

‎app/scripts/directives/util.js

+10-3
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,9 @@ angular.module('openshiftConsole')
7676
restrict: 'E',
7777
scope: {
7878
clipboardText: "=",
79-
isDisabled: "=?"
79+
isDisabled: "=?",
80+
displayWide: "=?",
81+
inputText: "=?"
8082
},
8183
templateUrl: 'views/directives/_copy-to-clipboard.html',
8284
controller: function($scope) {
@@ -88,8 +90,13 @@ angular.module('openshiftConsole')
8890
return;
8991
}
9092

91-
var node = $('a', element);
92-
var clipboard = new Clipboard( node.get(0) );
93+
var nodeElem = $('a', element);
94+
var node = nodeElem.get(0);
95+
if ($scope.inputText) {
96+
node = nodeElem.get(1);
97+
}
98+
99+
var clipboard = new Clipboard( node );
93100
clipboard.on('success', function (e) {
94101
$(e.trigger)
95102
.attr('title', 'Copied!')

‎app/styles/_core.less

+1-1
Original file line numberDiff line numberDiff line change
@@ -1205,7 +1205,7 @@ h1 small.meta, .build-config-summary .meta {
12051205
}
12061206

12071207
// don't allow copy-to-clipboard .input-groups get bigger than 600px so Github webhook secrets aren't revealed within the input-group
1208-
copy-to-clipboard .input-group {
1208+
copy-to-clipboard .input-group.limit-width {
12091209
max-width: 300px;
12101210
}
12111211

‎app/views/command-line.html

+5-7
Original file line numberDiff line numberDiff line change
@@ -37,30 +37,28 @@ <h1 id="cli">Command Line Tools</h1>
3737
</p>
3838
<p>
3939
After downloading and installing it, you can start by logging in using<span ng-if="sessionToken"> this current session token</span>:
40-
<div class="code prettyprint ng-binding" ng-if="sessionToken">
41-
oc login {{loginBaseURL}} --token=<span ng-show="showSessionToken">{{sessionToken}}</span><a href="#" ng-click="toggleShowSessionToken()" ng-show="!showSessionToken">...click to show token...</a>
42-
</div>
40+
<copy-to-clipboard display-wide="true" clipboard-text="'oc login ' + loginBaseURL + ' --token=' + sessionToken" input-text="'oc login ' + loginBaseURL + ' --token=<hidden>'"></copy-to-clipboard>
4341
<pre class="code prettyprint ng-binding" ng-if="!sessionToken">
4442
oc login {{loginBaseURL}}
4543
</pre>
4644
</p>
4745

48-
<div ng-show="showSessionToken" class="alert alert-warning">
46+
<div class="alert alert-warning">
4947
<span class="pficon pficon-warning-triangle-o" aria-hidden="true"></span>
5048
<strong>A token is a form of a password.</strong>
5149
Do not share your API token.
5250
</div>
5351

5452
<p>After you login to your account you will get a list of projects that you can switch between:
55-
<pre class="code prettyprint">oc project <i>project-name</i></pre>
53+
<copy-to-clipboard display-wide="true" clipboard-text="'oc project <project-name>'"></copy-to-clipboard>
5654
</p>
5755

5856
<p>If you do not have any existing projects, you can create one:
59-
<pre class="code prettyprint">oc new-project <i>project-name</i></pre>
57+
<copy-to-clipboard display-wide="true" clipboard-text="'oc new-project <project-name>'"></copy-to-clipboard>
6058
</p>
6159

6260
<p>To show a high level overview of the current project:
63-
<pre class="code prettyprint">oc status</pre>
61+
<copy-to-clipboard display-wide="true" clipboard-text="'oc status'"></copy-to-clipboard>
6462
</p>
6563

6664
<p>For other information about the command line tools, check the <a target="_blank" href="{{'cli' | helpLink}}">CLI Reference</a> and <a target="_blank" href="{{'basic_cli_operations' | helpLink}}">Basic CLI Operations</a>.</p>
+10-4
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,17 @@
1-
<div class="input-group copy-to-clipboard">
2-
<input id="{{id}}" type="text" class="form-control" value="{{clipboardText}}" ng-disabled="isDisabled" ng-readonly="!isDisabled" select-on-focus>
1+
<div class="input-group copy-to-clipboard" ng-class="{'limit-width': !displayWide}">
2+
<input id="{{id}}" type="text" class="form-control" value="{{inputText ? inputText : clipboardText}}" ng-disabled="isDisabled" ng-readonly="!isDisabled" select-on-focus>
33
<span class="input-group-btn" ng-hide="hidden">
4-
<a data-clipboard-target="#{{id}}"
4+
<a ng-show="!inputText" data-clipboard-target="#{{id}}"
5+
ng-disabled="isDisabled"
6+
data-toggle="tooltip"
7+
title="Copy to clipboard"
8+
role="button"
9+
class="btn btn-default"><i class="fa fa-clipboard"/></a>
10+
<a ng-show="inputText" data-clipboard-text="{{clipboardText}}"
511
ng-disabled="isDisabled"
612
data-toggle="tooltip"
713
title="Copy to clipboard"
814
role="button"
915
class="btn btn-default"><i class="fa fa-clipboard"/></a>
1016
</span>
11-
</div><!-- /input-group -->
17+
</div><!-- /input-group -->

‎dist/scripts/scripts.js

+9-5
Original file line numberDiff line numberDiff line change
@@ -9978,22 +9978,26 @@ return {
99789978
restrict:"E",
99799979
scope:{
99809980
clipboardText:"=",
9981-
isDisabled:"=?"
9981+
isDisabled:"=?",
9982+
displayWide:"=?",
9983+
inputText:"=?"
99829984
},
99839985
templateUrl:"views/directives/_copy-to-clipboard.html",
99849986
controller:[ "$scope", function(a) {
99859987
a.id = _.uniqueId("clipboardJs");
99869988
} ],
99879989
link:function(b, c) {
99889990
if (a) return void (b.hidden = !0);
9989-
var d = $("a", c), e = new Clipboard(d.get(0));
9990-
e.on("success", function(a) {
9991+
var d = $("a", c), e = d.get(0);
9992+
b.inputText && (e = d.get(1));
9993+
var f = new Clipboard(e);
9994+
f.on("success", function(a) {
99919995
$(a.trigger).attr("title", "Copied!").tooltip("fixTitle").tooltip("show").attr("title", "Copy to clipboard").tooltip("fixTitle"), a.clearSelection();
9992-
}), e.on("error", function(a) {
9996+
}), f.on("error", function(a) {
99939997
var b = /Mac/i.test(navigator.userAgent) ? "Press ⌘C to copy" :"Press Ctrl-C to copy";
99949998
$(a.trigger).attr("title", b).tooltip("fixTitle").tooltip("show").attr("title", "Copy to clipboard").tooltip("fixTitle");
99959999
}), c.on("$destroy", function() {
9996-
e.destroy();
10000+
f.destroy();
999710001
});
999810002
}
999910003
};

‎dist/scripts/templates.js

+9-10
Original file line numberDiff line numberDiff line change
@@ -4031,26 +4031,24 @@ angular.module('openshiftConsoleTemplates', []).run(['$templateCache', function(
40314031
"</p>\n" +
40324032
"<p>\n" +
40334033
"After downloading and installing it, you can start by logging in using<span ng-if=\"sessionToken\"> this current session token</span>:\n" +
4034-
"<div class=\"code prettyprint ng-binding\" ng-if=\"sessionToken\">\n" +
4035-
"oc login {{loginBaseURL}} --token=<span ng-show=\"showSessionToken\">{{sessionToken}}</span><a href=\"#\" ng-click=\"toggleShowSessionToken()\" ng-show=\"!showSessionToken\">...click to show token...</a>\n" +
4036-
"</div>\n" +
4034+
"<copy-to-clipboard display-wide=\"true\" clipboard-text=\"'oc login ' + loginBaseURL + ' --token=' + sessionToken\" input-text=\"'oc login ' + loginBaseURL + ' --token=<hidden>'\"></copy-to-clipboard>\n" +
40374035
"<pre class=\"code prettyprint ng-binding\" ng-if=\"!sessionToken\">\n" +
40384036
" oc login {{loginBaseURL}}\n" +
40394037
" </pre>\n" +
40404038
"</p>\n" +
4041-
"<div ng-show=\"showSessionToken\" class=\"alert alert-warning\">\n" +
4039+
"<div class=\"alert alert-warning\">\n" +
40424040
"<span class=\"pficon pficon-warning-triangle-o\" aria-hidden=\"true\"></span>\n" +
40434041
"<strong>A token is a form of a password.</strong>\n" +
40444042
"Do not share your API token.\n" +
40454043
"</div>\n" +
40464044
"<p>After you login to your account you will get a list of projects that you can switch between:\n" +
4047-
"<pre class=\"code prettyprint\">oc project <i>project-name</i></pre>\n" +
4045+
"<copy-to-clipboard display-wide=\"true\" clipboard-text=\"'oc project <project-name>'\"></copy-to-clipboard>\n" +
40484046
"</p>\n" +
40494047
"<p>If you do not have any existing projects, you can create one:\n" +
4050-
"<pre class=\"code prettyprint\">oc new-project <i>project-name</i></pre>\n" +
4048+
"<copy-to-clipboard display-wide=\"true\" clipboard-text=\"'oc new-project <project-name>'\"></copy-to-clipboard>\n" +
40514049
"</p>\n" +
40524050
"<p>To show a high level overview of the current project:\n" +
4053-
"<pre class=\"code prettyprint\">oc status</pre>\n" +
4051+
"<copy-to-clipboard display-wide=\"true\" clipboard-text=\"'oc status'\"></copy-to-clipboard>\n" +
40544052
"</p>\n" +
40554053
"<p>For other information about the command line tools, check the <a target=\"_blank\" href=\"{{'cli' | helpLink}}\">CLI Reference</a> and <a target=\"_blank\" href=\"{{'basic_cli_operations' | helpLink}}\">Basic CLI Operations</a>.</p>\n" +
40564054
"</div>\n" +
@@ -5049,10 +5047,11 @@ angular.module('openshiftConsoleTemplates', []).run(['$templateCache', function(
50495047

50505048

50515049
$templateCache.put('views/directives/_copy-to-clipboard.html',
5052-
"<div class=\"input-group copy-to-clipboard\">\n" +
5053-
"<input id=\"{{id}}\" type=\"text\" class=\"form-control\" value=\"{{clipboardText}}\" ng-disabled=\"isDisabled\" ng-readonly=\"!isDisabled\" select-on-focus>\n" +
5050+
"<div class=\"input-group copy-to-clipboard\" ng-class=\"{'limit-width': !displayWide}\">\n" +
5051+
"<input id=\"{{id}}\" type=\"text\" class=\"form-control\" value=\"{{inputText ? inputText : clipboardText}}\" ng-disabled=\"isDisabled\" ng-readonly=\"!isDisabled\" select-on-focus>\n" +
50545052
"<span class=\"input-group-btn\" ng-hide=\"hidden\">\n" +
5055-
"<a data-clipboard-target=\"#{{id}}\" ng-disabled=\"isDisabled\" data-toggle=\"tooltip\" title=\"Copy to clipboard\" role=\"button\" class=\"btn btn-default\"><i class=\"fa fa-clipboard\"/></a>\n" +
5053+
"<a ng-show=\"!inputText\" data-clipboard-target=\"#{{id}}\" ng-disabled=\"isDisabled\" data-toggle=\"tooltip\" title=\"Copy to clipboard\" role=\"button\" class=\"btn btn-default\"><i class=\"fa fa-clipboard\"/></a>\n" +
5054+
"<a ng-show=\"inputText\" data-clipboard-text=\"{{clipboardText}}\" ng-disabled=\"isDisabled\" data-toggle=\"tooltip\" title=\"Copy to clipboard\" role=\"button\" class=\"btn btn-default\"><i class=\"fa fa-clipboard\"/></a>\n" +
50565055
"</span>\n" +
50575056
"</div>"
50585057
);

‎dist/styles/main.css

+1-1
Original file line numberDiff line numberDiff line change
@@ -3994,7 +3994,7 @@ labels+.resource-details{margin-top:10px}
39943994
.config-map-table .key,.config-map-table .truncated-content,.pretty-json{font-family:Menlo,Monaco,Consolas,monospace}
39953995
.pretty-json{white-space:pre-wrap}
39963996
.info-popover,.warnings-popover{cursor:help;vertical-align:middle;margin-left:2px}
3997-
copy-to-clipboard .input-group{max-width:300px}
3997+
copy-to-clipboard .input-group.limit-width{max-width:300px}
39983998
.strong{font-weight:700}
39993999
.tech-preview-header{justify-content:space-between}
40004000
@media (max-width:479px){.col-xxs-12{width:100%}

0 commit comments

Comments
 (0)
Please sign in to comment.