Open Journal Systems  3.3.0
SetupGridHandler.inc.php
1 <?php
2 
16 import('lib.pkp.classes.controllers.grid.GridHandler');
17 
22  function __construct() {
23  parent::__construct();
24  $this->addRoleAssignment(
25  array(ROLE_ID_MANAGER),
26  array('uploadImage')
27  );
28  }
29 
33  function initialize($request, $args = null) {
34  parent::initialize($request, $args);
35 
36  AppLocale::requireComponents(LOCALE_COMPONENT_APP_MANAGER);
37  }
38 
43  function authorize($request, &$args, $roleAssignments, $contextRequired = true) {
44  if ($contextRequired) {
45  import('lib.pkp.classes.security.authorization.ContextAccessPolicy');
46  $this->addPolicy(new ContextAccessPolicy($request, $roleAssignments));
47  }
48  return parent::authorize($request, $args, $roleAssignments);
49  }
50 
56  function uploadImage($args, $request) {
57  $router = $request->getRouter();
58  $context = $request->getContext();
59  $user = $request->getUser();
60 
61  import('lib.pkp.classes.file.TemporaryFileManager');
62  $temporaryFileManager = new TemporaryFileManager();
63  $temporaryFile = $temporaryFileManager->handleUpload('uploadedFile', $user->getId());
64  if ($temporaryFile) {
65  $json = new JSONMessage(true);
66  $json->setAdditionalAttributes(array(
67  'temporaryFileId' => $temporaryFile->getId()
68  ));
69  return $json;
70  } else {
71  return new JSONMessage(false, __('common.uploadFailed'));
72  }
73  }
74 }
75 
76 
PKPHandler\addRoleAssignment
addRoleAssignment($roleIds, $operations)
Definition: PKPHandler.inc.php:213
TemporaryFileManager
Definition: TemporaryFileManager.inc.php:19
SetupGridHandler
Base class for setup grid handlers.
Definition: SetupGridHandler.inc.php:18
AppLocale\requireComponents
static requireComponents()
Definition: env1/MockAppLocale.inc.php:56
ContextAccessPolicy
Class to control access to PKP applications' setup components.
Definition: ContextAccessPolicy.inc.php:17
SetupGridHandler\authorize
authorize($request, &$args, $roleAssignments, $contextRequired=true)
Definition: SetupGridHandler.inc.php:43
JSONMessage
Class to represent a JSON (Javascript Object Notation) message.
Definition: JSONMessage.inc.php:18
SetupGridHandler\initialize
initialize($request, $args=null)
Definition: SetupGridHandler.inc.php:33
SetupGridHandler\__construct
__construct()
Definition: SetupGridHandler.inc.php:22
GridHandler
This class defines basic operations for handling HTML grids. Grids are used to implement a standardiz...
Definition: GridHandler.inc.php:58
SetupGridHandler\uploadImage
uploadImage($args, $request)
Definition: SetupGridHandler.inc.php:56
PKPHandler\addPolicy
addPolicy($authorizationPolicy, $addToTop=false)
Definition: PKPHandler.inc.php:157