Services in Tiki are PHP classes.
Services execute certain actions (eg: insert, update, delete, list, etc).
Services vs libs
libs provide a reusable functionality to other Tiki components. For example, the Tiki syntax parser is a library used by many other components that need transform Tiki syntax in HTML.
The Tiki services folders containing Controller files, lives under lib/core/Services/.
Each folder containing a Tiki service is registered in the file db/config/controllers.xml
<service id="tiki.controller.wiki" class="Services_Wiki_Controller"/>
A service can contain one or more controllers. The Wiki, for example, contains two controllers:
Public and private functions
$input holds all information passed to the action (variables with values). This needs to be extracted and validated in the action.
In the smarty templates put a
$confirm variable, this helps to identify if the action is to be executed.
Why? For a given action the same smarty tpl is used for creating a new item and updating an existing one.
Calling a service through a button/link
1) use service
2) use bootstrap_modal