Пример #1
0
 public function postImageUpload(Request $request)
 {
     //        $j = 0;
     //        $target_path = "uploads/";
     //        for ($i = 0; $i < count($_FILES['file']['name']); $i++) {
     //            $ext = explode('.', basename($_FILES['file']['name'][$i]));
     //            $file_extension = end($ext);
     //            $target_path = $target_path . md5(uniqid()) . "." . $ext[count($ext) - 1];
     //            $j = $j + 1;
     //            move_uploaded_file($_FILES['file']['tmp_name'][$i], $target_path);
     //        }
     $images = new Picture();
     if ($request->hasFile('images')) {
         $listImage = array();
         $files = $request->file('images');
         foreach ($files as $file) {
             $name = $file->getClientOriginalName();
             $extension = $file->getClientOriginalExtension();
             $picture = time() . $name . '.' . $extension;
             $file->move('images/product', $picture);
             $src = 'images/product/' . $picture;
             $product_id = 1;
             $data = array('productID' => $product_id, 'imageName' => $name, 'imageSrc' => $src);
             autoAssignDataToProperty($images, $data);
             $listImage[] = $data;
         }
         $images->insert($listImage);
         return redirect(URL::to('/demo/image_upload'))->withSuccess('Image Upload');
     } else {
     }
 }
Пример #2
0
 public function store(OrderRequest $request)
 {
     $model = new Order();
     autoAssignDataToProperty($model, $request->all());
     $model->save();
     return redirect()->action('OrderController@index')->withSuccess(Lang::get('messages.create_success'));
 }
Пример #3
0
 public function update(PagesRequest $request, $id)
 {
     $data = $request->all();
     $model = Pages::find($id);
     autoAssignDataToProperty($model, $request->all());
     $model->save();
     return redirect()->action('Admin\\PagesController@index')->withSuccess(Lang::get('messages.update_success'));
 }
Пример #4
0
 public function update(Request $request, $id)
 {
     $data = $request->all();
     $model = Users::find($id);
     autoAssignDataToProperty($model, $request->all());
     $password = bcrypt($request->input('password'));
     $model->password = $password;
     $model->save();
     return redirect(URL::previous())->withSuccess(Lang::get('messages.update_success'));
 }
Пример #5
0
 public function store(ImagesRequest $request)
 {
     $images = new Images();
     if ($request->hasFile('images')) {
         $listImage = array();
         $files = $request->file('images');
         foreach ($files as $file) {
             $name = $file->getClientOriginalName();
             $extension = $file->getClientOriginalExtension();
             $picture = time() . $name . '.' . $extension;
             $file->move('images/slider', $picture);
             $src = 'images/slider/' . $picture;
             $data = array('imageName' => $name, 'imageSrc' => $src, 'imageType' => 'slider');
             autoAssignDataToProperty($images, $data);
             $listImage[] = $data;
         }
         $images->insert($listImage);
     }
     return redirect(URL::previous())->withSuccess(Lang::get('messages.create_success'));
 }
Пример #6
0
 public function update(ProducerRequest $request, $id)
 {
     $data = $request->all();
     $model = Producer::find($id);
     autoAssignDataToProperty($model, $request->all());
     if ($request->hasFile('logo')) {
         $file = $request->file('logo');
         $name = $file->getClientOriginalName();
         $extension = $file->getClientOriginalExtension();
         $picture = time() . $name . '.' . $extension;
         $request->file('logo')->move('images/brands', $picture);
         $logo = 'images/brands/' . $picture;
     } else {
         $image = $model->toArray();
         $logo = $image['logo'];
     }
     $model->logo = $logo;
     $model->save();
     return redirect(URL::to('/') . "/admin/producer/" . $id . "/edit")->withSuccess(Lang::get('messages.update_success'));
 }
