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

controllers/grid/admin/systemInfo/VersionInfoGridHandler.inc.php

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    // Implement template methods from PKPHandler.
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       // Load user-related translations.
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       // Basic grid configuration.
00067       $this->setTitle('admin.versionHistory');
00068 
00069       //
00070       // Grid columns.
00071       //
00072       import('controllers.grid.admin.systemInfo.InfoGridCellProvider');
00073       $infoGridCellProvider = new InfoGridCellProvider();
00074 
00075       // Version number.
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       // major version number.
00088       $this->addColumn(
00089          new GridColumn(
00090             'versionMajor',
00091             'admin.versionMajor',
00092             null,
00093             'controllers/grid/gridCell.tpl',
00094             $infoGridCellProvider
00095          )
00096       );
00097 
00098       // minor version number.
00099       $this->addColumn(
00100          new GridColumn(
00101             'versionMinor',
00102             'admin.versionMinor',
00103             null,
00104             'controllers/grid/gridCell.tpl',
00105             $infoGridCellProvider
00106          )
00107       );
00108 
00109       // revision version number.
00110       $this->addColumn(
00111          new GridColumn(
00112             'versionRevision',
00113             'admin.versionRevision',
00114             null,
00115             'controllers/grid/gridCell.tpl',
00116             $infoGridCellProvider
00117          )
00118       );
00119 
00120       // build version number.
00121       $this->addColumn(
00122          new GridColumn(
00123             'versionBuild',
00124             'admin.versionBuild',
00125             null,
00126             'controllers/grid/gridCell.tpl',
00127             $infoGridCellProvider
00128          )
00129       );
00130 
00131       // installation date
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    // Implement template methods from GridHandler
00146    //
00147 
00151    function loadData(&$request, $filter) {
00152 
00153       $versionDao =& DAORegistry::getDAO('VersionDAO');
00154       $versionHistory =& $versionDao->getVersionHistory();
00155       return $versionHistory;
00156    }
00157 }
00158 ?>

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