00001 <?php
00021 import('lib.pkp.classes.security.authorization.AuthorizationPolicy');
00022
00023 class MonographAuthorPolicy extends AuthorizationPolicy {
00025 var $_request;
00026
00031 function MonographAuthorPolicy(&$request) {
00032 parent::AuthorizationPolicy('user.authorization.monographAuthor');
00033 $this->_request =& $request;
00034 }
00035
00036
00037
00038
00042 function effect() {
00043
00044 $user =& $this->_request->getUser();
00045 if (!is_a($user, 'PKPUser')) return AUTHORIZATION_DENY;
00046
00047
00048 $monograph =& $this->getAuthorizedContextObject(ASSOC_TYPE_MONOGRAPH);
00049 if (!is_a($monograph, 'Monograph')) return AUTHORIZATION_DENY;
00050
00051
00052 if ($monograph->getUserId() === $user->getId()) {
00053 return AUTHORIZATION_PERMIT;
00054 } else {
00055 return AUTHORIZATION_DENY;
00056 }
00057 }
00058 }
00059
00060 ?>