15 import(
'lib.pkp.classes.security.authorization.DataObjectRequiredPolicy');
 
   25    function __construct($request, &$args, $parameterName = 
'queryId', $operations = 
null) {
 
   26       parent::__construct($request, $args, $parameterName, 
'user.authorization.invalidQuery', $operations);
 
   37       if (!$queryId) 
return AUTHORIZATION_DENY;
 
   41       $query = $queryDao->getById($queryId);
 
   42       if (!is_a($query, 
'Query')) 
return AUTHORIZATION_DENY;
 
   43       switch ($query->getAssocType()) {
 
   44          case ASSOC_TYPE_SUBMISSION:
 
   46             if (!is_a($submission, 
'Submission')) 
return AUTHORIZATION_DENY;
 
   47             if ($query->getAssocId() != $submission->getId()) 
return AUTHORIZATION_DENY;
 
   50             return AUTHORIZATION_DENY;
 
   55       return AUTHORIZATION_PERMIT;