• last updated 8 hours ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
Unset the "required" HTML5 attribute after the superclass initialization, because the textarea superclass will set it back again otherwise

improved spelling

  1. … 13 more files in changeset.
Make "standard" the default preset we apply to richtext editors

This is needed to have consistent site-wide default settings coming from the tcl level, such as connection context information and more.

  1. … 1 more file in changeset.
Render richtext as div reform

Some richtext editors, such as TinyMCE in inline mode, do not expect

to enhance a textarea, but a div.

We could already override the rendering in the richtext editor

subclass, but this has the consequence that inheritance would be

interrupted. This prevents from plugging behavior in subclasses of the

richtext formfield.

This reform refactors render_richtext_as_div from the richtext

formfield into render_as_div on the textarea class. It also supports a

flag for subclasses to instruct the superclass that they should render

the field as div AFTER the whole inheritance chain was applied.

Do not assume the repeated field will be attached as a direct child of the observed element

This is not the case in some downstream implementations

Include the attribute to identify a repeated field also when we render richtext as div

Port of downstream modification in place since at least 2012

When parsing XoWiki links, accept links in the form [[link|| -flag1 flagvalue]], where the label is set to empty.

Port of downstream fix by Markus Moser on live since 2022-09-21

Fix regression after disabled formfield reform

updated jqueryui to latest version

    • -323
    • +331
    ./www/resources/jquery/jquery-ui.js
    • -4
    • +4
    ./www/resources/jquery/jquery-ui.min.js
improved spelling

Provide a reference to the current object when configuring tinymce

Allow to completely override the imageSelectorDialog URL downstream

Introduce for richtext editors the concept of "preset"

A preset is an abstract set configurations designed to address a specific use case.

An example could be a preset for a "minimal" richtext editor, used in those forms where we want to limit the features a user should have access to. Other presets could address specific usages or applications.

Downstream developers can provide a set of ::richtext::$editor::preset::$preset procs, returning an options dict. This set of options will be merged other local configurations.

The same approach works in ad_forms and xowiki forms.

This also enables the use-case of switching to a different editor maintaining the existing application-specific configurations consistent.

  1. … 1 more file in changeset.
TinyMCE XoWiki formfield integration

We introduce a new richtext mixin richtext::tinymce, requiring the richtext-tinymce package, currently integrating TinyMCE editor 7.0.1.

This implementation has been tested with regular, repeat, compound and repeatedcompound fields.

Downstream implementations based on this formfield can customize the editor configuration further, e.g. provide custom plugins via the api parameters.

Add a richtext to the test formfields specifications

Move back richtext formfield implementations in form-field-procs

Moving to a different file may affect dependencies defined on form-field-procs that also expect the richtext editor to be loaded. As breaking changes are not desirable now, we revert this reform.

Cleanup leftover code from successful reform in December 2016

Since then, we have been long using dynamic repeat fields on production

Move the specific richtext-editor implementations into an own file

file richtext-procs.tcl was initially added on branch oacs-5-10.

    • -0
    • +0
    ./tcl/richtext-procs.tcl
improved spelling

  1. … 3 more files in changeset.
Improved readability of configuration parameter "parameterSecret"

- Switched to camelCase for better readabilty and uniformity

- NaviServer configuration parameters are case insensitive, so no danger for backward compatibility

  1. … 5 more files in changeset.
Use a simpler approach to achieve the intended result, which does not rely on events

Keep comments on the server side

JS upstream updates

- Updated highcharts to 11.4.0 (when highcharts package is not installed)

- Updated jquery-3.6.3 to jquery-3.7.1.

- Bumped version number to 5.10.1b10

    • -10965
    • +0
    ./www/resources/jquery/jquery-3.6.4.js
    • -2
    • +0
    ./www/resources/jquery/jquery-3.6.4.min.js
    • -0
    • +10716
    ./www/resources/jquery/jquery-3.7.1.js
    • -0
    • +2
    ./www/resources/jquery/jquery-3.7.1.min.js
Ensure chat javascript is executed only when the chat itself is actually a part of the DOM

This may not be the case at the time of rendering, e.g. because the chat is rendered inside of a <template> tag and appended to the document at a later moment.

file jquery-3.7.1.js was initially added on branch oacs-5-10.

    • -0
    • +0
    ./www/resources/jquery/jquery-3.7.1.js
  1. … 2 more files in changeset.
file jquery-3.7.1.min.js was initially added on branch oacs-5-10.

    • -0
    • +0
    ./www/resources/jquery/jquery-3.7.1.min.js
  1. … 2 more files in changeset.
Fix variable name

Update italian localization

  1. … 4 more files in changeset.
Introduce server-side validation for HTML5 date and time formfields

A "formats" parameter can be specified on the formfields indicating one or more formats that we want to enforce. The syntax for any of such format is that of the Tcl clock command.

Default values have been set according to the expected behavior of each form field type.

Empty values are always considered valid. If a field is required, this will be enforced in its own validator.