コード例 #1
0
 /**
  * Determines if a request can be created by an author for a specific page.
  * Add custom authentication checks by subclassing this method.
  * 
  * @param Member $member
  * @param SiteTree $page
  * @return boolean
  */
 public static function can_create($member = NULL, $page)
 {
     if (!$member && $member !== FALSE) {
         $member = Member::currentUser();
     }
     return $page->canEdit($member);
 }
 /**
  * @param Member $member
  * @param SiteTree $page
  * @return boolean
  */
 public static function can_create($member = NULL, $page)
 {
     if (!$member && $member !== FALSE) {
         $member = Member::currentUser();
     }
     // if user can't edit page, he shouldn't be able to request publication
     if (!$page->canEdit($member)) {
         return false;
     }
     $request = $page->OpenWorkflowRequest();
     // if no request exists, allow creation of a new one (we can just have one open request at each point in time)
     if (!$request || !$request->ID) {
         return true;
     }
     // members can re-submit their own publication requests
     if ($member && $member->ID == $request->AuthorID) {
         return true;
     }
     return true;
 }