16 import(
'lib.pkp.classes.controllers.grid.GridCellProvider');
28 $userGroup = $row->getData();
29 $columnId = $column->getId();
33 $assignedStages = $userGroupDao->getAssignedStagesByUserGroupId($userGroup->getContextId(), $userGroup->getId());
37 return array(
'label' => $userGroup->getLocalizedName());
40 return array(
'label' => __(array_shift($roleNames)));
41 case in_array($columnId, $workflowStages):
44 $selectDisabled =
false;
45 if (in_array($columnId, $roleDao->getForbiddenStages($userGroup->getRoleId()))) {
47 $selectDisabled =
true;
50 return array(
'selected' => in_array($columnId, array_keys($assignedStages)),
51 'disabled' => $selectDisabled);
56 return parent::getTemplateVarsFromRowColumn($row, $column);
62 function getCellActions($request, $row, $column, $position = GRID_ACTION_POSITION_DEFAULT) {
64 $columnId = $column->getId();
66 if (in_array($columnId, $workflowStages)) {
67 $userGroup = $row->getData();
69 $assignedStages = $userGroupDao->getAssignedStagesByUserGroupId($userGroup->getContextId(), $userGroup->getId());
71 $router = $request->getRouter();
74 if (!in_array($columnId, $roleDao->getForbiddenStages($userGroup->getRoleId()))) {
75 if (in_array($columnId, array_keys($assignedStages))) {
76 $operation =
'unassignStage';
77 $actionTitleKey =
'grid.userGroup.unassignStage';
79 $operation =
'assignStage';
80 $actionTitleKey =
'grid.userGroup.assignStage';
82 $actionArgs = array_merge(array(
'stageId' => $columnId),
83 $row->getRequestArgs());
85 $actionUrl = $router->url($request,
null,
null, $operation,
null, $actionArgs);
86 import(
'lib.pkp.classes.linkAction.request.AjaxAction');
96 return array($linkAction);
100 return parent::getCellActions($request, $row, $column, $position);