Merge branch 'search-owned-by-me' of git://github.com/benediktvolke/BookStack into benediktvolke-search-owned-by-me
This commit is contained in:
		
						commit
						c8564b7792
					
				| 
						 | 
				
			
			@ -287,6 +287,17 @@ class SearchRunner
 | 
			
		|||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    protected function filterOwnedBy(EloquentBuilder $query, Entity $model, $input)
 | 
			
		||||
    {
 | 
			
		||||
        if (!is_numeric($input) && $input !== 'me') {
 | 
			
		||||
            return;
 | 
			
		||||
        }
 | 
			
		||||
        if ($input === 'me') {
 | 
			
		||||
            $input = user()->id;
 | 
			
		||||
        }
 | 
			
		||||
        $query->where('owned_by', '=', $input);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    protected function filterInName(EloquentBuilder $query, Entity $model, $input)
 | 
			
		||||
    {
 | 
			
		||||
        $query->where('name', 'like', '%' .$input. '%');
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -60,6 +60,7 @@ return [
 | 
			
		|||
    'search_permissions_set' => 'Permissions set',
 | 
			
		||||
    'search_created_by_me' => 'Created by me',
 | 
			
		||||
    'search_updated_by_me' => 'Updated by me',
 | 
			
		||||
    'search_owned_by_me' => 'Owned by me',
 | 
			
		||||
    'search_date_options' => 'Date Options',
 | 
			
		||||
    'search_updated_before' => 'Updated before',
 | 
			
		||||
    'search_updated_after' => 'Updated after',
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -50,6 +50,9 @@
 | 
			
		|||
                            @component('search.form.boolean-filter', ['filters' => $options->filters, 'name' => 'updated_by', 'value' => 'me'])
 | 
			
		||||
                                {{ trans('entities.search_updated_by_me') }}
 | 
			
		||||
                            @endcomponent
 | 
			
		||||
                            @component('search.form.boolean-filter', ['filters' => $options->filters, 'name' => 'owned_by', 'value' => 'me'])
 | 
			
		||||
                                {{ trans('entities.search_owned_by_me') }}
 | 
			
		||||
                            @endcomponent
 | 
			
		||||
                        @endif
 | 
			
		||||
 | 
			
		||||
                        <h6>{{ trans('entities.search_date_options') }}</h6>
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -134,16 +134,23 @@ class EntitySearchTest extends TestCase
 | 
			
		|||
        // User filters
 | 
			
		||||
        $this->get('/search?term=' . urlencode('danzorbhsing {created_by:me}'))->assertDontSee($page->name);
 | 
			
		||||
        $this->get('/search?term=' . urlencode('danzorbhsing {updated_by:me}'))->assertDontSee($page->name);
 | 
			
		||||
        $this->get('/search?term=' . urlencode('danzorbhsing {updated_by: '.$editorSlug.'}'))->assertDontSee($page->name);
 | 
			
		||||
        $this->get('/search?term=' . urlencode('danzorbhsing {owned_by:me}'))->assertDontSee($page->name);
 | 
			
		||||
        $this->get('/search?term=' . urlencode('danzorbhsing {updated_by:'.$editorId.'}'))->assertDontSee($page->name);
 | 
			
		||||
        $page->created_by = $editorId;
 | 
			
		||||
        $page->save();
 | 
			
		||||
        $this->get('/search?term=' . urlencode('danzorbhsing {created_by:me}'))->assertSee($page->name);
 | 
			
		||||
        $this->get('/search?term=' . urlencode('danzorbhsing {created_by: '.$editorSlug.'}'))->assertSee($page->name);
 | 
			
		||||
        $this->get('/search?term=' . urlencode('danzorbhsing {updated_by:me}'))->assertDontSee($page->name);
 | 
			
		||||
        $this->get('/search?term=' . urlencode('danzorbhsing {owned_by:me}'))->assertDontSee($page->name);
 | 
			
		||||
        $page->updated_by = $editorId;
 | 
			
		||||
        $page->save();
 | 
			
		||||
        $this->get('/search?term=' . urlencode('danzorbhsing {updated_by:me}'))->assertSee($page->name);
 | 
			
		||||
        $this->get('/search?term=' . urlencode('danzorbhsing {updated_by: '.$editorSlug.'}'))->assertSee($page->name);
 | 
			
		||||
        $this->get('/search?term=' . urlencode('danzorbhsing {updated_by:'.$editorSlug.'}'))->assertSee($page->name);
 | 
			
		||||
        $this->get('/search?term=' . urlencode('danzorbhsing {owned_by:me}'))->assertDontSee($page->name);
 | 
			
		||||
        $page->owned_by = $editorId;
 | 
			
		||||
        $page->save();
 | 
			
		||||
        $this->get('/search?term=' . urlencode('danzorbhsing {owned_by:me}'))->assertSee($page->name);
 | 
			
		||||
        $this->get('/search?term=' . urlencode('danzorbhsing {owned_by:'.$editorSlug.'}'))->assertSee($page->name);
 | 
			
		||||
 | 
			
		||||
        // Content filters
 | 
			
		||||
        $this->get('/search?term=' . urlencode('{in_name:danzorbhsing}'))->assertDontSee($page->name);
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue