|
|
|
@ -269,36 +269,62 @@ var Gogits = {}; |
|
|
|
|
if ($(selector).hasClass('js-copy-bind')) { |
|
|
|
|
return; |
|
|
|
|
} |
|
|
|
|
$(selector).zclip({ |
|
|
|
|
path: "/js/ZeroClipboard.swf", |
|
|
|
|
copy: function () { |
|
|
|
|
var t = $(this).data("copy-val"); |
|
|
|
|
var to = $($(this).data("copy-from")); |
|
|
|
|
var str = ""; |
|
|
|
|
if (t == "txt") { |
|
|
|
|
str = to.text(); |
|
|
|
|
} |
|
|
|
|
if (t == 'val') { |
|
|
|
|
str = to.val(); |
|
|
|
|
} |
|
|
|
|
if (t == 'html') { |
|
|
|
|
str = to.html(); |
|
|
|
|
} |
|
|
|
|
return str; |
|
|
|
|
}, |
|
|
|
|
afterCopy: function () { |
|
|
|
|
|
|
|
|
|
if ( document.documentElement.classList.contains("is-copy-enabled") ) { |
|
|
|
|
|
|
|
|
|
$(selector).click(function(event) { |
|
|
|
|
var $this = $(this); |
|
|
|
|
$this.tooltip('hide') |
|
|
|
|
.attr('data-original-title', 'Copied OK'); |
|
|
|
|
|
|
|
|
|
var cfrom = $this.attr('data-copy-from'); |
|
|
|
|
$(cfrom).select(); |
|
|
|
|
document.execCommand('copy'); |
|
|
|
|
getSelection().removeAllRanges(); |
|
|
|
|
|
|
|
|
|
$this.tipsy("hide").attr('original-title', $this.data('after-title')); |
|
|
|
|
setTimeout(function () { |
|
|
|
|
$this.tooltip("show"); |
|
|
|
|
$this.tipsy("show"); |
|
|
|
|
}, 200); |
|
|
|
|
setTimeout(function () { |
|
|
|
|
$this.tooltip('hide') |
|
|
|
|
.attr('data-original-title', 'Copy to Clipboard'); |
|
|
|
|
}, 3000); |
|
|
|
|
} |
|
|
|
|
}).addClass("js-copy-bind"); |
|
|
|
|
$this.tipsy('hide').attr('original-title', $this.data('original-title')); |
|
|
|
|
}, 2000); |
|
|
|
|
|
|
|
|
|
this.blur(); |
|
|
|
|
return; |
|
|
|
|
}); |
|
|
|
|
|
|
|
|
|
$(selector).addClass("js-copy-bind"); |
|
|
|
|
|
|
|
|
|
} else { |
|
|
|
|
|
|
|
|
|
$(selector).zclip({ |
|
|
|
|
path: Gogs.AppSubUrl + "/js/ZeroClipboard.swf", |
|
|
|
|
copy: function () { |
|
|
|
|
var t = $(this).data("copy-val"); |
|
|
|
|
var to = $($(this).data("copy-from")); |
|
|
|
|
var str = ""; |
|
|
|
|
if (t == "txt") { |
|
|
|
|
str = to.text(); |
|
|
|
|
} |
|
|
|
|
if (t == 'val') { |
|
|
|
|
str = to.val(); |
|
|
|
|
} |
|
|
|
|
if (t == 'html') { |
|
|
|
|
str = to.html(); |
|
|
|
|
} |
|
|
|
|
return str; |
|
|
|
|
}, |
|
|
|
|
afterCopy: function () { |
|
|
|
|
var $this = $(this); |
|
|
|
|
$this.tipsy("hide").attr('original-title', $this.data('after-title')); |
|
|
|
|
setTimeout(function () { |
|
|
|
|
$this.tipsy("show"); |
|
|
|
|
}, 200); |
|
|
|
|
setTimeout(function () { |
|
|
|
|
$this.tipsy('hide').attr('original-title', $this.data('original-title')); |
|
|
|
|
}, 2000); |
|
|
|
|
} |
|
|
|
|
}).addClass("js-copy-bind"); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
// api working
|
|
|
|
|