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'], 'State' => $post['state'], 'City' => $post['city'], 'ZipCode' => $post['zipcode'] ); 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'], 'State' => $post['state'], 'City' => $post['city'], 'ZipCode' => $post['zipcode'] ); 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'] ); $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'], '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 ); $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 .= "