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

controllers/grid/submissions/SubmissionsListGridRow.inc.php

00001 <?php
00002 
00015 import('lib.pkp.classes.controllers.grid.GridRow');
00016 import('lib.pkp.classes.linkAction.request.AjaxModal');
00017 
00018 class SubmissionsListGridRow extends GridRow {
00019 
00021    var $_canDelete;
00022 
00026    function SubmissionsListGridRow($canDelete = false) {
00027       $this->_canDelete = $canDelete;
00028       parent::GridRow();
00029    }
00030 
00031    //
00032    // Overridden template methods
00033    //
00034    /*
00035     * Configure the grid row
00036     * @param $request PKPRequest
00037     */
00038    function initialize(&$request) {
00039       parent::initialize($request);
00040 
00041       $rowId = $this->getId();
00042 
00043       if (!empty($rowId) && is_numeric($rowId)) {
00044          // 1) Delete submission action.
00045          $monographDao =& DAORegistry::getDAO('MonographDAO'); /* @var $monographDao MonographDAO */
00046          $monograph =& $monographDao->getById($rowId);
00047          assert(is_a($monograph, 'Monograph'));
00048          if ($this->_canDelete && $monograph->getSubmissionProgress() != 0) {
00049             $router =& $request->getRouter();
00050             import('lib.pkp.classes.linkAction.request.RemoteActionConfirmationModal');
00051             $confirmationModal = new RemoteActionConfirmationModal(
00052                   __('common.confirmDelete'), __('common.delete'),
00053                   $router->url(
00054                      $request, null, null,
00055                      'deleteSubmission', null, array('monographId' => $rowId)
00056                   ),
00057                   'modal_delete'
00058                );
00059 
00060             $this->addAction(new LinkAction('delete', $confirmationModal, __('grid.action.delete'), 'delete'));
00061          }
00062 
00063          // 2) Information Centre action
00064          import('controllers.informationCenter.linkAction.SubmissionInfoCenterLinkAction');
00065          $this->addAction(new SubmissionInfoCenterLinkAction($request, $rowId, 'grid.action.moreInformation'));
00066       }
00067    }
00068 }
00069 
00070 ?>

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