Файл: templates/backend/default/assets/plugins/bootstrap-wysihtml5/wysihtml5-0.3.0.min.js
Строк: 7330
<?php
var wysihtml5={version:"0.3.0",commands:{},dom:{},quirks:{},toolbar:{},lang:{},selection:{},views:{},INVISIBLE_SPACE:"",EMPTY_FUNCTION:function(){},ELEMENT_NODE:1,TEXT_NODE:3,BACKSPACE_KEY:8,ENTER_KEY:13,ESCAPE_KEY:27,SPACE_KEY:32,DELETE_KEY:46};window.rangy=function(){function t(t,e){var n=typeof t[e];return n==u||!(n!=h||!t[e])||"unknown"==n}function e(t,e){return!(typeof t[e]!=h||!t[e])}function n(t,e){return typeof t[e]!=d}function i(t){return function(e,n){for(var i=n.length;i--;)if(!t(e,n[i]))return!1;return!0}}function o(t){return t&&v(t,g)&&b(t,m)}function s(t){window.alert("Rangy not supported in your browser. Reason: "+t),w.initialized=!0,w.supported=!1}function a(t){var e="Rangy warning: "+t;w.config.alertOnWarn?window.alert(e):typeof window.console!=d&&typeof window.console.log!=d&&window.console.log(e)}function r(){if(!w.initialized){var n,i=!1,a=!1;t(document,"createRange")&&(n=document.createRange(),v(n,p)&&b(n,f)&&(i=!0),n.detach());var r=e(document,"body")?document.body:document.getElementsByTagName("body")[0];r&&t(r,"createTextRange")&&(n=r.createTextRange(),o(n)&&(a=!0)),i||a||s("Neither Range nor TextRange are implemented"),w.initialized=!0,w.features={implementsDomRange:i,implementsTextRange:a};for(var l=C.concat(S),c=0,h=l.length;h>c;++c)try{l[c](w)}catch(u){e(window,"console")&&t(window.console,"log")&&window.console.log("Init listener threw an exception. Continuing.",u)}}}function l(t){t=t||window,r();for(var e=0,n=k.length;n>e;++e)k[e](t)}function c(t){this.name=t,this.initialized=!1,this.supported=!1}var h="object",u="function",d="undefined",f=["startContainer","startOffset","endContainer","endOffset","collapsed","commonAncestorContainer","START_TO_START","START_TO_END","END_TO_START","END_TO_END"],p=["setStart","setStartBefore","setStartAfter","setEnd","setEndBefore","setEndAfter","collapse","selectNode","selectNodeContents","compareBoundaryPoints","deleteContents","extractContents","cloneContents","insertNode","surroundContents","cloneRange","toString","detach"],m=["boundingHeight","boundingLeft","boundingTop","boundingWidth","htmlText","text"],g=["collapse","compareEndPoints","duplicate","getBookmark","moveToBookmark","moveToElementText","parentElement","pasteHTML","select","setEndPoint","getBoundingClientRect"],v=i(t),y=i(e),b=i(n),w={version:"1.2.2",initialized:!1,supported:!0,util:{isHostMethod:t,isHostObject:e,isHostProperty:n,areHostMethods:v,areHostObjects:y,areHostProperties:b,isTextRange:o},features:{},modules:{},config:{alertOnWarn:!1,preferTextRange:!1}};w.fail=s,w.warn=a,{}.hasOwnProperty?w.util.extend=function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])}:s("hasOwnProperty not supported");var S=[],C=[];w.init=r,w.addInitListener=function(t){w.initialized?t(w):S.push(t)};var k=[];w.addCreateMissingNativeApiListener=function(t){k.push(t)},w.createMissingNativeApi=l,c.prototype.fail=function(t){throw this.initialized=!0,this.supported=!1,new Error("Module '"+this.name+"' failed to load: "+t)},c.prototype.warn=function(t){w.warn("Module "+this.name+": "+t)},c.prototype.createError=function(t){return new Error("Error in Rangy "+this.name+" module: "+t)},w.createModule=function(t,e){var n=new c(t);w.modules[t]=n,C.push(function(t){e(t,n),n.initialized=!0,n.supported=!0})},w.requireModules=function(t){for(var e,n,i=0,o=t.length;o>i;++i){if(n=t[i],e=w.modules[n],!(e&&e instanceof c))throw new Error("Module '"+n+"' not found");if(!e.supported)throw new Error("Module '"+n+"' not supported")}};var T=!1,x=function(){T||(T=!0,w.initialized||r())};return typeof window==d?(s("No window found"),void 0):typeof document==d?(s("No document found"),void 0):(t(document,"addEventListener")&&document.addEventListener("DOMContentLoaded",x,!1),t(window,"addEventListener")?window.addEventListener("load",x,!1):t(window,"attachEvent")?window.attachEvent("onload",x):s("Window does not have required addEventListener or attachEvent method"),w)}(),rangy.createModule("DomUtil",function(t,e){function n(t){var e;return typeof t.namespaceURI==x||null===(e=t.namespaceURI)||"http://www.w3.org/1999/xhtml"==e}function i(t){var e=t.parentNode;return 1==e.nodeType?e:null}function o(t){for(var e=0;t=t.previousSibling;)e++;return e}function s(t){var e;return c(t)?t.length:(e=t.childNodes)?e.length:0}function a(t,e){var n,i=[];for(n=t;n;n=n.parentNode)i.push(n);for(n=e;n;n=n.parentNode)if(D(i,n))return n;return null}function r(t,e,n){for(var i=n?e:e.parentNode;i;){if(i===t)return!0;i=i.parentNode}return!1}function l(t,e,n){for(var i,o=n?t:t.parentNode;o;){if(i=o.parentNode,i===e)return o;o=i}return null}function c(t){var e=t.nodeType;return 3==e||4==e||8==e}function h(t,e){var n=e.nextSibling,i=e.parentNode;return n?i.insertBefore(t,n):i.appendChild(t),t}function u(t,e){var n=t.cloneNode(!1);return n.deleteData(0,e),t.deleteData(e,t.length-e),h(n,t),n}function d(t){if(9==t.nodeType)return t;if(typeof t.ownerDocument!=x)return t.ownerDocument;if(typeof t.document!=x)return t.document;if(t.parentNode)return d(t.parentNode);throw new Error("getDocument: no document found for node")}function f(t){var e=d(t);if(typeof e.defaultView!=x)return e.defaultView;if(typeof e.parentWindow!=x)return e.parentWindow;throw new Error("Cannot get a window object for node")}function p(t){if(typeof t.contentDocument!=x)return t.contentDocument;if(typeof t.contentWindow!=x)return t.contentWindow.document;throw new Error("getIframeWindow: No Document object found for iframe element")}function m(t){if(typeof t.contentWindow!=x)return t.contentWindow;if(typeof t.contentDocument!=x)return t.contentDocument.defaultView;throw new Error("getIframeWindow: No Window object found for iframe element")}function g(t){return E.isHostObject(t,"body")?t.body:t.getElementsByTagName("body")[0]}function v(t){for(var e;e=t.parentNode;)t=e;return t}function y(t,e,n,i){var s,r,c,h,u;if(t==n)return e===i?0:i>e?-1:1;if(s=l(n,t,!0))return e<=o(s)?-1:1;if(s=l(t,n,!0))return o(s)<i?-1:1;if(r=a(t,n),c=t===r?r:l(t,r,!0),h=n===r?r:l(n,r,!0),c===h)throw new Error("comparePoints got to case 4 and childA and childB are the same!");for(u=r.firstChild;u;){if(u===c)return-1;if(u===h)return 1;u=u.nextSibling}throw new Error("Should not be here!")}function b(t){for(var e,n=d(t).createDocumentFragment();e=t.firstChild;)n.appendChild(e);return n}function w(t){if(!t)return"[No node]";if(c(t))return'"'+t.data+'"';if(1==t.nodeType){var e=t.id?' id="'+t.id+'"':"";return"<"+t.nodeName+e+">["+t.childNodes.length+"]"}return t.nodeName}function S(t){this.root=t,this._next=t}function C(t){return new S(t)}function k(t,e){this.node=t,this.offset=e}function T(t){this.code=this[t],this.codeName=t,this.message="DOMException: "+this.codeName}var x="undefined",E=t.util;E.areHostMethods(document,["createDocumentFragment","createElement","createTextNode"])||e.fail("document missing a Node creation method"),E.isHostMethod(document,"getElementsByTagName")||e.fail("document missing getElementsByTagName method");var N=document.createElement("div");E.areHostMethods(N,["insertBefore","appendChild","cloneNode"]||!E.areHostObjects(N,["previousSibling","nextSibling","childNodes","parentNode"]))||e.fail("Incomplete Element implementation"),E.isHostProperty(N,"innerHTML")||e.fail("Element is missing innerHTML property");var M=document.createTextNode("test");E.areHostMethods(M,["splitText","deleteData","insertData","appendData","cloneNode"]||!E.areHostObjects(N,["previousSibling","nextSibling","childNodes","parentNode"])||!E.areHostProperties(M,["data"]))||e.fail("Incomplete Text Node implementation");var D=function(t,e){for(var n=t.length;n--;)if(t[n]===e)return!0;return!1};S.prototype={_current:null,hasNext:function(){return!!this._next},next:function(){var t,e,n=this._current=this._next;if(this._current)if(t=n.firstChild)this._next=t;else{for(e=null;n!==this.root&&!(e=n.nextSibling);)n=n.parentNode;this._next=e}return this._current},detach:function(){this._current=this._next=this.root=null}},k.prototype={equals:function(t){return this.node===t.node&this.offset==t.offset},inspect:function(){return"[DomPosition("+w(this.node)+":"+this.offset+")]"}},T.prototype={INDEX_SIZE_ERR:1,HIERARCHY_REQUEST_ERR:3,WRONG_DOCUMENT_ERR:4,NO_MODIFICATION_ALLOWED_ERR:7,NOT_FOUND_ERR:8,NOT_SUPPORTED_ERR:9,INVALID_STATE_ERR:11},T.prototype.toString=function(){return this.message},t.dom={arrayContains:D,isHtmlNamespace:n,parentElement:i,getNodeIndex:o,getNodeLength:s,getCommonAncestor:a,isAncestorOf:r,getClosestAncestorIn:l,isCharacterDataNode:c,insertAfter:h,splitDataNode:u,getDocument:d,getWindow:f,getIframeWindow:m,getIframeDocument:p,getBody:g,getRootContainer:v,comparePoints:y,inspectNode:w,fragmentFromNodeChildren:b,createIterator:C,DomPosition:k},t.DOMException=T}),rangy.createModule("DomRange",function(t){function e(t,e){return 3!=t.nodeType&&(P.isAncestorOf(t,e.startContainer,!0)||P.isAncestorOf(t,e.endContainer,!0))}function n(t){return P.getDocument(t.startContainer)}function i(t,e,n){var i=t._listeners[e];if(i)for(var o=0,s=i.length;s>o;++o)i[o].call(t,{target:t,args:n})}function o(t){return new j(t.parentNode,P.getNodeIndex(t))}function s(t){return new j(t.parentNode,P.getNodeIndex(t)+1)}function a(t,e,n){var i=11==t.nodeType?t.firstChild:t;return P.isCharacterDataNode(e)?n==e.length?P.insertAfter(t,e):e.parentNode.insertBefore(t,0==n?e:P.splitDataNode(e,n)):n>=e.childNodes.length?e.appendChild(t):e.insertBefore(t,e.childNodes[n]),i}function r(t){for(var e,i,o,s=n(t.range).createDocumentFragment();i=t.next();){if(e=t.isPartiallySelectedSubtree(),i=i.cloneNode(!e),e&&(o=t.getSubtreeIterator(),i.appendChild(r(o)),o.detach(!0)),10==i.nodeType)throw new B("HIERARCHY_REQUEST_ERR");s.appendChild(i)}return s}function l(t,e,n){var i,o;n=n||{stop:!1};for(var s,a;s=t.next();)if(t.isPartiallySelectedSubtree()){if(e(s)===!1)return n.stop=!0,void 0;if(a=t.getSubtreeIterator(),l(a,e,n),a.detach(!0),n.stop)return}else for(i=P.createIterator(s);o=i.next();)if(e(o)===!1)return n.stop=!0,void 0}function c(t){for(var e;t.next();)t.isPartiallySelectedSubtree()?(e=t.getSubtreeIterator(),c(e),e.detach(!0)):t.remove()}function h(t){for(var e,i,o=n(t.range).createDocumentFragment();e=t.next();){if(t.isPartiallySelectedSubtree()?(e=e.cloneNode(!1),i=t.getSubtreeIterator(),e.appendChild(h(i)),i.detach(!0)):t.remove(),10==e.nodeType)throw new B("HIERARCHY_REQUEST_ERR");o.appendChild(e)}return o}function u(t,e,n){var i,o=!(!e||!e.length),s=!!n;o&&(i=new RegExp("^("+e.join("|")+")$"));var a=[];return l(new f(t,!1),function(t){o&&!i.test(t.nodeType)||s&&!n(t)||a.push(t)}),a}function d(t){var e="undefined"==typeof t.getName?"Range":t.getName();return"["+e+"("+P.inspectNode(t.startContainer)+":"+t.startOffset+", "+P.inspectNode(t.endContainer)+":"+t.endOffset+")]"}function f(t,e){if(this.range=t,this.clonePartiallySelectedTextNodes=e,!t.collapsed){this.sc=t.startContainer,this.so=t.startOffset,this.ec=t.endContainer,this.eo=t.endOffset;var n=t.commonAncestorContainer;this.sc===this.ec&&P.isCharacterDataNode(this.sc)?(this.isSingleCharacterDataNode=!0,this._first=this._last=this._next=this.sc):(this._first=this._next=this.sc!==n||P.isCharacterDataNode(this.sc)?P.getClosestAncestorIn(this.sc,n,!0):this.sc.childNodes[this.so],this._last=this.ec!==n||P.isCharacterDataNode(this.ec)?P.getClosestAncestorIn(this.ec,n,!0):this.ec.childNodes[this.eo-1])}}function p(t){this.code=this[t],this.codeName=t,this.message="RangeException: "+this.codeName}function m(t,e,n){this.nodes=u(t,e,n),this._next=this.nodes[0],this._position=0}function g(t){return function(e,n){for(var i,o=n?e:e.parentNode;o;){if(i=o.nodeType,P.arrayContains(t,i))return o;o=o.parentNode}return null}}function v(t,e){if(Q(t,e))throw new p("INVALID_NODE_TYPE_ERR")}function y(t){if(!t.startContainer)throw new B("INVALID_STATE_ERR")}function b(t,e){if(!P.arrayContains(e,t.nodeType))throw new p("INVALID_NODE_TYPE_ERR")}function w(t,e){if(0>e||e>(P.isCharacterDataNode(t)?t.length:t.childNodes.length))throw new B("INDEX_SIZE_ERR")}function S(t,e){if(W(t,!0)!==W(e,!0))throw new B("WRONG_DOCUMENT_ERR")}function C(t){if(J(t,!0))throw new B("NO_MODIFICATION_ALLOWED_ERR")}function k(t,e){if(!t)throw new B(e)}function T(t){return!P.arrayContains(z,t.nodeType)&&!W(t,!0)}function x(t,e){return e<=(P.isCharacterDataNode(t)?t.length:t.childNodes.length)}function E(t){if(y(t),T(t.startContainer)||T(t.endContainer)||!x(t.startContainer,t.startOffset)||!x(t.endContainer,t.endOffset))throw new Error("Range error: Range is no longer valid after DOM mutation ("+t.inspect()+")")}function N(){}function M(t){t.START_TO_START=Z,t.START_TO_END=te,t.END_TO_END=ee,t.END_TO_START=ne,t.NODE_BEFORE=ie,t.NODE_AFTER=oe,t.NODE_BEFORE_AND_AFTER=se,t.NODE_INSIDE=ae}function D(t){M(t),M(t.prototype)}function A(t,e){return function(){E(this);var n,i,o=this.startContainer,a=this.startOffset,r=this.commonAncestorContainer,c=new f(this,!0);o!==r&&(n=P.getClosestAncestorIn(o,r,!0),i=s(n),o=i.node,a=i.offset),l(c,C),c.reset();var h=t(c);return c.detach(),e(this,o,a,o,a),h}}function L(n,i,a){function r(t,e){return function(n){y(this),b(n,F),b($(n),z);var i=(t?o:s)(n);(e?l:u)(this,i.node,i.offset)}}function l(t,e,n){var o=t.endContainer,s=t.endOffset;(e!==t.startContainer||n!==t.startOffset)&&(($(e)!=$(o)||1==P.comparePoints(e,n,o,s))&&(o=e,s=n),i(t,e,n,o,s))}function u(t,e,n){var o=t.startContainer,s=t.startOffset;(e!==t.endContainer||n!==t.endOffset)&&(($(e)!=$(o)||-1==P.comparePoints(e,n,o,s))&&(o=e,s=n),i(t,o,s,e,n))}function d(t,e,n){(e!==t.startContainer||n!==t.startOffset||e!==t.endContainer||n!==t.endOffset)&&i(t,e,n,e,n)}n.prototype=new N,t.util.extend(n.prototype,{setStart:function(t,e){y(this),v(t,!0),w(t,e),l(this,t,e)},setEnd:function(t,e){y(this),v(t,!0),w(t,e),u(this,t,e)},setStartBefore:r(!0,!0),setStartAfter:r(!1,!0),setEndBefore:r(!0,!1),setEndAfter:r(!1,!1),collapse:function(t){E(this),t?i(this,this.startContainer,this.startOffset,this.startContainer,this.startOffset):i(this,this.endContainer,this.endOffset,this.endContainer,this.endOffset)},selectNodeContents:function(t){y(this),v(t,!0),i(this,t,0,t,P.getNodeLength(t))},selectNode:function(t){y(this),v(t,!1),b(t,F);var e=o(t),n=s(t);i(this,e.node,e.offset,n.node,n.offset)},extractContents:A(h,i),deleteContents:A(c,i),canSurroundContents:function(){E(this),C(this.startContainer),C(this.endContainer);var t=new f(this,!0),n=t._first&&e(t._first,this)||t._last&&e(t._last,this);return t.detach(),!n},detach:function(){a(this)},splitBoundaries:function(){E(this);var t=this.startContainer,e=this.startOffset,n=this.endContainer,o=this.endOffset,s=t===n;P.isCharacterDataNode(n)&&o>0&&o<n.length&&P.splitDataNode(n,o),P.isCharacterDataNode(t)&&e>0&&e<t.length&&(t=P.splitDataNode(t,e),s?(o-=e,n=t):n==t.parentNode&&o>=P.getNodeIndex(t)&&o++,e=0),i(this,t,e,n,o)},normalizeBoundaries:function(){E(this);var t=this.startContainer,e=this.startOffset,n=this.endContainer,o=this.endOffset,s=function(t){var e=t.nextSibling;e&&e.nodeType==t.nodeType&&(n=t,o=t.length,t.appendData(e.data),e.parentNode.removeChild(e))},a=function(i){var s=i.previousSibling;if(s&&s.nodeType==i.nodeType){t=i;var a=i.length;if(e=s.length,i.insertData(0,s.data),s.parentNode.removeChild(s),t==n)o+=e,n=t;else if(n==i.parentNode){var r=P.getNodeIndex(i);o==r?(n=i,o=a):o>r&&o--}}},r=!0;if(P.isCharacterDataNode(n))n.length==o&&s(n);else{if(o>0){var l=n.childNodes[o-1];l&&P.isCharacterDataNode(l)&&s(l)}r=!this.collapsed}if(r){if(P.isCharacterDataNode(t))0==e&&a(t);else if(e<t.childNodes.length){var c=t.childNodes[e];c&&P.isCharacterDataNode(c)&&a(c)}}else t=n,e=o;i(this,t,e,n,o)},collapseToPoint:function(t,e){y(this),v(t,!0),w(t,e),d(this,t,e)}}),D(n)}function I(t){t.collapsed=t.startContainer===t.endContainer&&t.startOffset===t.endOffset,t.commonAncestorContainer=t.collapsed?t.startContainer:P.getCommonAncestor(t.startContainer,t.endContainer)}function R(t,e,n,o,s){var a=t.startContainer!==e||t.startOffset!==n,r=t.endContainer!==o||t.endOffset!==s;t.startContainer=e,t.startOffset=n,t.endContainer=o,t.endOffset=s,I(t),i(t,"boundarychange",{startMoved:a,endMoved:r})}function O(t){y(t),t.startContainer=t.startOffset=t.endContainer=t.endOffset=null,t.collapsed=t.commonAncestorContainer=null,i(t,"detach",null),t._listeners=null}function _(t){this.startContainer=t,this.startOffset=0,this.endContainer=t,this.endOffset=0,this._listeners={boundarychange:[],detach:[]},I(this)}t.requireModules(["DomUtil"]);var P=t.dom,j=P.DomPosition,B=t.DOMException;f.prototype={_current:null,_next:null,_first:null,_last:null,isSingleCharacterDataNode:!1,reset:function(){this._current=null,this._next=this._first},hasNext:function(){return!!this._next},next:function(){var t=this._current=this._next;return t&&(this._next=t!==this._last?t.nextSibling:null,P.isCharacterDataNode(t)&&this.clonePartiallySelectedTextNodes&&(t===this.ec&&(t=t.cloneNode(!0)).deleteData(this.eo,t.length-this.eo),this._current===this.sc&&(t=t.cloneNode(!0)).deleteData(0,this.so))),t},remove:function(){var t,e,n=this._current;!P.isCharacterDataNode(n)||n!==this.sc&&n!==this.ec?n.parentNode&&n.parentNode.removeChild(n):(t=n===this.sc?this.so:0,e=n===this.ec?this.eo:n.length,t!=e&&n.deleteData(t,e-t))},isPartiallySelectedSubtree:function(){var t=this._current;return e(t,this.range)},getSubtreeIterator:function(){var t;if(this.isSingleCharacterDataNode)t=this.range.cloneRange(),t.collapse();else{t=new _(n(this.range));var e=this._current,i=e,o=0,s=e,a=P.getNodeLength(e);P.isAncestorOf(e,this.sc,!0)&&(i=this.sc,o=this.so),P.isAncestorOf(e,this.ec,!0)&&(s=this.ec,a=this.eo),R(t,i,o,s,a)}return new f(t,this.clonePartiallySelectedTextNodes)},detach:function(t){t&&this.range.detach(),this.range=this._current=this._next=this._first=this._last=this.sc=this.so=this.ec=this.eo=null}},p.prototype={BAD_BOUNDARYPOINTS_ERR:1,INVALID_NODE_TYPE_ERR:2},p.prototype.toString=function(){return this.message},m.prototype={_current:null,hasNext:function(){return!!this._next},next:function(){return this._current=this._next,this._next=this.nodes[++this._position],this._current},detach:function(){this._current=this._next=this.nodes=null}};var F=[1,3,4,5,7,8,10],z=[2,9,11],H=[5,6,10,12],U=[1,3,4,5,7,8,10,11],V=[1,3,4,5,7,8],$=P.getRootContainer,W=g([9,11]),J=g(H),Q=g([6,10,12]),q=document.createElement("style"),K=!1;try{q.innerHTML="<b>x</b>",K=3==q.firstChild.nodeType}catch(Y){}t.features.htmlParsingConforms=K;var G=K?function(t){var e=this.startContainer,n=P.getDocument(e);if(!e)throw new B("INVALID_STATE_ERR");var i=null;return 1==e.nodeType?i=e:P.isCharacterDataNode(e)&&(i=P.parentElement(e)),i=null===i||"HTML"==i.nodeName&&P.isHtmlNamespace(P.getDocument(i).documentElement)&&P.isHtmlNamespace(i)?n.createElement("body"):i.cloneNode(!1),i.innerHTML=t,P.fragmentFromNodeChildren(i)}:function(t){y(this);var e=n(this),i=e.createElement("body");return i.innerHTML=t,P.fragmentFromNodeChildren(i)},X=["startContainer","startOffset","endContainer","endOffset","collapsed","commonAncestorContainer"],Z=0,te=1,ee=2,ne=3,ie=0,oe=1,se=2,ae=3;N.prototype={attachListener:function(t,e){this._listeners[t].push(e)},compareBoundaryPoints:function(t,e){E(this),S(this.startContainer,e.startContainer);var n,i,o,s,a=t==ne||t==Z?"start":"end",r=t==te||t==Z?"start":"end";return n=this[a+"Container"],i=this[a+"Offset"],o=e[r+"Container"],s=e[r+"Offset"],P.comparePoints(n,i,o,s)},insertNode:function(t){if(E(this),b(t,U),C(this.startContainer),P.isAncestorOf(t,this.startContainer,!0))throw new B("HIERARCHY_REQUEST_ERR");var e=a(t,this.startContainer,this.startOffset);this.setStartBefore(e)},cloneContents:function(){E(this);var t,e;if(this.collapsed)return n(this).createDocumentFragment();if(this.startContainer===this.endContainer&&P.isCharacterDataNode(this.startContainer))return t=this.startContainer.cloneNode(!0),t.data=t.data.slice(this.startOffset,this.endOffset),e=n(this).createDocumentFragment(),e.appendChild(t),e;var i=new f(this,!0);return t=r(i),i.detach(),t},canSurroundContents:function(){E(this),C(this.startContainer),C(this.endContainer);var t=new f(this,!0),n=t._first&&e(t._first,this)||t._last&&e(t._last,this);return t.detach(),!n},surroundContents:function(t){if(b(t,V),!this.canSurroundContents())throw new p("BAD_BOUNDARYPOINTS_ERR");var e=this.extractContents();if(t.hasChildNodes())for(;t.lastChild;)t.removeChild(t.lastChild);a(t,this.startContainer,this.startOffset),t.appendChild(e),this.selectNode(t)},cloneRange:function(){E(this);for(var t,e=new _(n(this)),i=X.length;i--;)t=X[i],e[t]=this[t];return e},toString:function(){E(this);var t=this.startContainer;if(t===this.endContainer&&P.isCharacterDataNode(t))return 3==t.nodeType||4==t.nodeType?t.data.slice(this.startOffset,this.endOffset):"";var e=[],n=new f(this,!0);return l(n,function(t){(3==t.nodeType||4==t.nodeType)&&e.push(t.data)}),n.detach(),e.join("")},compareNode:function(t){E(this);var e=t.parentNode,n=P.getNodeIndex(t);if(!e)throw new B("NOT_FOUND_ERR");var i=this.comparePoint(e,n),o=this.comparePoint(e,n+1);return 0>i?o>0?se:ie:o>0?oe:ae},comparePoint:function(t,e){return E(this),k(t,"HIERARCHY_REQUEST_ERR"),S(t,this.startContainer),P.comparePoints(t,e,this.startContainer,this.startOffset)<0?-1:P.comparePoints(t,e,this.endContainer,this.endOffset)>0?1:0},createContextualFragment:G,toHtml:function(){E(this);var t=n(this).createElement("div");return t.appendChild(this.cloneContents()),t.innerHTML},intersectsNode:function(t,e){if(E(this),k(t,"NOT_FOUND_ERR"),P.getDocument(t)!==n(this))return!1;var i=t.parentNode,o=P.getNodeIndex(t);k(i,"NOT_FOUND_ERR");var s=P.comparePoints(i,o,this.endContainer,this.endOffset),a=P.comparePoints(i,o+1,this.startContainer,this.startOffset);return e?0>=s&&a>=0:0>s&&a>0},isPointInRange:function(t,e){return E(this),k(t,"HIERARCHY_REQUEST_ERR"),S(t,this.startContainer),P.comparePoints(t,e,this.startContainer,this.startOffset)>=0&&P.comparePoints(t,e,this.endContainer,this.endOffset)<=0},intersectsRange:function(t,e){if(E(this),n(t)!=n(this))throw new B("WRONG_DOCUMENT_ERR");var i=P.comparePoints(this.startContainer,this.startOffset,t.endContainer,t.endOffset),o=P.comparePoints(this.endContainer,this.endOffset,t.startContainer,t.startOffset);return e?0>=i&&o>=0:0>i&&o>0},intersection:function(t){if(this.intersectsRange(t)){var e=P.comparePoints(this.startContainer,this.startOffset,t.startContainer,t.startOffset),n=P.comparePoints(this.endContainer,this.endOffset,t.endContainer,t.endOffset),i=this.cloneRange();return-1==e&&i.setStart(t.startContainer,t.startOffset),1==n&&i.setEnd(t.endContainer,t.endOffset),i}return null},union:function(t){if(this.intersectsRange(t,!0)){var e=this.cloneRange();return-1==P.comparePoints(t.startContainer,t.startOffset,this.startContainer,this.startOffset)&&e.setStart(t.startContainer,t.startOffset),1==P.comparePoints(t.endContainer,t.endOffset,this.endContainer,this.endOffset)&&e.setEnd(t.endContainer,t.endOffset),e}throw new p("Ranges do not intersect")},containsNode:function(t,e){return e?this.intersectsNode(t,!1):this.compareNode(t)==ae},containsNodeContents:function(t){return this.comparePoint(t,0)>=0&&this.comparePoint(t,P.getNodeLength(t))<=0},containsRange:function(t){return this.intersection(t).equals(t)},containsNodeText:function(t){var e=this.cloneRange();e.selectNode(t);var n=e.getNodes([3]);if(n.length>0){e.setStart(n[0],0);var i=n.pop();e.setEnd(i,i.length);var o=this.containsRange(e);return e.detach(),o}return this.containsNodeContents(t)},createNodeIterator:function(t,e){return E(this),new m(this,t,e)},getNodes:function(t,e){return E(this),u(this,t,e)},getDocument:function(){return n(this)},collapseBefore:function(t){y(this),this.setEndBefore(t),this.collapse(!1)},collapseAfter:function(t){y(this),this.setStartAfter(t),this.collapse(!0)},getName:function(){return"DomRange"},equals:function(t){return _.rangesEqual(this,t)},inspect:function(){return d(this)}},L(_,R,O),t.rangePrototype=N.prototype,_.rangeProperties=X,_.RangeIterator=f,_.copyComparisonConstants=D,_.createPrototypeRange=L,_.inspect=d,_.getRangeDocument=n,_.rangesEqual=function(t,e){return t.startContainer===e.startContainer&&t.startOffset===e.startOffset&&t.endContainer===e.endContainer&&t.endOffset===e.endOffset},t.DomRange=_,t.RangeException=p}),rangy.createModule("WrappedRange",function(t){function e(t){var e=t.parentElement(),n=t.duplicate();n.collapse(!0);var i=n.parentElement();n=t.duplicate(),n.collapse(!1);var o=n.parentElement(),s=i==o?i:a.getCommonAncestor(i,o);return s==e?s:a.getCommonAncestor(e,s)}function n(t){return 0==t.compareEndPoints("StartToEnd",t)}function i(t,e,n,i){var o=t.duplicate();o.collapse(n);var s=o.parentElement();if(a.isAncestorOf(e,s,!0)||(s=e),!s.canHaveHTML)return new r(s.parentNode,a.getNodeIndex(s));var l,c,h,u,d,f=a.getDocument(s).createElement("span"),p=n?"StartToStart":"StartToEnd";do s.insertBefore(f,f.previousSibling),o.moveToElementText(f);while((l=o.compareEndPoints(p,t))>0&&f.previousSibling);if(d=f.nextSibling,-1==l&&d&&a.isCharacterDataNode(d)){o.setEndPoint(n?"EndToStart":"EndToEnd",t);var m;if(/[rn]/.test(d.data)){var g=o.duplicate(),v=g.text.replace(/rn/g,"r").length;for(m=g.moveStart("character",v);-1==(l=g.compareEndPoints("StartToEnd",g));)m++,g.moveStart("character",1)}else m=o.text.length;u=new r(d,m)}else c=(i||!n)&&f.previousSibling,h=(i||n)&&f.nextSibling,u=h&&a.isCharacterDataNode(h)?new r(h,0):c&&a.isCharacterDataNode(c)?new r(c,c.length):new r(s,a.getNodeIndex(f));return f.parentNode.removeChild(f),u}function o(t,e){var n,i,o,s,r=t.offset,l=a.getDocument(t.node),c=l.body.createTextRange(),h=a.isCharacterDataNode(t.node);return h?(n=t.node,i=n.parentNode):(s=t.node.childNodes,n=r<s.length?s[r]:null,i=t.node),o=l.createElement("span"),o.innerHTML="&#feff;",n?i.insertBefore(o,n):i.appendChild(o),c.moveToElementText(o),c.collapse(!e),i.removeChild(o),h&&c[e?"moveStart":"moveEnd"]("character",r),c}t.requireModules(["DomUtil","DomRange"]);var s,a=t.dom,r=a.DomPosition,l=t.DomRange;if(!t.features.implementsDomRange||t.features.implementsTextRange&&t.config.preferTextRange){if(t.features.implementsTextRange){s=function(t){this.textRange=t,this.refresh()},s.prototype=new l(document),s.prototype.refresh=function(){var t,o,s=e(this.textRange);n(this.textRange)?o=t=i(this.textRange,s,!0,!0):(t=i(this.textRange,s,!0,!1),o=i(this.textRange,s,!1,!1)),this.setStart(t.node,t.offset),this.setEnd(o.node,o.offset)},l.copyComparisonConstants(s);var c=function(){return this}();"undefined"==typeof c.Range&&(c.Range=s),t.createNativeRange=function(t){return t=t||document,t.body.createTextRange()}}}else!function(){function e(t){for(var e,n=h.length;n--;)e=h[n],t[e]=t.nativeRange[e]}function n(t,e,n,i,o){var s=t.startContainer!==e||t.startOffset!=n,a=t.endContainer!==i||t.endOffset!=o;(s||a)&&(t.setEnd(i,o),t.setStart(e,n))}function i(t){t.nativeRange.detach(),t.detached=!0;for(var e,n=h.length;n--;)e=h[n],t[e]=null}var o,r,c,h=l.rangeProperties;s=function(t){if(!t)throw new Error("Range must be specified");this.nativeRange=t,e(this)},l.createPrototypeRange(s,n,i),o=s.prototype,o.selectNode=function(t){this.nativeRange.selectNode(t),e(this)},o.deleteContents=function(){this.nativeRange.deleteContents(),e(this)},o.extractContents=function(){var t=this.nativeRange.extractContents();return e(this),t},o.cloneContents=function(){return this.nativeRange.cloneContents()},o.surroundContents=function(t){this.nativeRange.surroundContents(t),e(this)},o.collapse=function(t){this.nativeRange.collapse(t),e(this)},o.cloneRange=function(){return new s(this.nativeRange.cloneRange())},o.refresh=function(){e(this)},o.toString=function(){return this.nativeRange.toString()};var u=document.createTextNode("test");a.getBody(document).appendChild(u);var d=document.createRange();d.setStart(u,0),d.setEnd(u,0);try{d.setStart(u,1),r=!0,o.setStart=function(t,n){this.nativeRange.setStart(t,n),e(this)},o.setEnd=function(t,n){this.nativeRange.setEnd(t,n),e(this)},c=function(t){return function(n){this.nativeRange[t](n),e(this)}}}catch(f){r=!1,o.setStart=function(t,n){try{this.nativeRange.setStart(t,n)}catch(i){this.nativeRange.setEnd(t,n),this.nativeRange.setStart(t,n)}e(this)},o.setEnd=function(t,n){try{this.nativeRange.setEnd(t,n)}catch(i){this.nativeRange.setStart(t,n),this.nativeRange.setEnd(t,n)}e(this)},c=function(t,n){return function(i){try{this.nativeRange[t](i)}catch(o){this.nativeRange[n](i),this.nativeRange[t](i)}e(this)}}}o.setStartBefore=c("setStartBefore","setEndBefore"),o.setStartAfter=c("setStartAfter","setEndAfter"),o.setEndBefore=c("setEndBefore","setStartBefore"),o.setEndAfter=c("setEndAfter","setStartAfter"),d.selectNodeContents(u),o.selectNodeContents=d.startContainer==u&&d.endContainer==u&&0==d.startOffset&&d.endOffset==u.length?function(t){this.nativeRange.selectNodeContents(t),e(this)}:function(t){this.setStart(t,0),this.setEnd(t,l.getEndOffset(t))},d.selectNodeContents(u),d.setEnd(u,3);var p=document.createRange();p.selectNodeContents(u),p.setEnd(u,4),p.setStart(u,2),o.compareBoundaryPoints=-1==d.compareBoundaryPoints(d.START_TO_END,p)&1==d.compareBoundaryPoints(d.END_TO_START,p)?function(t,e){return e=e.nativeRange||e,t==e.START_TO_END?t=e.END_TO_START:t==e.END_TO_START&&(t=e.START_TO_END),this.nativeRange.compareBoundaryPoints(t,e)}:function(t,e){return this.nativeRange.compareBoundaryPoints(t,e.nativeRange||e)},t.util.isHostMethod(d,"createContextualFragment")&&(o.createContextualFragment=function(t){return this.nativeRange.createContextualFragment(t)}),a.getBody(document).removeChild(u),d.detach(),p.detach()}(),t.createNativeRange=function(t){return t=t||document,t.createRange()};t.features.implementsTextRange&&(s.rangeToTextRange=function(t){if(t.collapsed){var e=o(new r(t.startContainer,t.startOffset),!0);return e}var n=o(new r(t.startContainer,t.startOffset),!0),i=o(new r(t.endContainer,t.endOffset),!1),s=a.getDocument(t.startContainer).body.createTextRange();return s.setEndPoint("StartToStart",n),s.setEndPoint("EndToEnd",i),s}),s.prototype.getName=function(){return"WrappedRange"},t.WrappedRange=s,t.createRange=function(e){return e=e||document,new s(t.createNativeRange(e))},t.createRangyRange=function(t){return t=t||document,new l(t)},t.createIframeRange=function(e){return t.createRange(a.getIframeDocument(e))},t.createIframeRangyRange=function(e){return t.createRangyRange(a.getIframeDocument(e))},t.addCreateMissingNativeApiListener(function(e){var n=e.document;"undefined"==typeof n.createRange&&(n.createRange=function(){return t.createRange(this)}),n=e=null})}),rangy.createModule("WrappedSelection",function(t,e){function n(t){return(t||window).getSelection()}function i(t){return(t||window).document.selection}function o(t,e,n){var i=n?"end":"start",o=n?"start":"end";t.anchorNode=e[i+"Container"],t.anchorOffset=e[i+"Offset"],t.focusNode=e[o+"Container"],t.focusOffset=e[o+"Offset"]}function s(t){var e=t.nativeSelection;t.anchorNode=e.anchorNode,t.anchorOffset=e.anchorOffset,t.focusNode=e.focusNode,t.focusOffset=e.focusOffset}function a(t){t.anchorNode=t.focusNode=null,t.anchorOffset=t.focusOffset=0,t.rangeCount=0,t.isCollapsed=!0,t._ranges.length=0}function r(e){var n;return e instanceof T?(n=e._selectionNativeRange,n||(n=t.createNativeRange(C.getDocument(e.startContainer)),n.setEnd(e.endContainer,e.endOffset),n.setStart(e.startContainer,e.startOffset),e._selectionNativeRange=n,e.attachListener("detach",function(){this._selectionNativeRange=null}))):e instanceof x?n=e.nativeRange:t.features.implementsDomRange&&e instanceof C.getWindow(e.startContainer).Range&&(n=e),n}function l(t){if(!t.length||1!=t[0].nodeType)return!1;for(var e=1,n=t.length;n>e;++e)if(!C.isAncestorOf(t[0],t[e]))return!1;return!0}function c(t){var e=t.getNodes();if(!l(e))throw new Error("getSingleElementFromRange: range "+t.inspect()+" did not consist of a single element");return e[0]}function h(t){return!!t&&"undefined"!=typeof t.text}function u(t,e){var n=new x(e);t._ranges=[n],o(t,n,!1),t.rangeCount=1,t.isCollapsed=n.collapsed}function d(e){if(e._ranges.length=0,"None"==e.docSelection.type)a(e);
else{var n=e.docSelection.createRange();if(h(n))u(e,n);else{e.rangeCount=n.length;for(var i,s=C.getDocument(n.item(0)),r=0;r<e.rangeCount;++r)i=t.createRange(s),i.selectNode(n.item(r)),e._ranges.push(i);e.isCollapsed=1==e.rangeCount&&e._ranges[0].collapsed,o(e,e._ranges[e.rangeCount-1],!1)}}}function f(t,e){for(var n=t.docSelection.createRange(),i=c(e),o=C.getDocument(n.item(0)),s=C.getBody(o).createControlRange(),a=0,r=n.length;r>a;++a)s.add(n.item(a));try{s.add(i)}catch(l){throw new Error("addRange(): Element within the specified Range could not be added to control selection (does it have layout?)")}s.select(),d(t)}function p(t,e,n){this.nativeSelection=t,this.docSelection=e,this._ranges=[],this.win=n,this.refresh()}function m(t,e){for(var n,i=C.getDocument(e[0].startContainer),o=C.getBody(i).createControlRange(),s=0;rangeCount>s;++s){n=c(e[s]);try{o.add(n)}catch(a){throw new Error("setRanges(): Element within the one of the specified Ranges could not be added to control selection (does it have layout?)")}}o.select(),d(t)}function g(t,e){if(t.anchorNode&&C.getDocument(t.anchorNode)!==C.getDocument(e))throw new E("WRONG_DOCUMENT_ERR")}function v(t){var e=[],n=new N(t.anchorNode,t.anchorOffset),i=new N(t.focusNode,t.focusOffset),o="function"==typeof t.getName?t.getName():"Selection";if("undefined"!=typeof t.rangeCount)for(var s=0,a=t.rangeCount;a>s;++s)e[s]=T.inspect(t.getRangeAt(s));return"["+o+"(Ranges: "+e.join(", ")+")(anchor: "+n.inspect()+", focus: "+i.inspect()+"]"}t.requireModules(["DomUtil","DomRange","WrappedRange"]),t.config.checkSelectionRanges=!0;var y,b,w="boolean",S="_rangySelection",C=t.dom,k=t.util,T=t.DomRange,x=t.WrappedRange,E=t.DOMException,N=C.DomPosition,M="Control",D=t.util.isHostMethod(window,"getSelection"),A=t.util.isHostObject(document,"selection"),L=A&&(!D||t.config.preferTextRange);L?(y=i,t.isSelectionValid=function(t){var e=(t||window).document,n=e.selection;return"None"!=n.type||C.getDocument(n.createRange().parentElement())==e}):D?(y=n,t.isSelectionValid=function(){return!0}):e.fail("Neither document.selection or window.getSelection() detected."),t.getNativeSelection=y;var I=y(),R=t.createNativeRange(document),O=C.getBody(document),_=k.areHostObjects(I,["anchorNode","focusNode"]&&k.areHostProperties(I,["anchorOffset","focusOffset"]));t.features.selectionHasAnchorAndFocus=_;var P=k.isHostMethod(I,"extend");t.features.selectionHasExtend=P;var j="number"==typeof I.rangeCount;t.features.selectionHasRangeCount=j;var B=!1,F=!0;k.areHostMethods(I,["addRange","getRangeAt","removeAllRanges"])&&"number"==typeof I.rangeCount&&t.features.implementsDomRange&&function(){var t=document.createElement("iframe");O.appendChild(t);var e=C.getIframeDocument(t);e.open(),e.write("<html><head></head><body>12</body></html>"),e.close();var n=C.getIframeWindow(t).getSelection(),i=e.documentElement,o=i.lastChild,s=o.firstChild,a=e.createRange();a.setStart(s,1),a.collapse(!0),n.addRange(a),F=1==n.rangeCount,n.removeAllRanges();var r=a.cloneRange();a.setStart(s,0),r.setEnd(s,2),n.addRange(a),n.addRange(r),B=2==n.rangeCount,a.detach(),r.detach(),O.removeChild(t)}(),t.features.selectionSupportsMultipleRanges=B,t.features.collapsedNonEditableSelectionsSupported=F;var z,H=!1;O&&k.isHostMethod(O,"createControlRange")&&(z=O.createControlRange(),k.areHostProperties(z,["item","add"])&&(H=!0)),t.features.implementsControlRange=H,b=_?function(t){return t.anchorNode===t.focusNode&&t.anchorOffset===t.focusOffset}:function(t){return t.rangeCount?t.getRangeAt(t.rangeCount-1).collapsed:!1};var U;k.isHostMethod(I,"getRangeAt")?U=function(t,e){try{return t.getRangeAt(e)}catch(n){return null}}:_&&(U=function(e){var n=C.getDocument(e.anchorNode),i=t.createRange(n);return i.setStart(e.anchorNode,e.anchorOffset),i.setEnd(e.focusNode,e.focusOffset),i.collapsed!==this.isCollapsed&&(i.setStart(e.focusNode,e.focusOffset),i.setEnd(e.anchorNode,e.anchorOffset)),i}),t.getSelection=function(t){t=t||window;var e=t[S],n=y(t),o=A?i(t):null;return e?(e.nativeSelection=n,e.docSelection=o,e.refresh(t)):(e=new p(n,o,t),t[S]=e),e},t.getIframeSelection=function(e){return t.getSelection(C.getIframeWindow(e))};var V=p.prototype;if(!L&&_&&k.areHostMethods(I,["removeAllRanges","addRange"])){V.removeAllRanges=function(){this.nativeSelection.removeAllRanges(),a(this)};var $=function(e,n){var i=T.getRangeDocument(n),o=t.createRange(i);o.collapseToPoint(n.endContainer,n.endOffset),e.nativeSelection.addRange(r(o)),e.nativeSelection.extend(n.startContainer,n.startOffset),e.refresh()};V.addRange=j?function(e,n){if(H&&A&&this.docSelection.type==M)f(this,e);else if(n&&P)$(this,e);else{var i;if(B?i=this.rangeCount:(this.removeAllRanges(),i=0),this.nativeSelection.addRange(r(e)),this.rangeCount=this.nativeSelection.rangeCount,this.rangeCount==i+1){if(t.config.checkSelectionRanges){var s=U(this.nativeSelection,this.rangeCount-1);s&&!T.rangesEqual(s,e)&&(e=new x(s))}this._ranges[this.rangeCount-1]=e,o(this,e,Q(this.nativeSelection)),this.isCollapsed=b(this)}else this.refresh()}}:function(t,e){e&&P?$(this,t):(this.nativeSelection.addRange(r(t)),this.refresh())},V.setRanges=function(t){if(H&&t.length>1)m(this,t);else{this.removeAllRanges();for(var e=0,n=t.length;n>e;++e)this.addRange(t[e])}}}else{if(!(k.isHostMethod(I,"empty")&&k.isHostMethod(R,"select")&&H&&L))return e.fail("No means of selecting a Range or TextRange was found"),!1;V.removeAllRanges=function(){try{if(this.docSelection.empty(),"None"!=this.docSelection.type){var t;if(this.anchorNode)t=C.getDocument(this.anchorNode);else if(this.docSelection.type==M){var e=this.docSelection.createRange();e.length&&(t=C.getDocument(e.item(0)).body.createTextRange())}if(t){var n=t.body.createTextRange();n.select(),this.docSelection.empty()}}}catch(i){}a(this)},V.addRange=function(t){this.docSelection.type==M?f(this,t):(x.rangeToTextRange(t).select(),this._ranges[0]=t,this.rangeCount=1,this.isCollapsed=this._ranges[0].collapsed,o(this,t,!1))},V.setRanges=function(t){this.removeAllRanges();var e=t.length;e>1?m(this,t):e&&this.addRange(t[0])}}V.getRangeAt=function(t){if(0>t||t>=this.rangeCount)throw new E("INDEX_SIZE_ERR");return this._ranges[t]};var W;if(L)W=function(e){var n;t.isSelectionValid(e.win)?n=e.docSelection.createRange():(n=C.getBody(e.win.document).createTextRange(),n.collapse(!0)),e.docSelection.type==M?d(e):h(n)?u(e,n):a(e)};else if(k.isHostMethod(I,"getRangeAt")&&"number"==typeof I.rangeCount)W=function(e){if(H&&A&&e.docSelection.type==M)d(e);else if(e._ranges.length=e.rangeCount=e.nativeSelection.rangeCount,e.rangeCount){for(var n=0,i=e.rangeCount;i>n;++n)e._ranges[n]=new t.WrappedRange(e.nativeSelection.getRangeAt(n));o(e,e._ranges[e.rangeCount-1],Q(e.nativeSelection)),e.isCollapsed=b(e)}else a(e)};else{if(!_||typeof I.isCollapsed!=w||typeof R.collapsed!=w||!t.features.implementsDomRange)return e.fail("No means of obtaining a Range or TextRange from the user's selection was found"),!1;W=function(t){var e,n=t.nativeSelection;n.anchorNode?(e=U(n,0),t._ranges=[e],t.rangeCount=1,s(t),t.isCollapsed=b(t)):a(t)}}V.refresh=function(t){var e=t?this._ranges.slice(0):null;if(W(this),t){var n=e.length;if(n!=this._ranges.length)return!1;for(;n--;)if(!T.rangesEqual(e[n],this._ranges[n]))return!1;return!0}};var J=function(t,e){var n=t.getAllRanges(),i=!1;t.removeAllRanges();for(var o=0,s=n.length;s>o;++o)i||e!==n[o]?t.addRange(n[o]):i=!0;t.rangeCount||a(t)};V.removeRange=H?function(t){if(this.docSelection.type==M){for(var e,n=this.docSelection.createRange(),i=c(t),o=C.getDocument(n.item(0)),s=C.getBody(o).createControlRange(),a=!1,r=0,l=n.length;l>r;++r)e=n.item(r),e!==i||a?s.add(n.item(r)):a=!0;s.select(),d(this)}else J(this,t)}:function(t){J(this,t)};var Q;!L&&_&&t.features.implementsDomRange?(Q=function(t){var e=!1;return t.anchorNode&&(e=1==C.comparePoints(t.anchorNode,t.anchorOffset,t.focusNode,t.focusOffset)),e},V.isBackwards=function(){return Q(this)}):Q=V.isBackwards=function(){return!1},V.toString=function(){for(var t=[],e=0,n=this.rangeCount;n>e;++e)t[e]=""+this._ranges[e];return t.join("")},V.collapse=function(e,n){g(this,e);var i=t.createRange(C.getDocument(e));i.collapseToPoint(e,n),this.removeAllRanges(),this.addRange(i),this.isCollapsed=!0},V.collapseToStart=function(){if(!this.rangeCount)throw new E("INVALID_STATE_ERR");var t=this._ranges[0];this.collapse(t.startContainer,t.startOffset)},V.collapseToEnd=function(){if(!this.rangeCount)throw new E("INVALID_STATE_ERR");var t=this._ranges[this.rangeCount-1];this.collapse(t.endContainer,t.endOffset)},V.selectAllChildren=function(e){g(this,e);var n=t.createRange(C.getDocument(e));n.selectNodeContents(e),this.removeAllRanges(),this.addRange(n)},V.deleteFromDocument=function(){if(H&&A&&this.docSelection.type==M){for(var t,e=this.docSelection.createRange();e.length;)t=e.item(0),e.remove(t),t.parentNode.removeChild(t);this.refresh()}else if(this.rangeCount){var n=this.getAllRanges();this.removeAllRanges();for(var i=0,o=n.length;o>i;++i)n[i].deleteContents();this.addRange(n[o-1])}},V.getAllRanges=function(){return this._ranges.slice(0)},V.setSingleRange=function(t){this.setRanges([t])},V.containsNode=function(t,e){for(var n=0,i=this._ranges.length;i>n;++n)if(this._ranges[n].containsNode(t,e))return!0;return!1},V.toHtml=function(){var t="";if(this.rangeCount){for(var e=T.getRangeDocument(this._ranges[0]).createElement("div"),n=0,i=this._ranges.length;i>n;++n)e.appendChild(this._ranges[n].cloneContents());t=e.innerHTML}return t},V.getName=function(){return"WrappedSelection"},V.inspect=function(){return v(this)},V.detach=function(){this.win[S]=null,this.win=this.anchorNode=this.focusNode=null},p.inspect=v,t.Selection=p,t.selectionPrototype=V,t.addCreateMissingNativeApiListener(function(e){"undefined"==typeof e.getSelection&&(e.getSelection=function(){return t.getSelection(this)}),e=null})});var Base=function(){};Base.extend=function(t,e){var n=Base.prototype.extend;Base._prototyping=!0;var i=new this;n.call(i,t),i.base=function(){},delete Base._prototyping;var o=i.constructor,s=i.constructor=function(){if(!Base._prototyping)if(this._constructing||this.constructor==s)this._constructing=!0,o.apply(this,arguments),delete this._constructing;else if(null!=arguments[0])return(arguments[0].extend||n).call(arguments[0],i)};return s.ancestor=this,s.extend=this.extend,s.forEach=this.forEach,s.implement=this.implement,s.prototype=i,s.toString=this.toString,s.valueOf=function(t){return"object"==t?s:o.valueOf()},n.call(s,e),"function"==typeof s.init&&s.init(),s},Base.prototype={extend:function(t,e){if(arguments.length>1){var n=this[t];if(n&&"function"==typeof e&&(!n.valueOf||n.valueOf()!=e.valueOf())&&/bbaseb/.test(e)){var i=e.valueOf();e=function(){var t=this.base||Base.prototype.base;this.base=n;var e=i.apply(this,arguments);return this.base=t,e},e.valueOf=function(t){return"object"==t?e:i},e.toString=Base.toString}this[t]=e}else if(t){var o=Base.prototype.extend;Base._prototyping||"function"==typeof this||(o=this.extend||o);for(var s={toSource:null},a=["constructor","toString","valueOf"],r=Base._prototyping?0:1;l=a[r++];)t[l]!=s[l]&&o.call(this,l,t[l]);for(var l in t)s[l]||o.call(this,l,t[l])}return this}},Base=Base.extend({constructor:function(){this.extend(arguments[0])}},{ancestor:Object,version:"1.1",forEach:function(t,e,n){for(var i in t)void 0===this.prototype[i]&&e.call(n,t[i],i,t)},implement:function(){for(var t=0;t<arguments.length;t++)"function"==typeof arguments[t]?arguments[t](this.prototype):this.prototype.extend(arguments[t]);return this},toString:function(){return String(this.valueOf())}}),wysihtml5.browser=function(){function t(t){return(/ipad|iphone|ipod/.test(t)&&t.match(/ os (d+).+? like mac os x/)||[,0])[1]}var e=navigator.userAgent,n=document.createElement("div"),i=-1!==e.indexOf("MSIE")&&-1===e.indexOf("Opera"),o=-1!==e.indexOf("Gecko")&&-1===e.indexOf("KHTML"),s=-1!==e.indexOf("AppleWebKit/"),a=-1!==e.indexOf("Chrome/"),r=-1!==e.indexOf("Opera/");return{USER_AGENT:e,supported:function(){var e=this.USER_AGENT.toLowerCase(),i="contentEditable"in n,o=document.execCommand&&document.queryCommandSupported&&document.queryCommandState,s=document.querySelector&&document.querySelectorAll,a=this.isIos()&&t(e)<5||-1!==e.indexOf("opera mobi")||-1!==e.indexOf("hpwos/");return i&&o&&s&&!a},isTouchDevice:function(){return this.supportsEvent("touchmove")},isIos:function(){var t=this.USER_AGENT.toLowerCase();return-1!==t.indexOf("webkit")&&-1!==t.indexOf("mobile")},supportsSandboxedIframes:function(){return i},throwsMixedContentWarningWhenIframeSrcIsEmpty:function(){return!("querySelector"in document)},displaysCaretInEmptyContentEditableCorrectly:function(){return!o},hasCurrentStyleProperty:function(){return"currentStyle"in n},insertsLineBreaksOnReturn:function(){return o},supportsPlaceholderAttributeOn:function(t){return"placeholder"in t},supportsEvent:function(t){return"on"+t in n||function(){return n.setAttribute("on"+t,"return;"),"function"==typeof n["on"+t]}()},supportsEventsInIframeCorrectly:function(){return!r},firesOnDropOnlyWhenOnDragOverIsCancelled:function(){return s||o},supportsDataTransfer:function(){try{return s&&(window.Clipboard||window.DataTransfer).prototype.getData}catch(t){return!1}},supportsHTML5Tags:function(t){var e=t.createElement("div"),n="<article>foo</article>";return e.innerHTML=n,e.innerHTML.toLowerCase()===n},supportsCommand:function(){var t={formatBlock:i,insertUnorderedList:i||r||s,insertOrderedList:i||r||s},e={insertHTML:o};return function(n,i){var o=t[i];if(!o){try{return n.queryCommandSupported(i)}catch(s){}try{return n.queryCommandEnabled(i)}catch(a){return!!e[i]}}return!1}}(),doesAutoLinkingInContentEditable:function(){return i},canDisableAutoLinking:function(){return this.supportsCommand(document,"AutoUrlDetect")},clearsContentEditableCorrectly:function(){return o||r||s},supportsGetAttributeCorrectly:function(){var t=document.createElement("td");return"1"!=t.getAttribute("rowspan")},canSelectImagesInContentEditable:function(){return o||i||r},clearsListsInContentEditableCorrectly:function(){return o||i||s},autoScrollsToCaret:function(){return!s},autoClosesUnclosedTags:function(){var t,e,i=n.cloneNode(!1);return i.innerHTML="<p><div></div>",e=i.innerHTML.toLowerCase(),t="<p></p><div></div>"===e||"<p><div></div></p>"===e,this.autoClosesUnclosedTags=function(){return t},t},supportsNativeGetElementsByClassName:function(){return-1!==String(document.getElementsByClassName).indexOf("[native code]")},supportsSelectionModify:function(){return"getSelection"in window&&"modify"in window.getSelection()},supportsClassList:function(){return"classList"in n},needsSpaceAfterLineBreak:function(){return r},supportsSpeechApiOn:function(t){var n=e.match(/Chrome/(d+)/)||[,0];return n[1]>=11&&("onwebkitspeechchange"in t||"speech"in t)},crashesWhenDefineProperty:function(t){return i&&("XMLHttpRequest"===t||"XDomainRequest"===t)},doesAsyncFocus:function(){return i},hasProblemsSettingCaretAfterImg:function(){return i},hasUndoInContextMenu:function(){return o||a||r}}}(),wysihtml5.lang.array=function(t){return{contains:function(e){if(t.indexOf)return-1!==t.indexOf(e);for(var n=0,i=t.length;i>n;n++)if(t[n]===e)return!0;return!1},without:function(e){e=wysihtml5.lang.array(e);for(var n=[],i=0,o=t.length;o>i;i++)e.contains(t[i])||n.push(t[i]);return n},get:function(){for(var e=0,n=t.length,i=[];n>e;e++)i.push(t[e]);return i}}},wysihtml5.lang.Dispatcher=Base.extend({observe:function(t,e){return this.events=this.events||{},this.events[t]=this.events[t]||[],this.events[t].push(e),this},on:function(){return this.observe.apply(this,wysihtml5.lang.array(arguments).get())},fire:function(t,e){this.events=this.events||{};for(var n=this.events[t]||[],i=0;i<n.length;i++)n[i].call(this,e);return this},stopObserving:function(t,e){this.events=this.events||{};var n,i,o=0;if(t){for(n=this.events[t]||[],i=[];o<n.length;o++)n[o]!==e&&e&&i.push(n[o]);this.events[t]=i}else this.events={};return this}}),wysihtml5.lang.object=function(t){return{merge:function(e){for(var n in e)t[n]=e[n];return this},get:function(){return t},clone:function(){var e,n={};for(e in t)n[e]=t[e];return n},isArray:function(){return"[object Array]"===Object.prototype.toString.call(t)}}},function(){var t=/^s+/,e=/s+$/;wysihtml5.lang.string=function(n){return n=String(n),{trim:function(){return n.replace(t,"").replace(e,"")},interpolate:function(t){for(var e in t)n=this.replace("#{"+e+"}").by(t[e]);return n},replace:function(t){return{by:function(e){return n.split(t).join(e)}}}}}}(),function(t){function e(t){return s(t)?t:(t===t.ownerDocument.documentElement&&(t=t.ownerDocument.body),a(t))}function n(t){return t.replace(l,function(t,e){var n=(e.match(c)||[])[1]||"",i=u[n];e=e.replace(c,""),e.split(i).length>e.split(n).length&&(e+=n,n="");var o=e,s=e;return e.length>h&&(s=s.substr(0,h)+"..."),"www."===o.substr(0,4)&&(o="http://"+o),'<a href="'+o+'">'+s+"</a>"+n})}function i(t){var e=t._wysihtml5_tempElement;return e||(e=t._wysihtml5_tempElement=t.createElement("div")),e}function o(t){var e=t.parentNode,o=i(e.ownerDocument);for(o.innerHTML="<span></span>"+n(t.data),o.removeChild(o.firstChild);o.firstChild;)e.insertBefore(o.firstChild,t);e.removeChild(t)}function s(t){for(var e;t.parentNode;){if(t=t.parentNode,e=t.nodeName,r.contains(e))return!0;if("body"===e)return!1}return!1}function a(e){if(!r.contains(e.nodeName)){if(e.nodeType===t.TEXT_NODE&&e.data.match(l))return o(e),void 0;for(var n=t.lang.array(e.childNodes).get(),i=n.length,s=0;i>s;s++)a(n[s]);return e}}var r=t.lang.array(["CODE","PRE","A","SCRIPT","HEAD","TITLE","STYLE"]),l=/((https?://|www.)[^s<]{3,})/gi,c=/([^w/-](,?))$/i,h=100,u={")":"(","]":"[","}":"{"};t.dom.autoLink=e,t.dom.autoLink.URL_REG_EXP=l}(wysihtml5),function(t){var e=t.browser.supportsClassList(),n=t.dom;n.addClass=function(t,i){return e?t.classList.add(i):(n.hasClass(t,i)||(t.className+=" "+i),void 0)},n.removeClass=function(t,n){return e?t.classList.remove(n):(t.className=t.className.replace(new RegExp("(^|\s+)"+n+"(\s+|$)")," "),void 0)},n.hasClass=function(t,n){if(e)return t.classList.contains(n);var i=t.className;return i.length>0&&(i==n||new RegExp("(^|\s)"+n+"(\s|$)").test(i))}}(wysihtml5),wysihtml5.dom.contains=function(){var t=document.documentElement;return t.contains?function(t,e){return e.nodeType!==wysihtml5.ELEMENT_NODE&&(e=e.parentNode),t!==e&&t.contains(e)}:t.compareDocumentPosition?function(t,e){return!!(16&t.compareDocumentPosition(e))}:void 0}(),wysihtml5.dom.convertToList=function(){function t(t,e){var n=t.createElement("li");return e.appendChild(n),n}function e(t,e){return t.createElement(e)}function n(n,i){if("UL"===n.nodeName||"OL"===n.nodeName||"MENU"===n.nodeName)return n;var o,s,a,r,l,c,h,u,d,f=n.ownerDocument,p=e(f,i),m=n.querySelectorAll("br"),g=m.length;for(d=0;g>d;d++)for(r=m[d];(l=r.parentNode)&&l!==n&&l.lastChild===r;){if("block"===wysihtml5.dom.getStyle("display").from(l)){l.removeChild(r);break}wysihtml5.dom.insert(r).after(r.parentNode)}for(o=wysihtml5.lang.array(n.childNodes).get(),s=o.length,d=0;s>d;d++)u=u||t(f,p),a=o[d],c="block"===wysihtml5.dom.getStyle("display").from(a),h="BR"===a.nodeName,c?(u=u.firstChild?t(f,p):u,u.appendChild(a),u=null):h?u=u.firstChild?null:u:u.appendChild(a);return n.parentNode.replaceChild(p,n),p}return n}(),wysihtml5.dom.copyAttributes=function(t){return{from:function(e){return{to:function(n){for(var i,o=0,s=t.length;s>o;o++)i=t[o],"undefined"!=typeof e[i]&&""!==e[i]&&(n[i]=e[i]);return{andTo:arguments.callee}}}}}},function(t){var e=["-webkit-box-sizing","-moz-box-sizing","-ms-box-sizing","box-sizing"],n=function(e){return i(e)?parseInt(t.getStyle("width").from(e),10)<e.offsetWidth:!1},i=function(n){for(var i=0,o=e.length;o>i;i++)if("border-box"===t.getStyle(e[i]).from(n))return e[i]};t.copyStyles=function(i){return{from:function(o){n(o)&&(i=wysihtml5.lang.array(i).without(e));for(var s,a="",r=i.length,l=0;r>l;l++)s=i[l],a+=s+":"+t.getStyle(s).from(o)+";";return{to:function(e){return t.setStyles(a).on(e),{andTo:arguments.callee}}}}}}}(wysihtml5.dom),function(t){t.dom.delegate=function(e,n,i,o){return t.dom.observe(e,i,function(i){for(var s=i.target,a=t.lang.array(e.querySelectorAll(n));s&&s!==e;){if(a.contains(s)){o.call(s,i);break}s=s.parentNode}})}}(wysihtml5),wysihtml5.dom.getAsDom=function(){var t=function(t,e){var n=e.createElement("div");n.style.display="none",e.body.appendChild(n);try{n.innerHTML=t}catch(i){}return e.body.removeChild(n),n},e=function(t){if(!t._wysihtml5_supportsHTML5Tags){for(var e=0,i=n.length;i>e;e++)t.createElement(n[e]);t._wysihtml5_supportsHTML5Tags=!0}},n=["abbr","article","aside","audio","bdi","canvas","command","datalist","details","figcaption","figure","footer","header","hgroup","keygen","mark","meter","nav","output","progress","rp","rt","ruby","svg","section","source","summary","time","track","video","wbr"];return function(n,i){i=i||document;var o;return"object"==typeof n&&n.nodeType?(o=i.createElement("div"),o.appendChild(n)):wysihtml5.browser.supportsHTML5Tags(i)?(o=i.createElement("div"),o.innerHTML=n):(e(i),o=t(n,i)),o}}(),wysihtml5.dom.getParentElement=function(){function t(t,e){return e&&e.length?"string"==typeof e?t===e:wysihtml5.lang.array(e).contains(t):!0}function e(t){return t.nodeType===wysihtml5.ELEMENT_NODE}function n(t,e,n){var i=(t.className||"").match(n)||[];return e?i[i.length-1]===e:!!i.length}function i(e,n,i){for(;i--&&e&&"BODY"!==e.nodeName;){if(t(e.nodeName,n))return e;e=e.parentNode}return null}function o(i,o,s,a,r){for(;r--&&i&&"BODY"!==i.nodeName;){if(e(i)&&t(i.nodeName,o)&&n(i,s,a))return i;i=i.parentNode}return null}return function(t,e,n){return n=n||50,e.className||e.classRegExp?o(t,e.nodeName,e.className,e.classRegExp,n):i(t,e.nodeName,n)}}(),wysihtml5.dom.getStyle=function(){function t(t){return t.replace(n,function(t){return t.charAt(1).toUpperCase()})}var e={"float":"styleFloat"in document.createElement("div").style?"styleFloat":"cssFloat"},n=/-[a-z]/g;return function(n){return{from:function(i){if(i.nodeType===wysihtml5.ELEMENT_NODE){var o=i.ownerDocument,s=e[n]||t(n),a=i.style,r=i.currentStyle,l=a[s];if(l)return l;if(r)try{return r[s]}catch(c){}var h,u,d=o.defaultView||o.parentWindow,f=("height"===n||"width"===n)&&"TEXTAREA"===i.nodeName;return d.getComputedStyle?(f&&(h=a.overflow,a.overflow="hidden"),u=d.getComputedStyle(i,null).getPropertyValue(n),f&&(a.overflow=h||""),u):void 0}}}}}(),wysihtml5.dom.hasElementWithTagName=function(){function t(t){return t._wysihtml5_identifier||(t._wysihtml5_identifier=n++)}var e={},n=1;return function(n,i){var o=t(n)+":"+i,s=e[o];return s||(s=e[o]=n.getElementsByTagName(i)),s.length>0}}(),function(t){function e(t){return t._wysihtml5_identifier||(t._wysihtml5_identifier=i++)}var n={},i=1;t.dom.hasElementWithClassName=function(i,o){if(!t.browser.supportsNativeGetElementsByClassName())return!!i.querySelector("."+o);var s=e(i)+":"+o,a=n[s];return a||(a=n[s]=i.getElementsByClassName(o)),a.length>0}}(wysihtml5),wysihtml5.dom.insert=function(t){return{after:function(e){e.parentNode.insertBefore(t,e.nextSibling)},before:function(e){e.parentNode.insertBefore(t,e)},into:function(e){e.appendChild(t)}}},wysihtml5.dom.insertCSS=function(t){return t=t.join("n"),{into:function(e){var n=e.head||e.getElementsByTagName("head")[0],i=e.createElement("style");i.type="text/css",i.styleSheet?i.styleSheet.cssText=t:i.appendChild(e.createTextNode(t)),n&&n.appendChild(i)}}},wysihtml5.dom.observe=function(t,e,n){e="string"==typeof e?[e]:e;for(var i,o,s=0,a=e.length;a>s;s++)o=e[s],t.addEventListener?t.addEventListener(o,n,!1):(i=function(e){"target"in e||(e.target=e.srcElement),e.preventDefault=e.preventDefault||function(){this.returnValue=!1},e.stopPropagation=e.stopPropagation||function(){this.cancelBubble=!0},n.call(t,e)},t.attachEvent("on"+o,i));return{stop:function(){for(var o,s=0,a=e.length;a>s;s++)o=e[s],t.removeEventListener?t.removeEventListener(o,n,!1):t.detachEvent("on"+o,i)}}},wysihtml5.dom.parse=function(){function t(t,n,i,o){wysihtml5.lang.object(u).merge(h).merge(n).get(),i=i||t.ownerDocument||document;var s,a,r,l=i.createDocumentFragment(),c="string"==typeof t;for(s=c?wysihtml5.dom.getAsDom(t,i):t;s.firstChild;)r=s.firstChild,s.removeChild(r),a=e(r,o),a&&l.appendChild(a);return s.innerHTML="",s.appendChild(l),c?wysihtml5.quirks.getCorrectInnerHTML(s):s}function e(t,n){var i,o=t.nodeType,s=t.childNodes,a=s.length,c=r[o],h=0;if(i=c&&c(t),!i)return null;for(h=0;a>h;h++)newChild=e(s[h],n),newChild&&i.appendChild(newChild);return n&&i.childNodes.length<=1&&i.nodeName.toLowerCase()===l&&!i.attributes.length?i.firstChild:i}function n(t){var e,n,o=u.tags,s=t.nodeName.toLowerCase(),a=t.scopeName;if(t._wysihtml5)return null;if(t._wysihtml5=1,"wysihtml5-temp"===t.className)return null;if(a&&"HTML"!=a&&(s=a+":"+s),"outerHTML"in t&&(wysihtml5.browser.autoClosesUnclosedTags()||"P"!==t.nodeName||"</p>"===t.outerHTML.slice(-4).toLowerCase()||(s="div")),s in o){if(e=o[s],!e||e.remove)return null;e="string"==typeof e?{rename_tag:e}:e}else{if(!t.firstChild)return null;e={rename_tag:l}}return n=t.ownerDocument.createElement(e.rename_tag||s),i(t,n,e),t=null,n}function i(t,e,n){var i,s,a,r,l,h,d,m={},g=n.set_class,v=n.add_class,y=n.set_attributes,b=n.check_attributes,w=u.classes,S=0,C=[],k=[],T=[],x=[];if(y&&(m=wysihtml5.lang.object(y).clone()),b)for(l in b)d=f[b[l]],d&&(h=d(o(t,l)),"string"==typeof h&&(m[l]=h));if(g&&C.push(g),v)for(l in v)d=p[v[l]],d&&(r=d(o(t,l)),"string"==typeof r&&C.push(r));for(w["_wysihtml5-temp-placeholder"]=1,x=t.getAttribute("class"),x&&(C=C.concat(x.split(c))),i=C.length;i>S;S++)a=C[S],w[a]&&k.push(a);for(s=k.length;s--;)a=k[s],wysihtml5.lang.array(T).contains(a)||T.unshift(a);T.length&&(m["class"]=T.join(" "));for(l in m)try{e.setAttribute(l,m[l])}catch(E){}m.src&&("undefined"!=typeof m.width&&e.setAttribute("width",m.width),"undefined"!=typeof m.height&&e.setAttribute("height",m.height))}function o(t,e){e=e.toLowerCase();var n=t.nodeName;if("IMG"==n&&"src"==e&&s(t)===!0)return t.src;if(d&&"outerHTML"in t){var i=t.outerHTML.toLowerCase(),o=-1!=i.indexOf(" "+e+"=");return o?t.getAttribute(e):null}return t.getAttribute(e)}function s(t){try{return t.complete&&!t.mozMatchesSelector(":-moz-broken")}catch(e){if(t.complete&&"complete"===t.readyState)return!0}}function a(t){return t.ownerDocument.createTextNode(t.data)}var r={1:n,3:a},l="span",c=/s+/,h={tags:{},classes:{}},u={},d=!wysihtml5.browser.supportsGetAttributeCorrectly(),f={url:function(){var t=/^https?:///i;return function(e){return e&&e.match(t)?e.replace(t,function(t){return t.toLowerCase()}):null}}(),alt:function(){var t=/[^ a-z0-9_-]/gi;return function(e){return e?e.replace(t,""):""}}(),numbers:function(){var t=/D/g;return function(e){return e=(e||"").replace(t,""),e||null}}()},p={align_img:function(){var t={left:"wysiwyg-float-left",right:"wysiwyg-float-right"};return function(e){return t[String(e).toLowerCase()]}}(),align_text:function(){var t={left:"wysiwyg-text-align-left",right:"wysiwyg-text-align-right",center:"wysiwyg-text-align-center",justify:"wysiwyg-text-align-justify"};return function(e){return t[String(e).toLowerCase()]}}(),clear_br:function(){var t={left:"wysiwyg-clear-left",right:"wysiwyg-clear-right",both:"wysiwyg-clear-both",all:"wysiwyg-clear-both"};return function(e){return t[String(e).toLowerCase()]}}(),size_font:function(){var t={1:"wysiwyg-font-size-xx-small",2:"wysiwyg-font-size-small",3:"wysiwyg-font-size-medium",4:"wysiwyg-font-size-large",5:"wysiwyg-font-size-x-large",6:"wysiwyg-font-size-xx-large",7:"wysiwyg-font-size-xx-large","-":"wysiwyg-font-size-smaller","+":"wysiwyg-font-size-larger"};return function(e){return t[String(e).charAt(0)]}}()};return t}(),wysihtml5.dom.removeEmptyTextNodes=function(t){for(var e,n=wysihtml5.lang.array(t.childNodes).get(),i=n.length,o=0;i>o;o++)e=n[o],e.nodeType===wysihtml5.TEXT_NODE&&""===e.data&&e.parentNode.removeChild(e)},wysihtml5.dom.renameElement=function(t,e){for(var n,i=t.ownerDocument.createElement(e);n=t.firstChild;)i.appendChild(n);return wysihtml5.dom.copyAttributes(["align","className"]).from(t).to(i),t.parentNode.replaceChild(i,t),i},wysihtml5.dom.replaceWithChildNodes=function(t){if(t.parentNode){if(!t.firstChild)return t.parentNode.removeChild(t),void 0;for(var e=t.ownerDocument.createDocumentFragment();t.firstChild;)e.appendChild(t.firstChild);t.parentNode.replaceChild(e,t),t=e=null}},function(t){function e(e){return"block"===t.getStyle("display").from(e)}function n(t){return"BR"===t.nodeName}function i(t){var e=t.ownerDocument.createElement("br");t.appendChild(e)}function o(t){if("MENU"===t.nodeName||"UL"===t.nodeName||"OL"===t.nodeName){var o,s,a,r,l,c=t.ownerDocument,h=c.createDocumentFragment(),u=t.previousElementSibling||t.previousSibling;for(u&&!e(u)&&i(h);l=t.firstChild;){for(s=l.lastChild;o=l.firstChild;)a=o===s,r=a&&!e(o)&&!n(o),h.appendChild(o),r&&i(h);l.parentNode.removeChild(l)}t.parentNode.replaceChild(h,t)}}t.resolveList=o}(wysihtml5.dom),function(t){var e=document,n=["parent","top","opener","frameElement","frames","localStorage","globalStorage","sessionStorage","indexedDB"],i=["open","close","openDialog","showModalDialog","alert","confirm","prompt","openDatabase","postMessage","XMLHttpRequest","XDomainRequest"],o=["referrer","write","open","close"];t.dom.Sandbox=Base.extend({constructor:function(e,n){this.callback=e||t.EMPTY_FUNCTION,this.config=t.lang.object({}).merge(n).get(),this.iframe=this._createIframe()},insertInto:function(t){"string"==typeof t&&(t=e.getElementById(t)),t.appendChild(this.iframe)},getIframe:function(){return this.iframe},getWindow:function(){this._readyError()},getDocument:function(){this._readyError()},destroy:function(){var t=this.getIframe();t.parentNode.removeChild(t)},_readyError:function(){throw new Error("wysihtml5.Sandbox: Sandbox iframe isn't loaded yet")},_createIframe:function(){var n=this,i=e.createElement("iframe");return i.className="wysihtml5-sandbox",t.dom.setAttributes({security:"restricted",allowtransparency:"true",frameborder:0,width:0,height:0,marginwidth:0,marginheight:0}).on(i),t.browser.throwsMixedContentWarningWhenIframeSrcIsEmpty()&&(i.src="javascript:'<html></html>'"),i.onload=function(){i.onreadystatechange=i.onload=null,n._onLoadIframe(i)},i.onreadystatechange=function(){/loaded|complete/.test(i.readyState)&&(i.onreadystatechange=i.onload=null,n._onLoadIframe(i))},i},_onLoadIframe:function(s){if(t.dom.contains(e.documentElement,s)){var a=this,r=s.contentWindow,l=s.contentWindow.document,c=e.characterSet||e.charset||"utf-8",h=this._getHtml({charset:c,stylesheets:this.config.stylesheets});if(l.open("text/html","replace"),l.write(h),l.close(),this.getWindow=function(){return s.contentWindow},this.getDocument=function(){return s.contentWindow.document},r.onerror=function(t,e,n){throw new Error("wysihtml5.Sandbox: "+t,e,n)},!t.browser.supportsSandboxedIframes()){var u,d;for(u=0,d=n.length;d>u;u++)this._unset(r,n[u]);for(u=0,d=i.length;d>u;u++)this._unset(r,i[u],t.EMPTY_FUNCTION);for(u=0,d=o.length;d>u;u++)this._unset(l,o[u]);this._unset(l,"cookie","",!0)}this.loaded=!0,setTimeout(function(){a.callback(a)},0)}},_getHtml:function(e){var n,i=e.stylesheets,o="",s=0;if(i="string"==typeof i?[i]:i)for(n=i.length;n>s;s++)o+='<link rel="stylesheet" href="'+i[s]+'">';return e.stylesheets=o,t.lang.string('<!DOCTYPE html><html><head><meta charset="#{charset}">#{stylesheets}</head><body></body></html>').interpolate(e)},_unset:function(e,n,i,o){try{e[n]=i}catch(s){}try{e.__defineGetter__(n,function(){return i})}catch(s){}if(o)try{e.__defineSetter__(n,function(){})}catch(s){}if(!t.browser.crashesWhenDefineProperty(n))try{var a={get:function(){return i}};o&&(a.set=function(){}),Object.defineProperty(e,n,a)}catch(s){}}})}(wysihtml5),function(){var t={className:"class"};wysihtml5.dom.setAttributes=function(e){return{on:function(n){for(var i in e)n.setAttribute(t[i]||i,e[i])}}}}(),wysihtml5.dom.setStyles=function(t){return{on:function(e){var n=e.style;if("string"==typeof t)return n.cssText+=";"+t,void 0;
for(var i in t)"float"===i?(n.cssFloat=t[i],n.styleFloat=t[i]):n[i]=t[i]}}},function(t){t.simulatePlaceholder=function(e,n,i){var o="placeholder",s=function(){n.hasPlaceholderSet()&&n.clear(),t.removeClass(n.element,o)},a=function(){n.isEmpty()&&(n.setValue(i),t.addClass(n.element,o))};e.observe("set_placeholder",a).observe("unset_placeholder",s).observe("focus:composer",s).observe("paste:composer",s).observe("blur:composer",a),a()}}(wysihtml5.dom),function(t){var e=document.documentElement;"textContent"in e?(t.setTextContent=function(t,e){t.textContent=e},t.getTextContent=function(t){return t.textContent}):"innerText"in e?(t.setTextContent=function(t,e){t.innerText=e},t.getTextContent=function(t){return t.innerText}):(t.setTextContent=function(t,e){t.nodeValue=e},t.getTextContent=function(t){return t.nodeValue})}(wysihtml5.dom),wysihtml5.quirks.cleanPastedHTML=function(){function t(t,n,i){n=n||e,i=i||t.ownerDocument||document;var o,s,a,r,l,c="string"==typeof t,h=0;o=c?wysihtml5.dom.getAsDom(t,i):t;for(l in n)for(a=o.querySelectorAll(l),s=n[l],r=a.length;r>h;h++)s(a[h]);return a=t=n=null,c?o.innerHTML:o}var e={"a u":wysihtml5.dom.replaceWithChildNodes};return t}(),function(t){var e=t.dom;t.quirks.ensureProperClearing=function(){var t=function(){var t=this;setTimeout(function(){var e=t.innerHTML.toLowerCase();("<p> </p>"==e||"<p> </p><p> </p>"==e)&&(t.innerHTML="")},0)};return function(n){e.observe(n.element,["cut","keydown"],t)}}(),t.quirks.ensureProperClearingOfLists=function(){var n=["OL","UL","MENU"],i=function(i,o){if(o.firstChild&&t.lang.array(n).contains(o.firstChild.nodeName)){var s=e.getParentElement(i,{nodeName:n});if(s){var a=s==o.firstChild;if(a){var r=s.childNodes.length<=1;if(r){var l=s.firstChild?""===s.firstChild.innerHTML:!0;l&&s.parentNode.removeChild(s)}}}}};return function(n){e.observe(n.element,"keydown",function(e){if(e.keyCode===t.BACKSPACE_KEY){var o=n.selection.getSelectedNode();i(o,n.element)}})}}()}(wysihtml5),function(t){var e="%7E";t.quirks.getCorrectInnerHTML=function(n){var i=n.innerHTML;if(-1===i.indexOf(e))return i;var o,s,a,r,l=n.querySelectorAll("[href*='~'], [src*='~']");for(r=0,a=l.length;a>r;r++)o=l[r].href||l[r].src,s=t.lang.string(o).replace("~").by(e),i=t.lang.string(i).replace(s).by(o);return i}}(wysihtml5),function(t){var e=t.dom,n=["LI","P","H1","H2","H3","H4","H5","H6"],i=["UL","OL","MENU"];t.quirks.insertLineBreakOnReturn=function(o){function s(n){var i=e.getParentElement(n,{nodeName:["P","DIV"]},2);if(i){var s=document.createTextNode(t.INVISIBLE_SPACE);e.insert(s).before(i),e.replaceWithChildNodes(i),o.selection.selectNode(s)}}function a(a){var r=a.keyCode;if(!(a.shiftKey||r!==t.ENTER_KEY&&r!==t.BACKSPACE_KEY)){var l=(a.target,o.selection.getSelectedNode()),c=e.getParentElement(l,{nodeName:n},4);return c?("LI"!==c.nodeName||r!==t.ENTER_KEY&&r!==t.BACKSPACE_KEY?c.nodeName.match(/H[1-6]/)&&r===t.ENTER_KEY&&setTimeout(function(){s(o.selection.getSelectedNode())},0):setTimeout(function(){var t,n=o.selection.getSelectedNode();n&&(t=e.getParentElement(n,{nodeName:i},2),t||s(n))},0),void 0):(r!==t.ENTER_KEY||t.browser.insertsLineBreaksOnReturn()||(o.commands.exec("insertLineBreak"),a.preventDefault()),void 0)}}e.observe(o.element.ownerDocument,"keydown",a)}}(wysihtml5),function(t){var e="wysihtml5-quirks-redraw";t.quirks.redraw=function(n){t.dom.addClass(n,e),t.dom.removeClass(n,e);try{var i=n.ownerDocument;i.execCommand("italic",!1,null),i.execCommand("italic",!1,null)}catch(o){}}}(wysihtml5),function(t){function e(t){var e=0;if(t.parentNode)do e+=t.offsetTop||0,t=t.offsetParent;while(t);return e}var n=t.dom;t.Selection=Base.extend({constructor:function(t){window.rangy.init(),this.editor=t,this.composer=t.composer,this.doc=this.composer.doc},getBookmark:function(){var t=this.getRange();return t&&t.cloneRange()},setBookmark:function(t){t&&this.setSelection(t)},setBefore:function(t){var e=rangy.createRange(this.doc);return e.setStartBefore(t),e.setEndBefore(t),this.setSelection(e)},setAfter:function(t){var e=rangy.createRange(this.doc);return e.setStartAfter(t),e.setEndAfter(t),this.setSelection(e)},selectNode:function(e){var i=rangy.createRange(this.doc),o=e.nodeType===t.ELEMENT_NODE,s="canHaveHTML"in e?e.canHaveHTML:"IMG"!==e.nodeName,a=o?e.innerHTML:e.data,r=""===a||a===t.INVISIBLE_SPACE,l=n.getStyle("display").from(e),c="block"===l||"list-item"===l;if(r&&o&&s)try{e.innerHTML=t.INVISIBLE_SPACE}catch(h){}s?i.selectNodeContents(e):i.selectNode(e),s&&r&&o?i.collapse(c):s&&r&&(i.setStartAfter(e),i.setEndAfter(e)),this.setSelection(i)},getSelectedNode:function(t){var e,n;return t&&this.doc.selection&&"Control"===this.doc.selection.type&&(n=this.doc.selection.createRange(),n&&n.length)?n.item(0):(e=this.getSelection(this.doc),e.focusNode===e.anchorNode?e.focusNode:(n=this.getRange(this.doc),n?n.commonAncestorContainer:this.doc.body))},executeAndRestore:function(e,n){var i,o=this.doc.body,s=n&&o.scrollTop,a=n&&o.scrollLeft,r="_wysihtml5-temp-placeholder",l='<span class="'+r+'">'+t.INVISIBLE_SPACE+"</span>",c=this.getRange(this.doc);if(!c)return e(o,o),void 0;var h=c.createContextualFragment(l);c.insertNode(h);try{e(c.startContainer,c.endContainer)}catch(u){setTimeout(function(){throw u},0)}caretPlaceholder=this.doc.querySelector("."+r),caretPlaceholder?(i=rangy.createRange(this.doc),i.selectNode(caretPlaceholder),i.deleteContents(),this.setSelection(i)):o.focus(),n&&(o.scrollTop=s,o.scrollLeft=a);try{caretPlaceholder.parentNode.removeChild(caretPlaceholder)}catch(d){}},executeAndRestoreSimple:function(t){var e,n,i,o,s,a=this.getRange(),r=this.doc.body;if(!a)return t(r,r),void 0;o=a.getNodes([3]),n=o[0]||a.startContainer,i=o[o.length-1]||a.endContainer,s={collapsed:a.collapsed,startContainer:n,startOffset:n===a.startContainer?a.startOffset:0,endContainer:i,endOffset:i===a.endContainer?a.endOffset:i.length};try{t(a.startContainer,a.endContainer)}catch(l){setTimeout(function(){throw l},0)}e=rangy.createRange(this.doc);try{e.setStart(s.startContainer,s.startOffset)}catch(c){}try{e.setEnd(s.endContainer,s.endOffset)}catch(h){}try{this.setSelection(e)}catch(u){}},insertHTML:function(t){var e=rangy.createRange(this.doc),n=e.createContextualFragment(t),i=n.lastChild;this.insertNode(n),i&&this.setAfter(i)},insertNode:function(t){var e=this.getRange();e&&e.insertNode(t)},surround:function(t){var e=this.getRange();if(e)try{e.surroundContents(t),this.selectNode(t)}catch(n){t.appendChild(e.extractContents()),e.insertNode(t)}},scrollIntoView:function(){var n,i=this.doc,o=i.documentElement.scrollHeight>i.documentElement.offsetHeight,s=i._wysihtml5ScrollIntoViewElement=i._wysihtml5ScrollIntoViewElement||function(){var e=i.createElement("span");return e.innerHTML=t.INVISIBLE_SPACE,e}();o&&(this.insertNode(s),n=e(s),s.parentNode.removeChild(s),n>i.body.scrollTop&&(i.body.scrollTop=n))},selectLine:function(){t.browser.supportsSelectionModify()?this._selectLine_W3C():this.doc.selection&&this._selectLine_MSIE()},_selectLine_W3C:function(){var t=this.doc.defaultView,e=t.getSelection();e.modify("extend","left","lineboundary"),e.modify("extend","right","lineboundary")},_selectLine_MSIE:function(){var t,e,n,i,o,s=this.doc.selection.createRange(),a=s.boundingTop,r=(s.boundingHeight,this.doc.body.scrollWidth);if(s.moveToPoint){for(0===a&&(n=this.doc.createElement("span"),this.insertNode(n),a=n.offsetTop,n.parentNode.removeChild(n)),a+=1,i=-10;r>i;i+=2)try{s.moveToPoint(i,a);break}catch(l){}for(t=a,e=this.doc.selection.createRange(),o=r;o>=0;o--)try{e.moveToPoint(o,t);break}catch(c){}s.setEndPoint("EndToEnd",e),s.select()}},getText:function(){var t=this.getSelection();return t?t.toString():""},getNodes:function(t,e){var n=this.getRange();return n?n.getNodes([t],e):[]},getRange:function(){var t=this.getSelection();return t&&t.rangeCount&&t.getRangeAt(0)},getSelection:function(){return rangy.getSelection(this.doc.defaultView||this.doc.parentWindow)},setSelection:function(t){var e=this.doc.defaultView||this.doc.parentWindow,n=rangy.getSelection(e);return n.setSingleRange(t)}})}(wysihtml5),function(t,e){function n(t,e,n){if(!t.className)return!1;var i=t.className.match(n)||[];return i[i.length-1]===e}function i(t,e,n){t.className?(o(t,n),t.className+=" "+e):t.className=e}function o(t,e){t.className&&(t.className=t.className.replace(e,""))}function s(t,e){return t.className.replace(f," ")==e.className.replace(f," ")}function a(t){for(var e=t.parentNode;t.firstChild;)e.insertBefore(t.firstChild,t);e.removeChild(t)}function r(t,e){if(t.attributes.length!=e.attributes.length)return!1;for(var n,i,o,s=0,a=t.attributes.length;a>s;++s)if(n=t.attributes[s],o=n.name,"class"!=o){if(i=e.attributes.getNamedItem(o),n.specified!=i.specified)return!1;if(n.specified&&n.nodeValue!==i.nodeValue)return!1}return!0}function l(t,n){return e.dom.isCharacterDataNode(t)?0==n?!!t.previousSibling:n==t.length?!!t.nextSibling:!0:n>0&&n<t.childNodes.length}function c(t,n,i){var o;if(e.dom.isCharacterDataNode(n)&&(0==i?(i=e.dom.getNodeIndex(n),n=n.parentNode):i==n.length?(i=e.dom.getNodeIndex(n)+1,n=n.parentNode):o=e.dom.splitDataNode(n,i)),!o){o=n.cloneNode(!1),o.id&&o.removeAttribute("id");for(var s;s=n.childNodes[i];)o.appendChild(s);e.dom.insertAfter(o,n)}return n==t?o:c(t,o.parentNode,e.dom.getNodeIndex(o))}function h(e){this.isElementMerge=e.nodeType==t.ELEMENT_NODE,this.firstTextNode=this.isElementMerge?e.lastChild:e,this.textNodes=[this.firstTextNode]}function u(t,e,n,i){this.tagNames=t||[d],this.cssClass=e||"",this.similarClassRegExp=n,this.normalize=i,this.applyToAnyTagName=!1}var d="span",f=/s+/g;h.prototype={doMerge:function(){for(var t,e,n,i=[],o=0,s=this.textNodes.length;s>o;++o)t=this.textNodes[o],e=t.parentNode,i[o]=t.data,o&&(e.removeChild(t),e.hasChildNodes()||e.parentNode.removeChild(e));return this.firstTextNode.data=n=i.join(""),n},getLength:function(){for(var t=this.textNodes.length,e=0;t--;)e+=this.textNodes[t].length;return e},toString:function(){for(var t=[],e=0,n=this.textNodes.length;n>e;++e)t[e]="'"+this.textNodes[e].data+"'";return"[Merge("+t.join(",")+")]"}},u.prototype={getAncestorWithClass:function(i){for(var o;i;){if(o=this.cssClass?n(i,this.cssClass,this.similarClassRegExp):!0,i.nodeType==t.ELEMENT_NODE&&e.dom.arrayContains(this.tagNames,i.tagName.toLowerCase())&&o)return i;i=i.parentNode}return!1},postApply:function(t,e){for(var n,i,o,s=t[0],a=t[t.length-1],r=[],l=s,c=a,u=0,d=a.length,f=0,p=t.length;p>f;++f)i=t[f],o=this.getAdjacentMergeableTextNode(i.parentNode,!1),o?(n||(n=new h(o),r.push(n)),n.textNodes.push(i),i===s&&(l=n.firstTextNode,u=l.length),i===a&&(c=n.firstTextNode,d=n.getLength())):n=null;var m=this.getAdjacentMergeableTextNode(a.parentNode,!0);if(m&&(n||(n=new h(a),r.push(n)),n.textNodes.push(m)),r.length){for(f=0,p=r.length;p>f;++f)r[f].doMerge();e.setStart(l,u),e.setEnd(c,d)}},getAdjacentMergeableTextNode:function(e,n){var i,o=e.nodeType==t.TEXT_NODE,s=o?e.parentNode:e,a=n?"nextSibling":"previousSibling";if(o){if(i=e[a],i&&i.nodeType==t.TEXT_NODE)return i}else if(i=s[a],i&&this.areElementsMergeable(e,i))return i[n?"firstChild":"lastChild"];return null},areElementsMergeable:function(t,n){return e.dom.arrayContains(this.tagNames,(t.tagName||"").toLowerCase())&&e.dom.arrayContains(this.tagNames,(n.tagName||"").toLowerCase())&&s(t,n)&&r(t,n)},createContainer:function(t){var e=t.createElement(this.tagNames[0]);return this.cssClass&&(e.className=this.cssClass),e},applyToTextNode:function(t){var n=t.parentNode;if(1==n.childNodes.length&&e.dom.arrayContains(this.tagNames,n.tagName.toLowerCase()))this.cssClass&&i(n,this.cssClass,this.similarClassRegExp);else{var o=this.createContainer(e.dom.getDocument(t));t.parentNode.insertBefore(o,t),o.appendChild(t)}},isRemovable:function(n){return e.dom.arrayContains(this.tagNames,n.tagName.toLowerCase())&&t.lang.string(n.className).trim()==this.cssClass},undoToTextNode:function(t,e,n){if(!e.containsNode(n)){var i=e.cloneRange();i.selectNode(n),i.isPointInRange(e.endContainer,e.endOffset)&&l(e.endContainer,e.endOffset)&&(c(n,e.endContainer,e.endOffset),e.setEndAfter(n)),i.isPointInRange(e.startContainer,e.startOffset)&&l(e.startContainer,e.startOffset)&&(n=c(n,e.startContainer,e.startOffset))}this.similarClassRegExp&&o(n,this.similarClassRegExp),this.isRemovable(n)&&a(n)},applyToRange:function(e){var n=e.getNodes([t.TEXT_NODE]);if(!n.length)try{var i=this.createContainer(e.endContainer.ownerDocument);return e.surroundContents(i),this.selectNode(e,i),void 0}catch(o){}if(e.splitBoundaries(),n=e.getNodes([t.TEXT_NODE]),n.length){for(var s,a=0,r=n.length;r>a;++a)s=n[a],this.getAncestorWithClass(s)||this.applyToTextNode(s);e.setStart(n[0],0),s=n[n.length-1],e.setEnd(s,s.length),this.normalize&&this.postApply(n,e)}},undoToRange:function(e){var n,i,o=e.getNodes([t.TEXT_NODE]);if(o.length)e.splitBoundaries(),o=e.getNodes([t.TEXT_NODE]);else{var s=e.endContainer.ownerDocument,a=s.createTextNode(t.INVISIBLE_SPACE);e.insertNode(a),e.selectNode(a),o=[a]}for(var r=0,l=o.length;l>r;++r)n=o[r],i=this.getAncestorWithClass(n),i&&this.undoToTextNode(n,e,i);1==l?this.selectNode(e,o[0]):(e.setStart(o[0],0),n=o[o.length-1],e.setEnd(n,n.length),this.normalize&&this.postApply(o,e))},selectNode:function(e,n){var i=n.nodeType===t.ELEMENT_NODE,o="canHaveHTML"in n?n.canHaveHTML:!0,s=i?n.innerHTML:n.data,a=""===s||s===t.INVISIBLE_SPACE;if(a&&i&&o)try{n.innerHTML=t.INVISIBLE_SPACE}catch(r){}e.selectNodeContents(n),a&&i?e.collapse(!1):a&&(e.setStartAfter(n),e.setEndAfter(n))},getTextSelectedByRange:function(t,e){var n=e.cloneRange();n.selectNodeContents(t);var i=n.intersection(e),o=i?i.toString():"";return n.detach(),o},isAppliedToRange:function(e){var n,i=[],o=e.getNodes([t.TEXT_NODE]);if(!o.length)return n=this.getAncestorWithClass(e.startContainer),n?[n]:!1;for(var s,a=0,r=o.length;r>a;++a){if(s=this.getTextSelectedByRange(o[a],e),n=this.getAncestorWithClass(o[a]),""!=s&&!n)return!1;i.push(n)}return i},toggleRange:function(t){this.isAppliedToRange(t)?this.undoToRange(t):this.applyToRange(t)}},t.selection.HTMLApplier=u}(wysihtml5,rangy),wysihtml5.Commands=Base.extend({constructor:function(t){this.editor=t,this.composer=t.composer,this.doc=this.composer.doc},support:function(t){return wysihtml5.browser.supportsCommand(this.doc,t)},exec:function(t,e){var n=wysihtml5.commands[t],i=wysihtml5.lang.array(arguments).get(),o=n&&n.exec,s=null;if(this.editor.fire("beforecommand:composer"),o)i.unshift(this.composer),s=o.apply(n,i);else try{s=this.doc.execCommand(t,!1,e)}catch(a){}return this.editor.fire("aftercommand:composer"),s},state:function(t){var e=wysihtml5.commands[t],n=wysihtml5.lang.array(arguments).get(),i=e&&e.state;if(i)return n.unshift(this.composer),i.apply(e,n);try{return this.doc.queryCommandState(t)}catch(o){return!1}},value:function(t){var e=wysihtml5.commands[t],n=e&&e.value;if(n)return n.call(e,this.composer,t);try{return this.doc.queryCommandValue(t)}catch(i){return null}}}),function(t){var e;t.commands.bold={exec:function(e,n){return t.commands.formatInline.exec(e,n,"b")},state:function(e,n){return t.commands.formatInline.state(e,n,"b")},value:function(){return e}}}(wysihtml5),function(t){function e(t,e){for(var n,i,o,a=e.length,r=0;a>r;r++)n=e[r],i=s.getParentElement(n,{nodeName:"code"}),o=s.getTextContent(n),o.match(s.autoLink.URL_REG_EXP)&&!i?i=s.renameElement(n,"code"):s.replaceWithChildNodes(n)}function n(e,n){var a,r,l,c,h,u,d,f,p,m=e.doc,g="_wysihtml5-temp-"+ +new Date,v=/non-matching-class/g,y=0;for(t.commands.formatInline.exec(e,i,o,g,v),r=m.querySelectorAll(o+"."+g),a=r.length;a>y;y++){l=r[y],l.removeAttribute("class");for(p in n)l.setAttribute(p,n[p])}u=l,1===a&&(d=s.getTextContent(l),c=!!l.querySelector("*"),h=""===d||d===t.INVISIBLE_SPACE,!c&&h&&(s.setTextContent(l,n.text||l.href),f=m.createTextNode(" "),e.selection.setAfter(l),e.selection.insertNode(f),u=f)),e.selection.setAfter(u)}var i,o="A",s=t.dom;t.commands.createLink={exec:function(t,i,o){var s=this.state(t,i);s?t.selection.executeAndRestore(function(){e(t,s)}):(o="object"==typeof o?o:{href:o},n(t,o))},state:function(e,n){return t.commands.formatInline.state(e,n,"A")},value:function(){return i}}}(wysihtml5),function(t){var e,n=/wysiwyg-font-size-[a-z-]+/g;t.commands.fontSize={exec:function(e,i,o){return t.commands.formatInline.exec(e,i,"span","wysiwyg-font-size-"+o,n)},state:function(e,i,o){return t.commands.formatInline.state(e,i,"span","wysiwyg-font-size-"+o,n)},value:function(){return e}}}(wysihtml5),function(t){var e,n=/wysiwyg-color-[a-z]+/g;t.commands.foreColor={exec:function(e,i,o){return t.commands.formatInline.exec(e,i,"span","wysiwyg-color-"+o,n)},state:function(e,i,o){return t.commands.formatInline.state(e,i,"span","wysiwyg-color-"+o,n)},value:function(){return e}}}(wysihtml5),function(t){function e(t,e,i){t.className?(n(t,i),t.className+=" "+e):t.className=e}function n(t,e){t.className=t.className.replace(e,"")}function i(e){return e.nodeType===t.TEXT_NODE&&!t.lang.string(e.data).trim()}function o(t){for(var e=t.previousSibling;e&&i(e);)e=e.previousSibling;return e}function s(t){for(var e=t.nextSibling;e&&i(e);)e=e.nextSibling;return e}function a(t){var e=t.ownerDocument,n=s(t),i=o(t);n&&!h(n)&&t.parentNode.insertBefore(e.createElement("br"),n),i&&!h(i)&&t.parentNode.insertBefore(e.createElement("br"),t)}function r(t){var e=s(t),n=o(t);e&&c(e)&&e.parentNode.removeChild(e),n&&c(n)&&n.parentNode.removeChild(n)}function l(t){var e=t.lastChild;e&&c(e)&&e.parentNode.removeChild(e)}function c(t){return"BR"===t.nodeName}function h(t){return c(t)?!0:"block"===m.getStyle("display").from(t)?!0:!1}function u(e,n,i,o){if(o)var s=m.observe(e,"DOMNodeInserted",function(e){var n,i=e.target;i.nodeType===t.ELEMENT_NODE&&(n=m.getStyle("display").from(i),"inline"!==n.substr(0,6)&&(i.className+=" "+o))});e.execCommand(n,!1,i),s&&s.stop()}function d(t,e){t.selection.selectLine(),t.selection.surround(e),r(e),l(e),t.selection.selectNode(e)}function f(e){return!!t.lang.string(e.className).trim()}var p,m=t.dom,g="DIV",v=["H1","H2","H3","H4","H5","H6","P","BLOCKQUOTE",g];t.commands.formatBlock={exec:function(i,o,s,r,l){var c,h=i.doc,p=this.state(i,o,s,r,l);return s="string"==typeof s?s.toUpperCase():s,p?(i.selection.executeAndRestoreSimple(function(){l&&n(p,l);var t=f(p);t||p.nodeName!==(s||g)?t&&m.renameElement(p,g):(a(p),m.replaceWithChildNodes(p))}),void 0):(null===s||t.lang.array(v).contains(s))&&(c=i.selection.getSelectedNode(),p=m.getParentElement(c,{nodeName:v}))?(i.selection.executeAndRestoreSimple(function(){s&&(p=m.renameElement(p,s)),r&&e(p,r,l)}),void 0):i.commands.support(o)?(u(h,o,s||g,r),void 0):(p=h.createElement(s||g),r&&(p.className=r),d(i,p),void 0)},state:function(t,e,n,i,o){n="string"==typeof n?n.toUpperCase():n;var s=t.selection.getSelectedNode();return m.getParentElement(s,{nodeName:n,className:i,classRegExp:o})},value:function(){return p}}}(wysihtml5),function(t){function e(t){var e=o[t];return e?[t.toLowerCase(),e.toLowerCase()]:[t.toLowerCase()]}function n(n,i,o){var a=n+":"+i;return s[a]||(s[a]=new t.selection.HTMLApplier(e(n),i,o,!0)),s[a]}var i,o={strong:"b",em:"i",b:"strong",i:"em"},s={};t.commands.formatInline={exec:function(t,e,i,o,s){var a=t.selection.getRange();return a?(n(i,o,s).toggleRange(a),t.selection.setSelection(a),void 0):!1},state:function(e,i,s,a,r){var l,c=e.doc,h=o[s]||s;return t.dom.hasElementWithTagName(c,s)||t.dom.hasElementWithTagName(c,h)?a&&!t.dom.hasElementWithClassName(c,a)?!1:(l=e.selection.getRange(),l?n(s,a,r).isAppliedToRange(l):!1):!1},value:function(){return i}}}(wysihtml5),function(t){var e;t.commands.insertHTML={exec:function(t,e,n){t.commands.support(e)?t.doc.execCommand(e,!1,n):t.selection.insertHTML(n)},state:function(){return!1},value:function(){return e}}}(wysihtml5),function(t){var e="IMG";t.commands.insertImage={exec:function(n,i,o){o="object"==typeof o?o:{src:o};var s,a,r,l=n.doc,c=this.state(n);if(c)return n.selection.setBefore(c),r=c.parentNode,r.removeChild(c),t.dom.removeEmptyTextNodes(r),"A"!==r.nodeName||r.firstChild||(n.selection.setAfter(r),r.parentNode.removeChild(r)),t.quirks.redraw(n.element),void 0;c=l.createElement(e);for(a in o)c[a]=o[a];n.selection.insertNode(c),t.browser.hasProblemsSettingCaretAfterImg()?(s=l.createTextNode(t.INVISIBLE_SPACE),n.selection.insertNode(s),n.selection.setAfter(s)):n.selection.setAfter(c)},state:function(n){var i,o,s,a=n.doc;return t.dom.hasElementWithTagName(a,e)?(i=n.selection.getSelectedNode())?i.nodeName===e?i:i.nodeType!==t.ELEMENT_NODE?!1:(o=n.selection.getText(),(o=t.lang.string(o).trim())?!1:(s=n.selection.getNodes(t.ELEMENT_NODE,function(t){return"IMG"===t.nodeName}),1!==s.length?!1:s[0])):!1:!1},value:function(t){var e=this.state(t);return e&&e.src}}}(wysihtml5),function(t){var e,n="<br>"+(t.browser.needsSpaceAfterLineBreak()?" ":"");t.commands.insertLineBreak={exec:function(e,i){e.commands.support(i)?(e.doc.execCommand(i,!1,null),t.browser.autoScrollsToCaret()||e.selection.scrollIntoView()):e.commands.exec("insertHTML",n)},state:function(){return!1},value:function(){return e}}}(wysihtml5),function(t){var e;t.commands.insertOrderedList={exec:function(e,n){var i,o,s=e.doc,a=e.selection.getSelectedNode(),r=t.dom.getParentElement(a,{nodeName:"OL"}),l=t.dom.getParentElement(a,{nodeName:"UL"}),c="_wysihtml5-temp-"+(new Date).getTime();return e.commands.support(n)?(s.execCommand(n,!1,null),void 0):(r?e.selection.executeAndRestoreSimple(function(){t.dom.resolveList(r)}):l?e.selection.executeAndRestoreSimple(function(){t.dom.renameElement(l,"ol")}):(e.commands.exec("formatBlock","div",c),o=s.querySelector("."+c),i=""===o.innerHTML||o.innerHTML===t.INVISIBLE_SPACE,e.selection.executeAndRestoreSimple(function(){r=t.dom.convertToList(o,"ol")}),i&&e.selection.selectNode(r.querySelector("li"))),void 0)},state:function(e){var n=e.selection.getSelectedNode();return t.dom.getParentElement(n,{nodeName:"OL"})},value:function(){return e}}}(wysihtml5),function(t){var e;t.commands.insertUnorderedList={exec:function(e,n){var i,o,s=e.doc,a=e.selection.getSelectedNode(),r=t.dom.getParentElement(a,{nodeName:"UL"}),l=t.dom.getParentElement(a,{nodeName:"OL"}),c="_wysihtml5-temp-"+(new Date).getTime();return e.commands.support(n)?(s.execCommand(n,!1,null),void 0):(r?e.selection.executeAndRestoreSimple(function(){t.dom.resolveList(r)}):l?e.selection.executeAndRestoreSimple(function(){t.dom.renameElement(l,"ul")}):(e.commands.exec("formatBlock","div",c),o=s.querySelector("."+c),i=""===o.innerHTML||o.innerHTML===t.INVISIBLE_SPACE,e.selection.executeAndRestoreSimple(function(){r=t.dom.convertToList(o,"ul")}),i&&e.selection.selectNode(r.querySelector("li"))),void 0)},state:function(e){var n=e.selection.getSelectedNode();return t.dom.getParentElement(n,{nodeName:"UL"})},value:function(){return e}}}(wysihtml5),function(t){var e;t.commands.italic={exec:function(e,n){return t.commands.formatInline.exec(e,n,"i")},state:function(e,n){return t.commands.formatInline.state(e,n,"i")},value:function(){return e}}}(wysihtml5),function(t){var e,n="wysiwyg-text-align-center",i=/wysiwyg-text-align-[a-z]+/g;t.commands.justifyCenter={exec:function(e){return t.commands.formatBlock.exec(e,"formatBlock",null,n,i)},state:function(e){return t.commands.formatBlock.state(e,"formatBlock",null,n,i)},value:function(){return e}}}(wysihtml5),function(t){var e,n="wysiwyg-text-align-left",i=/wysiwyg-text-align-[a-z]+/g;t.commands.justifyLeft={exec:function(e){return t.commands.formatBlock.exec(e,"formatBlock",null,n,i)},state:function(e){return t.commands.formatBlock.state(e,"formatBlock",null,n,i)},value:function(){return e}}}(wysihtml5),function(t){var e,n="wysiwyg-text-align-right",i=/wysiwyg-text-align-[a-z]+/g;t.commands.justifyRight={exec:function(e){return t.commands.formatBlock.exec(e,"formatBlock",null,n,i)},state:function(e){return t.commands.formatBlock.state(e,"formatBlock",null,n,i)},value:function(){return e}}}(wysihtml5),function(t){var e;t.commands.underline={exec:function(e,n){return t.commands.formatInline.exec(e,n,"u")},state:function(e,n){return t.commands.formatInline.state(e,n,"u")},value:function(){return e}}}(wysihtml5),function(t){function e(t){for(var e;e=t.querySelector("._wysihtml5-temp");)e.parentNode.removeChild(e)}var n=90,i=89,o=8,s=46,a=40,r='<span id="_wysihtml5-undo" class="_wysihtml5-temp">'+t.INVISIBLE_SPACE+"</span>",l='<span id="_wysihtml5-redo" class="_wysihtml5-temp">'+t.INVISIBLE_SPACE+"</span>",c=t.dom;t.UndoManager=t.lang.Dispatcher.extend({constructor:function(t){this.editor=t,this.composer=t.composer,this.element=this.composer.element,this.history=[this.composer.getValue()],this.position=1,this.composer.commands.support("insertHTML")&&this._observe()},_observe:function(){var a,h=this,u=this.composer.sandbox.getDocument();if(c.observe(this.element,"keydown",function(t){if(!t.altKey&&(t.ctrlKey||t.metaKey)){var e=t.keyCode,o=e===n&&!t.shiftKey,s=e===n&&t.shiftKey||e===i;o?(h.undo(),t.preventDefault()):s&&(h.redo(),t.preventDefault())}}),c.observe(this.element,"keydown",function(t){var e=t.keyCode;e!==a&&(a=e,(e===o||e===s)&&h.transact())}),t.browser.hasUndoInContextMenu()){var d,f,p=function(){e(u),clearInterval(d)};c.observe(this.element,"contextmenu",function(){p(),h.composer.selection.executeAndRestoreSimple(function(){h.element.lastChild&&h.composer.selection.setAfter(h.element.lastChild),u.execCommand("insertHTML",!1,r),u.execCommand("insertHTML",!1,l),u.execCommand("undo",!1,null)}),d=setInterval(function(){u.getElementById("_wysihtml5-redo")?(p(),h.redo()):u.getElementById("_wysihtml5-undo")||(p(),h.undo())},400),f||(f=!0,c.observe(document,"mousedown",p),c.observe(u,["mousedown","paste","cut","copy"],p))})}this.editor.observe("newword:composer",function(){h.transact()}).observe("beforecommand:composer",function(){h.transact()})},transact:function(){var t=this.history[this.position-1],e=this.composer.getValue();if(e!=t){var n=this.history.length=this.position;n>a&&(this.history.shift(),this.position--),this.position++,this.history.push(e)}},undo:function(){this.transact(),this.position<=1||(this.set(this.history[--this.position-1]),this.editor.fire("undo:composer"))},redo:function(){this.position>=this.history.length||(this.set(this.history[++this.position-1]),this.editor.fire("redo:composer"))},set:function(t){this.composer.setValue(t),this.editor.focus(!0)}})}(wysihtml5),wysihtml5.views.View=Base.extend({constructor:function(t,e,n){this.parent=t,this.element=e,this.config=n,this._observeViewChange()},_observeViewChange:function(){var t=this;this.parent.observe("beforeload",function(){t.parent.observe("change_view",function(e){e===t.name?(t.parent.currentView=t,t.show(),setTimeout(function(){t.focus()},0)):t.hide()})})},focus:function(){if(this.element.ownerDocument.querySelector(":focus")!==this.element)try{this.element.focus()}catch(t){}},hide:function(){this.element.style.display="none"},show:function(){this.element.style.display=""},disable:function(){this.element.setAttribute("disabled","disabled")},enable:function(){this.element.removeAttribute("disabled")}}),function(t){var e=t.dom,n=t.browser;t.views.Composer=t.views.View.extend({name:"composer",CARET_HACK:"<br>",constructor:function(t,e,n){this.base(t,e,n),this.textarea=this.parent.textarea,this._initSandbox()},clear:function(){this.element.innerHTML=n.displaysCaretInEmptyContentEditableCorrectly()?"":this.CARET_HACK},getValue:function(e){var n=this.isEmpty()?"":t.quirks.getCorrectInnerHTML(this.element);return e&&(n=this.parent.parse(n)),n=t.lang.string(n).replace(t.INVISIBLE_SPACE).by("")},setValue:function(t,e){e&&(t=this.parent.parse(t)),this.element.innerHTML=t},show:function(){this.iframe.style.display=this._displayStyle||"",this.disable(),this.enable()},hide:function(){this._displayStyle=e.getStyle("display").from(this.iframe),"none"===this._displayStyle&&(this._displayStyle=null),this.iframe.style.display="none"},disable:function(){this.element.removeAttribute("contentEditable"),this.base()},enable:function(){this.element.setAttribute("contentEditable","true"),this.base()},focus:function(e){t.browser.doesAsyncFocus()&&this.hasPlaceholderSet()&&this.clear(),this.base();var n=this.element.lastChild;e&&n&&("BR"===n.nodeName?this.selection.setBefore(this.element.lastChild):this.selection.setAfter(this.element.lastChild))},getTextContent:function(){return e.getTextContent(this.element)},hasPlaceholderSet:function(){return this.getTextContent()==this.textarea.element.getAttribute("placeholder")},isEmpty:function(){var t=this.element.innerHTML,e="blockquote, ul, ol, img, embed, object, table, iframe, svg, video, audio, button, input, select, textarea";return""===t||t===this.CARET_HACK||this.hasPlaceholderSet()||""===this.getTextContent()&&!this.element.querySelector(e)},_initSandbox:function(){var t=this;this.sandbox=new e.Sandbox(function(){t._create()},{stylesheets:this.config.stylesheets}),this.iframe=this.sandbox.getIframe();var n=document.createElement("input");n.type="hidden",n.name="_wysihtml5_mode",n.value=1;var i=this.textarea.element;e.insert(this.iframe).after(i),e.insert(n).after(i)},_create:function(){var i=this;this.doc=this.sandbox.getDocument(),this.element=this.doc.body,this.textarea=this.parent.textarea,this.element.innerHTML=this.textarea.getValue(!0),this.enable(),this.selection=new t.Selection(this.parent),this.commands=new t.Commands(this.parent),e.copyAttributes(["className","spellcheck","title","lang","dir","accessKey"]).from(this.textarea.element).to(this.element),e.addClass(this.element,this.config.composerClassName),this.config.style&&this.style(),this.observe();var o=this.config.name;o&&(e.addClass(this.element,o),e.addClass(this.iframe,o));var s="string"==typeof this.config.placeholder?this.config.placeholder:this.textarea.element.getAttribute("placeholder");s&&e.simulatePlaceholder(this.parent,this,s),this.commands.exec("styleWithCSS",!1),this._initAutoLinking(),this._initObjectResizing(),this._initUndoManager(),(this.textarea.element.hasAttribute("autofocus")||document.querySelector(":focus")==this.textarea.element)&&setTimeout(function(){i.focus()},100),t.quirks.insertLineBreakOnReturn(this),n.clearsContentEditableCorrectly()||t.quirks.ensureProperClearing(this),n.clearsListsInContentEditableCorrectly()||t.quirks.ensureProperClearingOfLists(this),this.initSync&&this.config.sync&&this.initSync(),this.textarea.hide(),this.parent.fire("beforeload").fire("load")},_initAutoLinking:function(){var i=this,o=n.canDisableAutoLinking(),s=n.doesAutoLinkingInContentEditable();if(o&&this.commands.exec("autoUrlDetect",!1),this.config.autoLink){(!s||s&&o)&&this.parent.observe("newword:composer",function(){i.selection.executeAndRestore(function(t,n){e.autoLink(n.parentNode)})});var a=this.sandbox.getDocument().getElementsByTagName("a"),r=e.autoLink.URL_REG_EXP,l=function(n){var i=t.lang.string(e.getTextContent(n)).trim();return"www."===i.substr(0,4)&&(i="http://"+i),i};e.observe(this.element,"keydown",function(t){if(a.length){var n,o=i.selection.getSelectedNode(t.target.ownerDocument),s=e.getParentElement(o,{nodeName:"A"},4);s&&(n=l(s),setTimeout(function(){var t=l(s);t!==n&&t.match(r)&&s.setAttribute("href",t)},0))}})}},_initObjectResizing:function(){var i=["width","height"],o=i.length,s=this.element;this.commands.exec("enableObjectResizing",this.config.allowObjectResizing),this.config.allowObjectResizing?n.supportsEvent("resizeend")&&e.observe(s,"resizeend",function(e){for(var n,a=e.target||e.srcElement,r=a.style,l=0;o>l;l++)n=i[l],r[n]&&(a.setAttribute(n,parseInt(r[n],10)),r[n]="");t.quirks.redraw(s)}):n.supportsEvent("resizestart")&&e.observe(s,"resizestart",function(t){t.preventDefault()})},_initUndoManager:function(){new t.UndoManager(this.parent)}})}(wysihtml5),function(t){var e=t.dom,n=document,i=window,o=n.createElement("div"),s=["background-color","color","cursor","font-family","font-size","font-style","font-variant","font-weight","line-height","letter-spacing","text-align","text-decoration","text-indent","text-rendering","word-break","word-wrap","word-spacing"],a=["background-color","border-collapse","border-bottom-color","border-bottom-style","border-bottom-width","border-left-color","border-left-style","border-left-width","border-right-color","border-right-style","border-right-width","border-top-color","border-top-style","border-top-width","clear","display","float","margin-bottom","margin-left","margin-right","margin-top","outline-color","outline-offset","outline-width","outline-style","padding-left","padding-right","padding-top","padding-bottom","position","top","left","right","bottom","z-index","vertical-align","text-align","-webkit-box-sizing","-moz-box-sizing","-ms-box-sizing","box-sizing","-webkit-box-shadow","-moz-box-shadow","-ms-box-shadow","box-shadow","-webkit-border-top-right-radius","-moz-border-radius-topright","border-top-right-radius","-webkit-border-bottom-right-radius","-moz-border-radius-bottomright","border-bottom-right-radius","-webkit-border-bottom-left-radius","-moz-border-radius-bottomleft","border-bottom-left-radius","-webkit-border-top-left-radius","-moz-border-radius-topleft","border-top-left-radius","width","height"],r=["width","height","top","left","right","bottom"],l=["html { height: 100%; }","body { min-height: 100%; padding: 0; margin: 0; margin-top: -1px; padding-top: 1px; }","._wysihtml5-temp { display: none; }",t.browser.isGecko?"body.placeholder { color: graytext !important; }":"body.placeholder { color: #a9a9a9 !important; }","body[disabled] { background-color: #eee !important; color: #999 !important; cursor: default !important; }","img:-moz-broken { -moz-force-broken-image-icon: 1; height: 24px; width: 24px; }"],c=function(t){if(t.setActive)try{t.setActive()
}catch(o){}else{var s=t.style,a=n.documentElement.scrollTop||n.body.scrollTop,r=n.documentElement.scrollLeft||n.body.scrollLeft,l={position:s.position,top:s.top,left:s.left,WebkitUserSelect:s.WebkitUserSelect};e.setStyles({position:"absolute",top:"-99999px",left:"-99999px",WebkitUserSelect:"none"}).on(t),t.focus(),e.setStyles(l).on(t),i.scrollTo&&i.scrollTo(r,a)}};t.views.Composer.prototype.style=function(){var h=this,u=n.querySelector(":focus"),d=this.textarea.element,f=d.hasAttribute("placeholder"),p=f&&d.getAttribute("placeholder");this.focusStylesHost=this.focusStylesHost||o.cloneNode(!1),this.blurStylesHost=this.blurStylesHost||o.cloneNode(!1),f&&d.removeAttribute("placeholder"),d===u&&d.blur(),e.copyStyles(a).from(d).to(this.iframe).andTo(this.blurStylesHost),e.copyStyles(s).from(d).to(this.element).andTo(this.blurStylesHost),e.insertCSS(l).into(this.element.ownerDocument),c(d),e.copyStyles(a).from(d).to(this.focusStylesHost),e.copyStyles(s).from(d).to(this.focusStylesHost);var m=t.lang.array(a).without(["display"]);if(u?u.focus():d.blur(),f&&d.setAttribute("placeholder",p),!t.browser.hasCurrentStyleProperty())var g=e.observe(i,"resize",function(){if(!e.contains(document.documentElement,h.iframe))return g.stop(),void 0;var t=e.getStyle("display").from(d),n=e.getStyle("display").from(h.iframe);d.style.display="",h.iframe.style.display="none",e.copyStyles(r).from(d).to(h.iframe).andTo(h.focusStylesHost).andTo(h.blurStylesHost),h.iframe.style.display=n,d.style.display=t});return this.parent.observe("focus:composer",function(){e.copyStyles(m).from(h.focusStylesHost).to(h.iframe),e.copyStyles(s).from(h.focusStylesHost).to(h.element)}),this.parent.observe("blur:composer",function(){e.copyStyles(m).from(h.blurStylesHost).to(h.iframe),e.copyStyles(s).from(h.blurStylesHost).to(h.element)}),this}}(wysihtml5),function(t){var e=t.dom,n=t.browser,i={66:"bold",73:"italic",85:"underline"};t.views.Composer.prototype.observe=function(){var o=this,s=this.getValue(),a=this.sandbox.getIframe(),r=this.element,l=n.supportsEventsInIframeCorrectly()?r:this.sandbox.getWindow(),c=n.supportsEvent("drop")?["drop","paste"]:["dragdrop","paste"];e.observe(a,"DOMNodeRemoved",function(){clearInterval(h),o.parent.fire("destroy:composer")});var h=setInterval(function(){e.contains(document.documentElement,a)||(clearInterval(h),o.parent.fire("destroy:composer"))},250);e.observe(l,"focus",function(){o.parent.fire("focus").fire("focus:composer"),setTimeout(function(){s=o.getValue()},0)}),e.observe(l,"blur",function(){s!==o.getValue()&&o.parent.fire("change").fire("change:composer"),o.parent.fire("blur").fire("blur:composer")}),t.browser.isIos()&&e.observe(r,"blur",function(){var t=r.ownerDocument.createElement("input"),e=document.documentElement.scrollTop||document.body.scrollTop,n=document.documentElement.scrollLeft||document.body.scrollLeft;try{o.selection.insertNode(t)}catch(i){r.appendChild(t)}t.focus(),t.parentNode.removeChild(t),window.scrollTo(n,e)}),e.observe(r,"dragenter",function(){o.parent.fire("unset_placeholder")}),n.firesOnDropOnlyWhenOnDragOverIsCancelled()&&e.observe(r,["dragover","dragenter"],function(t){t.preventDefault()}),e.observe(r,c,function(t){var e,i=t.dataTransfer;i&&n.supportsDataTransfer()&&(e=i.getData("text/html")||i.getData("text/plain")),e?(r.focus(),o.commands.exec("insertHTML",e),o.parent.fire("paste").fire("paste:composer"),t.stopPropagation(),t.preventDefault()):setTimeout(function(){o.parent.fire("paste").fire("paste:composer")},0)}),e.observe(r,"keyup",function(e){var n=e.keyCode;(n===t.SPACE_KEY||n===t.ENTER_KEY)&&o.parent.fire("newword:composer")}),this.parent.observe("paste:composer",function(){setTimeout(function(){o.parent.fire("newword:composer")},0)}),n.canSelectImagesInContentEditable()||e.observe(r,"mousedown",function(t){var e=t.target;"IMG"===e.nodeName&&(o.selection.selectNode(e),t.preventDefault())}),e.observe(r,"keydown",function(t){var e=t.keyCode,n=i[e];(t.ctrlKey||t.metaKey)&&!t.altKey&&n&&(o.commands.exec(n),t.preventDefault())}),e.observe(r,"keydown",function(e){var n,i=o.selection.getSelectedNode(!0),s=e.keyCode;!i||"IMG"!==i.nodeName||s!==t.BACKSPACE_KEY&&s!==t.DELETE_KEY||(n=i.parentNode,n.removeChild(i),"A"!==n.nodeName||n.firstChild||n.parentNode.removeChild(n),setTimeout(function(){t.quirks.redraw(r)},0),e.preventDefault())});var u={IMG:"Image: ",A:"Link: "};e.observe(r,"mouseover",function(t){var e,n=t.target,i=n.nodeName;if("A"===i||"IMG"===i){var o=n.hasAttribute("title");o||(e=u[i]+(n.getAttribute("href")||n.getAttribute("src")),n.setAttribute("title",e))}})}}(wysihtml5),function(t){var e=400;t.views.Synchronizer=Base.extend({constructor:function(t,e,n){this.editor=t,this.textarea=e,this.composer=n,this._observe()},fromComposerToTextarea:function(e){this.textarea.setValue(t.lang.string(this.composer.getValue()).trim(),e)},fromTextareaToComposer:function(t){var e=this.textarea.getValue();e?this.composer.setValue(e,t):(this.composer.clear(),this.editor.fire("set_placeholder"))},sync:function(t){"textarea"===this.editor.currentView.name?this.fromTextareaToComposer(t):this.fromComposerToTextarea(t)},_observe:function(){var n,i=this,o=this.textarea.element.form,s=function(){n=setInterval(function(){i.fromComposerToTextarea()},e)},a=function(){clearInterval(n),n=null};s(),o&&(t.dom.observe(o,"submit",function(){i.sync(!0)}),t.dom.observe(o,"reset",function(){setTimeout(function(){i.fromTextareaToComposer()},0)})),this.editor.observe("change_view",function(t){"composer"!==t||n?"textarea"===t&&(i.fromComposerToTextarea(!0),a()):(i.fromTextareaToComposer(!0),s())}),this.editor.observe("destroy:composer",a)}})}(wysihtml5),wysihtml5.views.Textarea=wysihtml5.views.View.extend({name:"textarea",constructor:function(t,e,n){this.base(t,e,n),this._observe()},clear:function(){this.element.value=""},getValue:function(t){var e=this.isEmpty()?"":this.element.value;return t&&(e=this.parent.parse(e)),e},setValue:function(t,e){e&&(t=this.parent.parse(t)),this.element.value=t},hasPlaceholderSet:function(){var t=wysihtml5.browser.supportsPlaceholderAttributeOn(this.element),e=this.element.getAttribute("placeholder")||null,n=this.element.value,i=!n;return t&&i||n===e},isEmpty:function(){return!wysihtml5.lang.string(this.element.value).trim()||this.hasPlaceholderSet()},_observe:function(){var t=this.element,e=this.parent,n={focusin:"focus",focusout:"blur"},i=wysihtml5.browser.supportsEvent("focusin")?["focusin","focusout","change"]:["focus","blur","change"];e.observe("beforeload",function(){wysihtml5.dom.observe(t,i,function(t){var i=n[t.type]||t.type;e.fire(i).fire(i+":textarea")}),wysihtml5.dom.observe(t,["paste","drop"],function(){setTimeout(function(){e.fire("paste").fire("paste:textarea")},0)})})}}),function(t){var e=t.dom,n="wysihtml5-command-dialog-opened",i="input, select, textarea",o="[data-wysihtml5-dialog-field]",s="data-wysihtml5-dialog-field";t.toolbar.Dialog=t.lang.Dispatcher.extend({constructor:function(t,e){this.link=t,this.container=e},_observe:function(){if(!this._observed){var o=this,s=function(t){var e=o._serialize();e==o.elementToChange?o.fire("edit",e):o.fire("save",e),o.hide(),t.preventDefault(),t.stopPropagation()};e.observe(o.link,"click",function(){e.hasClass(o.link,n)&&setTimeout(function(){o.hide()},0)}),e.observe(this.container,"keydown",function(e){var n=e.keyCode;n===t.ENTER_KEY&&s(e),n===t.ESCAPE_KEY&&o.hide()}),e.delegate(this.container,"[data-wysihtml5-dialog-action=save]","click",s),e.delegate(this.container,"[data-wysihtml5-dialog-action=cancel]","click",function(t){o.fire("cancel"),o.hide(),t.preventDefault(),t.stopPropagation()});for(var a=this.container.querySelectorAll(i),r=0,l=a.length,c=function(){clearInterval(o.interval)};l>r;r++)e.observe(a[r],"change",c);this._observed=!0}},_serialize:function(){for(var t=this.elementToChange||{},e=this.container.querySelectorAll(o),n=e.length,i=0;n>i;i++)t[e[i].getAttribute(s)]=e[i].value;return t},_interpolate:function(t){for(var e,n,i,a=document.querySelector(":focus"),r=this.container.querySelectorAll(o),l=r.length,c=0;l>c;c++)e=r[c],e!==a&&(t&&"hidden"===e.type||(n=e.getAttribute(s),i=this.elementToChange?this.elementToChange[n]||"":e.defaultValue,e.value=i))},show:function(t){var o=this,s=this.container.querySelector(i);if(this.elementToChange=t,this._observe(),this._interpolate(),t&&(this.interval=setInterval(function(){o._interpolate(!0)},500)),e.addClass(this.link,n),this.container.style.display="",this.fire("show"),s&&!t)try{s.focus()}catch(a){}},hide:function(){clearInterval(this.interval),this.elementToChange=null,e.removeClass(this.link,n),this.container.style.display="none",this.fire("hide")}})}(wysihtml5),function(t){var e=t.dom,n={position:"relative"},i={left:0,margin:0,opacity:0,overflow:"hidden",padding:0,position:"absolute",top:0,zIndex:1},o={cursor:"inherit",fontSize:"50px",height:"50px",marginTop:"-25px",outline:0,padding:0,position:"absolute",right:"-4px",top:"50%"},s={"x-webkit-speech":"",speech:""};t.toolbar.Speech=function(a,r){var l=document.createElement("input");if(!t.browser.supportsSpeechApiOn(l))return r.style.display="none",void 0;var c=document.createElement("div");t.lang.object(i).merge({width:r.offsetWidth+"px",height:r.offsetHeight+"px"}),e.insert(l).into(c),e.insert(c).into(r),e.setStyles(o).on(l),e.setAttributes(s).on(l),e.setStyles(i).on(c),e.setStyles(n).on(r);var h="onwebkitspeechchange"in l?"webkitspeechchange":"speechchange";e.observe(l,h,function(){a.execCommand("insertText",l.value),l.value=""}),e.observe(l,"click",function(t){e.hasClass(r,"wysihtml5-command-disabled")&&t.preventDefault(),t.stopPropagation()})}}(wysihtml5),function(t){var e="wysihtml5-command-disabled",n="wysihtml5-commands-disabled",i="wysihtml5-command-active",o="wysihtml5-action-active",s=t.dom;t.toolbar.Toolbar=Base.extend({constructor:function(e,n){this.editor=e,this.container="string"==typeof n?document.getElementById(n):n,this.composer=e.composer,this._getLinks("command"),this._getLinks("action"),this._observe(),this.show();for(var i=this.container.querySelectorAll("[data-wysihtml5-command=insertSpeech]"),o=i.length,s=0;o>s;s++)new t.toolbar.Speech(this,i[s])},_getLinks:function(e){for(var n,i,o,s,a,r=this[e+"Links"]=t.lang.array(this.container.querySelectorAll("[data-wysihtml5-"+e+"]")).get(),l=r.length,c=0,h=this[e+"Mapping"]={};l>c;c++)n=r[c],o=n.getAttribute("data-wysihtml5-"+e),s=n.getAttribute("data-wysihtml5-"+e+"-value"),i=this.container.querySelector("[data-wysihtml5-"+e+"-group='"+o+"']"),a=this._getDialog(n,o),h[o+":"+s]={link:n,group:i,name:o,value:s,dialog:a,state:!1}},_getDialog:function(e,n){var i,o,s=this,a=this.container.querySelector("[data-wysihtml5-dialog='"+n+"']");return a&&(i=new t.toolbar.Dialog(e,a),i.observe("show",function(){o=s.composer.selection.getBookmark(),s.editor.fire("show:dialog",{command:n,dialogContainer:a,commandLink:e})}),i.observe("save",function(t){o&&s.composer.selection.setBookmark(o),s._execCommand(n,t),s.editor.fire("save:dialog",{command:n,dialogContainer:a,commandLink:e})}),i.observe("cancel",function(){s.editor.focus(!1),s.editor.fire("cancel:dialog",{command:n,dialogContainer:a,commandLink:e})})),i},execCommand:function(t,e){if(!this.commandsDisabled){var n=this.commandMapping[t+":"+e];n&&n.dialog&&!n.state?n.dialog.show():this._execCommand(t,e)}},_execCommand:function(t,e){this.editor.focus(!1),this.composer.commands.exec(t,e),this._updateLinkStates()},execAction:function(t){var e=this.editor;switch(t){case"change_view":e.currentView===e.textarea?e.fire("change_view","composer"):e.fire("change_view","textarea")}},_observe:function(){for(var t=this,e=this.editor,i=this.container,o=this.commandLinks.concat(this.actionLinks),a=o.length,r=0;a>r;r++)s.setAttributes({href:"javascript:;",unselectable:"on"}).on(o[r]);s.delegate(i,"[data-wysihtml5-command]","mousedown",function(t){t.preventDefault()}),s.delegate(i,"[data-wysihtml5-command]","click",function(e){var n=this,i=n.getAttribute("data-wysihtml5-command"),o=n.getAttribute("data-wysihtml5-command-value");t.execCommand(i,o),e.preventDefault()}),s.delegate(i,"[data-wysihtml5-action]","click",function(e){var n=this.getAttribute("data-wysihtml5-action");t.execAction(n),e.preventDefault()}),e.observe("focus:composer",function(){t.bookmark=null,clearInterval(t.interval),t.interval=setInterval(function(){t._updateLinkStates()},500)}),e.observe("blur:composer",function(){clearInterval(t.interval)}),e.observe("destroy:composer",function(){clearInterval(t.interval)}),e.observe("change_view",function(e){setTimeout(function(){t.commandsDisabled="composer"!==e,t._updateLinkStates(),t.commandsDisabled?s.addClass(i,n):s.removeClass(i,n)},0)})},_updateLinkStates:function(){var n,a,r,l,c=(this.composer.element,this.commandMapping),h=this.actionMapping;for(n in c)l=c[n],this.commandsDisabled?(a=!1,s.removeClass(l.link,i),l.group&&s.removeClass(l.group,i),l.dialog&&l.dialog.hide()):(a=this.composer.commands.state(l.name,l.value),t.lang.object(a).isArray()&&(a=1===a.length?a[0]:!0),s.removeClass(l.link,e),l.group&&s.removeClass(l.group,e)),l.state!==a&&(l.state=a,a?(s.addClass(l.link,i),l.group&&s.addClass(l.group,i),l.dialog&&("object"==typeof a?l.dialog.show(a):l.dialog.hide())):(s.removeClass(l.link,i),l.group&&s.removeClass(l.group,i),l.dialog&&l.dialog.hide()));for(n in h)r=h[n],"change_view"===r.name&&(r.state=this.editor.currentView===this.editor.textarea,r.state?s.addClass(r.link,o):s.removeClass(r.link,o))},show:function(){this.container.style.display=""},hide:function(){this.container.style.display="none"}})}(wysihtml5),function(t){var e,n={name:e,style:!0,toolbar:e,autoLink:!0,parserRules:{tags:{br:{},span:{},div:{},p:{}},classes:{}},parser:t.dom.parse,composerClassName:"wysihtml5-editor",bodyClassName:"wysihtml5-supported",stylesheets:[],placeholderText:e,allowObjectResizing:!0,supportTouchDevices:!0};t.Editor=t.lang.Dispatcher.extend({constructor:function(e,i){if(this.textareaElement="string"==typeof e?document.getElementById(e):e,this.config=t.lang.object({}).merge(n).merge(i).get(),this.textarea=new t.views.Textarea(this,this.textareaElement,this.config),this.currentView=this.textarea,this._isCompatible=t.browser.supported(),!this._isCompatible||!this.config.supportTouchDevices&&t.browser.isTouchDevice()){var o=this;return setTimeout(function(){o.fire("beforeload").fire("load")},0),void 0}t.dom.addClass(document.body,this.config.bodyClassName),this.composer=new t.views.Composer(this,this.textareaElement,this.config),this.currentView=this.composer,"function"==typeof this.config.parser&&this._initParser(),this.observe("beforeload",function(){this.synchronizer=new t.views.Synchronizer(this,this.textarea,this.composer),this.config.toolbar&&(this.toolbar=new t.toolbar.Toolbar(this,this.config.toolbar))});try{console.log("Heya! This page is using wysihtml5 for rich text editing. Check out https://github.com/xing/wysihtml5")}catch(s){}},isCompatible:function(){return this._isCompatible},clear:function(){return this.currentView.clear(),this},getValue:function(t){return this.currentView.getValue(t)},setValue:function(t,e){return t?(this.currentView.setValue(t,e),this):this.clear()},focus:function(t){return this.currentView.focus(t),this},disable:function(){return this.currentView.disable(),this},enable:function(){return this.currentView.enable(),this},isEmpty:function(){return this.currentView.isEmpty()},hasPlaceholderSet:function(){return this.currentView.hasPlaceholderSet()},parse:function(e){var n=this.config.parser(e,this.config.parserRules,this.composer.sandbox.getDocument(),!0);return"object"==typeof e&&t.quirks.redraw(e),n},_initParser:function(){this.observe("paste:composer",function(){var e=!0,n=this;n.composer.selection.executeAndRestore(function(){t.quirks.cleanPastedHTML(n.composer.element),n.parse(n.composer.element)},e)}),this.observe("paste:textarea",function(){var t,e=this.textarea.getValue();t=this.parse(e),this.textarea.setValue(t)})}})}(wysihtml5);
?>