Skip to content

Commit 5794207

Browse files
author
Till Brehm
committed
Merge branch '6542_copy_email_to_clipboard' into 'develop'
6542_copy_to_clipboard_with_css_class See merge request ispconfig/ispconfig3!1809
2 parents 8c464f7 + e3057ac commit 5794207

File tree

4 files changed

+46
-2
lines changed

4 files changed

+46
-2
lines changed

interface/web/mail/templates/mail_forward_list.htm

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ <h1><tmpl_var name="list_head_txt"></h1>
5050
<tmpl_loop name="records">
5151
<tr>
5252
<td><a href="#" data-load-content="mail/mail_forward_edit.php?id={tmpl_var name='id'}">{tmpl_var name="active"}</a></td>
53-
<td><a href="#" data-load-content="mail/mail_forward_edit.php?id={tmpl_var name='id'}">{tmpl_var name="source"}</a></td>
53+
<td class="copy-to-clipboard"><a class="copy-to-clipboard-icon-helper" href="#" data-load-content="mail/mail_forward_edit.php?id={tmpl_var name='id'}">{tmpl_var name="source"}</a></td>
5454
<td><a href="#" data-load-content="mail/mail_forward_edit.php?id={tmpl_var name='id'}">{tmpl_var name="destination"}</a></td>
5555
<td class="text-right">
5656
<a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('mail/mail_forward_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a>

interface/web/mail/templates/mail_user_list.htm

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ <h1><tmpl_var name="list_head_txt"></h1>
6161
<tbody>
6262
<tmpl_loop name="records">
6363
<tr>
64-
<td><a href="#" data-load-content="mail/mail_user_edit.php?id={tmpl_var name='id'}" data-toggle="tooltip" data-placement="bottom" title="{tmpl_var name='email'}">{tmpl_var name="email"}</a></td>
64+
<td class="copy-to-clipboard"><a class="copy-to-clipboard-icon-helper" href="#" data-load-content="mail/mail_user_edit.php?id={tmpl_var name='id'}" data-toggle="tooltip" data-placement="bottom" title="{tmpl_var name='email'}">{tmpl_var name="email"}</a></td>
6565
<tmpl_if name="enable_custom_login"><td><a href="#" data-load-content="mail/mail_user_edit.php?id={tmpl_var name='id'}">{tmpl_var name="login"}</a></td></tmpl_if>
6666
<td><a href="#" data-load-content="mail/mail_user_edit.php?id={tmpl_var name='id'}">{tmpl_var name="name"}</a></td>
6767
<td><a href="#" data-load-content="mail/mail_user_edit.php?id={tmpl_var name='id'}">{tmpl_var name="autoresponder"}</a></td>

interface/web/themes/default/assets/javascripts/ispconfig.js

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -813,4 +813,31 @@ $(document).ready(function() {
813813
}
814814
return iCaretPos;
815815
};
816+
817+
//copy to clipboard
818+
$(document).on('click', '.copy-to-clipboard', function() {
819+
var $copyElement = $(this).children();
820+
var temp = $("<input>");
821+
$("body").append(temp);
822+
temp.val($copyElement.text()).select();
823+
//execCommand is Deprecated - but there is no alternative (2023)
824+
document.execCommand("copy");
825+
temp.remove();
826+
} );
827+
828+
//display copy-to-clipboard icon
829+
let lastCopyToClipboardIcon;
830+
$(document).on("mouseenter", '.copy-to-clipboard', function() {
831+
$(lastCopyToClipboardIcon).removeClass("copy-to-clipboard-icon"); //Clean up old icons - sometimes mouse is too fast to trigger mouseleave
832+
$(this).addClass("copy-to-clipboard-icon");
833+
lastCopyToClipboardIcon = $(this);
834+
//console.log("Mouseenter e-tooltip");
835+
});
836+
837+
//hide copy-to-clipboard icon
838+
$(document).on("mouseleave", '.copy-to-clipboard', function() {
839+
$(this).removeClass("copy-to-clipboard-icon");
840+
//console.log("Mouseleave e-tooltip");
841+
});
842+
816843
});

interface/web/themes/default/assets/stylesheets/ispconfig.css

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -838,3 +838,20 @@ max-width: 1260px; }
838838
#apache_directives, #nginx_directives, #proxy_directives {
839839
font-family: Consolas, "Courier New", Courier, monospace;
840840
}
841+
.copy-to-clipboard-icon::after {
842+
content: "\f0ea";
843+
font-family: FontAwesome;
844+
font-size:0.6em;
845+
color:#6396b5;
846+
vertical-align:top;
847+
float:right;
848+
cursor: copy;
849+
position: absolute;
850+
margin-left: 5px;
851+
}
852+
.copy-to-clipboard-icon-helper {
853+
display: inline-block;
854+
max-width: 90%;
855+
text-overflow: ellipsis ;
856+
overflow-x: hidden;
857+
}

0 commit comments

Comments
 (0)