the browser-facing portion of osu!
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

Stringify json before caching for beatmapsets

nanaya 95c528be 17c73186

+9 -5
+8 -4
app/Http/Controllers/BeatmapsetsController.php
··· 47 47 { 48 48 $canAdvancedSearch = priv_check('BeatmapsetAdvancedSearch')->can(); 49 49 // only cache if guest user and guest advanced search is disabled 50 - $beatmapsets = !auth()->check() && !$canAdvancedSearch 51 - ? cache_remember_mutexed('beatmapsets_guest', 600, [], fn () => $this->getSearchResponse([])['content']) 52 - : $this->getSearchResponse()['content']; 50 + $beatmapsetsJsonString = !auth()->check() && !$canAdvancedSearch 51 + ? cache_remember_mutexed( 52 + 'beatmapsets_guest_str', 53 + 600, 54 + '{}', 55 + fn () => json_encode($this->getSearchResponse([])['content']) 56 + ) : json_encode($this->getSearchResponse()['content']); 53 57 54 58 return ext_view('beatmapsets.index', [ 55 - 'beatmapsets' => $beatmapsets, 59 + 'beatmapsetsJsonString' => $beatmapsetsJsonString, 56 60 'canAdvancedSearch' => $canAdvancedSearch, 57 61 ]); 58 62 }
+1 -1
resources/views/beatmapsets/index.blade.php
··· 31 31 {!! app('layout-cache')->getBeatmapsetFilters() !!} 32 32 33 33 <script id="json-beatmaps" type="application/json"> 34 - {!! json_encode($beatmapsets) !!} 34 + {!! $beatmapsetsJsonString !!} 35 35 </script> 36 36 37 37 @include('layout._react_js', ['src' => 'js/beatmaps.js'])