Browse Source

feat: update slug fix

igb 5 ngày trước cách đây
mục cha
commit
306f33fb91

+ 4 - 6
app/Distributor/Controllers/DistProductCategoryController.php

@@ -104,14 +104,12 @@ class DistProductCategoryController extends AdminDistController
             // 在保存时写死dist_id
             $form->saving(function (Form $form) {
                 $form->dist_id =getDistributorId();
-                //slug配置是否重复
+
                 $id = $form->getKey();
-                $form->slug=trim($form->slug);
-                if ($form->slug != '') {
-                    //把slug中的空格替换成-,多个空格在一起只用一个-,大写字母转换成小写
-                    $form->slug = preg_replace('/\s+/', '-', $form->slug);
-                    $form->slug = strtolower($form->slug);
 
+                //slug配置是否重复
+                $form->flug=CommonHelper::slug_fix($form->flug);
+                if ($form->slug != '') {
                     if (DistProductCategory::isRepeatedSlug($id, $form->slug)) {
                         //slug重复
                         return $form->response()->error(admin_trans_label('url_repeated'));

+ 1 - 4
app/Distributor/Controllers/DistProductController.php

@@ -222,11 +222,8 @@ class DistProductController extends AdminDistController
                 $form->dist_id =getDistributorId();//保存时直接写死dist_id
                 $id = $form->getKey();
                 //slug配置是否重复
-                $form->slug=trim($form->slug);
+                $form->flug=CommonHelper::slug_fix($form->flug);
                 if ($form->slug != '') {
-                    //把slug中的空格替换成-,多个空格在一起只用一个-,大写字母转换成小写
-                    $form->slug = preg_replace('/\s+/', '-', $form->slug);
-                    $form->slug = strtolower($form->slug);
 
                     if (DistProduct::isRepeatedSlug($id, $form->slug)) {
                         //slug重复

+ 1 - 4
app/Distributor/Controllers/DistVideoCategoryController.php

@@ -89,11 +89,8 @@ class DistVideoCategoryController extends AdminDistController
                 $form->dist_id =getDistributorId();//保存时直接写死dist_id
                 $id = $form->getKey();
                 //slug配置是否重复
-                $form->slug=trim($form->slug);
+                $form->flug=CommonHelper::slug_fix($form->flug);
                 if ($form->slug != '') {
-                    //把slug中的空格替换成-,多个空格在一起只用一个-,大写字母转换成小写
-                    $form->slug = preg_replace('/\s+/', '-', $form->slug);
-                    $form->slug = strtolower($form->slug);
                     if (DistVideoCategory::isRepeatedSlug($id, $form->slug)) {
                         //slug重复
                         return $form->response()->error(admin_trans_label('url_repeated'));

+ 1 - 5
app/Distributor/Controllers/DistVideoController.php

@@ -170,14 +170,10 @@ class DistVideoController extends AdminDistController
             $form->saving(function (Form $form) {
                 $form->dist_id =getDistributorId();//保存时直接写死dist_id
 
-                //slug配置是否重复
                 $id = $form->getKey();
                 //slug配置是否重复
-                $form->slug=trim($form->slug);
+                $form->flug=CommonHelper::slug_fix($form->flug);
                 if ($form->slug != '') {
-                    //把slug中的空格替换成-,多个空格在一起只用一个-,大写字母转换成小写
-                    $form->slug = preg_replace('/\s+/', '-', $form->slug);
-                    $form->slug = strtolower($form->slug);
                     if (DistVideo::isRepeatedSlug($id, $form->slug)) {
                         //slug重复
                         return $form->response()->error(admin_trans_label('url_repeated'));

+ 2 - 6
app/Distributor/Controllers/SitePagesController.php

@@ -193,14 +193,10 @@ class SitePagesController extends AdminDistController
                 $form->dist_id = getDistributorId();
                 //强制写死page_type
                 $form->page_type = $location;
-                //slug配置是否重复
                 $id = $form->getKey();
-
-                $form->slug=trim($form->slug);
+                //slug配置是否重复
+                $form->flug=CommonHelper::slug_fix($form->flug);
                 if ($form->slug != '') {
-                    //把slug中的空格替换成-,多个空格在一起只用一个-,大写字母转换成小写
-                    $form->slug = preg_replace('/\s+/', '-', $form->slug);
-                    $form->slug = strtolower($form->slug);
 
                     if (SitePages::isRepeatedSlug($id, $form->slug)) {
                         //slug重复

+ 13 - 0
app/Libraries/CommonHelper.php

@@ -263,5 +263,18 @@ JS
 
     }
 
+
+    // slug fix
+    function slug_fix($slug)
+    {
+        $slug = trim($slug);
+        if($slug == '') {
+            return '';
+        }else {
+            $slug = preg_replace('/\s+/', '-', $slug);
+            $slug = strtolower($slug);
+            return $slug;
+        }
+    }
 }