Пример #7
0
 public function order()
 {
     //get Session option
     $option = Session::get('option');
     //get Cart
     $cart = Cart::content();
     //get type order
     $type = $option['type'];
     //payment method
     $payMethod = Session::get('pay_med');
     if ($option['type'] == 'logged') {
         $order = new Order();
         DB::beginTransaction();
         try {
             $idUser = array_get(session('user'), 'id');
             $order->user_id = $idUser;
             $order->delivery_detail_id = 0;
             $order->comment = $payMethod['comment'];
             $order->save();
             $idOrder = Order::where('user_id', $idUser)->orderBy('id', 'desc')->first()->id;
             //add order detail and sub amount of product
             foreach ($cart as $item) {
                 $root_price = Cd::find($item['id'])->root_price;
                 $modelOrderDetail = new OrderDetail();
                 $modelOrderDetail->order_id = $idOrder;
                 $modelOrderDetail->product_id = $item['id'];
                 $modelOrderDetail->quantity = $item['qty'];
                 $modelOrderDetail->root_price = $root_price;
                 $modelOrderDetail->price = $item->price;
                 $modelOrderDetail->save();
                 //sub qty product
                 $cd = Cd::find($item['id']);
                 if ($cd->quantity - $item['qty'] <= 0) {
                     throw new QtyCDException();
                 }
                 $cd->quantity = $cd->quantity - $item['qty'];
                 $cd->buy_time = $cd->buy_time + $item['qty'];
                 $cd->save();
             }
             DB::commit();
             $this->clear();
             return redirect_success('FrontendController@index', 'Ordered, Check your email to check detail');
         } catch (QtyCDException $e) {
             DB::rollback();
             return redirect_errors($e->notify());
         } catch (\Exception $e) {
             DB::rollback();
             return redirect_errors("Sorry cannot to this deal!");
         }
     } else {
         $deliveryDetail = Session::get('shi_add');
         $order = new Order();
         $modelDeliverDetail = new DeliveryDetail();
         $modelDeliverDetail = autoAssignDataToProperty($modelDeliverDetail, $deliveryDetail);
         //            dd($modelDeliverDetail);
         DB::beginTransaction();
         try {
             $orderHuman = $modelDeliverDetail;
             $modelDeliverDetail->save();
             $newDeliverDetail = new DeliveryDetail();
             $delivery = $newDeliverDetail->getDeliveryDetail($deliveryDetail);
             $order->user_id = 0;
             $order->delivery_detail_id = $delivery->id;
             $order->comment = $payMethod['comment'];
             $order->save();
             $idOrder = Order::where('delivery_detail_id', $delivery->id)->first()->id;
             //add order detail and sub amount of product
             foreach ($cart as $item) {
                 $modelOrderDetail = new OrderDetail();
                 $modelOrderDetail->order_id = $idOrder;
                 $modelOrderDetail->product_id = $item['id'];
                 $modelOrderDetail->quantity = $item['qty'];
                 $modelOrderDetail->price = $item['price'];
                 $modelOrderDetail->save();
                 //
                 $cd = Cd::find($item['id']);
                 if ($cd->quantity - $item['qty'] <= 0) {
                     throw new QtyCDException();
                 } else {
                     $cd->quantity = $cd->quantity - $item['qty'];
                 }
             }
             DB::commit();
             $this->clear();
             //send
             //                Mail::send('auth.mail_welcome', ['last_name' => $orderHuman->lastname, 'key' => $key_active, 'password' => $pass], function ($message) use ($data) {
             //                    $message
             //                        ->to($data['email'], $data['name'])
             //                        ->from('*****@*****.**')
             //                        ->subject('Thank you for your buying!');
             //                });
             return redirect_success('FrontendController@index', 'Ordered, Check your email to check detail');
         } catch (QtyCDException $e) {
             DB::rollback();
             return redirect_errors($e->notify());
         } catch (\Exception $e) {
             DB::rollback();
             return redirect_errors("Sorry cannot to this deal!");
         }
     }
 }
Пример #8
0
 public function createCustomer(CreateCustomerRequest $request)
 {
     //        getDataRequest
     $getDataRequest = $request->all();
     $ip = $_SERVER['SERVER_ADDR'];
     $response = $getDataRequest['g-recaptcha-response'];
     $list = file_get_contents('https://www.google.com/recaptcha/api/siteverify?secret=6LdkCQoTAAAAAHt8GyYu3DzOO-5ngXRKMWm8HE1A&response=' . $response . '&remoteip=' . $ip);
     $json = json_decode($list, true);
     //        check capcha
     if ($json['success'] == 1) {
         $user = new User();
         $customer = new Customer();
         $customer = autoAssignDataToProperty($customer, $getDataRequest);
         $user = autoAssignDataToProperty($user, $getDataRequest);
         $user->avatar = 'person.png';
         $this->doRegister($user);
         $remember_token = str_random(30);
         $key_active = str_random(30);
         $name = $user->name;
         $password = $user->password;
         $email = $user->email;
         $data = ['name' => $name, 'email' => $email];
         $user->remember_token = $remember_token;
         $user->created_at = Carbon::now();
         $user->password = md5($user->password . md5($remember_token));
         $user->key_active = $key_active;
         //check add new
         DB::beginTransaction();
         try {
             $user->save();
             $user_Id = User::where('email', $email)->first()->id;
             $customer->user_id = $user_Id;
             $customer->save();
             DB::commit();
             Mail::send('auth.mail_welcome', ['name' => $data['name'], 'key' => $key_active, 'password' => $password], function ($message) use($data) {
                 $message->to($data['email'], $data['name'])->from('*****@*****.**')->subject('Welcome to the TopMp3!');
             });
             return redirect_success('AuthController@getLogin', 'Check your email ' . $data['email'] . ' to active!');
         } catch (\Exception $e) {
             dd($e);
             DB::rollback();
             return redirect_errors('Have Error, Try again,please!');
         }
     } else {
         return redirect_errors('Wrong reCapcha!');
     }
 }
