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

classes/security/authorization/internal/MonographAuthorPolicy.inc.php

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    // Implement template methods from AuthorizationPolicy
00038    //
00042    function effect() {
00043       // Get the user
00044       $user =& $this->_request->getUser();
00045       if (!is_a($user, 'PKPUser')) return AUTHORIZATION_DENY;
00046 
00047       // Get the monograph
00048       $monograph =& $this->getAuthorizedContextObject(ASSOC_TYPE_MONOGRAPH);
00049       if (!is_a($monograph, 'Monograph')) return AUTHORIZATION_DENY;
00050 
00051       // Check authorship of the monograph.
00052       if ($monograph->getUserId() === $user->getId()) {
00053          return AUTHORIZATION_PERMIT;
00054       } else {
00055          return AUTHORIZATION_DENY;
00056       }
00057    }
00058 }
00059 
00060 ?>

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