Azam Rezayi 4 роки тому
батько
коміт
19bf5465e5

+ 13 - 9
packages/product/src/Http/Controllers/ProductController.php

@@ -176,7 +176,7 @@ class ProductController extends Controller
     public function uploadFeature(Request $request)
     {
         if ($request->has('featured_image')) {
-           $info = $request->only(['featureDescription', 'featureCaption']);
+            $info = $request->only(['featureDescription', 'featureCaption']);
             $file = $request->file('featured_image');
             $type = 'featured_image';
             $diskName = 'product';
@@ -191,6 +191,7 @@ class ProductController extends Controller
             }
             $draft = Draft::orderBy('id', 'Desc')->get()->first();
             $upload = $file->storeAs($afterDiskRoot, $fileName, $diskName);
+
             $uploadData = [
                 'name' => $fileName,
                 'path' => $upload,
@@ -203,13 +204,14 @@ class ProductController extends Controller
                 'descriptionImg' => $info['featureDescription'],
                 'caption' => $info['featureCaption'],
             ];
-            $uploaded = Upload::create($uploadData);
-        }
-
-      dd($uploadData);
-
-//            $uploaded = $product->uploads()->create($uploadData);
+            $uploads = Upload::where('type', $type)->where('uploadable_id', $draft->id)->first();
+            if (empty($uploads)) {
+                $uploaded = Upload::create($uploadData);
+            } else {
+                $uploaded = $uploads->update($uploadData);
+            }
         }
+    }
 
 
     public function updateFeature($file, $diskName, $product, $type, $info)
@@ -280,8 +282,10 @@ class ProductController extends Controller
                 'descriptionImg' => $files['descriptionGallery'][$key],
                 'caption' => $files['captionGallery'][$key],
             ];
-//           dd($uploadData);
-            $uploaded = Upload::create($uploadData);
+//         dd($uploadData);
+//          $uploaded = Upload::where('uploadable_id', $draft->id)->update($uploadData);
+           $uploaded = Upload::create($uploadData);
+          dd($uploaded);
 
         }
       }

+ 7 - 5
packages/product/src/js/product.js

@@ -305,12 +305,14 @@ $(document).ready(function(){
     $(".attachment_upload").on('change',function(){
         var loc = window.location;
         var base_url = loc.protocol + "//" + loc.hostname + (loc.port? ":"+loc.port : "");
-        var uploader = $('input[type="file"]');
+         var uploader = $('input[name="featured_image"]');
          var data = new FormData();
+        // var uploader = $('.attachment_upload[name="featured_image"]');
         uploader.each(function(){
             data.append('featured_image', $(this).prop('files')[0]);
-           data.append('featureDescription', $(this).closest('.form-group').find('[name=featureDescription]').val());
-            data.append('featureCaption', $(this).closest('.form-group').find('[name=featureCaption]').val());
+            data.append('featureDescription', $('#featureDescription').val());
+            data.append('featureCaption', $('#featureCaption').val());
+
         })
         data.append('_token', $('[name="csrf-token"]').attr('content'));
         $.ajax({
@@ -335,8 +337,8 @@ $(document).ready(function(){
         var data = new FormData();
         uploader.each(function(){
             data.append('gallery_image[]', $(this).prop('files')[i]);
-            data.append('descriptionGallery[]', $(this).closest('.form-group').find('[name=descriptionGallery[]]'));
-            data.append('captionGallery[]', $(this).closest('.form-group').find('[name=captionGallery[]]'));
+            data.append('descriptionGallery[]', $('#descriptionGallery').val());
+            data.append('captionGallery[]', $('#captionGallery').val());
         })
         data.append('_token', $('[name="csrf-token"]').attr('content'));
         $.ajax({

+ 9 - 5
packages/product/src/views/product/create.blade.php

@@ -142,8 +142,11 @@
                                     </div>
                                     <div class="">
                                     <div class="form-group col-md-8 ">
+                                        <div class="attachment_upload">
+
+
                                         <span class="btn btn-primary btn-file " >
-                                            <input type="file" id="uploadImages" name="featured_image" accept="image/*" class="form-control photo  browse attachment_upload @error('featured_image') is-invalid  @enderror"  value="{{old('featured_image')}}" autocomplete="featured_image" autofocus>
+                                            <input type="file" id="uploadImages" name="featured_image" accept="image/*" class="form-control photo  browse  @error('featured_image') is-invalid  @enderror"  value="{{old('featured_image')}}" autocomplete="featured_image" autofocus>
                                             <label for="title">{{ __('product.featured_image') }}</label> <i class="required">&nbsp;*</i>
                                         </span>
                                         <div class="hide-element" id="previewImages">
@@ -161,10 +164,11 @@
                                                     </p>
                                                     <p>
                                                         <label for="featureCaption">عنوان: </label>
-                                                        <input type="text" class="form-control" value="" name="featureCaption" id="#featureCaption">
+                                                        <input type="text" class="form-control" value="" name="featureCaption" id="featureCaption">
                                                     </p>
                                                 </div>
                                             </div>
+                                            </div>
                                         </div>
                                         @error('featured_image')
                                             <span class="invalid-feedback" role="alert">
@@ -173,9 +177,9 @@
                                         @enderror
                                     </div>
 
-                                    <div class="form-row ">
-                                        <div class="upload-widget GalleryImageChoice ">
-                                            <div class="select">
+                                    <div class="form-row attachment_upload_gallery">
+                                        <div class="upload-widget GalleryImageChoice  ">
+                                            <div class="select ">
                                                 <span class="btn btn-primary btn-file">
                                                     <input class="files attachment_upload_gallery" type="file" name="gallery_image[]" value="{{old('gallery_image[]')}}" multiple>
                                                     <label for="title">