• Main Page
  • Modules
  • Classes
  • Files
  • File List

controllers/grid/settings/user/UserGridRow.inc.php

00001 <?php
00002 
00015 import('lib.pkp.classes.controllers.grid.GridRow');
00016 import('lib.pkp.classes.linkAction.request.RemoteActionConfirmationModal');
00017 
00018 class UserGridRow extends GridRow {
00022    function UserGridRow() {
00023       parent::GridRow();
00024    }
00025 
00026 
00027    //
00028    // Overridden methods from GridRow
00029    //
00033    function initialize(&$request) {
00034       parent::initialize($request);
00035 
00036       // Is this a new row or an existing row?
00037       $element =& $this->getData();
00038       assert(is_a($element, 'User'));
00039 
00040       $rowId = $this->getId();
00041 
00042       if (!empty($rowId) && is_numeric($rowId)) {
00043          // Only add row actions if this is an existing row
00044          $router =& $request->getRouter();
00045          $actionArgs = array(
00046             'gridId' => $this->getGridId(),
00047             'rowId' => $rowId
00048          );
00049          $this->addAction(
00050             new LinkAction(
00051                'email',
00052                new AjaxModal(
00053                   $router->url($request, null, null, 'editEmail', null, $actionArgs),
00054                   __('grid.user.email'),
00055                   'modal_email',
00056                   true
00057                   ),
00058                __('grid.user.email'),
00059                'notify')
00060          );
00061          $this->addAction(
00062             new LinkAction(
00063                'edit',
00064                new AjaxModal(
00065                   $router->url($request, null, null, 'editUser', null, $actionArgs),
00066                   __('grid.user.edit'),
00067                   'modal_edit',
00068                   true
00069                   ),
00070                __('grid.user.edit'),
00071                'edit')
00072          );
00073          if ($element->getDisabled()) {
00074             $actionArgs['enable'] = true;
00075             $this->addAction(
00076                new LinkAction(
00077                   'enable',
00078                   new AjaxModal(
00079                      $router->url($request, null, null, 'editDisableUser', null, $actionArgs),
00080                      __('common.enable'),
00081                      'enable',
00082                      true
00083                      ),
00084                   __('common.enable'),
00085                   'enable')
00086             );
00087          } else {
00088             $actionArgs['enable'] = false;
00089             $this->addAction(
00090                new LinkAction(
00091                   'disable',
00092                   new AjaxModal(
00093                      $router->url($request, null, null, 'editDisableUser', null, $actionArgs),
00094                      __('grid.user.disable'),
00095                      'disable',
00096                      true
00097                      ),
00098                   __('grid.user.disable'),
00099                   'disable')
00100             );
00101          }
00102          $this->addAction(
00103             new LinkAction(
00104                'remove',
00105                new RemoteActionConfirmationModal(
00106                   __('manager.people.confirmRemove'),
00107                   __('common.remove'),
00108                   $router->url($request, null, null, 'removeUser', null, $actionArgs),
00109                   'modal_delete'
00110                   ),
00111                __('grid.action.remove'),
00112                'delete')
00113          );
00114       }
00115    }
00116 }
00117 
00118 ?>

Generated on Mon Sep 17 2012 13:58:56 for Open Monograph Press by  doxygen 1.7.1