role;
if ($userRole == "store_owner") {
$storeId = Auth::user()->store_id;
$countStoreOrder = $m->countStoreOrder($storeId);
$storeIncome = $m->storeIncome($storeId);
$countStoreProduct = $m->countStoreProduct($storeId);
$countStorePublishedProduct = $m->countStorePublishedProduct($storeId);
$post_data = array(
'isStoreOwner' => true,
'store_order' => $countStoreOrder[0]->count_order,
'store_income' => $storeIncome[0]->store_income,
'store_product_count' => $countStoreProduct[0]->store_product_count,
'store_published_product' => $countStorePublishedProduct[0]->store_published_product
);
} else {
$post_data = array(
'isStoreOwner' => false,
'store_order' => "",
'store_income' => "",
'store_product_count' => "",
'store_published_product' => ""
);
}
// $post_data = json_encode($post_data, JSON_FORCE_OBJECT);
return view('user-layouts.index')->with('data', $post_data);
}
public function addressBook()
{
$m = new UserModel;
$userId = Auth::user()->id;
$array_address_book = $m->selectAddresBook('UserId', $userId);
return view('user-layouts.address_book')
->with('array_address_book', $array_address_book);
}
public function createAddressBook()
{
return view('user-layouts.create_address_book');
}
public function saveAddressBook(Request $request)
{
$post = $request->all();
$m = new UserModel;
$userId = Auth::user()->id;
$data = array(
'UserId' => $userId,
'Fullname' => $post['fullname'],
'ContactNumber' => $post['mobilenumber'],
'OtherNotes' => $post['othernotes'],
'Address' => $post['address'],
'Address2' => $post['address2'],
'State' => $post['state'],
'City' => $post['city'],
'ZipCode' => $post['zipcode'],
'CountryCode' => $post['countryCode'],
'Country' => $post['country']
);
echo $i = $m->insertAddressBook($data);
}
public function editAddressBook($id)
{
$m = new UserModel;
$userId = Auth::user()->id;
$array_address_book = $m->selectAddresBook('Id', $id);
if ($array_address_book[0]->UserId != $userId) {
return redirect('user/address-book');
}
return view('user-layouts.edit_address_book')
->with('array_address_book', $array_address_book);
}
public function updateAddressBook(Request $request)
{
$post = $request->all();
$m = new UserModel;
$userId = Auth::user()->id;
$id = $post['id'];
$data = array(
'UserId' => $userId,
'Fullname' => $post['fullname'],
'ContactNumber' => $post['mobilenumber'],
'OtherNotes' => $post['othernotes'],
'Address' => $post['address'],
'Address2' => $post['address2'],
'State' => $post['state'],
'City' => $post['city'],
'ZipCode' => $post['zipcode'],
'CountryCode' => $post['countryCode'],
'Country' => $post['country']
);
echo $i = $m->saveUpdateAddressBook($data, $id);
}
public function profile()
{
$m = new UserModel;
$userId = Auth::user()->id;
$array_profile_info = $m->selectProfileInfo($userId);
return view('user-layouts.profile')
->with('array_profile_info', $array_profile_info);
}
public function editProfile()
{
$m = new UserModel;
$userId = Auth::user()->id;
$array_profile_info = $m->selectProfileInfo($userId);
return view('user-layouts.edit_profile')
->with('array_profile_info', $array_profile_info);
}
public function updateProfile(Request $request)
{
$post = $request->all();
$m = new UserModel;
$userId = Auth::user()->id;
$user_logins_data = array(
'name' => $post['fullname'],
'email' => $post['email'],
'other_email' => $post['other_email'],
);
$user_info_data = array(
'UserId' => $userId,
'ContactNumber' => $post['contactnumber'],
'Gender' => $post['gender'],
'Birthday' => date('Y-m-d', strtotime($post['birthday']))
);
$i = $m->saveUpdateUserLogins($user_logins_data, $userId);
$i1 = $m->saveUpdateUserInfo($user_info_data, $userId);
return $i;
}
public function changePassword()
{
return view('user-layouts.change_password');
}
public function updatePassword(Request $request)
{
$post = $request->all();
$m = new UserModel;
$c_password = Auth::user()->password;
$userId = Auth::user()->id;
if (!(Hash::check($post['current_password'], $c_password))) {
$message = "Your current password does not matches with the password you provided. Please try again.";
return $message;
}
if (strcmp($post['current_password'], $post['new_password']) == 0) {
//Current password and new password are same
$message = "New Password cannot be same as your current password. Please choose a different password.";
return $message;
}
if ($post['new_password'] != $post['con_new_password']) {
// The passwords matches
$message = "Password confirmation and New Password must match. Please try again.";
return $message;
}
$i = $m->saveUpdatePassword(bcrypt($post['new_password']), $userId);
return $i;
}
public function orders()
{
$m = new UserModel;
$userId = Auth::user()->id;
$array_payment_details = $m->selectPaymentDetails('UserId', $userId);
// var_dump($array_payment_details);
// var_dump($array_payment_details);
return view('user-layouts.orders')->with('array_payment_details', $array_payment_details);
}
public function myDesigns()
{
$m = new UserModel;
$userId = Auth::user()->id;
$array_client_designs = $m->selectClientDesigns($userId);
// var_dump($array_client_designs);
return view('user-layouts.my-design')->with('array_client_designs', $array_client_designs);
}
public function viewDesign($designCode)
{
$m = new UserModel;
$newMainModel = new MainModel;
$userId = Auth::user()->id;
$array_client_designs = $m->selectClientDesignsbyCode($designCode);
// check if its your design
if ($userId != $array_client_designs[0]->ClientId) {
return redirect()->back();
}
$array_template_paths = $m->selectTemplatePaths('TemplateCode', $array_client_designs[0]->TemplateCode);
$array_cat_name = $newMainModel->selectCategoryName($array_client_designs[0]->TemplateCode);
return view('user-layouts.view-design')
->with('array_client_designs', $array_client_designs)
->with('array_template_paths', $array_template_paths)
->with('array_cat_name', $array_cat_name);
}
public function updateDesignDetails(Request $request)
{
$post = $request->all();
$m = new UserModel;
$design_name = $post['design_name'];
$design_code = $post['design_code'];
$client_design_data = array(
'DesignName' => $design_name
);
$i = $m->updateClientDesign($client_design_data, $design_code);
return $i;
}
public function store()
{
$m = new UserModel;
$userRole = Auth::user()->role;
$array_store_info = array();
if ($userRole == "store_owner") {
$storeId = Auth::user()->store_id;
$array_store_info = $m->selectStoreInfo($storeId);
return redirect('store/' . $array_store_info[0]->StoreUrl);
}
}
public function storeItems()
{
$thumbnails = array();
$newUserModel = new UserModel;
$newTeamStoreModel = new TeamStoreModel;
$user_role = Auth::user()->role;
$store_id = Auth::user()->store_id;
$store_array = $newTeamStoreModel->selectTeamStore('Id', $store_id);
$product_array = $newTeamStoreModel->selectTeamStoreProducts('TeamStoreId', $store_id);
foreach ($product_array as $p => $pr_arr) {
$thumbnails_array = $newTeamStoreModel->getProductThumbnails($pr_arr->Id);
if (!empty($thumbnails_array)) {
foreach ($thumbnails_array as $t => $thumb) {
if ($thumb->ImageClass == 'custom') {
$displayThumbnails = $thumb->Image;
break;
}
if ($thumb->ImageClass == 'active') {
$displayThumbnails = $thumb->Image;
break;
}
}
$thumbnails[] = array(
'folder' => $store_array[0]->ImageFolder,
'product_id' => $pr_arr->Id,
'thumb' => $displayThumbnails
);
} else {
$thumbnails[] = array(
'folder' => $store_array[0]->ImageFolder,
'product_id' => $pr_arr->Id,
'thumb' => "product-image-placeholder.png"
);
}
}
return view('user-layouts.store_items')->with('store_array', $store_array)
->with('product_array', $product_array)
->with('thumbnails', $thumbnails);
}
public function viewStoreItem($url)
{
$product_array = array();
$newUserModel = new UserModel;
$newTeamStoreModel = new TeamStoreModel;
$product_array = $newTeamStoreModel->selectTeamStoreProducts('ProductURL', $url);
$thumbnails_array = $newTeamStoreModel->getThumbnails($product_array[0]->Id);
$available_size = explode(",", $product_array[0]->AvailableSizes);
$shipping_cost = $newUserModel->selectShippingCost();
return view('user-layouts.view-store-item')->with('product_array', $product_array)
->with('available_size', $available_size)
->with('thumbnails_array', $thumbnails_array)
->with('shipping_cost', $shipping_cost);
}
public function storeItemUpdate(Request $request)
{
$post = $request->all();
$newTeamStoreModel = new TeamStoreModel;
if ($post['shipping_cost'] == 0) {
$shipping_cost_id = null;
} else {
$shipping_cost_id = $post['shipping_cost'];
}
$item_url = $post['item_url'];
$data = array(
'ProductName' => $post['itemName'],
'ProductCode' => $post['sku'],
'ProductPrice' => str_replace('$ ', '', $post['item_price']),
'ProductDescription' => $post['itemDescription'],
'PrivacyStatus' => $post['item_privacy'],
'ProductForm' => $post['itemForm'],
'AvailableSizes' => implode(",", $post['available_size']),
'ShippingCostId' => $shipping_cost_id,
'ProductAvailableQty' => ($post['item_quantity'] == 0) ? null : $post['item_quantity']
);
$i = $newTeamStoreModel->updateStoreItem($data, $item_url);
return $i;
}
public function storeSetting()
{
$TeamStoreModel = new TeamStoreModel;
$store_id = Auth::user()->store_id;
$store_array = $TeamStoreModel->selectTeamStore('Id', $store_id);
return view('user-layouts.store_setting')
->with('store_array', $store_array);
}
public function emailVerify()
{
$m = new UserModel;
$userId = Auth::user()->id;
$email_is_verified = Auth::user()->email_is_verified;
if ($email_is_verified == 0) {
$array_profile_info = $m->selectProfileInfo($userId);
return view('user-layouts.email_verify')
->with('array_profile_info', $array_profile_info);
}
return redirect('user/profile');
}
public function resendVericationCode(Request $request)
{
$post = $request->all();
$random_hash = rand(1000, 9999);
$newUserModel = new UserModel;
$emailDetails = [
'receiver' => $post['email'],
'subject' => 'CREW Sportswear Email Verification Code',
'verification_code' => $random_hash
];
Mail::send('emails.resend_code', $emailDetails, function ($message) use ($emailDetails) {
$message->from('no-reply@crewsportswear.com', 'CREW Sportswear');
$message->to($emailDetails['receiver'])->subject('CREW Sportswear Email Verification Code');
});
if (count(Mail::failures()) > 0) {
echo '0';
} else {
$data = array(
'EmailAddress' => $post['email'],
'VerCode' => $random_hash
);
$i = $newUserModel->saveResendCode($data);
echo $i;
}
}
public function verifyCode(Request $request)
{
$post = $request->all();
$verification_code = $post['verification_code'];
$userEmail = Auth::user()->email;
$newUserModel = new UserModel;
$userId = Auth::user()->id;
$data = array(
'EmailAddress' => $userEmail,
'Code' => $verification_code
);
$i = $newUserModel->validateCode($data);
// var_dump($i);
if ($i) {
$user_logins_data = array(
'email_is_verified' => 1
);
$newUserModel->saveUpdateUserLogins($user_logins_data, $userId);
return response()->json(array(
'success' => true,
'message' => 'Your email is successfully verified.'
));
} else {
return response()->json(array(
'success' => false,
'message' => 'Invalid verification code.'
));
}
}
public function orderDetails($ck)
{
$newUserModel = new UserModel;
$order_item_array = $newUserModel->selectOrderItem($ck);
$item_goup_array = $newUserModel->itemGroup($ck);
$item_thumbs = $newUserModel->selectDisplayItemThumb();
$array_payment_details = $newUserModel->selectPaymentDetails('CartKey', $ck);
return view('user-layouts.order_details')
->with('array_payment_details', $array_payment_details)
->with('img_thumb', $item_thumbs)
->with('item_goup_array', $item_goup_array)
->with('order_item_array', $order_item_array);
}
public function sellDesign($designCode)
{
$m = new UserModel;
$newMainModel = new MainModel;
$newTeamStoreModel = new TeamStoreModel;
$userId = Auth::user()->id;
$store_id = Auth::user()->store_id;
$array_client_designs = $m->selectClientDesignsbyCode($designCode);
$store_array = $newTeamStoreModel->selectTeamStore('Id', $store_id);
// check if its your design
if ($userId != $array_client_designs[0]->ClientId) {
return redirect()->back();
}
// var_dump($store_array);
$array_template_paths = $m->selectTemplatePaths('TemplateCode', $array_client_designs[0]->TemplateCode);
$array_cat_name = $newMainModel->selectCategoryName($array_client_designs[0]->TemplateCode);
return view('user-layouts.sell_design')
->with('array_client_designs', $array_client_designs)
->with('array_template_paths', $array_template_paths)
->with('store_array', $store_array)
->with('array_cat_name', $array_cat_name);
}
public function buyDesign($designCode)
{
$m = new UserModel;
$newMainModel = new MainModel;
$newTeamStoreModel = new TeamStoreModel;
$userId = Auth::user()->id;
// $store_id = Auth::user()->store_id;
$array_client_designs = $m->selectClientDesignsbyCode($designCode);
// $store_array = $newTeamStoreModel->selectTeamStore('Id', $store_id);
// check if its your design
if ($userId != $array_client_designs[0]->ClientId) {
return redirect()->back();
}
// var_dump($store_array);
$array_template_paths = $m->selectTemplatePaths('TemplateCode', $array_client_designs[0]->TemplateCode);
$array_cat_name = $newMainModel->selectCategoryName($array_client_designs[0]->TemplateCode);
return view('user-layouts.buy_design')
->with('array_client_designs', $array_client_designs)
->with('array_template_paths', $array_template_paths)
// ->with('store_array', $store_array)
->with('array_cat_name', $array_cat_name);
}
//save item from my design //
public function saveNewStoreItem(Request $request)
{
$post = $request->all();
$UserModel = new UserModel;
$newTeamStoreModel = new TeamStoreModel;
$getYear = date('y');
$store_id = Auth::user()->store_id;
$store_array = $newTeamStoreModel->selectTeamStore('Id', $store_id);
$templateCode = $post['templateCode'];
$designCode = $post['designCode'];
$itemName = $post['itemName'];
$itemDescription = $post['itemDescription'];
$itemPrice = $post['itemPrice'];
$itemForm = $post['itemForm'];
$itemUrl = $store_array[0]->StoreUrl . '-' . $post['itemUrl'];
$itemPrivacy = $post['itemPrivacy'];
$available_size = implode(",", $_POST['available_size']);
$check_product_url = array(
'ProductURL' => $itemUrl
);
$validator = Validator::make(
$check_product_url,
[
'ProductURL' => 'unique:teamstore_products'
],
[
'ProductURL.unique' => 'The Item URL has already been taken.',
]
);
if ($validator->fails()) {
$errors = "";
// var_dump(($validator->errors()->all()));
foreach ($validator->errors()->all() as $error) {
$errors .= "
" . $error . "";
}
$message = '
ERROR:
' . $errors .
'';
return response()->json(array(
'success' => false,
'message' => $message
));
}
$data = array(
'TeamStoreId' => $store_id,
'ProductName' => $itemName,
'ProductPrice' => str_replace('$ ', '', $itemPrice),
'ProductDescription' => $itemDescription,
'ProductURL' => $itemUrl,
'ProductForm' => $itemForm,
'AvailableSizes' => $available_size,
'PrivacyStatus' => $itemPrivacy,
'TemplateCode' => $templateCode,
'DesignCode' => $designCode,
);
$id = $UserModel->insertNewProduct($data); // product item id
// echo $i;
$array_template_paths = $UserModel->selectTemplatePaths('TemplateCode', $templateCode);
foreach ($array_template_paths as $key => $row1) {
if ($key == 0) {
$thumb = $designCode . '-front-thumbnail.png';
$class = "active";
} else {
$thumb = $designCode . '-' . strtolower($row1->Side) . '-thumbnail.png';
$class = null;
}
$thumbs = $data = array(
'ProductId' => $id,
'Image' => $thumb,
'ImageClass' => $class
);
$UserModel->insertNewProductThumbnails($thumbs);
}
$prod_code = array('ProductCode' => $getYear . '-' . str_pad($id, 10, '0', STR_PAD_LEFT));
$i = $UserModel->updateProductCode($prod_code, $id);
return response()->json(array(
'success' => true
));
}
function addStoreItem()
{
$newTeamStoreModel = new TeamStoreModel;
$user_role = Auth::user()->role;
$store_id = Auth::user()->store_id;
$store_array = $newTeamStoreModel->selectTeamStore('Id', $store_id);
return view('user-layouts.add_item')->with('store_array', $store_array);
}
//manually uploading item
function saveNewItem(Request $request)
{
$post = $request->all();
// var_dump($post['imgupload']);
$UserModel = new UserModel;
$newTeamStoreModel = new TeamStoreModel;
$getYear = date('y');
$store_id = Auth::user()->store_id;
$store_array = $newTeamStoreModel->selectTeamStore('Id', $store_id);
$templateCode = $post['templateCode'];
$designCode = $post['designCode'];
$itemName = $post['itemName'];
$itemDescription = $post['itemDescription'];
$itemPrice = $post['itemPrice'];
$itemForm = $post['itemForm'];
$itemUrl = $store_array[0]->StoreUrl . '-' . $post['itemUrl'];
$itemPrivacy = $post['itemPrivacy'];
$available_size = implode(",", $_POST['available_size']);
$check_product_url = array(
'ProductURL' => $itemUrl
);
$validator = Validator::make(
$check_product_url,
[
'ProductURL' => 'unique:teamstore_products'
],
[
'ProductURL.unique' => 'The Item URL has already been taken.',
]
);
if ($validator->fails()) {
$errors = "";
// var_dump(($validator->errors()->all()));
foreach ($validator->errors()->all() as $error) {
$errors .= "" . $error . "";
}
$message = '
ERROR:
' . $errors .
'';
return response()->json(array(
'success' => false,
'message' => $message
));
}
$data = array(
'TeamStoreId' => $store_id,
'ProductName' => $itemName,
'ProductPrice' => str_replace('$ ', '', $itemPrice),
'ProductDescription' => $itemDescription,
'ProductURL' => $itemUrl,
'ProductForm' => $itemForm,
'AvailableSizes' => $available_size,
'PrivacyStatus' => $itemPrivacy,
'TemplateCode' => $templateCode,
'DesignCode' => $designCode,
);
$id = $UserModel->insertNewProduct($data); // product item id
// echo $id;
for ($i = 0; $i < count($post['imgupload']); $i++) {
$rawName = date('Ymd') . "-" . time() . '-' . $request->file('imgupload')[$i]->getClientOriginalName();
$imageExt = $request->file('imgupload')[$i]->getClientOriginalExtension();
$custom_file_name = str_replace(' ', '-', strtolower($rawName));
$custom_file_name = preg_replace("/\.[^.\s]{3,4}$/", "", $custom_file_name);
$NewImageName = $custom_file_name . '.' . $imageExt;
$thumbnail = $NewImageName;
if ($i == 0) {
$imageClass = "active";
} else {
$imageClass = null;
}
$thumbs = $data = array(
'ProductId' => $id,
'Image' => $thumbnail,
'ImageClass' => $imageClass
);
$u = $UserModel->insertNewProductThumbnails($thumbs);
// var_dump($thumbs);
Storage::disk('sftp')->put($thumbnail, fopen($request->file('imgupload')[$i], 'r+')); //live
//Storage::disk('localdir')->put($thumbnail, fopen($request->file('imgupload')[$i], 'r+'));
// var_dump($s);
}
$prod_code = array('ProductCode' => $getYear . '-' . str_pad($id, 10, '0', STR_PAD_LEFT));
$i = $UserModel->updateProductCode($prod_code, $id);
return response()->json(array(
'success' => true,
'message' => 'success'
));
}
function saveNewItemFromDesigner(Request $request)
{
$post = $request->all();
// var_dump($post['imgupload']);
$UserModel = new UserModel;
$newTeamStoreModel = new TeamStoreModel;
$getYear = date('y');
$store_id = 1; // default merchbay store
$store_array = $newTeamStoreModel->selectTeamStore('Id', $store_id);
$client_design = $UserModel->selectClientDesignsbyCode($post['designCode']);
$userId = Auth::user()->id;
$templateCode = $client_design[0]->TemplateCode;
$designCode = $client_design[0]->DesignCode;
$itemName = $client_design[0]->DesignName;
$itemDescription = "Sublimated T-Shirt 100% moisture wicking polyester. Imported. Lightweight fabric helps wick away sweat to keep you dry and comfortable.";
$itemPrice = "1.00";
$itemForm = "tshirt-form";
$itemUrl = $store_array[0]->StoreUrl . '-' . $userId . '-' . $client_design[0]->DesignCode;
$itemPrivacy = "public";
$available_size = "youth,adult";
$product = $newTeamStoreModel->selectTeamStoreProducts('ProductURL', $itemUrl);
// var_dump(count($product));
if (count($product)) {
return response()->json(array(
'success' => true,
'message' => 'success',
"link" => '/store/merchbay-store/product/' . $itemUrl
));
}
$check_product_url = array(
'ProductURL' => $itemUrl
);
$validator = Validator::make(
$check_product_url,
[
'ProductURL' => 'unique:teamstore_products'
],
[
'ProductURL.unique' => 'The Item URL has already been taken.',
]
);
if ($validator->fails()) {
$errors = "";
// var_dump(($validator->errors()->all()));
foreach ($validator->errors()->all() as $error) {
$errors .= "" . $error . "";
}
$message = '
ERROR:
' . $errors .
'';
return response()->json(array(
'success' => false,
'message' => $message
));
}
$data = array(
'TeamStoreId' => $store_id,
'ProductName' => $itemName,
'ProductPrice' => str_replace('$ ', '', $itemPrice),
'ProductDescription' => $itemDescription,
'ProductURL' => $itemUrl,
'ProductForm' => $itemForm,
'AvailableSizes' => $available_size,
'PrivacyStatus' => $itemPrivacy,
'TemplateCode' => $templateCode,
'DesignCode' => $designCode,
// 'ShippingCostId' => 1
);
$id = $UserModel->insertNewProduct($data); // product item id
// echo $id;
$array_template_paths = $UserModel->selectTemplatePaths('TemplateCode', $templateCode);
$imageThumbs = array();
foreach ($array_template_paths as $key => $path) {
$imageThumbs[] = $designCode . "-" . strtolower($path->Side) . "-thumbnail.png";
}
// var_dump($imageThumbs);
// $images = explode(",", $post["imagesThumb"]);
for ($i = 0; $i < count($imageThumbs); $i++) {
$thumbnail = $imageThumbs[$i];
if ($i == 0) {
$imageClass = "active";
} else {
$imageClass = null;
}
$thumbs = $data = array(
'ProductId' => $id,
'Image' => $thumbnail,
'ImageClass' => $imageClass
);
$UserModel->insertNewProductThumbnails($thumbs);
}
$prod_code = array('ProductCode' => $getYear . '-' . str_pad($id, 10, '0', STR_PAD_LEFT));
$i = $UserModel->updateProductCode($prod_code, $id);
return response()->json(array(
'success' => true,
'message' => 'success',
"link" => '/store/merchbay-store/product/' . $itemUrl
));
}
function saveNewItemImage(Request $request)
{
$post = $request->all();
$UserModel = new UserModel;
$getYear = date('y');
$id = $post['_id'];
$getActiveDisplay = $UserModel->selectDisplayItemThumbById($id);
for ($i = 0; $i < count($post['upload_images']); $i++) {
$rawName = date('Ymd') . "-" . time() . '-' . $request->file('upload_images')[$i]->getClientOriginalName();
$imageExt = $request->file('upload_images')[$i]->getClientOriginalExtension();
$custom_file_name = str_replace(' ', '-', strtolower($rawName));
$custom_file_name = preg_replace("/\.[^.\s]{3,4}$/", "", $custom_file_name);
$NewImageName = $custom_file_name . '.' . $imageExt;
$thumbnail = $NewImageName;
if ($i == 0 && empty($getActiveDisplay)) {
$imageClass = "active";
} else {
$imageClass = null;
}
$thumbs = $data = array(
'ProductId' => $id,
'Image' => $thumbnail,
'ImageClass' => $imageClass
);
$u = $UserModel->insertNewProductThumbnails($thumbs);
Storage::disk('sftp')->put($thumbnail, fopen($request->file('upload_images')[$i], 'r+')); //live
//Storage::disk('localdir')->put($thumbnail, fopen($request->file('upload_images')[$i], 'r+'));
}
return response()->json(array(
'success' => true,
'message' => 'success'
));
}
function deleteImageThumb(Request $request)
{
$file = $request->thumb_filename;
$id = $request->thumb_id;
$UserModel = new UserModel;
$storagePath = Storage::disk('sftp')->getDriver()->getAdapter()->getPathPrefix();
if (file_exists($storagePath . $file)) {
unlink($storagePath . $file);
}
$i = $UserModel->deleteImageThumb('Id', $id);
return response()->json(array(
'success' => true,
'message' => 'success',
'delete_row' => 'item-' . $id
));
}
function updateActiveThumbnail(Request $request)
{
$post = $request->all();
$UserModel = new UserModel;
$i = $UserModel->updateActiveThumb($post['id'], $post['product_id']);
// var_dump($i);
}
function saveThumbnailOrdering(Request $request)
{
$post = $request->all();
$arrayItems = $post['item'];
$order = 1;
$UserModel = new UserModel;
foreach ($arrayItems as $item) {
$i = $UserModel->updateThumbnailOrdering($order, $item);
$order++;
}
return response()->json(array(
'success' => true,
'message' => 'success'
));
}
function saveItemOrdering(Request $request)
{
$post = $request->all();
$arrayItems = $post['order_number'];
$order = 1;
$UserModel = new UserModel;
foreach ($arrayItems as $item) {
$i = $UserModel->updateItemOrdering($order, $item);
$order++;
}
return response()->json(array(
'success' => true,
'message' => 'success'
));
}
function storeSettingUpdate(Request $request)
{
$post = $request->all();
$UserModel = new UserModel;
$store_id = Auth::user()->store_id;
$store_name = $post['store_name'];
$store_url = $post['store_url'];
$orig_store_url = $post['orig_store_url'];
if ($post['store_status'] == "Public") {
$store_status = "true";
} else {
$store_status = "false";
}
if (isset($post['set_store_password'])) {
$store_password = $post['store_password'];
} else {
$store_password = null;
}
if ($request->file('store_logo') != null) {
$store_logo_name = 'logo.' . $request->file('store_logo')->getClientOriginalExtension();
} else {
$store_logo_name = $post['orig_store_logo'];
}
if ($request->file('store_banner') != null) {
$store_banner_name = 'banner.' . $request->file('store_banner')->getClientOriginalExtension();
} else {
$store_banner_name = $post['orig_store_banner'];
}
if ($orig_store_url != $store_url) {
$check_store_url = array(
'StoreUrl' => $store_url
);
$validator = Validator::make(
$check_store_url,
[
'StoreUrl' => 'unique:teamstores'
],
[
'StoreUrl.unique' => 'The Store URL has already been taken.',
]
);
if ($validator->fails()) {
$errors = "";
foreach ($validator->errors()->all() as $error) {
$errors .= "" . $error . "";
}
return response()->json(array(
'success' => false,
'clearform' => false,
'message' => $errors
));
}
}
$data = array(
// 'StoreUrl' => $store_url,
// 'ImageFolder' => $store_url,
'Password' => $store_password,
'HashId' => md5($store_url),
'StoreName' => $store_name,
'StoreLogo' => $store_logo_name,
'StoreBanner' => $store_banner_name,
'IsActive' => $store_status
);
// var_dump($data);
$UserModel->updateTeamstore($store_id, $data);
// var_dump($res);
// if($res){
$filesystem = Storage::disk('sftp');
$filesystem->getDriver()->getAdapter()->setDirectoryPerm(0755);
if ($request->file('store_logo') != null) {
$filesystem->put('/merchbay/teamstore/' . $orig_store_url . '/' . $store_logo_name, fopen($request->file('store_logo'), 'r+'));
}
if ($request->file('store_banner') != null) {
$filesystem->put('/merchbay/teamstore/' . $orig_store_url . '/' . $store_banner_name, fopen($request->file('store_banner'), 'r+'));
}
return response()->json(array(
'success' => true,
'clearform' => false,
'message' => 'Store is successfully updated.'
));
// }else{
// return response()->json(array(
// 'success' => false,
// 'clearform' => true,
// 'message' => 'Something went wrong. Please refresh the page and try again.'
// ));
// }
}
function storeOrders()
{
$UserModel = new UserModel;
$newTeamStoreModel = new TeamStoreModel;
$store_id = Auth::user()->store_id;
$array_store_orders = $UserModel->selectStoreOrders($store_id);
$store_array = $newTeamStoreModel->selectTeamStore('Id', $store_id);
return view('user-layouts.store-orders')
->with('store_array', $store_array)
->with('array_store_orders', $array_store_orders);
}
function showStoreOrderDetails(Request $request)
{
$post = $request->all();
// var_dump($post['pid']);
$UserModel = new UserModel;
$array_payment_details = $UserModel->selectPaymentDetails('CartKey', $post['ck']);
$array_shipping_add = $UserModel->selectShippingAddress('PaymentDetail_Id', $array_payment_details[0]->Id);
$array_thumbnail_display = $UserModel->selectDisplayItemThumbById($post['pid']);
$array_item = $UserModel->selectOrder('Id', $post['id']);
$handle_order_detail_body = view('user-layouts.order-details-body')
->with('array_payment_details', $array_payment_details)
->with('array_shipping_add', $array_shipping_add)
->with('array_thumbnail_display', $array_thumbnail_display)
->with('array_item', $array_item)
->render();
return response()->json(array(
'success' => true,
'payment_details_response' => $handle_order_detail_body,
'thumb' => $array_thumbnail_display,
'item' => $array_item
));
}
function itemStoreReArrange()
{
$thumbnails = array();
$newUserModel = new UserModel;
$newTeamStoreModel = new TeamStoreModel;
$user_role = Auth::user()->role;
$store_id = Auth::user()->store_id;
$store_array = $newTeamStoreModel->selectTeamStore('Id', $store_id);
$product_array = $newTeamStoreModel->selectTeamStoreProducts('TeamStoreId', $store_id);
foreach ($product_array as $p => $pr_arr) {
$thumbnails_array = $newTeamStoreModel->getProductThumbnails($pr_arr->Id);
if (!empty($thumbnails_array)) {
foreach ($thumbnails_array as $t => $thumb) {
if ($thumb->ImageClass == 'custom') {
$displayThumbnails = $thumb->Image;
break;
}
if ($thumb->ImageClass == 'active') {
$displayThumbnails = $thumb->Image;
break;
}
}
$thumbnails[] = array(
'folder' => $store_array[0]->ImageFolder,
'product_id' => $pr_arr->Id,
'thumb' => $displayThumbnails
);
} else {
$thumbnails[] = array(
'folder' => $store_array[0]->ImageFolder,
'product_id' => $pr_arr->Id,
'thumb' => "product-image-placeholder.png"
);
}
}
return view('user-layouts.store_items_arrange')->with('store_array', $store_array)
->with('product_array', $product_array)
->with('thumbnails', $thumbnails);
}
function deleteStoreItem(Request $request)
{
//
$post = $request->all();
$UserModel = new UserModel;
$res = $UserModel->deleteStoreItem($post['id']);
if ($res) {
return response()->json(array(
'success' => true,
'message' => "Store item is successfully delete."
));
} else {
return response()->json(array(
'success' => false,
'message' => "Something went wrong. Please try again!"
));
}
}
function announcementIndex()
{
$UserModel = new UserModel;
$storeId = Auth::user()->store_id;
$getAnnouncement = $UserModel->getAnnouncement($storeId);
if (count($getAnnouncement) > 0) {
$data = $getAnnouncement[0];
} else {
$data = (object) array(
'Id' => 0,
'StoreId' => "",
'Announcement' => "",
'IsActive' => 0,
'DateCreated' => ""
);
}
return view('user-layouts.announcement')
->with("data", $data)
->render();
}
function announcementUpdateSave(Request $request)
{
$post = $request->all();
$UserModel = new UserModel;
$storeId = Auth::user()->store_id;
$getAnnouncement = $UserModel->getAnnouncement($storeId);
$data = array(
'StoreId' => $storeId,
'Announcement' => htmlentities($post['announcementInput'])
);
// var_dump($getAnnouncement[0]->Id);
if (count($getAnnouncement) > 0) {
$response = $UserModel->updateAnnouncement($getAnnouncement[0]->Id, $data);
} else {
$data['IsActive'] = 0;
$response = $UserModel->saveNewAnnouncement($data);
}
try {
return response()->json(array(
'success' => true,
'message' => "Announcement is successfully updated."
));
} catch (\Throwable $th) {
//throw $th;
return response()->json(array(
'success' => false,
'message' => $th
));
}
}
function announcementUpdateStatus(Request $request)
{
$post = $request->all();
$UserModel = new UserModel;
$storeId = Auth::user()->store_id;
$getAnnouncement = $UserModel->getAnnouncement($storeId);
if (!count($getAnnouncement)) {
return response()->json(array(
'success' => false,
'message' => 'Please update your announcement first.'
));
}
$data = array(
'IsActive' => ($post['IsActive'] == 'true') ? 1 : 0
);
$UserModel->updateAnnouncement($getAnnouncement[0]->Id, $data);
return response()->json(array(
'success' => true,
'message' => "Announcement is successfully updated."
));
// var_dump($data);
// $response = $UserModel->updateAnnouncement($getAnnouncement[0]->Id, $data);
}
function getAddressBook()
{
$UserModel = new UserModel;
$userId = Auth::user()->id;
$array_address_book = $UserModel->selectAddresBook('UserId', $userId);
return $array_address_book;
}
}