Advertisement
nugrohoe_ku

Skrip add product

Sep 25th, 2018
340
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 3.40 KB | None | 0 0
  1. //addNewProduct
  2.     public function addNewProduct(Request $request){
  3.         $title = array('pageTitle' => Lang::get("labels.AddAttributes"));
  4.         $language_id      =   '1';     
  5.         $date_added = date('Y-m-d h:i:s');
  6.        
  7.         //get function from other controller
  8.         $myVar = new AdminSiteSettingController();
  9.         $languages = $myVar->getLanguages();
  10.        
  11.         $expiryDate = str_replace('/', '-', $request->expires_date);
  12.         $expiryDateFormate = strtotime($expiryDate);
  13.        
  14.         if($request->hasFile('products_image')){
  15.             $image = $request->products_image;
  16.             $fileName = time().'.'.$image->getClientOriginalName();
  17.             $image->move('resources/assets/images/product_images/', $fileName);
  18.            
  19.               Image::make('resources/assets/images/product_images/'. $fileName)->resize(500, null,
  20.                 function ($constraint) {
  21.                     $constraint->aspectRatio();
  22.                 })
  23.             ->resizeCanvas(500, null)
  24.             ->save('resources/assets/images/product_images/'. $fileName);
  25.            
  26.             $uploadImage = 'resources/assets/images/product_images/'.$fileName;
  27.         }else{
  28.             $uploadImage = '';
  29.         }  
  30.        
  31.         $products_id = DB::table('products')->insertGetId([
  32.                     'products_image'         =>   $uploadImage,
  33.                     'manufacturers_id'       =>   $request->manufacturers_id,
  34.                     'products_quantity'      =>   $request->products_quantity,
  35.                     'products_model'         =>   $request->products_model,
  36.                     'products_price'         =>   $request->products_price,
  37.                     'products_date_added'    =>   $date_added,
  38.                     'products_weight'        =>   $request->products_weight,
  39.                     'products_status'        =>   $request->products_status,
  40.                     'products_tax_class_id'  =>   $request->tax_class_id,
  41.                     'products_weight_unit'   =>   $request->products_weight_unit,
  42.                     'low_limit'              =>   $request->low_limit
  43.                     ]);
  44.        
  45.         foreach($languages as $languages_data){
  46.             $products_name = 'products_name_'.$languages_data->languages_id;
  47.             $products_description = 'products_description_'.$languages_data->languages_id;
  48.            
  49.             DB::table('products_description')->insert([
  50.                     'products_name'          =>   $request->$products_name,
  51.                     'language_id'            =>   $languages_data->languages_id,
  52.                     'products_id'            =>   $products_id,
  53.                     'products_url'           =>   $request->products_url,
  54.                     'products_description'   =>   addslashes($request->$products_description)
  55.                     ]);
  56.         }  
  57.        
  58.         //special product
  59.         if($request->isSpecial == 'yes'){
  60.             DB::table('specials')->insert([
  61.                     'products_id'                     =>     $products_id,
  62.                     'specials_new_products_price'     =>     $request->specials_new_products_price,
  63.                     'specials_date_added'             =>     time(),
  64.                     'expires_date'                    =>     $expiryDateFormate,
  65.                     'status'                          =>     $request->status,
  66.                 ]);
  67.         }
  68.        
  69.         DB::table('products_to_categories')->insert([
  70.                     'products_id'       =>     $products_id,
  71.                     'categories_id'     =>     $request->sub_category_id
  72.                 ]);
  73.                
  74.         $options = DB::table('products_options')
  75.             ->where('language_id','=', $language_id)
  76.             ->get();
  77.        
  78.         $result['options'] = $options;
  79.        
  80.         $options_value = DB::table('products_options_values')
  81.             ->where('language_id','=', $language_id)
  82.             ->get();
  83.        
  84.         $result['options_value'] = $options_value;
  85.         $result['data'] = array('products_id'=>$products_id, 'language_id'=>$language_id);
  86.        
  87.         //notify users 
  88.         $myVar = new AdminAlertController();
  89.         $alertSetting = $myVar->newProductNotification($products_id);
  90.        
  91.         return redirect('admin/addProductAttribute/'.$products_id);
  92.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement