protected function getPrivateNodes() {
		if (!Member::currentUserID()) {
			return array();
		}
		$groups = Member::currentUser()->Groups()->column();

		if (!count($groups)) {
			return $groups;
		}

		$fields = $this->queryFields();
		$query = new SQLQuery($fields, '"'.$this->baseClass.'"');
		$query = $query->setOrderBy($this->itemSort);
		$query->addWhere('"CanViewType" IN (\'OnlyTheseUsers\')');
		if (Permission::check('ADMIN')) {
			// don't need to restrict the canView by anything
		} else {
			$query->addInnerJoin('SiteTree_ViewerGroups', '"SiteTree_ViewerGroups"."SiteTreeID" = "SiteTree"."ID"');
			$query->addWhere('"SiteTree_ViewerGroups"."GroupID" IN (' . implode(',', $groups) . ')');
		}

		$this->adjustPrivateNodeQuery($query);
		$this->adjustForVersioned($query);
		$sql = $query->sql();

		$results = $query->execute();
		return $results;
	}
protected function getPrivateNodes() {
		if (!Member::currentUserID()) {
			return array();
		}
		$groups = Member::currentUser()->Groups()->column();

		if (!count($groups)) {
			return $groups;
		}

		$fields = $this->queryFields();
		$query = new SQLQuery($fields, '"'.$this->baseClass.'"');
		$query = $query->setOrderBy($this->itemSort);
		$query->addWhere('"CanViewType" IN (\'OnlyTheseUsers\')');
		if (Permission::check('ADMIN')) {
			// don't need to restrict the canView by anything
		} else {
			$query->addInnerJoin('SiteTree_ViewerGroups', '"SiteTree_ViewerGroups"."SiteTreeID" = "SiteTree"."ID"');
			$query->addWhere('"SiteTree_ViewerGroups"."GroupID" IN (' . implode(',', $groups) . ')');
		}

		$this->adjustPrivateNodeQuery($query);
		$this->adjustForVersioned($query);
		$sql = $query->sql();

		$results = $query->execute();
		return $results;
	}
protected function getPrivateNodes ( ) { if ( ! Member :: currentUserID ( ) ) { return array ( ) ; } $ groups = Member :: currentUser ( ) -> Groups ( ) -> column ( ) ; if ( ! count ( $ groups ) ) { return $ groups ; } $ fields = $ this -> queryFields ( ) ; $ query = new SQLQuery ( $ fields , '"' . $ this -> baseClass . '"' ) ; $ query = $ query -> setOrderBy ( $ this -> itemSort ) ; $ query -> addWhere ( '"CanViewType" IN (\'OnlyTheseUsers\')' ) ; if ( Permission :: check ( 'ADMIN' ) ) { // don't need to restrict the canView by anything } else { $ query -> addInnerJoin ( 'SiteTree_ViewerGroups' , '"SiteTree_ViewerGroups"."SiteTreeID" = "SiteTree"."ID"' ) ; $ query -> addWhere ( '"SiteTree_ViewerGroups"."GroupID" IN (' . implode ( ',' , $ groups ) . ')' ) ; } $ this -> adjustPrivateNodeQuery ( $ query ) ; $ this -> adjustForVersioned ( $ query ) ; $ sql = $ query -> sql ( ) ; $ results = $ query -> execute ( ) ; return $ results ; }
Get private nodes, assuming SilverStripe's default perm structure
@return SS_Query
Get private nodes assuming SilverStripe s default perm structure