| @@ 382-390 (lines=9) @@ | ||
| 379 | * @param Member $member |
|
| 380 | * @return boolean |
|
| 381 | */ |
|
| 382 | public function canCreate($member=null) { |
|
| 383 | if (is_null($member)) { |
|
| 384 | if (!Member::currentUserID()) { |
|
| 385 | return false; |
|
| 386 | } |
|
| 387 | $member = Member::currentUser(); |
|
| 388 | } |
|
| 389 | return Permission::checkMember($member, 'CREATE_WORKFLOW'); |
|
| 390 | } |
|
| 391 | ||
| 392 | /** |
|
| 393 | * |
|
| @@ 416-434 (lines=19) @@ | ||
| 413 | * @return boolean |
|
| 414 | * @see {@link $this->onBeforeDelete()} |
|
| 415 | */ |
|
| 416 | public function canDelete($member = null) { |
|
| 417 | if(!$member) { |
|
| 418 | if(!Member::currentUserID()) { |
|
| 419 | return false; |
|
| 420 | } |
|
| 421 | $member = Member::currentUser(); |
|
| 422 | } |
|
| 423 | ||
| 424 | if(Permission::checkMember($member, 'ADMIN')) { |
|
| 425 | return true; |
|
| 426 | } |
|
| 427 | ||
| 428 | /* |
|
| 429 | * DELETE_WORKFLOW should trump all other canDelete() return values on |
|
| 430 | * related objects. |
|
| 431 | * @see {@link $this->onBeforeDelete()} |
|
| 432 | */ |
|
| 433 | return Permission::checkMember($member, 'DELETE_WORKFLOW'); |
|
| 434 | } |
|
| 435 | ||
| 436 | /** |
|
| 437 | * Checks whether the passed user is able to view this ModelAdmin |
|
| @@ 441-452 (lines=12) @@ | ||
| 438 | * |
|
| 439 | * @param $memberID |
|
| 440 | */ |
|
| 441 | protected function userHasAccess($member) { |
|
| 442 | if (!$member) { |
|
| 443 | if (!Member::currentUserID()) { |
|
| 444 | return false; |
|
| 445 | } |
|
| 446 | $member = Member::currentUser(); |
|
| 447 | } |
|
| 448 | ||
| 449 | if(Permission::checkMember($member, "VIEW_ACTIVE_WORKFLOWS")) { |
|
| 450 | return true; |
|
| 451 | } |
|
| 452 | } |
|
| 453 | } |
|
| 454 | ||