seperate image saving to directory
This commit is contained in:
@@ -7,9 +7,8 @@ use Illuminate\Http\Request;
|
|||||||
use App\Models\designer\DesignerModel;
|
use App\Models\designer\DesignerModel;
|
||||||
use App\Models\teamstore\TeamStoreModel;
|
use App\Models\teamstore\TeamStoreModel;
|
||||||
use App\Models\MainModel;
|
use App\Models\MainModel;
|
||||||
use Config;
|
use Illuminate\Support\Facades\Auth;
|
||||||
Use Auth;
|
use Illuminate\Support\Facades\Storage;
|
||||||
use DB;
|
|
||||||
|
|
||||||
class DesignerController extends Controller {
|
class DesignerController extends Controller {
|
||||||
|
|
||||||
@@ -958,4 +957,21 @@ class DesignerController extends Controller {
|
|||||||
return view("designer.buy_form")->with('jersey_sizes', $jersey_sizes)
|
return view("designer.buy_form")->with('jersey_sizes', $jersey_sizes)
|
||||||
->with('shorts_sizes', $shorts_sizes);
|
->with('shorts_sizes', $shorts_sizes);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function saveBase64Images(Request $request) {
|
||||||
|
$post = $request->all();
|
||||||
|
@list($type, $file_data) = explode(';', $post['base64_image']);
|
||||||
|
$extension = explode('/', mime_content_type($post['base64_image']))[1];
|
||||||
|
@list(, $file_data) = explode(',', $file_data);
|
||||||
|
$imageName = $post['side'] . '_' . $post['image_count'] . '_' . microtime(true) . '_' . Auth::user()->id . '.'.$extension;
|
||||||
|
|
||||||
|
$filesystem = Storage::disk('sftp');
|
||||||
|
$filesystem->getDriver()->getAdapter()->setDirectoryPerm(0755);
|
||||||
|
$filesystem->put('/merchbay/designer-images/' . $imageName, base64_decode($file_data));
|
||||||
|
// Storage::disk('uploads_local')->put($imageName, base64_decode($file_data));
|
||||||
|
return response()->json(array(
|
||||||
|
'success' => true,
|
||||||
|
'url' => config('site_config.uploads') . 'designer-images/' . $imageName
|
||||||
|
));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
@@ -948,21 +948,24 @@ class UserController extends Controller {
|
|||||||
// var_dump($data);
|
// var_dump($data);
|
||||||
|
|
||||||
|
|
||||||
$res = $UserModel->updateTeamstore($store_id, $data);
|
$UserModel->updateTeamstore($store_id, $data);
|
||||||
// var_dump($res);
|
// var_dump($res);
|
||||||
// if($res){
|
// if($res){
|
||||||
|
$filesystem = Storage::disk('sftp');
|
||||||
|
$filesystem->getDriver()->getAdapter()->setDirectoryPerm(0755);
|
||||||
|
|
||||||
if($request->file('store_logo') != null){
|
if($request->file('store_logo') != null){
|
||||||
Storage::disk('uploads')->put('/teamstore/'. $orig_store_url . '/' . $store_logo_name, fopen($request->file('store_logo'), 'r+'));
|
$filesystem->put('/merchbay/teamstore/'. $orig_store_url . '/' . $store_logo_name, fopen($request->file('store_logo'), 'r+'));
|
||||||
}
|
}
|
||||||
|
|
||||||
if($request->file('store_banner') != null){
|
if($request->file('store_banner') != null){
|
||||||
Storage::disk('uploads')->put('/teamstore/'. $orig_store_url . '/' . $store_banner_name, fopen($request->file('store_banner'), 'r+'));
|
$filesystem->put('/merchbay/teamstore/'. $orig_store_url . '/' . $store_banner_name, fopen($request->file('store_banner'), 'r+'));
|
||||||
}
|
}
|
||||||
|
|
||||||
return response()->json(array(
|
return response()->json(array(
|
||||||
'success' => true,
|
'success' => true,
|
||||||
'clearform' => false,
|
'clearform' => false,
|
||||||
'message'=>'Store is successfully updated.'
|
'message'=>'Store is successfully updated.'
|
||||||
));
|
));
|
||||||
|
|
||||||
// }else{
|
// }else{
|
||||||
|
|||||||
@@ -70,6 +70,8 @@ Route::post('/designer/edit/a/edit-set-pattern', 'designer\DesignerController@ed
|
|||||||
Route::get('/designer/a/tab-clipart-content', 'designer\DesignerController@tabClipartContent');
|
Route::get('/designer/a/tab-clipart-content', 'designer\DesignerController@tabClipartContent');
|
||||||
Route::post('/designer/a/save-design-details', 'designer\DesignerController@saveDesignDetails');
|
Route::post('/designer/a/save-design-details', 'designer\DesignerController@saveDesignDetails');
|
||||||
|
|
||||||
|
Route::post('/designer/a/save-images', 'designer\DesignerController@saveBase64Images');
|
||||||
|
|
||||||
// teamstore
|
// teamstore
|
||||||
// Route::get('/', 'teamstore\TeamStoreController@login'); // old
|
// Route::get('/', 'teamstore\TeamStoreController@login'); // old
|
||||||
Route::get('/', 'teamstore\TeamStoreController@storelist'); // old
|
Route::get('/', 'teamstore\TeamStoreController@storelist'); // old
|
||||||
@@ -196,3 +198,7 @@ Route::group(array('middleware' => ['isAuthorized', 'cors'], 'prefix' => 'api'),
|
|||||||
Route::get('order-status', 'ApiController@getOrderStatus');
|
Route::get('order-status', 'ApiController@getOrderStatus');
|
||||||
Route::get('steps', 'ApiController@getSteps');
|
Route::get('steps', 'ApiController@getSteps');
|
||||||
});
|
});
|
||||||
|
|
||||||
|
Route::get('vue/designer', function() {
|
||||||
|
return view('designer.vue_designer');
|
||||||
|
});
|
||||||
|
|||||||
@@ -1,9 +1,10 @@
|
|||||||
<?php namespace App\Providers;
|
<?php namespace App\Providers;
|
||||||
|
|
||||||
use Illuminate\Support\ServiceProvider;
|
use Illuminate\Support\ServiceProvider;
|
||||||
use Storage;
|
use Illuminate\Support\Facades\Storage;
|
||||||
use League\Flysystem\Filesystem;
|
use League\Flysystem\Filesystem;
|
||||||
use League\Flysystem\Sftp\SftpAdapter;
|
use League\Flysystem\Sftp\SftpAdapter;
|
||||||
|
use Illuminate\Support\Facades\Blade;
|
||||||
|
|
||||||
class AppServiceProvider extends ServiceProvider {
|
class AppServiceProvider extends ServiceProvider {
|
||||||
|
|
||||||
@@ -15,7 +16,7 @@ class AppServiceProvider extends ServiceProvider {
|
|||||||
public function boot()
|
public function boot()
|
||||||
{
|
{
|
||||||
//
|
//
|
||||||
\Blade::extend(function($value) {
|
Blade::extend(function($value) {
|
||||||
return preg_replace('/\@define(.+)/', '<?php ${1}; ?>', $value);
|
return preg_replace('/\@define(.+)/', '<?php ${1}; ?>', $value);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
@@ -103,6 +103,11 @@ return [
|
|||||||
'root' => '/var/www/html/images/merchbay',
|
'root' => '/var/www/html/images/merchbay',
|
||||||
'timeout' => 10,
|
'timeout' => 10,
|
||||||
],
|
],
|
||||||
|
|
||||||
|
'uploads_local' => [
|
||||||
|
'driver' => 'local',
|
||||||
|
'root' => 'C:/wamp64/www/uploads',
|
||||||
|
],
|
||||||
],
|
],
|
||||||
|
|
||||||
];
|
];
|
||||||
|
|||||||
@@ -1113,9 +1113,15 @@
|
|||||||
var type = SideAndPath[i]['Type'];
|
var type = SideAndPath[i]['Type'];
|
||||||
|
|
||||||
var contentName = "content_" + sideName;
|
var contentName = "content_" + sideName;
|
||||||
//console.log(contentName);
|
var objects = window['canvas_' + type + '_' + sideName].getObjects();
|
||||||
|
objects.forEach((obj, index) => {
|
||||||
|
var newUrl = saveImages(obj._originalElement.currentSrc, sideName, index);
|
||||||
|
obj._originalElement.src = newUrl;
|
||||||
|
});
|
||||||
|
window['canvas_' + type + '_' + sideName].renderAll();
|
||||||
|
|
||||||
contentName = JSON.stringify(window['canvas_' + type + '_' + sideName].toObject(['idNumber', 'id'])); // = new fabric.Canvas(canvasName);
|
contentName = JSON.stringify(window['canvas_' + type + '_' + sideName].toObject(['idNumber', 'id'])); // = new fabric.Canvas(canvasName);
|
||||||
//console.log(contentName);
|
|
||||||
|
|
||||||
var inputName = "json_" + sideName;
|
var inputName = "json_" + sideName;
|
||||||
var hiddenFieldContentDesign = "field_" + sideName;
|
var hiddenFieldContentDesign = "field_" + sideName;
|
||||||
@@ -1146,7 +1152,7 @@
|
|||||||
newformSaveDesign.appendChild(hiddenField_token);
|
newformSaveDesign.appendChild(hiddenField_token);
|
||||||
|
|
||||||
document.body.appendChild(newformSaveDesign);
|
document.body.appendChild(newformSaveDesign);
|
||||||
//console.log(exportSVG());
|
// console.log(exportSVG());
|
||||||
newformSaveDesign.submit();
|
newformSaveDesign.submit();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1269,6 +1275,37 @@
|
|||||||
// return false;
|
// return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
function saveImages(base64Image, sideName, image_count){
|
||||||
|
var newUrl;
|
||||||
|
$.ajax({ //create an ajax request to load_page.php
|
||||||
|
type: "POST",
|
||||||
|
url: "{{url('designer/a/save-images')}}",
|
||||||
|
async: false,
|
||||||
|
dataType : 'json',
|
||||||
|
data: {
|
||||||
|
base64_image : base64Image,
|
||||||
|
side: sideName,
|
||||||
|
image_count: image_count
|
||||||
|
},
|
||||||
|
beforeSend:function(xhr){
|
||||||
|
var token = $('meta[name="csrf_token"]').attr('content');
|
||||||
|
|
||||||
|
if (token) {
|
||||||
|
return xhr.setRequestHeader('X-CSRF-TOKEN', token);
|
||||||
|
}
|
||||||
|
xhr.setRequestHeader( 'X-Requested-With', 'XMLHttpRequest');
|
||||||
|
},
|
||||||
|
success: function(response){
|
||||||
|
if(response.success){
|
||||||
|
newUrl = response.url;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
return newUrl;
|
||||||
|
}
|
||||||
|
|
||||||
// end design saving
|
// end design saving
|
||||||
|
|
||||||
// 1ST TAB <---####################################
|
// 1ST TAB <---####################################
|
||||||
|
|||||||
12
resources/views/designer/vue_designer.blade.php
Normal file
12
resources/views/designer/vue_designer.blade.php
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en">
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
|
<meta http-equiv="X-UA-Compatible" content="ie=edge">
|
||||||
|
<title>Document</title>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
Reference in New Issue
Block a user