бекап скрипта
(function(){
function RasPars(context){
var arrTAG =[
'p','\n','\n',
'br','','\n',
'table','','',
Код:'strong','[b]','[/b]',
'span[style="font-style: italic"]','[i]','[/i]',
'em.bbuline','[u]','[/u]',
'del','[s]','[/s]',
'span[class="highlight-text"]','[mark]','[/mark]',
'span[style^="color"]','[color=###]','[/color]',
'span[style^="font-family"]','[font=###]','[/font]',
'span[style^="font-size"]','[size=###]','[/size]',
'span[style*="text-align: left"]','[align=left]','[/align]',
'span[style*="text-align: center"]','[align=center]','[/align]',
'span[style*="text-align: right"]','[align=right]','[/align]',
'span[style*="text-align: justify"]','[align=justify]','[/align]',
'hr','','[hr]',
'sup','[sup]','[/sup]',
'sub','[sub]','[/sub]',
'.code-box','[code]','[/code]',
];
function replacer2(str, p1, offset, s){
return str=p1;
}
function replacer(str, p1,offset, s){
p1 = p1.replace(/style="([^"]*)"/img,replacer2).replace(/;/g,' ')
.replace(/:/g,'=').replace(/"/g,'').replace('background-color','bgcolor');
return str=('['+p1+']');
}
var lng = arrTAG.length;
for(var i=0;i<lng;i+=3){
context.find(arrTAG[i]).each(function(){
var attr = arrTAG[i+1];
if(arrTAG[i].indexOf('table')!=-1 ){
var attr=$(this).clone().wrap('<div></div>').parent().html().replace(/<tbody>|<\/tbody>/gim,'').replace(/<((?:table|tr|td)[^>]*)>/gim, replacer );
attr=attr.replace(/<(\/(?:table|tr|td))>/gim, '[$1]' );
$(this).html('');
}
$(this).replaceWith(attr+ $(this).html()+arrTAG[i+2]);
});
}
return $.trim(context.text());
}
window.MyfuncBB_tagCopy = function(sel) {
$.fn.attrr = $.fn.attr;
if (typeof($.fn.prop) != 'undefined') {
$.fn.attr = $.fn.prop;
}
var selectedText = getSelectedText();
if (!selectedText) {
var context = $(sel).parents('.post').find('.post-content').clone();
context.find('p.lastedit,dl.post-sig').remove();
context.html(context.html().replace(/\s+(?=<p|<div)/img, ''));
} else {
var context = $('<div>').html(selectedText);
}
var autor = $(sel).parents('.post').find('li.pa-author a');
autor.find('span.acchide,img').remove();
autor = autor.text();
var link = 'http://' + location.hostname + '/viewtopic.php?pid=';
var numPost = $(sel).parents('.post').find('h3:first a:last').attr('href').split('#p')[1];
link += numPost + '#p' + numPost;
insert('
+ autor + написал(а):' + RasPars(context) + '
');
$.fn.attr = $.fn.attrr;
}
function getSelectedText() {
var text = '';
if (window.getSelection) {
text = window.getSelection().toString();
} else if (document.selection && document.selection.type != 'Control') {
text = document.selection.createRange().text;
}
return text;
}
function testFunc(sel) {
if ($('#main-reply').length) return false;
return true;
}
var trueDislocation = $("#pun-viewtopic");
if (trueDislocation.length) {
trueDislocation.on('click', '.pl-quote a', function(e) {
e.preventDefault();
if (typeof(UserID) == 'undefined' && testFunc(this)) return false;
MyfuncBB_tagCopy(this);
});
}
}())