QuestionTheme

Extends \LSActiveRecord

This is the model class for table "{{question_themes}}".

The followings are the available columns in table '{{question_themes}}':

package

Default

Methods

attributeLabels

attributeLabels() : array

Response

array

customized attribute labels (name=>label)

Lists the behaviors of this model

behaviors() : array
inherited

Below is a list of all behaviors we register:

see \CTimestampBehavior \PluginEventBehavior

Response

array

Converts LS3 Question Theme to LS4

convertLS3toLS4(string $sXMLDirectoryPath) : array
static

Arguments

$sXMLDirectoryPath

string

Response

array

$success Returns an array with the conversion status

Decrypt values from database

decrypt( $value = '') 
inherited

Arguments

$value

Encrypt/decrypt values

decryptEncryptAttributes( $action = 'decrypt') 
inherited

Arguments

$action

Decrypt single value

decryptSingle(string $value = '') 
inherited static

Arguments

$value

string

String value which needs to be decrypted

deleteAllByAttributes

deleteAllByAttributes(array $attributes, string $condition = '', array $params = array()) : integer
inherited
todo

This should also be moved to the behavior at some point. This method overrides the parent in order to raise PluginEvents for Bulk delete operations.

Filter Criteria are wrapped into a CDBCriteria instance so we have a single instance responsible for holding the filter criteria to be passed to the PluginEvent, this also enables us to pass the fully configured CDBCriteria instead of the original Parameters.

See {@link find()} for detailed explanation about $condition and $params.

Arguments

$attributes

array

list of attribute values (indexed by attribute names) that the active records should match. An attribute value can be an array which will be used to generate an IN condition.

$condition

string

query condition or criteria.

$params

array

parameters to be bound to an SQL statement.

Response

integer

number of rows affected by the execution.

dispatchPluginModelEvent

dispatchPluginModelEvent(string $sEventName, \CDbCriteria $criteria = null, array $eventParams = array() : \PluginEvent
inherited

)

Arguments

$sEventName

string

$criteria

\CDbCriteria

$eventParams

array

Response

\PluginEvent

Encrypt values

encrypt() 
inherited

Attribute values are encrypted ( if needed )to be used for searching purposes

encryptAttributeValues(array $attributes = null,  $bEncryptedOnly = false,  $bReplaceValues = true) : array
inherited

Arguments

$attributes

array

list of attribute values (indexed by attribute names) that the active records should match. An attribute value can be an array which will be used to generate an IN condition.

$bEncryptedOnly

$bReplaceValues

Response

array

attributes array with encrypted atrribute values is returned

Encrypt values before saving to the database

encryptSave( $runValidation = false) 
inherited

Arguments

$runValidation

Enrypt single value

encryptSingle(string $value = '') 
inherited static

Arguments

$value

string

String value which needs to be decrypted

Finds all active records satisfying the specified condition but returns them as array

findAllAsArray(mixed $condition = '', array $params = array()) : array
inherited

See \find() for detailed explanation about $condition and $params.

Arguments

$condition

mixed

query condition or criteria.

$params

array

parameters to be bound to an SQL statement.

Response

array

list of active records satisfying the specified condition. An empty array is returned if none is found.

Overriding of Yii's findAllByAttributes method to provide encrypted attribute value search

findAllByAttributes(array $attributes, mixed $condition = '', array $params = array()) : array<mixed,static>
inherited

Arguments

$attributes

array

list of attribute values (indexed by attribute names) that the active records should match. An attribute value can be an array which will be used to generate an IN condition.

$condition

mixed

query condition or criteria.

$params

array

parameters to be bound to an SQL statement.

Response

array<mixed,static>

the records found. An empty array is returned if none is found.

Returns all Question Meta Data for the question type selector

findAllQuestionMetaDataForSelector() : mixed
static

Response

mixed

$baseQuestions Questions as Array or Object

Overriding of Yii's findByAttributes method to provide encrypted attribute value search

findByAttributes(array $attributes, mixed $condition = '', array $params = array()) : static|null
inherited

Arguments

$attributes

array

list of attribute values (indexed by attribute names) that the active records should match. An attribute value can be an array which will be used to generate an IN condition.

$condition

mixed

query condition or criteria.

$params

array

parameters to be bound to an SQL statement.

Response

static|null

the record found. Null if none is found.

getAllEncryptedAttributes

getAllEncryptedAttributes(integer $iSurveyId, string $sClassName) : array
inherited

Arguments

$iSurveyId

integer

$sClassName

string

Response

array

Find all XML paths for specified Question Root folders

getAllQuestionXMLPaths(boolean $core = true, boolean $custom = true, boolean $user = true) : array
static

Arguments

$core

boolean

$custom

boolean

$user

boolean

Response

array

Returns the table definition for the current Question

