Your IP : 216.73.216.240
/*
* Copyright © 2023 Regular Labs - All Rights Reserved
* GNU General Public License version 2 or later
*/
var RegularLabsSourcererPopup=null;(function($){var $editor=null;var $form=null;RegularLabsSourcererPopup={init:function(){$editor=Joomla.editors.instances['code'];$form=document.getElementById('sourcererForm');try{var test=$editor.getValue();}catch(err){setTimeout('RegularLabsSourcererPopup.init();',100);return;}
var string='';var editor_textarea=window.parent.document.getElementById(sourcerer_editorname);if(editor_textarea){var iframes=editor_textarea.parentNode.getElementsByTagName('iframe');if(!iframes.length){$('.reglab-overlay').css('cursor','').fadeOut();return;}
var editor_frame=iframes[0];var contentWindow=editor_frame.contentWindow;var selection='';if(typeof contentWindow.getSelection!=='undefined'){var sel=contentWindow.getSelection();if(sel.rangeCount){var container=contentWindow.document.createElement("div");for(var i=0,len=sel.rangeCount;i<len;++i){container.appendChild(sel.getRangeAt(i).cloneContents());}
selection=container.innerHTML;}}else if(typeof contentWindow.document.selection!=='undefined'){if(contentWindow.document.selection.type=="Text"){selection=contentWindow.document.selection.createRange().htmlText;}}
string=this.cleanRange(selection);}
if(!string){$('.reglab-overlay').css('cursor','').fadeOut();return;}
string=string.replace(/^\t/gm,' ');this.setAttributes(string);var code=this.removeSourceTags(string);$editor.setValue(code);$('.reglab-overlay').css('cursor','').fadeOut();},insertText:function(){var t_word=sourcerer_syntax_word;var t_start=sourcerer_tag_characters[0];var t_end=sourcerer_tag_characters[1];var code=$editor.getValue();code=this.removeSourceTags(code);var pre_php=[];var codes=[];if(code){codes.push(code);}
string=codes.join('\n');string=this.htmlentities(string,'ENT_NOQUOTES');string=string.indent2Images();string=string.nl2br();var attributes=[];if($form['raw'].value=='1'){attributes.push('raw="true"');}
if($form['trim'].value=='1'){attributes.push('trim="true"');}if(string){string='<span style="font-family: courier new, courier, monospace;">'+string+'</span>';}
string=t_start+(t_word+' '+attributes.join(' ')).trim()+t_end+string+t_start+'/'+t_word+t_end;window.parent.jInsertEditorText(string,sourcerer_editorname);return true;},setAttributes:function(string){var t_word=sourcerer_syntax_word;var t_start=sourcerer_tag_characters[0];var t_end=sourcerer_tag_characters[1];var start_tag=this.preg_quote(t_start+t_word)+'( .*?)'+this.preg_quote(t_end);var regex=new RegExp(start_tag,'gim');if(!string.match(regex)){return;}
var attributes=this.getAttributes(regex.exec(string)[1].trim());if('raw'in attributes){this.setRadioOption('raw',attributes.raw.toString().toBoolean());}
if('trim'in attributes){this.setRadioOption('trim',attributes.trim.toString().toBoolean());}},setPhpField:function(value,method){this.setField('php_file',value);this.setSelectOption('php_include_method',method);},getAttributes:function(string){var attributes={};var t_word=sourcerer_syntax_word;var t_start=sourcerer_tag_characters[0];var t_end=sourcerer_tag_characters[1];var regex=new RegExp('^0 ?');if(string.match(regex)){attributes.raw=true;string=string.replace(/^0/,'').trim();}
var start_tag=this.preg_quote(t_start+t_word)+'( .*?)'+this.preg_quote(t_end);var regex=new RegExp('([a-z_-]+)="([^"]*)"','gim');if(!string.match(regex)){return attributes;}
while(match=regex.exec(string)){attributes[match[1]]=match[2];}
return attributes;},removeSourceTags:function(string){var t_word=sourcerer_syntax_word;var t_start=sourcerer_tag_characters[0];var t_end=sourcerer_tag_characters[1];var start_tag=this.preg_quote(t_start+t_word)+'.*?'+this.preg_quote(t_end);var end_tag=this.preg_quote(t_start+'/'+t_word+t_end);var regex=new RegExp('('+start_tag+')\\s*','gim');start_tag=t_start+t_word+t_end;if(string.match(regex)){start_tag=regex.exec(string)[1];string=string.replace(regex,'');}
regex=new RegExp('\\s*'+end_tag,'gim');end_tag=t_start+'/'+t_word+t_end;string=string.replace(regex,'');return string.trim();},cleanRange:function(string){var regex=new RegExp('[\n\r]','gim');string=string.replace(regex,'');regex=new RegExp('(</p><p>|<p>|</p>|<br>|<br>)','gim');string=string.replace(regex,'\n');string=string.replace(/^\s+/,'').replace(/\s+$/,'');regex=new RegExp('<img[^>]*src="[^"]*/tab.png"[^>]*>','gim');string=string.replace(regex,'\t');regex=new RegExp('</?[^>]*>','gim');string=string.replace(regex,'');regex=new RegExp('( | )','gim');string=string.replace(regex,' ');regex=new RegExp('<','gim');string=string.replace(regex,'<');regex=new RegExp('>','gim');string=string.replace(regex,'>');regex=new RegExp('&','gim');string=string.replace(regex,'&');return string;},htmlentities:function(string,quote_style){tmp_str=string.toString();if(false===(histogram=this.get_html_translation_table('HTML_ENTITIES',quote_style))){return false;}
for(symbol in histogram){entity=histogram[symbol];tmp_str=tmp_str.split(symbol).join(entity);}
return tmp_str;},get_html_translation_table:function(table,quote_style){var entities={},histogram={},decimal=0,symbol='';var constMappingTable={},constMappingQuoteStyle={};var useTable={},useQuoteStyle={};constMappingTable[0]='HTML_SPECIALCHARS';constMappingTable[1]='HTML_ENTITIES';constMappingQuoteStyle[0]='ENT_NOQUOTES';constMappingQuoteStyle[2]='ENT_COMPAT';constMappingQuoteStyle[3]='ENT_QUOTES';useTable=!isNaN(table)?constMappingTable[table]:table?table.toUpperCase():'HTML_SPECIALCHARS';useQuoteStyle=!isNaN(quote_style)?constMappingQuoteStyle[quote_style]:quote_style?quote_style.toUpperCase():'ENT_COMPAT';if(useTable!=='HTML_SPECIALCHARS'&&useTable!=='HTML_ENTITIES'){throw Error('Table: '+useTable+' not supported');}
entities['38']='&';if(useQuoteStyle!=='ENT_NOQUOTES'){entities['34']='"';}
if(useQuoteStyle==='ENT_QUOTES'){entities['39']=''';}
entities['60']='<';entities['62']='>';if(useTable==='HTML_ENTITIES'){entities['160']=' ';entities['161']='¡';entities['162']='¢';entities['163']='£';entities['164']='¤';entities['165']='¥';entities['166']='¦';entities['167']='§';entities['168']='¨';entities['169']='©';entities['170']='ª';entities['171']='«';entities['172']='¬';entities['173']='­';entities['174']='®';entities['175']='¯';entities['176']='°';entities['177']='±';entities['178']='²';entities['179']='³';entities['180']='´';entities['181']='µ';entities['182']='¶';entities['183']='·';entities['184']='¸';entities['185']='¹';entities['186']='º';entities['187']='»';entities['188']='¼';entities['189']='½';entities['190']='¾';entities['191']='¿';entities['192']='À';entities['193']='Á';entities['194']='Â';entities['195']='Ã';entities['196']='Ä';entities['197']='Å';entities['198']='Æ';entities['199']='Ç';entities['200']='È';entities['201']='É';entities['202']='Ê';entities['203']='Ë';entities['204']='Ì';entities['205']='Í';entities['206']='Î';entities['207']='Ï';entities['208']='Ð';entities['209']='Ñ';entities['210']='Ò';entities['211']='Ó';entities['212']='Ô';entities['213']='Õ';entities['214']='Ö';entities['215']='×';entities['216']='Ø';entities['217']='Ù';entities['218']='Ú';entities['219']='Û';entities['220']='Ü';entities['221']='Ý';entities['222']='Þ';entities['223']='ß';entities['224']='à';entities['225']='á';entities['226']='â';entities['227']='ã';entities['228']='ä';entities['229']='å';entities['230']='æ';entities['231']='ç';entities['232']='è';entities['233']='é';entities['234']='ê';entities['235']='ë';entities['236']='ì';entities['237']='í';entities['238']='î';entities['239']='ï';entities['240']='ð';entities['241']='ñ';entities['242']='ò';entities['243']='ó';entities['244']='ô';entities['245']='õ';entities['246']='ö';entities['247']='÷';entities['248']='ø';entities['249']='ù';entities['250']='ú';entities['251']='û';entities['252']='ü';entities['253']='ý';entities['254']='þ';entities['255']='ÿ';}
for(decimal in entities){symbol=String.fromCharCode(decimal);histogram[symbol]=entities[decimal];}
return histogram;},preg_quote:function(str){return(str+'').replace(/([\\\.\+\*\?\[\^\]\$\(\)\{\}\=\!<>\|\:])/g,'\\$1');},setField:function(name,value){$('input[name="'+name+'"]').val(value);},setRadioOption:function(name,value){var inputs=$('input[name="'+name+'"]');var input=$('input[name="'+name+'"][value="'+value+'"]');$('label[for="'+input.attr('id')+'"]').click();inputs.attr('checked',false);input.attr('checked',true).click();},setSelectOption:function(name,value){var self=this;var select=$('select[name="'+name+'"]');var option=$('select[name="'+name+'"] option[value="'+value+'"]');if(!option.length){return;}
select.find('option').attr('selected',false);option.attr('selected','selected');select.trigger('liszt:updated');}};String.prototype.ltrim=function(){return this.fixLineBreaks().replace(/^[\n ]*/,"");};String.prototype.rtrim=function(){return this.fixLineBreaks().replace(/[\n ]*$/,"");};String.prototype.trim=function(){return this.fixLineBreaks().ltrim().rtrim();};String.prototype.toBoolean=function(){return this==1||this=='1'||this=='true'?1:0;};String.prototype.fixLineBreaks=function(){return this.replace(/\r/,"");};String.prototype.escapeQuotes=function(){return this.replace(/'/g,'\\\'');};String.prototype.hasLineBreaks=function(){var regex=new RegExp('\n','gm');return regex.test(this);};String.prototype.indent=function(){var regex=new RegExp('\n','gm');return'\n '+this.replace(regex,'\n ')+'\n';};String.prototype.nl2br=function(){var regex=new RegExp('\n','gm');return this.replace(regex,'<br>');};String.prototype.indent2Images=function(){var string=this;var regex=new RegExp('((^|\n)( |\t)*)( ? ?|\t)','gm');while(regex.test(string)){string=string.replace(regex,'$1<img src="'+sourcerer_root+'/media/sourcerer/images/tab.png">');}
return string.replace(regex,'<br>');};})(jQuery);