Loading...
 
Skip to main content
(Cached)

Services

Tiki services


Services in Tiki are PHP classesQuestion.
Services execute certain actions (eg: insert, update, delete, list, etc).

Services vs libs

Tiki 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.

But if you need to provide data or functionality to a component outside Tiki, like a third-party javascript component, you have to use Services. For example, the "Favorite" service lets third party javascript components add and retrieve user's favorites list.

Service catalogue

The Tiki services folders containing Controller files, lives under lib/core/Services/Question.

Each folder containing a Tiki service is registered in the file db/config/controllers.xmlQuestion

For example, the Wiki service is available in folder lib/core/Services/Wiki/Question and its controllers are registered in controllers.xmlQuestion like below.

Copy to clipboard
<service id="tiki.controller.wiki" class="Services_Wiki_Controller"/>
 

Actions

A service can contain one or more controllers. The Wiki, for example, contains two controllers: Services_Wiki_StructureController and Services_Wiki_Controller.

Public and private functions
 

Smarty tpl


 

Using $input

$input holds all information passed to the action (variables with values). This needs to be extracted and validated in the action.

Using $confirm

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.

1) use service
2) use bootstrap_modal

How to...

Create a service

Show PHP error messages