00001 <?php
00002
00015 import('lib.pkp.classes.controllers.grid.GridRow');
00016
00017
00018 import('lib.pkp.classes.linkAction.request.AjaxModal');
00019 import('lib.pkp.classes.linkAction.request.RemoteActionConfirmationModal');
00020
00021 class LibraryFileGridRow extends GridRow {
00023 var $_fileType;
00024
00026 var $_canEdit;
00027
00029 var $_monograph;
00030
00034 function LibraryFileGridRow($canEdit = false, $monograph = null) {
00035 $this->_canEdit = $canEdit;
00036 $this->_monograph = $monograph;
00037 parent::GridRow();
00038 }
00039
00040
00041
00042
00047 function getFileType() {
00048 return $this->_fileType;
00049 }
00050
00051 function setFileType($fileType) {
00052 $this->_fileType = $fileType;
00053 }
00054
00055
00056
00057
00058
00059
00060
00061
00062 function initialize(&$request) {
00063 parent::initialize($request);
00064
00065 $this->setFileType($request->getUserVar('fileType'));
00066
00067
00068 $fileId = $this->getId();
00069
00070 if (!empty($fileId) && $this->_canEdit) {
00071
00072 $router =& $request->getRouter();
00073 $actionArgs = array(
00074 'fileId' => $fileId,
00075 );
00076
00077 if ($this->_monograph) {
00078 $actionArgs['monographId'] = $this->_monograph->getId();
00079 }
00080
00081 $this->addAction(
00082 new LinkAction(
00083 'editFile',
00084 new AjaxModal(
00085 $router->url($request, null, null, 'editFile', null, $actionArgs),
00086 __('grid.action.edit'),
00087 'modal_edit'
00088 ),
00089 __('grid.action.edit'),
00090 'edit'
00091 )
00092 );
00093 $this->addAction(
00094 new LinkAction(
00095 'deleteFile',
00096 new RemoteActionConfirmationModal(
00097 __('common.confirmDelete'), __('common.delete'),
00098 $router->url($request, null, null, 'deleteFile', null, $actionArgs),
00099 'modal_delete'
00100 ),
00101 __('grid.action.delete'),
00102 'delete'
00103 )
00104 );
00105 }
00106 }
00107 }
00108
00109 ?>