From 5fc43b8dfcfa87b77a6ca1109636c4447fcd8c0d Mon Sep 17 00:00:00 2001 From: Zach DeCook Date: Thu, 20 Jul 2023 02:06:43 +0000 Subject: Song: Make it possible to sort by verse --- laravel/app/Song.php | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/laravel/app/Song.php b/laravel/app/Song.php index c4722a2..b8d2e4c 100644 --- a/laravel/app/Song.php +++ b/laravel/app/Song.php @@ -21,6 +21,19 @@ class Song extends Model $bc = explode(':', $refs[0])[0]; return Song::where('verse', 'LIKE', "$bc:%")->orWhere('verse',"$bc")->orWhere('verse','like',$refs[0].";%")->orWhere('verse', 'LIKE', "%; $bc:%"); } + public function getPassagesAttribute() { + $parser = new BiblePassageParser(); + $refs = $parser->parse($this->verse); + return $refs; + } + public static function passageSort($a, $b) { + try { + return $a->passages[0]->from()->integerNotation() <=> $b->passages[0]->from()->integerNotation(); + } catch (\Exception $e) { + // I don't care. + } + return 0; + } public function textTranspose($key) { $sc = new SongController(); -- cgit 1.4.1