mirror of
https://github.com/claudehohl/Stikked.git
synced 2025-04-26 04:51:08 -05:00
clickable URLs. fixes #262
This commit is contained in:
parent
4c10e5eba4
commit
2022ddab9c
1
htdocs/themes/default/js/linkify-jquery.min.js
vendored
Normal file
1
htdocs/themes/default/js/linkify-jquery.min.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
"use strict";!function(e,t,n){var i=function(t,n){function i(e,t,n){var i=n[n.length-1];e.replaceChild(i,t);for(var r=n.length-2;r>=0;r--)e.insertBefore(n[r],i),i=n[r]}function r(e,t,n){for(var i=[],r=e,a=Array.isArray(r),o=0,r=a?r:r[Symbol.iterator]();;){var l;if(a){if(o>=r.length)break;l=r[o++]}else{if(o=r.next(),o.done)break;l=o.value}var f=l;if("nl"===f.type&&t.nl2br)i.push(n.createElement("br"));else if(f.isLink&&t.check(f)){var s=t.resolve(f),c=s.formatted,u=s.formattedHref,d=s.tagName,m=s.className,y=s.target,h=s.events,k=s.attributes,v=n.createElement(d);if(v.setAttribute("href",u),m&&v.setAttribute("class",m),y&&v.setAttribute("target",y),k)for(var g in k)v.setAttribute(g,k[g]);if(h)for(var b in h)v.addEventListener?v.addEventListener(b,h[b]):v.attachEvent&&v.attachEvent("on"+b,h[b]);v.appendChild(n.createTextNode(c)),i.push(v)}else i.push(n.createTextNode(f.toString()))}return i}function a(e,t,n){if(!e||e.nodeType!==d)throw new Error("Cannot linkify "+e+" - Invalid DOM Node type");var o=t.ignoreTags;if("A"===e.tagName||s.contains(o,e.tagName))return e;for(var l=e.firstChild;l;){switch(l.nodeType){case d:a(l,t,n);break;case m:var c=l.nodeValue,y=f(c);if(0===y.length||1===y.length&&y[0]instanceof u)break;var h=r(y,t,n);i(e,l,h),l=h[h.length-1]}l=l.nextSibling}return e}function o(t,n){var i=!(arguments.length<=2||void 0===arguments[2])&&arguments[2];try{i=i||document||e&&e.document||global&&global.document}catch(r){}if(!i)throw new Error("Cannot find document implementation. If you are in a non-browser environment like Node.js, pass the document implementation as the third argument to linkifyElement.");return n=new c(n),a(t,n,i)}function l(t){function n(e){return e=o.normalize(e),this.each(function(){o.helper(this,e,i)})}var i=!(arguments.length<=1||void 0===arguments[1])&&arguments[1];t.fn=t.fn||{};try{i=i||document||e&&e.document||global&&global.document}catch(r){}if(!i)throw new Error("Cannot find document implementation. If you are in a non-browser environment like Node.js, pass the document implementation as the second argument to linkify/jquery");"function"!=typeof t.fn.linkify&&(t.fn.linkify=n,t(i).ready(function(){t("[data-linkify]").each(function(){var e=t(this),n=e.data(),i=n.linkify,r=n.linkifyNlbr,a={attributes:n.linkifyAttributes,defaultProtocol:n.linkifyDefaultProtocol,events:n.linkifyEvents,format:n.linkifyFormat,formatHref:n.linkifyFormatHref,nl2br:!!r&&0!==r&&"false"!==r,tagName:n.linkifyTagname,target:n.linkifyTarget,className:n.linkifyClassName||n.linkifyLinkclass,validate:n.linkifyValidate,ignoreTags:n.linkifyIgnoreTags},o="this"===i?e:e.find(i);o.linkify(a)})}))}var f=n.tokenize,s=n.options,c=s.Options,u=n.parser.TOKENS.TEXT,d=1,m=3;o.helper=a,o.normalize=function(e){return new c(e)};try{!define&&(e.linkifyElement=o)}catch(y){}return l}(n,t);"function"!=typeof n.fn.linkify&&i(n)}(window,linkify,jQuery);
|
1
htdocs/themes/default/js/linkify.min.js
vendored
Normal file
1
htdocs/themes/default/js/linkify.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
@ -319,6 +319,10 @@ ST.codemirror_setlang = function() {
|
||||
'script');
|
||||
}
|
||||
|
||||
ST.clickable_urls = function() {
|
||||
$('.paste .container').linkify();
|
||||
}
|
||||
|
||||
ST.init = function() {
|
||||
ST.expand();
|
||||
ST.show_embed();
|
||||
@ -326,6 +330,7 @@ ST.init = function() {
|
||||
ST.line_highlighter();
|
||||
ST.crypto();
|
||||
ST.dragdrop();
|
||||
ST.clickable_urls();
|
||||
ST.codemirror_init();
|
||||
ST.ace_init();
|
||||
};
|
||||
|
@ -21,6 +21,8 @@ $this->carabiner->js('jquery.timers.js');
|
||||
$this->carabiner->js('crypto-js/rollups/aes.js');
|
||||
$this->carabiner->js('lz-string-1.3.3-min.js');
|
||||
$this->carabiner->js('filereader.js');
|
||||
$this->carabiner->js('linkify.min.js');
|
||||
$this->carabiner->js('linkify-jquery.min.js');
|
||||
if(config_item('js_editor') == 'codemirror') {
|
||||
$this->carabiner->js('codemirror/codemirror.js');
|
||||
}
|
||||
|
@ -17,6 +17,8 @@ $this->carabiner->js('jquery.timers.js');
|
||||
$this->carabiner->js('crypto-js/rollups/aes.js');
|
||||
$this->carabiner->js('lz-string-1.3.3-min.js');
|
||||
$this->carabiner->js('filereader.js');
|
||||
$this->carabiner->js('linkify.min.js');
|
||||
$this->carabiner->js('linkify-jquery.min.js');
|
||||
if(config_item('js_editor') == 'codemirror') {
|
||||
$this->carabiner->js('codemirror/codemirror.js');
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user