Documentation

Wysiwyg extends EntityBase
in package

Wysiqyg class

Tags
copyright

CLOUDREXX CMS - CLOUDREXX AG

author

Thomas Daeppen thomas.daeppen@comvation.com

author

Michael Räss michael.raess@comvation.com

author

Ueli Kramer ueli.kramer@comvation.com

version
3.0.0
subpackage

core_wysiwyg

Table of Contents

Properties

$callingSystemComponentController  : SystemComponentController
The SystemComponentController that did instanciate this Wysiwyg instance.
$extraPlugins  : array<string|int, mixed>
$langId  : int
$localeCodes  : array<string|int, mixed>
List of locale codes ordered by translation fallback order per Cx instance
$name  : string
$nestingCount  : int
Counts the nesting level of __call()
$removePlugins  : array<string|int, mixed>
$stringRepresentationBlank  : bool
Whether blank string representations are valid
$stringRepresentationFields  : array<string|int, mixed>
List of fields that should be available in the string representation
$stringRepresentationFormat  : string
Sprintf format for the string representation
$type  : string
$types  : array<string|int, mixed>
Base configuration for the different types of wysiwyg editors.
$validators  : array<string|int, mixed>
Initialize this array as follows: array( 'columName' => Zend_Validate )
$value  : string
$virtual  : bool
Defines if an entity is virtual and therefore not persistable.

Methods

__call()  : mixed
Route methods like getName(), getType(), getDirectory(), etc.
__construct()  : mixed
Initialize WYSIWYG editor If $systemComponentController is not specified, the call trace is searched for the component calling this constructor.
__get()  : mixed
This is an ugly solution to allow $this->cx to be available in all entity classes Since the entity's constructor is not called when an entity is loaded from DB this cannot be assigned there.
__toString()  : string
Alias for the method getSourceCode()
getComponentController()  : SystemComponent
Returns the component controller for this component
getConfig()  : array<string|int, mixed>
Get CKEditor initialization config
getExtraPlugins()  : array<string|int, mixed>
getKeyAsString()  : string
Returns this entity's key
getLangId()  : int
getMediaBrowserIntegration()  : string
Retrieves the Media Browser integration as an HTML-code for CKEditor.
getMediaSource()  : MediaSource
Get MediaSource based on the component
getName()  : string
getRemovePlugins()  : array<string|int, mixed>
Fetch the list of deactivated plugins
getSourceCode()  : string
Get the html source code for the wysiwyg editor
getTranslatedFieldValue()  : mixed
Returns the value of a translatable field using fallback mechanisms
getType()  : string
getValue()  : string
initializeValidators()  : mixed
Set $this->validators
isVirtual()  : bool
Returns the virtuality of the entity
prepareBBCodeForDb()  : string
Get safe BBCode
prepareBBCodeForOutput()  : string
Convert BBCode to HTML
setExtraPlugins()  : mixed
setLangId()  : mixed
setName()  : mixed
setRemovePlugins()  : mixed
Set a list of plugins that shall be deactivated
setType()  : mixed
setValue()  : mixed
setVirtual()  : mixed
Set the virtuality of the entity
validate()  : mixed
getFallbackLocaleCodes()  : array<string|int, mixed>
Returns a list of all locale codes ordered by fallback order
getStringRepresentationBlank()  : bool
Whether blank string representations are valid
getStringRepresentationFields()  : array<string|int, mixed>
Returns a list of fields available in the string representation
getStringRepresentationFormat()  : string
Returns the sprintf() format for the string representation
initUploaderForImagePasting()  : void
Initialize the {@see \Cx\Core_Modules\Uploader\Model\Entity\Uploader} to handle the image pasting in the WYSIWYG editor.

Properties

$callingSystemComponentController

The SystemComponentController that did instanciate this Wysiwyg instance.

protected SystemComponentController $callingSystemComponentController

SystemComponentController that instanciated this Wysiwyg instance

$extraPlugins

protected array<string|int, mixed> $extraPlugins

array of extra plugins added for the wysiwyg editor

$langId

protected int $langId

the language id of current language

$localeCodes

List of locale codes ordered by translation fallback order per Cx instance

protected static array<string|int, mixed> $localeCodes = array()

Array in the form: array(<instanceId> => array(<localeCode>, ...))

Tags
see
getFallbackLocaleCodes()

$name

protected string $name

the value for the textarea html attribute "name"

$nestingCount

Counts the nesting level of __call()

protected static int $nestingCount = 0

$removePlugins

protected array<string|int, mixed> $removePlugins

array of plugins to be deactivated in the wysiwyg editor

