瀏覽代碼

Merge pull request #2150 from pixelfed/staging

Update SearchController, fix ranking bug
daniel 5 年之前
父節點
當前提交
e553bfe30e
共有 2 個文件被更改,包括 6 次插入2 次删除
  1. 1 0
      CHANGELOG.md
  2. 5 2
      app/Http/Controllers/SearchController.php

+ 1 - 0
CHANGELOG.md

@@ -28,6 +28,7 @@
 - Updated NotificationCard.vue component, add follow requests at top of card, remove card-header ([5e48ffca](https://github.com/pixelfed/pixelfed/commit/5e48ffca))
 - Updated NotificationCard.vue component, add follow requests at top of card, remove card-header ([5e48ffca](https://github.com/pixelfed/pixelfed/commit/5e48ffca))
 - Updated RemoteProfile.vue component, add warning for empty profiles and last_fetched_at ([66f44a9d](https://github.com/pixelfed/pixelfed/commit/66f44a9d))
 - Updated RemoteProfile.vue component, add warning for empty profiles and last_fetched_at ([66f44a9d](https://github.com/pixelfed/pixelfed/commit/66f44a9d))
 - Updated ApiV1Controller, enforce public timeline setting ([285bd485](https://github.com/pixelfed/pixelfed/commit/285bd485))
 - Updated ApiV1Controller, enforce public timeline setting ([285bd485](https://github.com/pixelfed/pixelfed/commit/285bd485))
+- Update SearchController, fix self search bug and rank local matches higher ([f67fada2](https://github.com/pixelfed/pixelfed/commit/f67fada2))
 
 
 
 
 ## [v0.10.9 (2020-04-17)](https://github.com/pixelfed/pixelfed/compare/v0.10.8...v0.10.9)
 ## [v0.10.9 (2020-04-17)](https://github.com/pixelfed/pixelfed/compare/v0.10.8...v0.10.9)

+ 5 - 2
app/Http/Controllers/SearchController.php

@@ -194,11 +194,14 @@ class SearchController extends Controller
 
 
         else {
         else {
             $this->tokens['profiles'] = Cache::remember($key, $ttl, function() use($tag) {
             $this->tokens['profiles'] = Cache::remember($key, $ttl, function() use($tag) {
-                $users = Profile::select('domain', 'username', 'name', 'id')
+                if(Str::startsWith($tag, '@')) {
+                    $tag = substr($tag, 1);
+                }
+                $users = Profile::select('status', 'domain', 'username', 'name', 'id')
                     ->whereNull('status')
                     ->whereNull('status')
-                    ->where('id', '!=', Auth::user()->profile->id)
                     ->where('username', 'like', '%'.$tag.'%')
                     ->where('username', 'like', '%'.$tag.'%')
                     ->limit(20)
                     ->limit(20)
+                    ->orderBy('domain')
                     ->get();
                     ->get();
 
 
                 if($users->count() > 0) {
                 if($users->count() > 0) {