Source refactoring

This commit is contained in:
RainLoop Team 2015-05-03 00:22:32 +04:00
parent 09b04740e7
commit 104ac0806a
27 changed files with 204 additions and 715 deletions

View file

@ -4,50 +4,38 @@ rl_signature_replacer = function (editor, sText, sSignature, bHtml, bInsertBefor
if (!bHtml)
{
sText = sText
.replace(/\u200C\u200C/g, '\u0002\u0002')
.replace(/\u200D\u200D/g, '\u0003\u0003')
.replace(/\u200C([\s\S]*)\u200C/g, '<x-signature>$1</x-signature>')
.replace(/\u200C/g, '')
;
}
sText = sText.replace(/<x-signature>[\s\S]*<\/x-signature>/gm, '');
var
sTextWithoutSignature = sText
.replace(/\u0002\u0002[\s\S]*\u0002\u0002/gm, '')
.replace(/\u0003\u0003[\s\S]*\u0003\u0003/gm, ''),
bEmptyText = '' === $.trim(sTextWithoutSignature),
bEmptyText = '' === $.trim(sText),
sNewLine = (bHtml ? '<br />' : "\n")
;
if (!bEmptyText && bHtml)
{
bEmptyText = '' !== $.trim(editor.__plainUtils.htmlToPlain(sTextWithoutSignature));
}
if (!/\u0002\u0002/gm.test(sText))
{
sText = "\u0002\u0002\u0002\u0002" + sText;
}
if (!/\u0003\u0003/gm.test(sText))
{
sText = sText + "\u0003\u0003\u0003\u0003";
bEmptyText = '' !== $.trim(editor.__plainUtils.htmlToPlain(sText));
}
if (bInsertBefore)
{
sText = sText.replace(/\u0002\u0002[\s\S]*\u0002\u0002/gm, "\u0002\u0002" + sSignature + (bEmptyText ? '' : sNewLine) + "\u0002\u0002");
sText = sText.replace(/\u0003\u0003[\s\S]*\u0003\u0003/gm, "\u0003\u0003\u0003\u0003");
sText = '<x-signature>' + sSignature + (bEmptyText ? '' : sNewLine) + '</x-signature>' + sText;
}
else
{
sText = sText.replace(/\u0002\u0002[\s\S]*\u0002\u0002/gm, "\u0002\u0002\u0002\u0002");
sText = sText.replace(/\u0003\u0003[\s\S]*\u0003\u0003/gm, "\u0003\u0003" + (bEmptyText ? '' : sNewLine) + sSignature + "\u0003\u0003");
sText = sText + '<x-signature>' + (bEmptyText ? '' : sNewLine) + sSignature + '</x-signature>';
}
if (!bHtml)
{
sText = sText
.replace(/\u0002\u0002/g, '\u200C\u200C')
.replace(/\u0003\u0003/g, '\u200D\u200D')
.replace(/<x-signature>([\s\S]*)<\/x-signature>/gm, '\u200C$1\u200C')
.replace(/<x-signature>/gm, '')
.replace(/<\/x-signature>/gm, '')
;
}
@ -90,8 +78,7 @@ CKEDITOR.plugins.add('signature', {
}
editor.__plain.setRawData(
rl_signature_replacer(editor,
editor.__plain.getRawData(), sResultSignature, false, bInsertBefore));
rl_signature_replacer(editor, editor.__plain.getRawData(), sResultSignature, false, bInsertBefore));
}
else
@ -105,8 +92,7 @@ CKEDITOR.plugins.add('signature', {
}
editor.setData(
rl_signature_replacer(editor,
editor.getData(), sResultSignature, true, bInsertBefore));
rl_signature_replacer(editor, editor.getData(), sResultSignature, true, bInsertBefore));
}
}
catch (e) {}