$stringRepresentationBlank

Whether blank string representations are valid

protected bool $stringRepresentationBlank = false

Whether blank string representations are valid

Tags
see
getStringRepresentationBlank()

$stringRepresentationFields

List of fields that should be available in the string representation

protected array<string|int, mixed> $stringRepresentationFields = array()

List of field names

Tags
see
getStringRepresentationFields()

$stringRepresentationFormat

Sprintf format for the string representation

protected string $stringRepresentationFormat = ''

Sprintf format string

Tags
see
getStringRepresentationFormat()

$types

Base configuration for the different types of wysiwyg editors.

protected array<string|int, mixed> $types = array('small' => array('toolbar' => 'Small', 'width' => '100%', 'height' => 200, 'fullPage' => false, 'extraPlugins' => array('codemirror'), 'removePlugins' => array()), 'full' => array('toolbar' => 'Full', 'width' => '100%', 'height' => 450, 'fullPage' => false, 'extraPlugins' => array('codemirror'), 'removePlugins' => array()), 'fullpage' => array('toolbar' => 'Full', 'width' => '100%', 'height' => 450, 'fullPage' => true, 'extraPlugins' => array('codemirror'), 'removePlugins' => array()), 'bbcode' => array('toolbar' => 'BBCode', 'width' => '100%', 'height' => 200, 'fullPage' => false, 'extraPlugins' => array('bbcode'), 'removePlugins' => array('codemirror')), 'frontendeditingtitle' => array('toolbar' => 'FrontendEditingTitle', 'extraPlugins' => array(), 'removePlugins' => array('bbcode', 'codemirror'), 'forcePasteAsPlainText' => true, 'basicEntities' => false, 'entities' => false, 'entities_latin' => false, 'entities_greek' => false), 'frontendeditingcontent' => array('toolbar' => 'FrontendEditingContent', 'extraPlugins' => array(), 'removePlugins' => array('bbcode', 'codemirror'), 'startupOutlineBlocks' => false))

Plugin specific notes:

  • bbcode: According to its own documentation) the plugin does customize the editor configuration to better match the BBCode environment. As a result the editor is partly broken when the bbcode plugin gets initialized on startup. Therefore we must not include the bbcode plugin in the bundled source, but instead load it as extraPlugin on demand.
  • codemirror: The CKBuilder somehow is unable to properly include the plugin. As a result we manually have to load the plugin through extraPlugins even though the plugin itself is part of the bundled src.

the types which are available for cloudrexx wysiwyg editors

$validators

Initialize this array as follows: array( 'columName' => Zend_Validate )

protected array<string|int, mixed> $validators = array()

$value

protected string $value

the value for the textarea html attribute "value"

$virtual

Defines if an entity is virtual and therefore not persistable.

protected bool $virtual = false

Defaults to FALSE - not virtual.

Methods

__call()

Route methods like getName(), getType(), getDirectory(), etc.

public __call(string $methodName, array<string|int, mixed> $arguments) : mixed
Parameters
$methodName : string

Name of method to call

$arguments : array<string|int, mixed>

List of arguments for the method to call

Tags
throws
Exception

If __call() nesting level reaches 20

Attributes
#[ReturnTypeWillChange]
Return values
mixed

Return value of the method to call

__construct()

Initialize WYSIWYG editor If $systemComponentController is not specified, the call trace is searched for the component calling this constructor.

public __construct(string $name[, string $value = '' ][, string $type = 'small' ][, null|int $langId = null ][, array<string|int, mixed> $extraPlugins = array() ][, array<string|int, mixed> $removePlugins = array() ][, SystemComponentController $systemComponentController = null ]) : mixed
Parameters
$name : string

the name content for name attribute

$value : string = ''

(optional) content for value attribute

$type : string = 'small'

(optional) the type of editor to use: possible types are "small", "full", "bbcode", default is "small"

$langId : null|int = null

(optional) the language id, by default FRONTEND_LANG_ID is used

$extraPlugins : array<string|int, mixed> = array()

(optional) extra plugins to activate

$removePlugins : array<string|int, mixed> = array()

(optional) deactivate plugins

$systemComponentController : SystemComponentController = null

(optional) ComponentController of the component that uses the object generated by this constructor

Tags
throws
WysiwygException

If no $systemComponentController is provided and none can be found

__get()

This is an ugly solution to allow $this->cx to be available in all entity classes Since the entity's constructor is not called when an entity is loaded from DB this cannot be assigned there.

public __get(mixed $name) : mixed
Parameters
$name : mixed
Attributes
#[ReturnTypeWillChange]

__toString()

