Browse Source

相册视频加order

moshaorui 1 day ago
parent
commit
cb93a63c85
2 changed files with 20 additions and 1 deletions
  1. 3 0
      app/Models/SitePreviewVideo.php
  2. 17 1
      resources/views/gallery-detail.blade.php

+ 3 - 0
app/Models/SitePreviewVideo.php

@@ -23,6 +23,9 @@ class SitePreviewVideo extends Model
                     $voidData[$key]['preview_url'] = $item->preview_url;
                 }
             }
+            if (isset($voidData[$key]['order']) == false) {
+                $voidData[$key]['order'] = 0;
+            }
         }
 
         return json_encode($voidData);

+ 17 - 1
resources/views/gallery-detail.blade.php

@@ -111,7 +111,23 @@
                         @if ($tab['column'] == 'video' && empty($content) == false)
                             <?php
                                 //$content倒序
-                                $content = array_reverse($content);
+                                array_walk($content, function(&$item, $index) {
+                                    $item['__index'] = $index;
+                                });
+                                usort($content, function($a, $b) {
+                                    // order > 0 的元素组内排序(倒序)
+                                    if ($a['order'] > 0 && $b['order'] > 0) {
+                                        return $b['order'] <=> $a['order'];
+                                    }
+                                    // order = 0 的元素组内排序(按原始索引倒序)
+                                    elseif ($a['order'] == 0 && $b['order'] == 0) {
+                                        return $b['__index'] <=> $a['__index']; // 注意这里用b比a
+                                    }
+                                    // 不同组间的排序(order>0的总是排在最前)
+                                    else {
+                                        return ($a['order'] > 0) ? -1 : 1;
+                                    }
+                                });
                             ?>
                             <table class="album_table">
                                 <thead>