Text

All Text

Release 0.67.0

Welcome to Zotonic 0.67.0, released on July 5, 2022.

Release 0.66.0

Welcome to Zotonic 0.66.0, released on May 24, 2022.

middleware

Delegates the request processing.

Support & Services

Community support - mailinglists Do you want to start a Zotonic based project?  Then join our mailing lists and discuss…

Download Zotonic

Get the latest release Download the latest release of Zotonic from Github as a .zip file.

Release 0.65.0

Welcome to Zotonic 0.65.0, released on March 17, 2022.

Release 0.64.0

Welcome to Zotonic 0.64.0, released on March 4, 2022.

rsc_import_fetch

Fetch the data for an import of a resource. Returns data in the format used by m_rsc_export and m_rsc_import.

email_send_encoded

Add a handler for receiving e-mail notifications

http_log_access

Access log event for http. Called from the z_stats.

logon_options

Check for logon options, called if logon_submit returns undefined . This is used to fetch external (or local…

auth_client_switch_user

Send a request to the client to switch users. The zotonic.auth.worker.js will send a request to…

email_dkim_options

Return the options for the DKIM signature on outgoing emails. Called during email encoding.

validate_query_args

Called just before validation of all query arguments by z_validation. This is the moment to filter any illegal…

resource_headers

Let all modules add resource specific response headers to the request. The accumulator is the list of headers to be set.

media_import_medium

Notification to import a medium record from external source. This is called for non-file medium records, for example…

url_fetch_options

Determine the URL fetch options for fetching the content of an URL. Used by z_fetch.erl.

auth_client_logon_user

Send a request to the client to login an user. The zotonic.auth.worker.js will send a request to…

media_preview_options

Modify the options for an image preview url or tag. This is called for every image url generation, except if the…

Other cookbooks

Create a custom action Create a custom filter Create a custom model Create a custom controller Custom pivots Create a…

Shell cookbook

Activate/deactivate modules Filter and convert characters Erlang tab completion Debugging db (query) issues Reset a…

Just enough…

These Cookbook items each represent a stage in some Zotonic users’ journeys to understand the workings of Erlang and…

Frontend cookbook

These cookbook entries contain valuable nuggets of information regarding the frontend development of a site.

Admin cookbook

Creating a custom widget on the edit page Customizing the layout of the admin edit page Customizing the style of an…

menu_expand

Takes a menu, or a menu resource id, and adds all haspart objects connected to the menu ids.

language_dir

Return rtl or ltr depening on the direction of the language.

escape_check

Ensures thant an HTML escaped value is properly escaped.

Release 0.63.0

Welcome to Zotonic 0.63.0, released on Oct 29, 2021.

sub_hour

Subtracts an hour from a date. The value must be of the form {{Y,M,D},{H,I,S}} .

add_hour

Adds an hour to a date. The value must be of the form {{Y,M,D},{H,I,S}} .

parse_url

Parses an URL (URI) using uri_string:parse/1 .

m_oauth2_consumer

Not yet documented.

controller_ping

Simple controller for connection tests, used on the /test/connection page.

is_site_url

Test if the given URL is a url for the current site.

URLs and links

is_site_url url url_abs sanitize_url is_letsencrypt_valid_hostname urlize escape_link urlencode parse_url…

mod_image_edit

Non destructive edits of images.

m_image_edit

Manages the medium_edit_settings property for non destructive image editing.

Create a custom controller

Zotonic comes with a large collection controllers that cover many use cases, so you’ll probably have to resort to…

Release 0.62.0

Welcome to Zotonic 0.62.0, released on July 7, 2021.

m_signup

Exported APIs:

Release 0.61.0

Welcome to Zotonic 0.61.0, released on June 7, 2021.

m_seo_sitemap

Not yet documented.

sanitize_html

Sanitize a HTML code. Removes elements and attributes that might be dangerous, like <script> elements.

sanitize_url

Sanitize an URL. Removes URLs that might be dangerous, like javascript: URLs.

toc

Filter to derive a Table Of Contents from a HTML body.

dispatch-test

Dispatch rules Name Path Resource Args initial_test [“test”,”initial_postback_test”] controller_template…

dispatch

Dispatch rules Name Path Resource Args microsoft_authorize [“oauth-service”,”authorize”,”microsoft”]…

m_microsoft

Check with useauth if the authentication using the Microsoft identity platform is enabled and configured.

mod_microsoft

Adds logon using the Microsoft identity platform.

dispatch

Dispatch rules Name Path Resource Args fileuploader [“fileuploader”,”upload”,name] controller_fileuploader []…

m_fileuploader

Model to start uploads, upload a block and delete uploads.

controller_fileuploader

The fileuploader controller is used to upload parts of a file.

mod_fileuploader

Upload files using a parallel web worker.

Release 0.60.0

Welcome to Zotonic 0.60.0, released on February 15, 2021.

Release 0.59.0

Welcome to Zotonic 0.59.0, released on December 18, 2020.

m_site_update

Model for checking if a site has version control enabled.

mod_site_update

This module pulls updates of a site‘s code from a remote version control system. The supported version control systems…

controller_logon_done

This controller is used as a jumping stone after a log on from the /logon page. The p argument is passed from the…

url_abs

Generates an absolute URL for the given dispatch information.

url

Generates the relative URL for the given dispatch information.

Release 0.58.0

Welcome to Zotonic 0.58.0, released on November 2, 2020.

The Rationale of Zotonic

Zotonic is a modern and extensive content management system. It has its roots in systems before it and carries the…

Release 0.56.3

Welcome to Zotonic 0.56.3, released on August 31, 2020.

Release 0.54.3

Welcome to Zotonic 0.54.3, released on August 31, 2020.

format_duration

Show a duration in hours, minutes and seconds.

mod_audio

Adds support for viewing and handling audio medium items.

Release 0.54.2

Welcome to Zotonic 0.54.2, released on August 4, 2020.

dispatch

Dispatch rules Name Path Resource Args oauth2_consumer_authorize [“oauth-service”,”authorize”,”zotonic”

m_oauth2_service

Not yet documented.

m_mqtt_ticket

A ticketing system for out of band MQTT posts via HTTP.

m_email_dkim

DomainKeys Identified Mail Signatures (RFC 6376) is a method to add a signature to outgoing emails. This enables…

Release 0.54.1

Welcome to Zotonic 0.54.1, released on June 16, 2020.

Release 0.56.1

Welcome to Zotonic 0.56.1, released on June 16, 2020.

Directory structure

Zotonic is a set of regular OTP applications. These can be found in the repository’s apps/ directory:

Reference

All the nitty gritty details when the big picture has settled.

mod_acl_mock

Mocking module for access control during tests.

User Guide

Welcome to the Zotonic User Guide. This guide is a non-technical introduction to Zotonic.

m_linkedin

Not yet documented.

m_admin

This model exposes some meta-information for the use in mod_admin templates.

ACL options

Authorization checks to perform, in addition to the acl_action dispatch option, can be given in the acl dispatch option

edge_insert

An edge has been inserted. Note that the Context for this notification does not have the user who created the edge.

auth_validated

Authentication against some (external or internal) service was validated

mod_import_wordpress

Import WordPress .wxr files in your site.

media_import_props

Notification to translate or map a file after upload, before insertion into the database Used in mod_video to queue…

media_stillimage

See if there is a ‘still’ image preview of a media item. (eg posterframe of a movie) Return:: {ok, ResourceId} or…

tkvstore_put

Put a value into the typed key/value store

tkvstore_delete

Delete a value from the typed key/value store

security_headers

Check and possibly modify the http response security headers All headers are in lowercase.

scomp_script_render

Add extra javascript with the {% script %} tag. (map) Used to let modules inject extra javascript depending on the…

module_deactivate

A module has been stopped and deactivated.

m_config_update

Site configuration parameter was changed

language

Notify that the session’s language has been changed

dispatch

Final try for dispatch, try to match the request. Called when the site is known, but no match is found for the path

admin_rscform

Used in the admin to process a submitted resource form

activity

An activity in Zotonic. When this is handled as a notification then return a list of patterns matching this activity.

action_event_type

Render the javascript for a custom action event type. The custom event type must be a tuple, for example: {% wire…