Code Duplication    Length = 3-3 lines in 4 locations

code/Model/SiteTree.php 4 locations

@@ 860-862 (lines=3) @@
857
	 * @return bool True if the the member is allowed to do the given action
858
	 */
859
	public function can($perm, $member = null, $context = array()) {
860
		if(!$member || !($member instanceof Member) || is_numeric($member)) {
861
			$member = Member::currentUserID();
862
		}
863
864
		if($member && Permission::checkMember($member, "ADMIN")) return true;
865
@@ 899-901 (lines=3) @@
896
			return false;
897
		}
898
899
		if(!$member || !($member instanceof Member) || is_numeric($member)) {
900
			$member = Member::currentUserID();
901
		}
902
903
		// Standard mechanism for accepting permission changes from extensions
904
		$extended = $this->extendedCan('canAddChildren', $member);
@@ 934-936 (lines=3) @@
931
	 * @return bool True if the current user can view this page
932
	 */
933
	public function canView($member = null) {
934
		if(!$member || !($member instanceof Member) || is_numeric($member)) {
935
			$member = Member::currentUserID();
936
		}
937
938
		// Standard mechanism for accepting permission changes from extensions
939
		$extended = $this->extendedCan('canView', $member);
@@ 1067-1069 (lines=3) @@
1064
	 * @return bool True if the current user can create pages on this class.
1065
	 */
1066
	public function canCreate($member = null, $context = array()) {
1067
		if(!$member || !(is_a($member, 'SilverStripe\\Security\\Member')) || is_numeric($member)) {
1068
			$member = Member::currentUserID();
1069
		}
1070
1071
		// Check parent (custom canCreate option for SiteTree)
1072
		// Block children not allowed for this parent type