first commit

This commit is contained in:
2026-02-08 21:16:11 +01:00
commit e17b7026fd
8881 changed files with 1160453 additions and 0 deletions

View File

@@ -0,0 +1,22 @@
<?php
/**
* @copyright Copyright (c) 2009-2022 Ryan Demmer. All rights reserved
* @license GNU/GPL 2 or later - http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
* JCE is free software. This version may have been modified pursuant
* to the GNU General Public License, and as distributed it includes or
* is derivative of works licensed under the GNU General Public License or
* other free or open source software licenses
*/
class WFVisualcharsPluginConfig
{
public static function getConfig(&$settings)
{
$wf = WFApplication::getInstance();
// legacy
$state = $wf->getParam('editor.visualchars', 0);
$settings['visualchars_default_state'] = $wf->getParam('editor.visualchars_state', $state, 0, 'boolean');
}
}

View File

@@ -0,0 +1,2 @@
/* jce - 2.9.32 | 2022-11-01 | https://www.joomlacontenteditor.net | Copyright (C) 2006 - 2022 Ryan Demmer. All rights reserved | GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html */
!function(){var Storage=tinymce.util.Storage;tinymce.PluginManager.add("visualchars",function(ed,url){function toggleVisualChars(state,o){function wrapCharWithSpan(value){return'<span data-mce-bogus="1" class="mce-item-'+charMap[value]+'">'+value+"</span>"}function compileCharMapToRegExp(){var key,regExp="";for(key in charMap)regExp+=key;return new RegExp("["+regExp+"]","g")}function compileCharMapToCssSelector(){var key,selector="";for(key in charMap)selector&&(selector+=","),selector+="span.mce-item-"+charMap[key];return selector}function isNode(n){return 3===n.nodeType&&!ed.dom.getParent(n,".mce-item-nbsp, .mce-item-shy")}var node,nodeList,i,nodeValue,div,charMap,visualCharsRegExp,body=o||ed.getBody();if(charMap={"\xa0":"nbsp","\xad":"shy"},visualCharsRegExp=compileCharMapToRegExp(),state)for(nodeList=[],tinymce.walk(body,function(n){isNode(n)&&n.nodeValue&&visualCharsRegExp.test(n.nodeValue)&&nodeList.push(n)},"childNodes"),i=0;i<nodeList.length;i++){for(nodeValue=nodeList[i].nodeValue,nodeValue=ed.dom.encode(nodeValue),nodeValue=nodeValue.replace(visualCharsRegExp,wrapCharWithSpan),div=ed.dom.create("div",null,nodeValue);node=div.lastChild;)ed.dom.insertAfter(node,nodeList[i]);ed.dom.remove(nodeList[i])}else for(nodeList=ed.dom.select(compileCharMapToCssSelector(),body),i=nodeList.length-1;i>=0;i--)ed.dom.remove(nodeList[i],1)}var state;ed.getParam("use_state_cookies",!0)&&(state=Storage.get("wf_visualchars_state")),state=tinymce.is(state,"string")?parseFloat(state):ed.getParam("visualchars_default_state",0),ed.onInit.add(function(){ed.controlManager.setActive("visualchars",state),toggleVisualChars(state)}),ed.addButton("visualchars",{title:"visualchars.desc",cmd:"mceVisualChars"}),ed.onExecCommand.add(function(ed,cmd,ui,v,o){"mceNonBreaking"===cmd&&toggleVisualChars(state)}),ed.addCommand("mceVisualChars",function(){state=!state,ed.controlManager.setActive("visualchars",state),toggleVisualChars(state),ed.getParam("use_state_cookies",!0)&&Storage.set("wf_visualchars_state",state?1:0)},self),ed.onKeyUp.add(function(ed,e){state&&13==e.keyCode&&toggleVisualChars(state)}),ed.onPreProcess.add(function(ed,o){o.get&&toggleVisualChars(!1,o.node)}),ed.onSetContent.add(function(ed,o){toggleVisualChars(state)})})}();

View File

@@ -0,0 +1 @@
<html><body bgcolor="#FFFFFF"></body></html>

View File

@@ -0,0 +1,25 @@
<?xml version="1.0" ?>
<extension version="3.4" type="plugin" group="jce" method="upgrade">
<name>WF_VISUALCHARS_TITLE</name>
<version>2.9.32</version>
<creationDate>01-11-2022</creationDate>
<author>Ryan Demmer</author>
<authorEmail>info@joomlacontenteditor.net</authorEmail>
<authorUrl>https://www.joomlacontenteditor.net/</authorUrl>
<copyright>Ryan Demmer</copyright>
<license>GNU/GPL Version 2 or later - http://www.gnu.org/licenses/gpl-2.0.html</license>
<description>WF_VISUALCHARS_DESC</description>
<icon>visualchars</icon>
<fields name="visualchars">
<fieldset name="config">
<field name="state" type="yesno" default="1" label="WF_LABEL_STATE" description="WF_LABEL_STATE_DESC">
<option value="1">JON</option>
<option value="0">JOFF</option>
</field>
</fieldset>
</fields>
<help>
<topic key="visualchars.about" title="WF_VISUALCHARS_HELP_ABOUT" />
</help>
<languages></languages>
</extension>