Пример #9
0
 public function update(CategoryRequest $request, $id)
 {
     $data = $request->all();
     $model = Category::find($id);
     autoAssignDataToProperty($model, $request->all());
     if ($request->input('parent_id')) {
         $model->parent_id = $request->input('parent_id');
     }
     $model->save();
     return redirect()->action('Admin\\CategoryController@index')->withSuccess(Lang::get('messages.update_success'));
 }
Пример #10
0
 public function update(UpdateAccountRequest $request)
 {
     //dataRequest
     $dataRequest = $request->all();
     //check upload Image
     if (!is_null(Input::file('image'))) {
         $upload = new UploadImage();
         //get old avt
         $oldAvatar = User::where('id', Input::get('id'))->first();
         $image = Input::file('image');
         if ($upload->_upload($oldAvatar->avatar, $image)) {
         } else {
             return redirect_errors('Error upload image!');
         }
         $user = User::find(Input::get('id'));
         $user = autoAssignDataToProperty($user, $dataRequest);
         $user->updated_at = Carbon::now();
         //check update
         if ($user->save()) {
             return redirect()->back()->with('success', "Update Success!");
         } else {
             return redirect_errors('Error cannot update!');
         }
     } else {
         //get old Avt
         $oldAvatar = User::where('id', Input::get('id'))->first();
         //check has image
         if ($oldAvatar->avatar != $this::DEFAULT_IMAGE_PERSON) {
             //delete old image
             File::delete($oldAvatar->avatar);
         }
         $user = User::find(Input::get('id'));
         //check update
         $user = autoAssignDataToProperty($user, $dataRequest);
         $user->updated_at = Carbon::now();
         if ($user->save()) {
             return redirect()->back()->with('success', "Update Success!");
         } else {
             return redirect_errors('Error cannot update!');
         }
     }
     //end check update
 }
Пример #11
0
 public function update(UpdateProductRequest $request)
 {
     //get data
     $dataRequest = $request->all();
     $id = Input::get('id');
     //true, check upload image
     //check has upload new image?
     if (!is_null(Input::file('image'))) {
         //                        dd(Input::file('images'));
         $image = Input::file('image');
         $upload = new UploadImage();
         if ($upload->upload($image)) {
             $dataRequest['portal'] = $upload->name;
         } else {
             return redirect_errors('Have error ,Cannot upload!');
         }
         //create Cd obj
         $cd = new Cd();
         $newData = autoAssignDataToProperty($cd, $dataRequest);
         //check update
         if ($cd->find($id)->update($newData->toArray())) {
             return redirect()->back()->with('success', "Updated");
         } else {
             return redirect_errors('Have error ,Cannot update!');
         }
         //end check update
     } else {
         //create Cd obj
         $cd = new Cd();
         $newData = autoAssignDataToProperty($cd, $dataRequest);
         //            dd($cd);
         //check update
         if ($cd->find($id)->update($newData->toArray())) {
             return redirect()->back()->with('success', "Updated");
         } else {
             return redirect_errors('Have error ,Cannot update!');
         }
         //end check update
     }
 }
