?images/pagebreak-2x.png000064400000001503147331473530011000 0ustar00PNG  IHDR(<!PLTEĻ*|tRNSYss:*IDATx1H+!a K]ڣA9"c NYU n_ 9kYm;L^+Iꯩ pduǗ6uIj7Ӧd?;&lWuH휴,w=lSxYn m` !ٜVd]7a>a;]Znö0e].9^$˰֮O#Ϗd6𑪔RgsXISU}Ni@jz6*2IPpj: ۖ09مUJ*^-{ڞ4].l[R{ޞta=UO5N_788 [>:>a5r}!n[OI_kkǩ-ކRm⫰NIrV}m-ql_lWu9ɺlU{#ؾgKOIR mj7lSs{c\Ǿydx)[I-o:|X8gކj6?6=lzoݞ+_0D9 HIENDB`images/dashicon-edit.png000064400000000560147331473530011245 0ustar00PNG  IHDRE/PLTEwwwwwzwww~wwwwwww~wwwww~zwwͪwѽwɲѢwݲٮs:IDAT(0EӚR4O8Wr}aZ#f %olm"D&'L[#TF0ES>-eJ>g Yd G42'7[QϷ7>Vbm%VW/|}?IENDB`images/playlist-video.png000064400000000442147331473530011476 0ustar00PNG  IHDR(( H_EPLTE#WtRNS "#HJLMNQAvIDAT8ӹ >PO P©_e !9vo@̋c=4[mi gj"!NQed =ˑiϕiZO26sQA9CdIENDB`images/pagebreak.png000064400000002164147331473530010455 0ustar00PNG  IHDRlv=zPLTELiqҹ̾ʾݻڶȸĿ¾ϸͻȹҺϺĸþþƺ忿̺¾ü廻ةtSytRNSv?|{"#X"?-.w3wSH~9;~s07WϢkJK7D͍.͈E 4nq(dIENDB`images/gallery-2x.png000064400000000677147331473530010531 0ustar00PNG  IHDRPP|?0PLTEtRNS"3DfwW/IDATHױM@'D(, l@6`p# xPt蒟{]l_ڟduʎlWdH21eIU;N263X%!"XkPB!sh`H|S Zx+u 1!OD& ;M}9 \bouݽ3쐅k7ÿ /|,)@~xi j5xۿ BLkjIENDB`images/more.png000064400000000636147331473530007500 0ustar00PNG  IHDRlv= (NOIENDB`images/more-2x.png000064400000001133147331473530010020 0ustar00PNG  IHDR(<$PLTELiqл&TtRNSYLpIDATx1j"a |rnr#z=3K:URagV$/էG5?'ʫvkOZ5ն-Cld_}Ik--5b{|Olou[OZ ID`lUԏ+I·) C9\^V)֓$ۚc{[X%mLz| h7|[N3t$m|=$=9voPm,Աݼ']I .[[cJ*VU bkb+Nl/1g{\)e۶[Y1kϧ9ŶmIl`n R:|ȧ:M-hvmdg` ,϶gYl`9iZOAlo5yIENDB`images/embedded.png000064400000017761147331473530010276 0ustar00PNG  IHDR|\l!PLTELiq ***  y~}H1&rl|-"臓XgtG8/ iwds}lnk_my۳t]cmRUK:PUӟ`NDt.68N:4P_!aNBL^lC4.p~js9MTnb]q*>?i{`MFݑA3/&6Dvae\M?5;.'%).e}TsH8/axXhn^xhYP, J_aOA&)M^7(% ror|&3^eaY^L?r[ '!,1$!M=4UD:@2,?0(D5.H926("<-&eREXG>7*'bOB]J> gVI]LBS@6OA9lZMwdT7#H8-k[ʞƊt`t^L߬꺽ωoz& ӷݝn.D-ؓ|hwyyureu}QTVՔdm}~HRovBQ|FKQgz;CAũn7EgW_\aC Τ߶(>tɾOiztRNS# l<P4+}bGv׽Y\ױؾջًٲu˽lك۠<'L{gӑْ]Eؒ6 j̥Lrƫv? IDAThޭy\egSTU[JHH'%aU.h0C\Q?30"8~TƋ" ʮ"!1iI{׾SuQ;S9ٟyK5 @xMS.卥b곾( p~ T]0 lWu]Ubc TϝWq'-2m0O86=1s?hiYn?^ \v _T&v:DBKJX xjY&@Rd%3Cdix@?_]osd#$3tj(cU$HBC DXggHe>@,G@GržCۚ$z\fy:gj2PQ×5')|ͱ+ iֹ{t Vp_vigOud,#H=d/IdPJFzIY#pU~N+6^P?73!qWqaP6.Pˢ:ҙ0g-_<+mfw袕6lQlB=9ZsWM΁2$$_t3;BR Ƿ[=z{ !骑$Z_xa%L'G;C0 16<=ofK-~ϸK/?\tB+fP7 Ԍ!Mp'lƽJY41s'ѡ<&׺.W<=DxbuGv|Pʕs"(-]):)!ӯm+:#ڳ0=xMX'խ":B2[9e" p䍰xY.H] wn\wkJ]8Q !c% g+u:6W~6&D}'+&# o&$:WݧoԖӭ{R7M<~Ym{2ԂFj``ಧpGцzpȦ*d߯v|`k*:ʼLpd'+tikr;BZ+T{;hV@u<{zGV?Vf5rcy]˷/ e3i4 h)5!5Wٱg{P흡Zs5h qڊbq7En˸om\3]ֈAkeNi ם uQxWCJvA=GX|A6=3YFNuzol~]׎%&~sNn- C* x4D\22wxx;ץ,;\:G t)Fr37bq,drv\Ӓs'}Cprt񲾫qiQp{"Kێ_K߹n-xpXN ;e`7 7 k<\:9@3|:6*6)\Tִ<,?̲%A"+Ҫ{;}b.ms?aۙv2MF*gn DhYhKWFy)5$ԇGm޵h귟W24t^? >ع(Hyhbg~2N)u>;CJkꚙW +v1XpƼEQ-lh^TG#MwRo=ˬMr^iz8d+ 6z[i2篍^7,NtpdNAd8D [Ο,}=c<:f4~,@(l>̉XlNvW=նP?^m 輪tJ|"i(>=*%c {Պ3h}gI-1؇ѣm s.XN%cI)MR~64E{|c JDOtrqלK9'\_]MtzE!G#篑~<3ڕ׌ᵒ6ty@S;=q"7z'T' mBR\!zyޗQhǥ Hf7?ݝeM$I mJEߒ [04Utn.3P<&gbr68RPKCnLx6 ri7Mj%J$P=R5/Oeea?FP]k7W0趰q߼@mf@u>|Fdi߅;ݻri:*nm[;< 9ǽqtza[U}mO,ZcI{߼ECk"Z%}}f[7߳};mfv?Lr0CjQ(@%zk=Cm+'Ox"p_ǽM}>W#reXoZM-7zxɬ}hNsr;]ߖvV)+r>h_踟K17 vɡ=78_%S7Yun_A$n{UYRMdgNeK#ވrK'lwVdre;Mîv+.r)-3˙F.Rw%R{?ʪ;{t*Sp\;W6޷=n4]JasCLZ2z˵ywhvp޼˜ɼ`W$-3k,#mRG{CqE3A}/`!2mn-?-(uBLF EK-~mK޺hw?ăpB%@@N>k++ U"_99r<;ڧgPu?1]($.|)Uk9 9{i|.Yxn=<~}>4;Xt툷hr @Ŧ&ϺD.^xGZzj Z^Z1_kCY}ZKtxp,՛t%OI,5dR%Q,7lIf(wn:K {~~}ǦwWv_.: BYKAOR-NR:Oa"^CA*Ʃ T%ȍcȀD/guc*hJJYx jM@E 5ԉ5D1Ahi *mVsq '{2*lp"c TpAתH$4p i9`>@ح5NBF K4Sx+TgJU (; tm-.21ShE!$*ԉRCLGu4#$kaփl4LCU)1 R pKArISɒ1N'lA*'/N]kbv  BM-J£.H`ɀa3ghp"R=`uUN50kV Yc?*%F^ë7(X{3S(֩<%P _C9ufX4! bGJ>f, d'LkF&e ANM>T'dz{ D{f5H͈30n4zs@c g} FI$1\t\dtbza_{B`5r_=*omgQcQkFwC 2[X:mI"٣*:ʧŝEPfP?O'{(pOiT#Qv ѝx8|WމONP\,75lW\I&לOqlXUe2+k0ͧn&~"7za!IENDB`images/audio.png000064400000000634147331473530007635 0ustar00PNG  IHDR22;TmtRNSv8UIDATHտK@ qVdK nU*: 8h(Ѐ%.EC 4w={o~ym-?<8nPyx^t6 zۣf 颫SŨ ݶIQ I;_2#y7I~&wTdT$)H`+;[ @HG' >g6 ň1FcELn(+(JH]jB-5)ˇ2yYXxy>D;Xϰo|Rȍ#AX_s9ajLח¬ޑϓ%0b3'3%ϛwX1G>IENDB`images/video.png000064400000000553147331473530007642 0ustar00PNG  IHDR22;TmtRNSv8$IDATHֻ@`n "HDI/[ ۊ<@VxlvA쉉397od[f1*bE fj ۲LG]U)ٲIt 8< $0Jl=@{8BشptHv@TX\#Զ.j[6!ez[1*aLdh uNMg"Ehg"")qHGΊX&">ؕڱS?X% &)Vy*hbU[?g>pyV%fgNo.IENDB`images/playlist-audio.png000064400000000670147331473530011474 0ustar00PNG  IHDR((mIDATxb?`dddBqT2:pԁC%:p;p4:puh9HN}@N b}#`X[1J7āa$E`@|M4r`%Ą#( Adr ėx;.,tΠ8@lĞ@QḮv ȠYYaA@G84%@l -6U}{ILo&!a,K)IH=@Lzzg*82`c?,b{EL$Ձ;đINaQT(mn# EChW1my@,5Ш@h=߀=/b)J$0<:M-RIENDB`images/gallery.png000064400000000573147331473530010175 0ustar00PNG  IHDR(( H_WPLTE~tRNS DMZwVQIDAT8O0ᑋU)-a,dBMi2*6z@ 3m~˨nKf숎'{pxhM)~EPT6ՔTeXw72|T#.\j K'eGjŹR!_ wZ ?Q_'$IENDB`wp-content.css000064400000020660147331473530007372 0ustar00/* Additional default styles for the editor */ html { cursor: text; } html.ios { width: 100px; min-width: 100%; } body { font-family: Georgia, "Times New Roman", "Bitstream Charter", Times, serif; font-size: 16px; line-height: 1.5; color: #333; margin: 9px 10px; max-width: 100%; -webkit-font-smoothing: antialiased !important; overflow-wrap: break-word; word-wrap: break-word; /* Old syntax */ } body.rtl { font-family: Tahoma, "Times New Roman", "Bitstream Charter", Times, serif; } body.locale-he-il, body.locale-vi { font-family: Arial, "Times New Roman", "Bitstream Charter", Times, serif; } body.wp-autoresize { overflow: visible !important; /* The padding ensures margins of the children are contained in the body. */ padding-top: 1px !important; padding-bottom: 1px !important; padding-left: 0 !important; padding-right: 0 !important; } /* When font-weight is different than the default browser style, Chrome and Safari replace and with spans with inline styles on pasting?! */ body.webkit strong, body.webkit b { font-weight: bold !important; } pre { font-family: Consolas, Monaco, monospace; } td, th { font-family: inherit; font-size: inherit; } /* For emoji replacement images */ img.emoji { display: inline !important; border: none !important; height: 1em !important; width: 1em !important; margin: 0 .07em !important; vertical-align: -0.1em !important; background: none !important; padding: 0 !important; -webkit-box-shadow: none !important; box-shadow: none !important; } .mceIEcenter { text-align: center; } img { height: auto; max-width: 100%; } .wp-caption { margin: 0; /* browser reset */ max-width: 100%; } /* iOS does not obey max-width if width is set. */ .ios .wp-caption { width: auto !important; } dl.wp-caption dt.wp-caption-dt img { display: inline-block; margin-bottom: -1ex; } div.mceTemp { -ms-user-select: element; } dl.wp-caption, dl.wp-caption * { -webkit-user-drag: none; } .wp-caption-dd { font-size: 14px; padding-top: 0.5em; margin: 0; /* browser reset */ } .aligncenter { display: block; margin-left: auto; margin-right: auto; } .alignleft { float: left; margin: 0.5em 1em 0.5em 0; } .alignright { float: right; margin: 0.5em 0 0.5em 1em; } /* Remove blue highlighting of selected images in WebKit */ img[data-mce-selected]::selection { background-color: transparent; } /* Styles for the WordPress plugins */ .mce-content-body img[data-mce-placeholder] { border-radius: 0; padding: 0; } .mce-content-body img[data-wp-more] { border: 0; -webkit-box-shadow: none; box-shadow: none; width: 96%; height: 16px; display: block; margin: 15px auto 0; outline: 0; cursor: default; } .mce-content-body img[data-mce-placeholder][data-mce-selected] { outline: 1px dotted #888; } .mce-content-body img[data-wp-more="more"] { background: transparent url( images/more.png ) repeat-y scroll center center; } .mce-content-body img[data-wp-more="nextpage"] { background: transparent url( images/pagebreak.png ) repeat-y scroll center center; } /* Styles for formatting the boundaries of anchors and code elements */ .mce-content-body a[data-mce-selected] { padding: 0 2px; margin: 0 -2px; border-radius: 2px; box-shadow: 0 0 0 1px #bfe6ff; background: #bfe6ff; } .mce-content-body .wp-caption-dt a[data-mce-selected] { outline: none; padding: 0; margin: 0; box-shadow: none; background: transparent; } .mce-content-body code { padding: 2px 4px; margin: 0; border-radius: 2px; color: #222; background: #f2f4f5; } .mce-content-body code[data-mce-selected] { background: #e9ebec; } /* Gallery, audio, video placeholders */ .mce-content-body img.wp-media { border: 1px solid #aaa; background-color: #f2f2f2; background-repeat: no-repeat; background-position: center center; width: 99%; height: 250px; outline: 0; cursor: pointer; } .mce-content-body img.wp-media:hover { background-color: #ededed; border-color: #72777c; } .mce-content-body img.wp-media.wp-media-selected { background-color: #d8d8d8; border-color: #72777c; } .mce-content-body img.wp-media.wp-gallery { background-image: url(images/gallery.png); } /* Image resize handles */ .mce-content-body div.mce-resizehandle { border-color: #72777c; width: 7px; height: 7px; } .mce-content-body img[data-mce-selected] { outline: 1px solid #72777c; } .mce-content-body img[data-mce-resize="false"] { outline: 0; } audio, video, embed { display: -moz-inline-stack; display: inline-block; } audio { visibility: hidden; } /* Fix for proprietary Mozilla display attribute, see #38757 */ [_moz_abspos] { outline: none; } a[data-wplink-url-error], a[data-wplink-url-error]:hover, a[data-wplink-url-error]:focus { outline: 2px dotted #dc3232; position: relative; } a[data-wplink-url-error]:before { content: ""; display: block; position: absolute; top: -2px; right: -2px; bottom: -2px; left: -2px; outline: 2px dotted #fff; z-index: -1; } /** * WP Views */ .wpview { width: 99.99%; /* All IE need hasLayout, incl. 11 (ugh, not again!!) */ position: relative; clear: both; margin-bottom: 16px; border: 1px solid transparent; } .mce-shim { position: absolute; top: 0; right: 0; bottom: 0; left: 0; } .wpview[data-mce-selected="2"] .mce-shim { display: none; } .wpview .loading-placeholder { border: 1px dashed #ccc; padding: 10px; } .wpview[data-mce-selected] .loading-placeholder { border-color: transparent; } /* A little "loading" animation, not showing in IE < 10 */ .wpview .wpview-loading { width: 60px; height: 5px; overflow: hidden; background-color: transparent; margin: 10px auto 0; } .wpview .wpview-loading ins { background-color: #333; margin: 0 0 0 -60px; width: 36px; height: 5px; display: block; -webkit-animation: wpview-loading 1.3s infinite 1s steps(36); animation: wpview-loading 1.3s infinite 1s steps(36); } @-webkit-keyframes wpview-loading { 0% { margin-left: -60px; } 100% { margin-left: 60px; } } @keyframes wpview-loading { 0% { margin-left: -60px; } 100% { margin-left: 60px; } } .wpview .wpview-content > iframe { max-width: 100%; background: transparent; } .wpview-error { border: 1px solid #ddd; padding: 1em 0; margin: 0; word-wrap: break-word; } .wpview[data-mce-selected] .wpview-error { border-color: transparent; } .wpview-error .dashicons, .loading-placeholder .dashicons { display: block; margin: 0 auto; width: 32px; height: 32px; font-size: 32px; } .wpview-error p { margin: 0; text-align: center; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; } .wpview-type-gallery:after { content: ""; display: table; clear: both; } .gallery img[data-mce-selected]:focus { outline: none; } .gallery a { cursor: default; } .gallery { margin: auto -6px; padding: 6px 0; line-height: 1; overflow-x: hidden; } .ie7 .gallery, .ie8 .gallery { margin: auto; } .gallery .gallery-item { float: left; margin: 0; text-align: center; padding: 6px; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; } .ie7 .gallery .gallery-item, .ie8 .gallery .gallery-item { padding: 6px 0; } .gallery .gallery-caption, .gallery .gallery-icon { margin: 0; } .gallery .gallery-caption { font-size: 13px; margin: 4px 0; } .gallery-columns-1 .gallery-item { width: 100%; } .gallery-columns-2 .gallery-item { width: 50%; } .gallery-columns-3 .gallery-item { width: 33.333%; } .ie8 .gallery-columns-3 .gallery-item, .ie7 .gallery-columns-3 .gallery-item { width: 33%; } .gallery-columns-4 .gallery-item { width: 25%; } .gallery-columns-5 .gallery-item { width: 20%; } .gallery-columns-6 .gallery-item { width: 16.665%; } .gallery-columns-7 .gallery-item { width: 14.285%; } .gallery-columns-8 .gallery-item { width: 12.5%; } .gallery-columns-9 .gallery-item { width: 11.111%; } .gallery img { max-width: 100%; height: auto; border: none; padding: 0; } img.wp-oembed { border: 1px dashed #888; background: #f7f5f2 url(images/embedded.png) no-repeat scroll center center; width: 300px; height: 250px; outline: 0; } /* rtl */ .rtl .gallery .gallery-item { float: right; } @media print, (-o-min-device-pixel-ratio: 5/4), (-webkit-min-device-pixel-ratio: 1.25), (min-resolution: 120dpi) { .mce-content-body img.mce-wp-more { background-image: url( images/more-2x.png ); background-size: 1900px 20px; } .mce-content-body img.mce-wp-nextpage { background-image: url( images/pagebreak-2x.png ); background-size: 1900px 20px; } } plugin.js000064400000102615147331543630006416 0ustar00/* global getUserSetting, setUserSetting */ ( function( tinymce ) { // Set the minimum value for the modals z-index higher than #wpadminbar (100000). if ( ! tinymce.ui.FloatPanel.zIndex || tinymce.ui.FloatPanel.zIndex < 100100 ) { tinymce.ui.FloatPanel.zIndex = 100100; } tinymce.PluginManager.add( 'wordpress', function( editor ) { var wpAdvButton, style, DOM = tinymce.DOM, each = tinymce.each, __ = editor.editorManager.i18n.translate, $ = window.jQuery, wp = window.wp, hasWpautop = ( wp && wp.editor && wp.editor.autop && editor.getParam( 'wpautop', true ) ), wpTooltips = false; if ( $ ) { // Runs as soon as TinyMCE has started initializing, while plugins are loading. // Handlers attached after the `tinymce.init()` call may not get triggered for this instance. $( document ).triggerHandler( 'tinymce-editor-setup', [ editor ] ); } function toggleToolbars( state ) { var initial, toolbars, iframeHeight, pixels = 0, classicBlockToolbar = tinymce.$( '.block-library-classic__toolbar' ); if ( state === 'hide' ) { initial = true; } else if ( classicBlockToolbar.length && ! classicBlockToolbar.hasClass( 'has-advanced-toolbar' ) ) { // Show the second, third, etc. toolbar rows in the Classic block instance. classicBlockToolbar.addClass( 'has-advanced-toolbar' ); state = 'show'; } if ( editor.theme.panel ) { toolbars = editor.theme.panel.find('.toolbar:not(.menubar)'); } if ( toolbars && toolbars.length > 1 ) { if ( ! state && toolbars[1].visible() ) { state = 'hide'; } each( toolbars, function( toolbar, i ) { if ( i > 0 ) { if ( state === 'hide' ) { toolbar.hide(); pixels += 34; } else { toolbar.show(); pixels -= 34; } } }); } // Resize editor iframe, not needed for iOS and inline instances. // Don't resize if the editor is in a hidden container. if ( pixels && ! tinymce.Env.iOS && editor.iframeElement && editor.iframeElement.clientHeight ) { iframeHeight = editor.iframeElement.clientHeight + pixels; // Keep min-height. if ( iframeHeight > 50 ) { DOM.setStyle( editor.iframeElement, 'height', iframeHeight ); } } if ( ! initial ) { if ( state === 'hide' ) { setUserSetting( 'hidetb', '0' ); wpAdvButton && wpAdvButton.active( false ); } else { setUserSetting( 'hidetb', '1' ); wpAdvButton && wpAdvButton.active( true ); } } editor.fire( 'wp-toolbar-toggle' ); } // Add the kitchen sink button :) editor.addButton( 'wp_adv', { tooltip: 'Toolbar Toggle', cmd: 'WP_Adv', onPostRender: function() { wpAdvButton = this; wpAdvButton.active( getUserSetting( 'hidetb' ) === '1' ); } }); // Hide the toolbars after loading. editor.on( 'PostRender', function() { if ( editor.getParam( 'wordpress_adv_hidden', true ) && getUserSetting( 'hidetb', '0' ) === '0' ) { toggleToolbars( 'hide' ); } else { tinymce.$( '.block-library-classic__toolbar' ).addClass( 'has-advanced-toolbar' ); } }); editor.addCommand( 'WP_Adv', function() { toggleToolbars(); }); editor.on( 'focus', function() { window.wpActiveEditor = editor.id; }); editor.on( 'BeforeSetContent', function( event ) { var title; if ( event.content ) { if ( event.content.indexOf( '/g, function( match, moretext ) { return ''; }); } if ( event.content.indexOf( '' ) !== -1 ) { title = __( 'Page break' ); event.content = event.content.replace( //g, '' ); } if ( event.load && event.format !== 'raw' ) { if ( hasWpautop ) { event.content = wp.editor.autop( event.content ); } else { // Prevent creation of paragraphs out of multiple HTML comments. event.content = event.content.replace( /-->\s+'; } else if ( image.indexOf( 'data-wp-more="nextpage"' ) !== -1 ) { string = ''; } else if ( image.indexOf( 'data-wp-preserve' ) !== -1 ) { if ( match = image.match( / data-wp-preserve="([^"]+)"/ ) ) { string = decodeURIComponent( match[1] ); } } return string || image; }); } }); // Display the tag name instead of img in element path. editor.on( 'ResolveName', function( event ) { var attr; if ( event.target.nodeName === 'IMG' && ( attr = editor.dom.getAttrib( event.target, 'data-wp-more' ) ) ) { event.name = attr; } }); // Register commands. editor.addCommand( 'WP_More', function( tag ) { var parent, html, title, classname = 'wp-more-tag', dom = editor.dom, node = editor.selection.getNode(), rootNode = editor.getBody(); tag = tag || 'more'; classname += ' mce-wp-' + tag; title = tag === 'more' ? 'Read more...' : 'Next page'; title = __( title ); html = ''; // Most common case. if ( node === rootNode || ( node.nodeName === 'P' && node.parentNode === rootNode ) ) { editor.insertContent( html ); return; } // Get the top level parent node. parent = dom.getParent( node, function( found ) { if ( found.parentNode && found.parentNode === rootNode ) { return true; } return false; }, editor.getBody() ); if ( parent ) { if ( parent.nodeName === 'P' ) { parent.appendChild( dom.create( 'p', null, html ).firstChild ); } else { dom.insertAfter( dom.create( 'p', null, html ), parent ); } editor.nodeChanged(); } }); editor.addCommand( 'WP_Code', function() { editor.formatter.toggle('code'); }); editor.addCommand( 'WP_Page', function() { editor.execCommand( 'WP_More', 'nextpage' ); }); editor.addCommand( 'WP_Help', function() { var access = tinymce.Env.mac ? __( 'Ctrl + Alt + letter:' ) : __( 'Shift + Alt + letter:' ), meta = tinymce.Env.mac ? __( '⌘ + letter:' ) : __( 'Ctrl + letter:' ), table1 = [], table2 = [], row1 = {}, row2 = {}, i1 = 0, i2 = 0, labels = editor.settings.wp_shortcut_labels, header, html, dialog, $wrap; if ( ! labels ) { return; } function tr( row, columns ) { var out = ''; var i = 0; columns = columns || 1; each( row, function( text, key ) { out += '' + key + '' + __( text ) + ''; i++; }); while ( i < columns ) { out += ''; i++; } return out + ''; } each ( labels, function( label, name ) { var letter; if ( label.indexOf( 'meta' ) !== -1 ) { i1++; letter = label.replace( 'meta', '' ).toLowerCase(); if ( letter ) { row1[ letter ] = name; if ( i1 % 2 === 0 ) { table1.push( tr( row1, 2 ) ); row1 = {}; } } } else if ( label.indexOf( 'access' ) !== -1 ) { i2++; letter = label.replace( 'access', '' ).toLowerCase(); if ( letter ) { row2[ letter ] = name; if ( i2 % 2 === 0 ) { table2.push( tr( row2, 2 ) ); row2 = {}; } } } } ); // Add remaining single entries. if ( i1 % 2 > 0 ) { table1.push( tr( row1, 2 ) ); } if ( i2 % 2 > 0 ) { table2.push( tr( row2, 2 ) ); } header = [ __( 'Letter' ), __( 'Action' ), __( 'Letter' ), __( 'Action' ) ]; header = '' + header.join( '' ) + ''; html = '
'; // Main section, default and additional shortcuts. html = html + '

' + __( 'Default shortcuts,' ) + ' ' + meta + '

' + '' + header + table1.join('') + '
' + '

' + __( 'Additional shortcuts,' ) + ' ' + access + '

' + '' + header + table2.join('') + '
'; if ( editor.plugins.wptextpattern && ( ! tinymce.Env.ie || tinymce.Env.ie > 8 ) ) { // Text pattern section. html = html + '

' + __( 'When starting a new paragraph with one of these formatting shortcuts followed by a space, the formatting will be applied automatically. Press Backspace or Escape to undo.' ) + '

' + '' + tr({ '*': 'Bullet list', '1.': 'Numbered list' }) + tr({ '-': 'Bullet list', '1)': 'Numbered list' }) + '
'; html = html + '

' + __( 'The following formatting shortcuts are replaced when pressing Enter. Press Escape or the Undo button to undo.' ) + '

' + '' + tr({ '>': 'Blockquote' }) + tr({ '##': 'Heading 2' }) + tr({ '###': 'Heading 3' }) + tr({ '####': 'Heading 4' }) + tr({ '#####': 'Heading 5' }) + tr({ '######': 'Heading 6' }) + tr({ '---': 'Horizontal line' }) + '
'; } // Focus management section. html = html + '

' + __( 'Focus shortcuts:' ) + '

' + '' + tr({ 'Alt + F8': 'Inline toolbar (when an image, link or preview is selected)' }) + tr({ 'Alt + F9': 'Editor menu (when enabled)' }) + tr({ 'Alt + F10': 'Editor toolbar' }) + tr({ 'Alt + F11': 'Elements path' }) + '
' + '

' + __( 'To move focus to other buttons use Tab or the arrow keys. To return focus to the editor press Escape or use one of the buttons.' ) + '

'; html += '
'; dialog = editor.windowManager.open( { title: editor.settings.classic_block_editor ? 'Classic Block Keyboard Shortcuts' : 'Keyboard Shortcuts', items: { type: 'container', classes: 'wp-help', html: html }, buttons: { text: 'Close', onclick: 'close' } } ); if ( dialog.$el ) { dialog.$el.find( 'div[role="application"]' ).attr( 'role', 'document' ); $wrap = dialog.$el.find( '.mce-wp-help' ); if ( $wrap[0] ) { $wrap.attr( 'tabindex', '0' ); $wrap[0].focus(); $wrap.on( 'keydown', function( event ) { // Prevent use of: page up, page down, end, home, left arrow, up arrow, right arrow, down arrow // in the dialog keydown handler. if ( event.keyCode >= 33 && event.keyCode <= 40 ) { event.stopPropagation(); } }); } } } ); editor.addCommand( 'WP_Medialib', function() { if ( wp && wp.media && wp.media.editor ) { wp.media.editor.open( editor.id ); } }); // Register buttons. editor.addButton( 'wp_more', { tooltip: 'Insert Read More tag', onclick: function() { editor.execCommand( 'WP_More', 'more' ); } }); editor.addButton( 'wp_page', { tooltip: 'Page break', onclick: function() { editor.execCommand( 'WP_More', 'nextpage' ); } }); editor.addButton( 'wp_help', { tooltip: 'Keyboard Shortcuts', cmd: 'WP_Help' }); editor.addButton( 'wp_code', { tooltip: 'Code', cmd: 'WP_Code', stateSelector: 'code' }); // Insert->Add Media. if ( wp && wp.media && wp.media.editor ) { editor.addButton( 'wp_add_media', { tooltip: 'Add Media', icon: 'dashicon dashicons-admin-media', cmd: 'WP_Medialib' } ); editor.addMenuItem( 'add_media', { text: 'Add Media', icon: 'wp-media-library', context: 'insert', cmd: 'WP_Medialib' }); } // Insert "Read More...". editor.addMenuItem( 'wp_more', { text: 'Insert Read More tag', icon: 'wp_more', context: 'insert', onclick: function() { editor.execCommand( 'WP_More', 'more' ); } }); // Insert "Next Page". editor.addMenuItem( 'wp_page', { text: 'Page break', icon: 'wp_page', context: 'insert', onclick: function() { editor.execCommand( 'WP_More', 'nextpage' ); } }); editor.on( 'BeforeExecCommand', function(e) { if ( tinymce.Env.webkit && ( e.command === 'InsertUnorderedList' || e.command === 'InsertOrderedList' ) ) { if ( ! style ) { style = editor.dom.create( 'style', {'type': 'text/css'}, '#tinymce,#tinymce span,#tinymce li,#tinymce li>span,#tinymce p,#tinymce p>span{font:medium sans-serif;color:#000;line-height:normal;}'); } editor.getDoc().head.appendChild( style ); } }); editor.on( 'ExecCommand', function( e ) { if ( tinymce.Env.webkit && style && ( 'InsertUnorderedList' === e.command || 'InsertOrderedList' === e.command ) ) { editor.dom.remove( style ); } }); editor.on( 'init', function() { var env = tinymce.Env, bodyClass = ['mceContentBody'], // Back-compat for themes that use this in editor-style.css... doc = editor.getDoc(), dom = editor.dom; if ( env.iOS ) { dom.addClass( doc.documentElement, 'ios' ); } if ( editor.getParam( 'directionality' ) === 'rtl' ) { bodyClass.push('rtl'); dom.setAttrib( doc.documentElement, 'dir', 'rtl' ); } dom.setAttrib( doc.documentElement, 'lang', editor.getParam( 'wp_lang_attr' ) ); if ( env.ie ) { if ( parseInt( env.ie, 10 ) === 9 ) { bodyClass.push('ie9'); } else if ( parseInt( env.ie, 10 ) === 8 ) { bodyClass.push('ie8'); } else if ( env.ie < 8 ) { bodyClass.push('ie7'); } } else if ( env.webkit ) { bodyClass.push('webkit'); } bodyClass.push('wp-editor'); each( bodyClass, function( cls ) { if ( cls ) { dom.addClass( doc.body, cls ); } }); // Remove invalid parent paragraphs when inserting HTML. editor.on( 'BeforeSetContent', function( event ) { if ( event.content ) { event.content = event.content.replace( /

\s*<(p|div|ul|ol|dl|table|blockquote|h[1-6]|fieldset|pre)( [^>]*)?>/gi, '<$1$2>' ) .replace( /<\/(p|div|ul|ol|dl|table|blockquote|h[1-6]|fieldset|pre)>\s*<\/p>/gi, '' ); } }); if ( $ ) { // Run on DOM ready. Otherwise TinyMCE may initialize earlier and handlers attached // on DOM ready of after the `tinymce.init()` call may not get triggered. $( function() { $( document ).triggerHandler( 'tinymce-editor-init', [editor] ); }); } if ( window.tinyMCEPreInit && window.tinyMCEPreInit.dragDropUpload ) { dom.bind( doc, 'dragstart dragend dragover drop', function( event ) { if ( $ ) { // Trigger the jQuery handlers. $( document ).trigger( new $.Event( event ) ); } }); } if ( editor.getParam( 'wp_paste_filters', true ) ) { editor.on( 'PastePreProcess', function( event ) { // Remove trailing
added by WebKit browsers to the clipboard. event.content = event.content.replace( /
/gi, '' ); // In WebKit this is handled by removeWebKitStyles(). if ( ! tinymce.Env.webkit ) { // Remove all inline styles. event.content = event.content.replace( /(<[^>]+) style="[^"]*"([^>]*>)/gi, '$1$2' ); // Put back the internal styles. event.content = event.content.replace(/(<[^>]+) data-mce-style=([^>]+>)/gi, '$1 style=$2' ); } }); editor.on( 'PastePostProcess', function( event ) { // Remove empty paragraphs. editor.$( 'p', event.node ).each( function( i, node ) { if ( dom.isEmpty( node ) ) { dom.remove( node ); } }); if ( tinymce.isIE ) { editor.$( 'a', event.node ).find( 'font, u' ).each( function( i, node ) { dom.remove( node, true ); }); } }); } }); editor.on( 'SaveContent', function( event ) { // If editor is hidden, we just want the textarea's value to be saved. if ( ! editor.inline && editor.isHidden() ) { event.content = event.element.value; return; } // Keep empty paragraphs :( event.content = event.content.replace( /

(?:
|\u00a0|\uFEFF| )*<\/p>/g, '

 

' ); if ( hasWpautop ) { event.content = wp.editor.removep( event.content ); } else { // Restore formatting of block boundaries. event.content = event.content.replace( /-->\s*\n\n/g,function(e,t){return''})),-1!==e.content.indexOf("\x3c!--nextpage--\x3e")&&(n=u("Page break"),e.content=e.content.replace(//g,'')),e.load&&"raw"!==e.format&&(e.content=r?o.editor.autop(e.content):e.content.replace(/-->\s+\s*