getAnswerColumnDefinition(string $name, string $type) : string
static

Arguments

$name

string

$type

string

Response

string

mixed

Returns all Questions that can be installed

getAvailableQuestions() : array<mixed,\QuestionTheme>
Throws
\Exception

Response

array<mixed,\QuestionTheme>

Install Button for the available questions

getManifestButtons() 

Return the max value for a field

getMaxId(string $field = null, boolean $forceRefresh = false) : false|integer
inherited

This is a convenience method, that uses the primary key of the model to retrieve the highest value.

Throws
\Exception

Arguments

$field

string

The field that contains the Id, when null primary key is used if it is a single field

$forceRefresh

boolean

Don't use value from static cache but always requery the database

Response

false|integer

Returns QuestionMetaData Array for use in ->save operations

getMetaDataArray(array $questionMetaData) : array

Arguments

$questionMetaData

array

Response

array

$questionMetaData

Return the min value for a field

getMinId(string $field = null, boolean $forceRefresh = false) : false|integer
inherited

This is a convenience method, that uses the primary key of the model to retrieve the highest value.

Throws
\Exception

Arguments

$field

string

The field that contains the Id, when null primary key is used if it is a single field

$forceRefresh

boolean

Don't use value from static cache but always requery the database

Response

false|integer

getQuestionThemeDirectories

getQuestionThemeDirectories() 
static

Return the question Theme preview URL

getQuestionThemeImageName( $sType = null) : string
static

Arguments

$sType

: type of question

Response

string

: question theme preview URL

Returns the Config Path for the selected Question Type base definition

getQuestionXMLPathForBaseType(string $type) : string
static
Throws
\CException

Arguments

$type

string

Response

string

Path to config XML

getVisibilityButton

getVisibilityButton() 

Import config manifest to database.

importManifest(string $sXMLDirectoryPath, boolean $bSkipConversion = false) : boolean|string
Throws
\Exception

Arguments

$sXMLDirectoryPath

string

the relative path to the Question Theme XML directory

$bSkipConversion

boolean

If converting should be skipped

Response

boolean|string

Import all Questiontypes and Themes to the {{questions_themes}} table

loadAllQuestionXMLConfigurationsIntoDatabase(boolean $bUseTransaction = true) 
Throws
\CException

Arguments

$bUseTransaction

boolean

Returns the static model of the specified AR class.

model(string $className = __CLASS__) : \Template
static

Please note that you should have this exact method in all your CActiveRecord descendants!

Arguments

$className

string

active record class name.

Response

\Template

the static model class

Returns this table's primary key

primaryKey() : string
access

public

Response

string

Modified version that default to do the same as the original, but allows via a third parameter to retrieve the result as array instead of active records. This solves a joining problem. Usage via findAllAsArray method

query(\CDbCriteria $criteria, boolean $all = false, boolean $asAR = true) : mixed
inherited

Performs the actual DB query and populates the AR objects with the query result. This method is mainly internally used by other AR query methods.

since 1.1.7

Arguments

$criteria

\CDbCriteria

the query criteria

$all

boolean

whether to return all data

$asAR

boolean

Response

mixed

the AR objects populated with the query result

relations

relations() : array

Response

array

relational rules.

rules

rules() : array

Response

array

validation rules for model attributes.

Function to show encryption symbol in gridview attribute header if value ois encrypted

setEncryptedAttributeLabel(integer $surveyId, string $className, string $attributeName) : string
inherited
Throws
\CException

Arguments

$surveyId

integer

$className

string

$attributeName

string

Response

string

tableName

tableName() : string

Response

string

the associated database table name

uninstall

uninstall(\QuestionTheme $oQuestionTheme) : array
static

Arguments

$oQuestionTheme

\QuestionTheme

Response

array

todo move actions to its controller and split between controller and model, related search for: 1573123789741

Properties

bEncryption

bEncryption : 
inherited

Type(s)

id

id : integer

Type(s)

integer

name

name : string

Type(s)

string

visible

visible : string

Type(s)

string

xml_path

xml_path : string

Type(s)

string

image_path

image_path : string

Type(s)

string

title

title : string

Type(s)

string

creation_date

creation_date : string

Type(s)

string

author

author : string

Type(s)

string

author_email

author_email : string

Type(s)

string

author_url

author_url : string

Type(s)

string

license

license : string

Type(s)

string

version

version : string

Type(s)

string

api_version

api_version : string

Type(s)

string

description

description : string

Type(s)

string

last_update

last_update : string

Type(s)

string

owner_id

owner_id : integer

Type(s)

integer

theme_type

theme_type : string

Type(s)

string

question_type

question_type : string

Type(s)

string

core_theme

core_theme : integer

Type(s)

integer

extends

extends : string

Type(s)

string

group

group : string

Type(s)

string

settings

settings : string

Type(s)

string