]> _ Git - songbook.git/commitdiff
.
authorVincent Vanwaelscappel <vincent@cubedesigners.com>
Sat, 10 Sep 2022 17:31:39 +0000 (19:31 +0200)
committerVincent Vanwaelscappel <vincent@cubedesigners.com>
Sat, 10 Sep 2022 17:31:39 +0000 (19:31 +0200)
resources/css/app.sass
resources/views/collection.blade.php
resources/views/collection_song.blade.php [new file with mode: 0644]
resources/views/menu.blade.php
resources/views/menu_song.blade.php [new file with mode: 0644]

index 6a3084549f074bb798a89bfe2df68816b01eff08..47d9829c26cb52c2b50b94ff66fad71f7d18a3e2 100644 (file)
@@ -104,6 +104,11 @@ main
         list-style: none
         margin-top: 0.25em
 
+        h3
+            position: sticky
+            padding-top: 1em
+            padding-bottom: 0.5em
+
 article.song
     font-size: 16px
 
index dca787ba39c28ad24f438215aa91f7176c0ca1ae..f8769d6c08bf90a51543a82e496c609ba71a471a 100644 (file)
         <nav>
             <ul>
                 @foreach($songs as $csong)
-                    @php
-                        $songurl='/'.$collection->slug.'/'.$csong->slug.'.html';
-                    @endphp
-                    <li><a href="/{{$collection->slug}}/{{$csong->slug}}.html">{{$csong->title}}
-                            <span>{{$csong->artist}}</span></a>
-                    </li>
+                    @if(!in_array($collection->id, $csong->collections))
+                        @continue
+                    @endif
+                    @include('collection_song')
                 @endforeach
             </ul>
+            @foreach($collection_lists as $list)
+                <ul class="list">
+                    <li><h3>📒 {{$list->name}}</h3></li>
+                    @foreach($collection_songs as $csong)
+                        @if(!in_array($collection->id.'_'.$list->id, $csong->collections))
+                            @continue
+                        @endif
+                        @include('collection_song')
+                    @endforeach
+                </ul>
+            @endforeach
         </nav>
     </article>
 @endsection
diff --git a/resources/views/collection_song.blade.php b/resources/views/collection_song.blade.php
new file mode 100644 (file)
index 0000000..00b7d84
--- /dev/null
@@ -0,0 +1,6 @@
+@php
+    $songurl='/'.$collection->slug.'/'.$csong->slug.'.html';
+@endphp
+<li><a href="/{{$collection->slug}}/{{$csong->slug}}.html">{{$csong->title}}
+        <span>{{$csong->artist}}</span></a>
+</li>
index 0520c9d9d5b0d174cc0774b44bd9b91ddb6b884a..853c07d2a839a8f45ba245a9e7b668b60a2f8a02 100644 (file)
             <li><span>🎶 Songs</span>
                 <ul>
                     @foreach($collection_songs as $csong)
-                        @php
-                            $songurl="/$collection->slug/$csong->slug.html";
-                            $prefetch[]=$songurl;
-                            $tracks=$csong->getAudioTracks();
-                            foreach ($tracks as $track) {
-                                $prefetch[]=$track['url'];
-                            }
-                        @endphp
-                        <li><a rel="prefetch" @if(isset($song) && $csong->id == $song->id) class="active"
-                               @endif href="{{$songurl}}">{{trim($csong->title.' - '.$csong->artist,' -')}}</a>
+                        @if(!in_array($collection->id, $csong->collections))
+                            @continue
+                        @endif
+                        @include('menu_song')
+                    @endforeach
+                    @foreach($collection_lists as $list)
+                        <li><span>📒 {{$list->name}}</span>
+                            <ul>
+                                @foreach($collection_songs as $csong)
+                                    @if(!in_array($collection->id.'_'.$list->id, $csong->collections))
+                                        @continue
+                                    @endif
+                                    @include('menu_song')
+                                @endforeach
+                            </ul>
                         </li>
                     @endforeach
                 </ul>
 
                 @if($song->hasChords())
                     <li><a href="#" class="noaction">🎤 Show lyrics <input type="checkbox" class="checkbox-switch"
-                                                                           name="show_lyrics_{{$song->id}}"
-                                                                           data-default="1"></a></li>
+                                                                          name="show_lyrics_{{$song->id}}"
+                                                                          data-default="1"></a></li>
                     <li><a href="#" class="noaction">🎼 Show chords <input type="checkbox" class="checkbox-switch"
-                                                                           name="show_chords_{{$song->id}}"
-                                                                           data-default="1"></a></li>
+                                                                          name="show_chords_{{$song->id}}"
+                                                                          data-default="1"></a></li>
                     <li><a href="#" class="clickselect">↕️ Key <select data-name="tone" name="tone_{{$song->id}}">
                                 @for($i=-5;$i<=6;$i++)
                                     <option value="{{$i}}"
@@ -57,7 +62,7 @@
                 @endif
 
                 <li><a href="#" class="clickselect">🔠 Lyrics text size <select data-name="size"
-                                                                                name="size_{{$song->id}}">
+                                                                               name="size_{{$song->id}}">
                             @foreach($fontSizes as $s)
                                 <option value="{{$s}}" @if($s===1) selected @endif>{!! round($s*100) !!}%</option>
                             @endforeach
@@ -65,7 +70,7 @@
 
                 @if(count($song->getAudioTracks())>0)
                     <li><a href="#" class="clickselect">💿 Audio track <select data-name="audio"
-                                                                               name="audio_{{$song->id}}">
+                                                                              name="audio_{{$song->id}}">
                                 @foreach($song->getAudioTracks() as $i=>$track)
                                     <option value="{{$i}}" data-url="{{$track['url']}}">{{$track['name']}}</option>
                                 @endforeach
                 @endif
             @endif
 
+            <li>
+                    <span><img
+                            src="https://api.qrserver.com/v1/create-qr-code/?size=50x50&data={{rawurlencode('https://songbook.enhydra.fr/'.$collection->slug)}}"
+                            style="width: 15px;height:auto;margin:5px 10px 5px 5px;vertical-align: bottom">Share via QR code</span>
+                <ul>
+                    <li style="padding:30px;"><img
+                            src="https://api.qrserver.com/v1/create-qr-code/?size=300x300&data={{rawurlencode('https://songbook.enhydra.fr/'.$collection->slug)}}"
+                            style="width: 100%;height:auto;"></li>
+                </ul>
+            </li>
             @if(isset($song))
                 <li><a href="/admin/song/{{$song->id}}/edit">🔒 Edit this song</a></li>
             @else
diff --git a/resources/views/menu_song.blade.php b/resources/views/menu_song.blade.php
new file mode 100644 (file)
index 0000000..9b791a8
--- /dev/null
@@ -0,0 +1,11 @@
+@php
+    $songurl="/$collection->slug/$csong->slug.html";
+    $prefetch[]=$songurl;
+    $tracks=$csong->getAudioTracks();
+    foreach ($tracks as $track) {
+        $prefetch[]=$track['url'];
+    }
+@endphp
+<li><a rel="prefetch" @if(isset($song) && $csong->id == $song->id) class="active"
+       @endif href="{{$songurl}}">{{trim($csong->title.' - '.$csong->artist,' -')}}</a>
+</li>