Alias for the method getSourceCode()

public __toString() : string
Return values
string

getConfig()

Get CKEditor initialization config

public getConfig() : array<string|int, mixed>
Return values
array<string|int, mixed>

Config set of this Wysiwyg instance that can be used to instanciate the CKEditor.

getExtraPlugins()

public getExtraPlugins() : array<string|int, mixed>
Return values
array<string|int, mixed>

getKeyAsString()

Returns this entity's key

public final getKeyAsString([string $separator = '/' ]) : string

If this entity has a composite key, the fields are separated by $separator.

Parameters
$separator : string = '/'

(optional) Separator for composite key fields, default "/"

Return values
string

Entity key as string

getMediaBrowserIntegration()

Retrieves the Media Browser integration as an HTML-code for CKEditor.

public getMediaBrowserIntegration() : string

This method creates a hidden MediaBrowser instance for the component that did create this Wysiwyg instance.

Return values
string

HTML code representing the Media Browser integration for CKEditor.

getMediaSource()

Get MediaSource based on the component

public getMediaSource() : MediaSource
Return values
MediaSource

getRemovePlugins()

Fetch the list of deactivated plugins

public getRemovePlugins() : array<string|int, mixed>
Return values
array<string|int, mixed>

List of plugin names

getSourceCode()

Get the html source code for the wysiwyg editor

public getSourceCode() : string
Return values
string

getTranslatedFieldValue()

Returns the value of a translatable field using fallback mechanisms

public getTranslatedFieldValue(string $fieldName) : mixed

If the field is not translatable its value is returned anyway. Tries to return the value in the following locales (if non-empty):

  • Current locale
  • Default locale
  • All other locales
Parameters
$fieldName : string

Name of a translatable field

initializeValidators()

Set $this->validators

public initializeValidators() : mixed

Validators can be found in lib/FRAMEWORK/Validator.class.php These will be executed if validate() is called

isVirtual()

Returns the virtuality of the entity

public isVirtual() : bool
Return values
bool

TRUE if the entity is virtual, otherwise FALSE

prepareBBCodeForDb()

Get safe BBCode

public static prepareBBCodeForDb(string $bbcode[, bool $html = false ]) : string
Parameters
$bbcode : string

the unsafe BBCode

$html : bool = false

return as html code

Return values
string

prepareBBCodeForOutput()

Convert BBCode to HTML

public static prepareBBCodeForOutput(string $bbcode) : string

This code comes from the forum module, feel free to rewrite

Parameters
$bbcode : string

the BBCode which should be a html output

Return values
string

the xhtml output

setExtraPlugins()

public setExtraPlugins(array<string|int, mixed> $extraPlugins) : mixed
Parameters
$extraPlugins : array<string|int, mixed>

setLangId()

public setLangId(int $langId) : mixed
Parameters
$langId : int

setName()

public setName(string $name) : mixed
Parameters
$name : string

setRemovePlugins()

Set a list of plugins that shall be deactivated

public setRemovePlugins(array<string|int, mixed> $removePlugins) : mixed
Parameters
$removePlugins : array<string|int, mixed>

List of plugin names

setType()

public setType(string $type) : mixed
Parameters
$type : string

setValue()

public setValue(string $value) : mixed
Parameters
$value : string

setVirtual()

Set the virtuality of the entity

public setVirtual(bool $virtual) : mixed
Parameters
$virtual : bool

TRUE to set the entity as virtual or otherwise to FALSE

getFallbackLocaleCodes()

Returns a list of all locale codes ordered by fallback order

protected getFallbackLocaleCodes() : array<string|int, mixed>
  • First entry is the current locale
  • Second entry is the default locale (if different from current, it's omitted otherwise)
  • Then all other locales follow (in no particular order)
Tags
todo

Order the array by the fallback order (same as in ContentManager)

Return values
array<string|int, mixed>

List of locale codes

getStringRepresentationBlank()

Whether blank string representations are valid

protected getStringRepresentationBlank() : bool
Return values
bool

Whether blank string representations are valid

getStringRepresentationFields()

Returns a list of fields available in the string representation

protected getStringRepresentationFields() : array<string|int, mixed>
Return values
array<string|int, mixed>

List of field names

getStringRepresentationFormat()

Returns the sprintf() format for the string representation

protected getStringRepresentationFormat() : string
Return values
string

sprintf() format string

initUploaderForImagePasting()

Initialize the {@see \Cx\Core_Modules\Uploader\Model\Entity\Uploader} to handle the image pasting in the WYSIWYG editor.

protected initUploaderForImagePasting() : void

        
On this page

Search results