00001 <?php
00002
00015 import('lib.pkp.classes.controllers.grid.GridHandler');
00016 import('controllers.grid.admin.systemInfo.InfoGridCellProvider');
00017
00018
00019 class VersionInfoGridHandler extends GridHandler {
00023 function VersionInfoGridHandler() {
00024 parent::GridHandler();
00025 $this->addRoleAssignment(array(
00026 ROLE_ID_SITE_ADMIN),
00027 array('fetchGrid', 'fetchRow')
00028 );
00029 }
00030
00031
00032
00033
00034
00038 function authorize(&$request, $args, $roleAssignments) {
00039 import('lib.pkp.classes.security.authorization.PolicySet');
00040 $rolePolicy = new PolicySet(COMBINING_PERMIT_OVERRIDES);
00041
00042 import('lib.pkp.classes.security.authorization.RoleBasedHandlerOperationPolicy');
00043 foreach($roleAssignments as $role => $operations) {
00044 $rolePolicy->addPolicy(new RoleBasedHandlerOperationPolicy($request, $role, $operations));
00045 }
00046 $this->addPolicy($rolePolicy);
00047
00048 return parent::authorize($request, $args, $roleAssignments);
00049 }
00050
00054 function initialize(&$request) {
00055 parent::initialize($request);
00056
00057
00058 AppLocale::requireComponents(
00059 LOCALE_COMPONENT_PKP_USER,
00060 LOCALE_COMPONENT_PKP_ADMIN,
00061 LOCALE_COMPONENT_OMP_ADMIN,
00062 LOCALE_COMPONENT_OMP_MANAGER,
00063 LOCALE_COMPONENT_APPLICATION_COMMON
00064 );
00065
00066
00067 $this->setTitle('admin.versionHistory');
00068
00069
00070
00071
00072 import('controllers.grid.admin.systemInfo.InfoGridCellProvider');
00073 $infoGridCellProvider = new InfoGridCellProvider();
00074
00075
00076 $this->addColumn(
00077 new GridColumn(
00078 'version',
00079 'admin.version',
00080 null,
00081 'controllers/grid/gridCell.tpl',
00082 $infoGridCellProvider,
00083 array('width' => 20)
00084 )
00085 );
00086
00087
00088 $this->addColumn(
00089 new GridColumn(
00090 'versionMajor',
00091 'admin.versionMajor',
00092 null,
00093 'controllers/grid/gridCell.tpl',
00094 $infoGridCellProvider
00095 )
00096 );
00097
00098
00099 $this->addColumn(
00100 new GridColumn(
00101 'versionMinor',
00102 'admin.versionMinor',
00103 null,
00104 'controllers/grid/gridCell.tpl',
00105 $infoGridCellProvider
00106 )
00107 );
00108
00109
00110 $this->addColumn(
00111 new GridColumn(
00112 'versionRevision',
00113 'admin.versionRevision',
00114 null,
00115 'controllers/grid/gridCell.tpl',
00116 $infoGridCellProvider
00117 )
00118 );
00119
00120
00121 $this->addColumn(
00122 new GridColumn(
00123 'versionBuild',
00124 'admin.versionBuild',
00125 null,
00126 'controllers/grid/gridCell.tpl',
00127 $infoGridCellProvider
00128 )
00129 );
00130
00131
00132 $this->addColumn(
00133 new GridColumn(
00134 'dateInstalled',
00135 'admin.dateInstalled',
00136 null,
00137 'controllers/grid/gridCell.tpl',
00138 $infoGridCellProvider
00139 )
00140 );
00141 }
00142
00143
00144
00145
00146
00147
00151 function loadData(&$request, $filter) {
00152
00153 $versionDao =& DAORegistry::getDAO('VersionDAO');
00154 $versionHistory =& $versionDao->getVersionHistory();
00155 return $versionHistory;
00156 }
00157 }
00158 ?>