diff --git a/app/coffee/modules/admin/third-parties.coffee b/app/coffee/modules/admin/third-parties.coffee index 74f20a15..196e3674 100644 --- a/app/coffee/modules/admin/third-parties.coffee +++ b/app/coffee/modules/admin/third-parties.coffee @@ -450,15 +450,20 @@ class BitbucketController extends mixOf(taiga.Controller, taiga.PageMixin, taiga module.controller("BitbucketController", BitbucketController) -SelectInputText = -> +SelectInputText = ($translate, $confirm)-> link = ($scope, $el, $attrs) -> $el.on "click", ".select-input-content", () -> - $el.find("input").select() - $el.find(".help-copy").addClass("visible") + source = $el.find("input") + if !source.val() + return + + source.select() + document.execCommand 'copy' + $confirm.notify("success", $translate.instant("COMMON.COPIED_TO_CLIPBOARD")) return {link:link} -module.directive("tgSelectInputText", SelectInputText) +module.directive("tgSelectInputText", ["$translate", "$tgConfirm", SelectInputText]) ############################################################################# diff --git a/app/locales/taiga/locale-en.json b/app/locales/taiga/locale-en.json index 83ec11b4..f899cedf 100644 --- a/app/locales/taiga/locale-en.json +++ b/app/locales/taiga/locale-en.json @@ -13,7 +13,8 @@ "UNLINK": "Unlink", "CREATE": "Create", "ADD": "Add", - "COPY_TO_CLIPBOARD": "Copy to clipboard: Ctrl+C", + "COPY_TO_CLIPBOARD": "Copy to clipboard", + "COPIED_TO_CLIPBOARD": "Text has been copied to clipboard", "EDIT": "Edit", "DRAG": "Drag", "TAG_LINE": "Your agile, free, and open source project management tool", diff --git a/app/partials/admin/admin-third-parties-bitbucket.jade b/app/partials/admin/admin-third-parties-bitbucket.jade index 0aaa5f9b..1b98717a 100644 --- a/app/partials/admin/admin-third-parties-bitbucket.jade +++ b/app/partials/admin/admin-third-parties-bitbucket.jade @@ -39,9 +39,8 @@ div.wrapper.roles( ng-model="bitbucket.webhooks_url" placeholder="{{'ADMIN.THIRD_PARTIES.PAYLOAD_URL' | translate}}" ) - .option-wrapper.select-input-content + .option-wrapper.select-input-content(title="{{'COMMON.COPY_TO_CLIPBOARD' | translate}}") tg-svg(svg-icon="icon-clipboard") - .help-copy(translate="COMMON.COPY_TO_CLIPBOARD") fieldset label(for="valid-origin-ips", translate="ADMIN.THIRD_PARTIES.VALID_IPS") diff --git a/app/partials/admin/admin-third-parties-github.jade b/app/partials/admin/admin-third-parties-github.jade index f406c1da..b58ba308 100644 --- a/app/partials/admin/admin-third-parties-github.jade +++ b/app/partials/admin/admin-third-parties-github.jade @@ -38,9 +38,8 @@ div.wrapper.roles( ng-model="github.webhooks_url" placeholder="{{'ADMIN.THIRD_PARTIES.PAYLOAD_URL' | translate}}" ) - .option-wrapper.select-input-content + .option-wrapper.select-input-content(title="{{'COMMON.COPY_TO_CLIPBOARD' | translate}}") tg-svg(svg-icon="icon-clipboard") - .help-copy(translate="COMMON.COPY_TO_CLIPBOARD") button.button-green.submit-button( type="submit" diff --git a/app/partials/admin/admin-third-parties-gitlab.jade b/app/partials/admin/admin-third-parties-gitlab.jade index a8950fd1..ebc3bf06 100644 --- a/app/partials/admin/admin-third-parties-gitlab.jade +++ b/app/partials/admin/admin-third-parties-gitlab.jade @@ -38,9 +38,8 @@ div.wrapper.roles( ng-model="gitlab.webhooks_url" placeholder="{{'ADMIN.THIRD_PARTIES.PAYLOAD_URL' | translate}}" ) - .option-wrapper.select-input-content + .option-wrapper.select-input-content(title="{{'COMMON.COPY_TO_CLIPBOARD' | translate}}") tg-svg(svg-icon="icon-clipboard") - .help-copy(translate="COMMON.COPY_TO_CLIPBOARD") fieldset label(for="valid-origin-ips", translate="ADMIN.THIRD_PARTIES.VALID_IPS") diff --git a/app/partials/admin/admin-third-parties-gogs.jade b/app/partials/admin/admin-third-parties-gogs.jade index b5763d6c..e53522f1 100644 --- a/app/partials/admin/admin-third-parties-gogs.jade +++ b/app/partials/admin/admin-third-parties-gogs.jade @@ -38,9 +38,8 @@ div.wrapper.roles( ng-model="gogs.webhooks_url" placeholder="{{'ADMIN.THIRD_PARTIES.PAYLOAD_URL' | translate}}" ) - .option-wrapper.select-input-content + .option-wrapper.select-input-content(title="{{'COMMON.COPY_TO_CLIPBOARD' | translate}}") tg-svg(svg-icon="icon-clipboard") - .help-copy(translate="COMMON.COPY_TO_CLIPBOARD") button.button-green.submit-button( type="submit"