QuestionPluginBase

Extends \PluginBase

NB: Deleting this class will break plugin API, since plugins then would have to extend PluginBase in the namespace instead of this class.

Methods

Constructor for the plugin

__construct(\ls\pluginmanager\PluginManager $manager, int $id) 
inherited
todo

Add proper type hint in 3.0

Arguments

$manager

\ls\pluginmanager\PluginManager

The plugin manager instantiating the object

$id

int

The id for storage

listQuestionPlugins

listQuestionPlugins(\PluginEvent $event) 

Arguments

$event

\PluginEvent

This function registers a javascript file to be included in the page.

registerJs(string $fileName) 

$fileName can be either: - Fully qualified url, will be used as is. (containing //) - Limesurvey relative path, relative to limesurvey root. (starting with a single /) - Local relative path, will be used as path relative inside the plugins' path. -

Arguments

$fileName

string

registerCss

registerCss($fileName) 

Arguments

$fileName

This function retrieves plugin data. Do not cache this data; the plugin storage engine will handling caching. After the first call to this function, subsequent calls will only consist of a few function calls and array lookups.

get(string $key = null, string $model = null, int $id = null, mixed $default = null) : boolean
inherited

Arguments

$key

string

$model

string

$id

int

$default

mixed

The default value to use when not was set

Response

boolean

Return the description for this plugin

getDescription() 
inherited static

Get the current event this plugin is responding to

getEvent() : \ls\pluginmanager\PluginEvent
inherited

Returns the id of the plugin

getId() : int
inherited

Used by storage model to find settings specific to this plugin

Response

int

Provides meta data on the plugin settings that are available for this plugin.

getPluginSettings($getValues = true) 
inherited

This does not include enable / disable; a disabled plugin is never loaded.

Arguments

$getValues

getName

getName() 
inherited static

Returns the plugin storage and takes care of instantiating it

getStore() : \ls\pluginmanager\iPluginStorage
inherited

Publishes plugin assets.

publish($fileName) 
inherited

Arguments

$fileName

registerSetting

registerSetting(string $name, array $options = array('type' => 'string')) 
inherited

Arguments

$name

string

Name of the setting.
The type of the setting is either a basic type or choice. The choice type is either a single or a multiple choice setting.

$options

array

Contains parameters for the setting. The 'type' key contains the parameter type. The type is one of: string, int, float, choice. Supported keys per type: String: max-length(int), min-length(int), regex(string). Int: max(int), min(int). Float: max(float), min(float). Choice: choices(array containing values as keys and names as values), multiple(bool) Note that the values for choice will be translated.

saveSettings

saveSettings(\ls\pluginmanager\type $settings) 
inherited

Arguments

$settings

\ls\pluginmanager\type

This function stores plugin data.

set(string $key, mixed $data, string $model = null, int $id = null) : boolean
inherited

Arguments

$key

string

$data

mixed

$model

string

$id

int

Response

boolean

Set the event to the plugin, this method is executed by the PluginManager just before dispatching the event.

setEvent(\ls\pluginmanager\PluginEvent $event) : \ls\pluginmanager\PluginBase
inherited

This function subscribes the plugin to receive an event.

subscribe(string $event, string $function = null) 
inherited

Arguments

$event

string

$function

string

This function unsubscribes the plugin from an event.

unsubscribe(string $event) 
inherited

Arguments

$event

string

Look for views in plugin views/ folder and render it (no echo)

renderPartial(string $viewfile, array $data, boolean $return = false, boolean $processOutput = false) : \ls\pluginmanager\string;
inherited

Arguments

$viewfile

string

Filename of view in views/ folder

$data

array

$return

boolean

$processOutput

boolean

Response

\ls\pluginmanager\string;

To find the plugin locale file, we need late runtime result of __DIR__.

getDir() : string
inherited

Solution copied from http://stackoverflow.com/questions/18100689/php-dir-evaluated-runtime-late-binding

Response

string

Properties

Lists the question objects supported by the plugin.

questionTypes : array

Use dot notation for indicating subdirectories. Example 1: 'subdirectory.questionobject' Example 2: 'questionobject'

var

of string

Type(s)

array

storage

storage : 
inherited

api

api : \ls\pluginmanager\LimesurveyApi
inherited

event

event : \ls\pluginmanager\PluginEvent
inherited

id

id : 
inherited

description

description : 
inherited static

name

name : 
inherited static

store

store : 
inherited

settings

settings : 
inherited

This holds the pluginmanager that instantiated the plugin

pluginManager : \ls\pluginmanager\PluginManager
inherited