UserGroupController

Extends\LSBaseController

Class LSBaseController

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

_init

_init()
inherited

accessRules

accessRules()

Adds a user to usergroup if action is set to "saveusergroup"

actionAddGroup()

Adds a user to a group

actionAddUserToGroup( $ugid)

Arguments

$ugid

Deletes a usergroup and all entries in UserInGroup related to that group

actionDeleteGroup()

Deletes a user from group

actionDeleteUserFromGroup( $ugid)
Throws
\CDbException

Arguments

$ugid

Load edit user group screen.

actionEdit(mixed $ugid): void

Arguments

$ugid

mixed

Load main user group screen, showing all existing userGroups in a gridview.

actionIndex(): array

Response

array

Sends email to all users in a group

actionMailToAllUsersInGroup( $ugid)

Arguments

$ugid

Renders a view for a particular group showing all users in group

actionViewGroup( $ugid,boolean $header = false)

Arguments

$ugid

$header

boolean

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

Checks permission to add/delete users to group and checks if group and user exists

checkBeforeAddDeleteUser( $uid, $userGroupId): array

todo: could be moved to model

Arguments

$uid

integer userID

$userGroupId

integer userGroupID

Response

array

if empty everything is ok, else ['errorMsg'] ['redirectPath']

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

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

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

Properties

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