Advertisement
nugrohoe_ku

skrip update product

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