Documentation
Convert the image markers in HTML from the Rich Text editor into image tags.
Exported APIs:
Retrieve information that is stored in the site configuration. If you want to query values from the config table…
This chapter describes the configuration options for your sites. There’s also global configuration.
Zotonic has the capability of serving more than one site at a time. You can have multiple sites enabled, each with its…
Performing additional, project-specific actions when a user signs up
Model for checking if a site has version control enabled.
Perform array-slice operations on a list or string.
Show an element by animating the height.
Show an element by animating the height and opacity.
Hide an element by animating the height and opacity.
Toggle an element by sliding it up and down.
Hide an element by animating the height.
Converts a text into a slug.
The sort filter takes a list of items to sort. Items can be an ordinary list of terms, property lists, or maps. It can…
Mark an element as sortable.
A sorter is a container for sortables.
Removes whitespace between HTML tags.
Add an AJAX activity indicator.
Splits the filter value into a list of values.
This filter split a list in shorter lists. It splits an array in N sub-arrays of more or less equal length. This is…
Model for Let's Encrypt status information, available to administrators.
Some interesting tidbits about saving/updating a date/time field of a resource.
Translates atoms, integers and floats to strings. The undefined value is translated to the empty string. Does not…
append capfirst center filesizeformat format_duration format_integer format_number format_price insert is_valid_email…
Removes all HTML tags from the value.
Subtracts a day from a date. The value must be of the form {{Y,M,D},{H,I,S}} .
Subtracts an hour from a date. The value must be of the form {{Y,M,D},{H,I,S}} .
Submits the enclosing form, a specifically targeted form or the closest form to an element.
Subtracts a month from a date. The value must be of the form {{Y,M,D},{H,I,S}} .
Subtracts a week from a date. The value must be of the form {{Y,M,D},{H,I,S}} .
Subtracts a year from a date. The value must be of the form {{Y,M,D},{H,I,S}} .
Sum a list of numbers.
Extract a summary from a resource.
Dispatch rules Name Path Resource Args survey_results_download [“survey”,”results”,”download”,id]…
survey_answer_split survey_any_correct_answer survey_any_wrong_answer survey_as_pages survey_is_stop survey_is_submit…
Model for survey reporting and participant state, including results, totals, per-user answers, exports, and result…
Filter to split multi-value survey answers on the '#' character.
Determine if any answer of a question was correct. Used for showing results of thurstone test questions.
Determine if any answer of a question was wrong. Used for showing results of thurstone test questions.
Split the page blocks into pages, prepare them for easy display in the survey question editor.
Check if a list of questions contains a pagebreak block with an unconditional submit.
Check if the given survey is configured to save intermediate results. Always returns a boolean value.
Check if there is a ‘stop’ question in list of (survey) blocks
Check if the questions end with a question type that is a submit button.
survey_get_handlers survey_is_allowed_results_download survey_is_submit survey_submit survey_result_columns…
Check the list of blocks and collect all options for that page.
Used by the survey module to add extra column values to the result editor.
Model for saving and retrieving intermediate survey answers for users. There can only be a single intermediate result…
Show the first page for a given survey (with the id parameter):
Counts the total of all points that can be received for all test questions. Non test questions are not counted.
Note
Make a HTML element into a tab set.
Fetch the tail of a list.
Model for dynamic template rendering. It renders a template path passed in the request path and returns the rendered…
Render a template. When used in a postback action, the result will be sent back with the response data for the postback.
Template Best Practices and Pitfalls
This chapter lists some preferred solutions to common tasks and pitfalls you may encounter while developing with…
Templates are text files marked up using the Zotonic template language. Zotonic interprets that mark-up to dynamically…
template
Not implemented, but exists in Zotonic for forward compatibility with future ErlyDTL and Django versions.
Creates a temporary resource if its input value is not defined.
It is possible to create end-to-end integration tests for Zotonic websites. Tests like these are called sitetests .
Dispatch rules Name Path Resource Args hello_world [“test”,”hello_world”] controller_hello_world []…
Adding a site to Zotonic is done through the zotonic shell command. It syntax is like this:
The Zotonic “status” site is the first thing you see once you have installed Zotonic, or if you do not have any sites…
Zotonic’s data model is a pragmatic implementation of the Semantic Web: a mixture between a traditional database and a…
Show a readable version of a date/time difference.
Simple read-only interface to the typed key-value store of mod_tkvstore. To get a value from the store: use m.tkvstore.
Convert the input to a binary value.
Convert the input to a boolean value.
Filter to derive a Table Of Contents from a HTML body.
Toggle the visibility of an element.
Toggle a CSS class from an HTML element.
Convert the input to an integer value.
Display any value as in JSON (JavaScript Object Notation).
Returns a list of tokens from input string, separated by the characters in the filter argument.
Map a string to a name . That is a lowercased string with only [a-z0-9_] characters.
See also
See also
Filters all empty translations from a property.
Return a list of all languages present in the given translated text ( #trans{} record).
Translates a (English) value to the current language or the given language.
is_rtl language language_dir language_sort language_sort_localized media_for_language set_url_language trans_languages…
Many sites need to support content and templates in multiple languages. Luckily, Zotonic is completely multilingual
The m_translation model gives easy access to language and translation related information.
Lookup a specific translation in a translated text. If the text is not translated then the text is returned as-is.
Trigger a named \{% wire %\} with an action. All args will be args to the named wire. The trigger’s name argument is…
Removes whitespace at the start and end of a string.
Installation Zotonic won’t start and shows errors when running zotonic debug Check your site’s database configuration.
Truncate a text to a maximum length.
Truncate a text to a maximum length in characters.
Truncate a HTML text to a maximum length.
element
Show possible selections whilst typing.
Removes HTML escaping from a text.
Remove an edge between two resources. Used in the admin.
Removes a mask that was placed over an element using the mask action.