Пример #12
0
 public function checkoutOrder(Request $request)
 {
     DB::transaction(function () use($request) {
         try {
             // Cart Item
             $productID = $request->productID;
             $totalOrder = 0;
             foreach ($productID as $index => $id) {
                 $result = Product::find($id);
                 $price = $result->price;
                 $totalOrder += $request->pQty[$index] * $price;
             }
             // Create Customer
             $fullname = $request->fullname;
             $email = $request->email;
             $telephone = $request->telephone;
             $address = $request->address;
             $city = $request->city;
             $customerInfo = array('fullname' => $fullname, 'email' => $email, 'telephone' => $telephone, 'address' => $address, 'city' => $city);
             $customer = new Customer();
             autoAssignDataToProperty($customer, $customerInfo);
             $customer->save();
             // Create Order
             $userID = $request->userID;
             $customerID = $customer->id;
             $datetime = date('Y-m-d H:i:s');
             $totalOrder = $totalOrder + $totalOrder * ($this->tax / 100) + $this->ship;
             $status = "Pending";
             $note = $request->note;
             $orderInfo = array('userID' => $userID, 'customerID' => $customerID, 'datetime' => $datetime, 'total' => $totalOrder, 'note' => $note, 'status' => $status);
             $order = new Order();
             autoAssignDataToProperty($order, $orderInfo);
             $order->save();
             // Create Order Detail
             $orderDetail = new OrderDetail();
             $orderID = $order->id;
             $productID = $request->productID;
             $total = 0;
             $orderProduct = array();
             foreach ($productID as $index => $id) {
                 $result = Product::find($id);
                 $name = $result->name;
                 $price = $result->price;
                 $total = $request->pQty[$index] * $price;
                 // Update product
                 $oldNumber = $result->number;
                 if ($oldNumber <= 0) {
                     Session::forget('product');
                     return redirect(URL::to('/'))->withSuccess("Sorry, product in your cart was closed");
                 }
                 $newPurchase = $result->purchase + $request->pQty[$index];
                 $user = Product::where('id', $id)->update(['number' => $oldNumber - $request->pQty[$index], 'purchase' => $newPurchase]);
                 // Create order detail
                 $data = array('orderID' => $orderID, 'productID' => $id, 'pName' => $name, 'pPrice' => $price, 'pQty' => $request->pQty[$index], 'total' => $total);
                 autoAssignDataToProperty($orderDetail, $data);
                 $orderProduct[] = $data;
             }
             $orderDetail->insert($orderProduct);
             // Delete Cart
             Session::forget('product');
         } catch (ValidationException $e) {
             DB::rollback();
             return redirect(URL::to('/'))->withErrors("Checkout error! Please try again");
         } catch (\Exception $e) {
             DB::rollback();
             throw $e;
         }
     });
     DB::commit();
     return redirect(URL::to('/'))->withSuccess("Checkout success! Our cumstomer's support will call you to confirm");
 }
Пример #13
0
 public function createByAjax(Request $request)
 {
     $rules = ['nameNavigator' => 'required|unique:navigators,name', 'in_page' => 'required|in:0,1', 'status' => 'required|in:0,1', 'position' => 'required|integer'];
     $validator = Validator::make($request->all(), $rules);
     if ($validator->fails()) {
         return '{"type":"e","message":"Error!"}';
     }
     $navigator = new Navigator();
     $navigator = autoAssignDataToProperty($navigator, $request->all());
     $uri = $request->get('uri');
     $name = $request->get('nameNavigator');
     $navigator->uri = $uri;
     $navigator->name = $name;
     $navigator->parent_id = 0;
     $navigator->level = 0;
     if (!is_null(Input::get('parent_id'))) {
         $infoParent = Navigator::where('id', $request->get('parent_id'))->first()->toArray();
         $navigator->level = $infoParent['level'] + 1;
         $navigator->parent_id = $infoParent['id'];
     }
     if ($uri != '' && $request->get('in_page') == 1) {
         $model = new Navigator();
         if ($model->where('uri', $uri)->count() == 0) {
             //check save
             if ($navigator->save()) {
                 return '{"type":"s","message":"Added!"}';
             } else {
                 return '{"message":"Cannot add!","type":"e"}';
             }
         } else {
             return '{"message":"Uri Existed!","type":"e"}';
         }
     } else {
         $navigator->save();
     }
 }
Пример #14
0
 public function update(UserRequest $request, $id)
 {
     $data = $request->all();
     $model = Users::find($id);
     autoAssignDataToProperty($model, $request->all());
     if ($request->hasFile('avatar')) {
         $file = $request->file('avatar');
         $name = $file->getClientOriginalName();
         $extension = $file->getClientOriginalExtension();
         $picture = time() . $name . '.' . $extension;
         $request->file('avatar')->move('images/avatar', $picture);
         $filename = 'images/avatar/' . $picture;
     } else {
         $image = $model->toArray();
         $filename = $image['avatar'];
     }
     $password = bcrypt($request->input('password'));
     $model->password = $password;
     $model->avatar = $filename;
     $model->save();
     return redirect()->action('Admin\\UsersController@index')->withSuccess(Lang::get('messages.update_success'));
 }