SurveysGroupsPermissionController

Extends\LSBaseController

Class SurveysGroupsPermissionController

this controller will have all the necessary methods from the old AdminController

package

Default

Methods

Basic initialiser to the base controller class

__construct(string $id,\CWebModule $module = null)
inherited
access

public

Arguments

$id

string

$module

\CWebModule

Check that installation was already done by looking for config.php Will redirect to the installer script if not exists.

_checkInstallation(): void
inherited
access

protected

It's import to have the accessRules set (security issue).

accessRules(): array

Only logged in users should have access to actions. All other permissions should be checked in the action itself.

Response

array

Add minimal permission (read) to user Show result and allow to set other permissions

actionAddUser(integer $id): void

Arguments

$id

integer

SurveysGroups id

Add minimal permission (read) to all users in a group of user Show result and allow to set other permissions

actionAddUserGroup(integer $id): void

Arguments

$id

integer

SurveysGroups id

Shown permissions list for user (or group)

actionDeleteUser(integer $id,integer $uid): void

Arguments

$id

integer

SurveysGroups id

$uid

integer

user id

Shown permissions list, allow to add user and group, No action done

actionIndex(integer $id): void
Throws
\CHttpException

Arguments

$id

integer

SurveysGroups id

Save current permissions for user (or group) use POST value for user id or group id redirect (in all cas) to surveysgroups permission or to user set permission (permissionsSet function)

actionSave(integer $id): void

Arguments

$id

integer

SurveysGroups id

Shown permissions list for user

actionViewUser(integer $id,integer $to): void

Arguments

$id

integer

SurveysGroups id

$to

integer

user id

Shown permissions list for user group

actionViewUserGroup(integer $id,integer $to): void

Arguments

$id

integer

SurveysGroups id

$to

integer

group id

This part comes from renderWrappedTemplate (not the best way to refactoring, but a temporary solution)

beforeRender(string $view): boolean
inherited

todo REFACTORING find all actions that set $aData['surveyid'] and change the layout directly in the action

Arguments

$view

string

Response

boolean

Creates an absolute URL based on the given controller and action information.

createAbsoluteUrl(string $route,array $params = array(),string $schema = '',string $ampersand = '&'): string
inherited

Arguments

$route

string

the URL route. This should be in the format of 'ControllerID/ActionID'.

$params

array

additional GET parameters (name=>value). Both the name and value will be URL-encoded.

$schema

string

schema to use (e.g. http, https). If empty, the schema used for the current request will be used.

$ampersand

string

the token separating name-value pairs in the URL.

Response

string

the constructed URL

customInit

customInit()
inherited

filters

filters()

Loads a helper

loadHelper(string $helper): void
inherited
access

public

Arguments

$helper

string

Loads a library

loadLibrary(string $library): void
inherited
access

public

Arguments

$library

string

Returns the data model based on the primary key given If the data model is not found, an HTTP exception will be raised.

loadModel(integer $id): \SurveysGroups

Check minimal permission to see

Throws
\CHttpException

Arguments

$id

integer

the ID of the model to be loaded

Response

\SurveysGroups

the loaded model

Loads page states from a hidden input.

loadPageStates(): array
inherited

Response

array

the loaded page states

Method to render an array as a json document (this one called by a lot of actions in different controllers)

renderJSON(array $aData, $success = true): void
inherited

Arguments

$aData

array

$success

Checks for action specific authorization and then executes an action

run(string $action): void
inherited

TODO: check the dbupdate mechanism, do we really want to check db update before every action??

access

public

Throws
\CException
\CHttpException

Arguments

$action

string

Load and set session vars

sessionControl(): void
inherited

todo REFACTORING see comments in mehtod

access

protected

Shown permissions list for user or group

viewUserOrUserGroup(integer $id,integer $to,string $type = 'user'): void

Arguments

$id

integer

SurveysGroups id

$to

integer

user or group id

$type

string

user or group

Properties

By default : just view

defaultAction :

Type(s)

this is needed for the preview rendering inside the questioneditor

sTemplate :null
inherited
var

this is needed for the preview rendering inside the questioneditor

Type(s)

null

import for all new controllers/actions (REFACTORING) to pass data before rendering the content

aData :array
inherited
var

import for all new controllers/actions (REFACTORING) to pass data before rendering the content

Type(s)

array

userId of the logged in user

userId :integer
inherited
var

userId of the logged in user

Type(s)

integer

This array contains the survey / group / question id used by the menu widget.

navData :array
inherited
var

Type(s)

array