upload image

This commit is contained in:
Fayyazi
2019-07-20 15:13:18 +04:30
parent a0b7caada0
commit eb83d7e253
2 changed files with 74 additions and 13 deletions
+73 -12
View File
@@ -250,6 +250,10 @@ class TestResultController extends Controller
} }
$TestResult['imagesPath'] = $ImagesPath; $TestResult['imagesPath'] = $ImagesPath;
} }
else {
$TestResult['imagesPath'] = [];
}
return \MessageResponse::data($TestResult); return \MessageResponse::data($TestResult);
} }
@@ -261,6 +265,14 @@ class TestResultController extends Controller
return $path; return $path;
} }
public function hasFile($key)
{
if (is_array($file = $this->file($key))) $file = head($file);
return $file instanceof \SplFileInfo;
}
public function update(StoreTestResultRequest $request, TestResult $TestResult) public function update(StoreTestResultRequest $request, TestResult $TestResult)
{ {
$TestResultData = [ $TestResultData = [
@@ -322,20 +334,59 @@ class TestResultController extends Controller
} }
/////////////////////////////////////////////////////////////////////Images /////////////////////////////////////////////////////////////////////Images
$images = ''; $images = '';
if (count($TestResult->TitleImage) && $request->imgs != null) // if (count($TestResult->TitleImage) && $request->imgs != null)
// {
// $images = $TestResult->TitleImage;
// foreach ($images as $key => $image) {
// Storage::disk('public')->delete(static::storage_path($image->path));
// Uploadable::where('gallery_id', $image->id)->where('uploadable_id', $TestResult->id)->where('uploadable_type', get_class($TestResult))->delete();
// Gallery::where('id', $image->id)->delete();
// }
// }
//
// if ($request->imgs != null) {
// foreach ($request->imgs as $key => $img) {//
//
// $Image = $img;
// $InterventionImage = Image::make($Image);
// $Mime = explode('/', $InterventionImage->mime());
//
// $ImageName = time().$key.'.'.$Mime[1];
// $Path = 'uploads'.'/TestResults'.'/'.$TestResult->id .'/'.$ImageName;
//
// Storage::disk('public')->makeDirectory('TestResults'.'/'.$TestResult->id);
// $InterventionImage->save(public_path($Path));
//
// //--------------------------------------------------------
// $GalleryObj = Gallery::create(['user_id' => auth('api')->user()->id, 'path' => $Path]);
// $Uploadable = Uploadable::create(['uploadable_id' => $TestResult->id, 'uploadable_type' => 'App\TestResult', 'gallery_id' => $GalleryObj->id, 'image_role' => 'TitleImage']);
// //--------------------------------------------------------
//
// }//
// }
if (count($TestResult->TitleImage))
{ {
$images = $TestResult->TitleImage; $images = $TestResult->TitleImage;
$imageExist = [];
$imagesDeleted = [];
foreach ($images as $key => $image) { foreach ($images as $key => $image) {
Storage::disk('public')->delete(static::storage_path($image->path)); $imageExist[] = '/'.$image->path;
Uploadable::where('gallery_id', $image->id)->where('uploadable_id', $TestResult->id)->where('uploadable_type', get_class($TestResult))->delete(); if (!in_array('/'.$image->path, $request->imgs)) {
Gallery::where('id', $image->id)->delete(); $imagesDeleted[] = $image->path;
}
} }
} }
if ($request->imgs != null) {
foreach ($request->imgs as $key => $img) {//
if ($request->imgs != null) {
$request_imgs = array_diff($request->imgs, $imageExist);
foreach ($request_imgs as $key => $img) {//
$Image = $img; $Image = $img;
$InterventionImage = Image::make($Image); $InterventionImage = Image::make($Image);
$Mime = explode('/', $InterventionImage->mime()); $Mime = explode('/', $InterventionImage->mime());
@@ -345,13 +396,23 @@ class TestResultController extends Controller
Storage::disk('public')->makeDirectory('TestResults'.'/'.$TestResult->id); Storage::disk('public')->makeDirectory('TestResults'.'/'.$TestResult->id);
$InterventionImage->save(public_path($Path)); $InterventionImage->save(public_path($Path));
//-------------------------------------------------------- //--------------------------------------------------------
$GalleryObj = Gallery::create(['user_id' => auth('api')->user()->id, 'path' => $Path]); $GalleryObj = Gallery::create(['user_id' => auth('api')->user()->id, 'path' => $Path]);
$Uploadable = Uploadable::create(['uploadable_id' => $TestResult->id, 'uploadable_type' => 'App\TestResult', 'gallery_id' => $GalleryObj->id, 'image_role' => 'TitleImage']); $Uploadable = Uploadable::create(['uploadable_id' => $TestResult->id, 'uploadable_type' => 'App\TestResult', 'gallery_id' => $GalleryObj->id, 'image_role' => 'TitleImage']);
//-------------------------------------------------------- //--------------------------------------------------------
}
}// foreach ($imagesDeleted as $key => $imageDeleted) {
} $Gallery = Gallery::where('path', $imageDeleted)->findOrFail();
if ($Gallery) {
Storage::disk('public')->delete(static::storage_path($imageDeleted));
Uploadable::where('gallery_id', $Gallery->id)->where('uploadable_id', $TestResult->id)->where('uploadable_type', get_class($TestResult))->delete();
$Gallery->delete();
}
}
}
return \MessageResponse::success(null,trans('messages.update')); return \MessageResponse::success(null,trans('messages.update'));
} }
+1 -1
View File
@@ -43,7 +43,7 @@
/******/ /******/
/******/ // script path function /******/ // script path function
/******/ function jsonpScriptSrc(chunkId) { /******/ function jsonpScriptSrc(chunkId) {
/******/ return __webpack_require__.p + "js/vue/chunks/" + ({}[chunkId]||chunkId) + "." + {"0":"cee19c932dbc149a1cc9","1":"5281a63adedfa1ab604f","2":"743b89b9bb2dabfa3ffe","3":"a050b1a548ee0857d2f7","4":"7c6e05813e662d286d09","5":"8d7463d42653e02550f1","6":"68a5b0bbe6eb4c67723e","7":"af7adc54a3d58c0fca09","8":"320bd23018e7d45c2399","9":"b090838ef04dc8eece14","10":"9603d5be0ae5c93d2b34","11":"cf996f3dc28b604a3d3a","12":"febbfeb844354a0cdbff","13":"7441ce1b806f3f78bcbb","14":"8da587ed5e5037bb178c","15":"dc3f54190c64738d2bee","16":"b032a406fa78aefbf408","17":"aeda8d2fe82355b16c66","18":"4c39b4598f53fc5610c2","19":"44988f4163efeba55699","20":"08150bc9a6df0102406e","21":"bc068c1d2ec99a9965de","22":"9aa5bdc2ef1c37f1d6f4","23":"99044b1527f8753dde51","24":"8e2e76e3b7f37492e02f","25":"307ef9252407d3b20451","26":"174e16952c4ab044e8bf","27":"bfdd4afc7d67ccd7ea27"}[chunkId] + ".js" /******/ return __webpack_require__.p + "js/vue/chunks/" + ({}[chunkId]||chunkId) + "." + {"0":"cee19c932dbc149a1cc9","1":"5281a63adedfa1ab604f","2":"743b89b9bb2dabfa3ffe","3":"a050b1a548ee0857d2f7","4":"7c6e05813e662d286d09","5":"8d7463d42653e02550f1","6":"68a5b0bbe6eb4c67723e","7":"7b4c284293f5dd57a85d","8":"320bd23018e7d45c2399","9":"8ee8007e77852469f798","10":"9603d5be0ae5c93d2b34","11":"cf996f3dc28b604a3d3a","12":"febbfeb844354a0cdbff","13":"7441ce1b806f3f78bcbb","14":"8da587ed5e5037bb178c","15":"dc3f54190c64738d2bee","16":"b032a406fa78aefbf408","17":"aeda8d2fe82355b16c66","18":"4c39b4598f53fc5610c2","19":"44988f4163efeba55699","20":"08150bc9a6df0102406e","21":"bc068c1d2ec99a9965de","22":"9aa5bdc2ef1c37f1d6f4","23":"99044b1527f8753dde51","24":"8e2e76e3b7f37492e02f","25":"b7fe930c0eda2e6e82a5","26":"174e16952c4ab044e8bf","27":"bfdd4afc7d67ccd7ea27"}[chunkId] + ".js"
/******/ } /******/ }
/******/ /******/
/******/ // The require function /******/ // The require function