feat(public-ui): adapt public podcast and episode pages to wireframes

- adapt wireframes with responsive design
- refactor models methods to cache requests for faster queries
- update public controllers to cache pages while retaining analytics hits
- add platform links to podcast page
- add previous / next episodes in episode page
- update npm packages to latest versions

closes #30, #13
This commit is contained in:
Yassine Doghri 2020-09-04 09:09:26 +00:00
commit 40a0535fc1
32 changed files with 2058 additions and 1474 deletions

View file

@ -21,4 +21,24 @@ class LanguageModel extends Model
protected $useSoftDeletes = false;
protected $useTimestamps = false;
public function getLanguageOptions()
{
if (!($options = cache('language_options'))) {
$languages = $this->findAll();
$options = array_reduce(
$languages,
function ($result, $language) {
$result[$language->code] = $language->native_name;
return $result;
},
[]
);
cache()->save('language_options', $options, DECADE);
}
return $options;
}
}