use BookStack\Page;
use BookStack\Services\PermissionService;
use BookStack\User;
+use Illuminate\Support\Collection;
use Illuminate\Support\Facades\Log;
class EntityRepo
*/
public function getUserDraftPages($count = 20, $page = 0)
{
- $user = auth()->user();
return $this->page->where('draft', '=', true)
- ->where('created_by', '=', $user->id)
+ ->where('created_by', '=', user()->id)
->orderBy('updated_at', 'desc')
->skip($count * $page)->take($count)->get();
}
* @param $termString
* @return array
*/
- protected function prepareSearchTerms($termString)
+ public function prepareSearchTerms($termString)
{
$termString = $this->cleanSearchTermString($termString);
- preg_match_all('/"(.*?)"/', $termString, $matches);
+ preg_match_all('/(".*?")/', $termString, $matches);
+ $terms = [];
if (count($matches[1]) > 0) {
- $terms = $matches[1];
+ foreach ($matches[1] as $match) {
+ $terms[] = $match;
+ }
$termString = trim(preg_replace('/"(.*?)"/', '', $termString));
- } else {
- $terms = [];
}
if (!empty($termString)) $terms = array_merge($terms, explode(' ', $termString));
return $terms;
return $query;
}
+ /**
+ * Alias method to update the book jointPermissions in the PermissionService.
+ * @param Collection $collection collection on entities
+ */
+ public function buildJointPermissions(Collection $collection)
+ {
+ $this->permissionService->buildJointPermissionsForEntities($collection);
+ }
+
}