/**
  * Post the edit product form
  *
  *@return redirect
  */
 function postEditProduct()
 {
     $vendorID = Input::get('vendorID');
     $productID = Input::get('productID');
     $productImageName = ProductModel::getProductImageName($productID);
     $rules = array('title' => 'required|min:3|unique:products,title,' . $productID, 'short_desc' => 'required|min:10', 'long_desc' => 'required|min:10', 'sku' => 'required|min:2|unique:products,sku,' . $productID, 'qty' => 'required|min:1', 'price' => 'required|regex:/^\\d*(\\.\\d{2})?$/', 'image' => 'mimes:jpg,jpeg,png,gif');
     $messages = array('image.required' => 'The product image is required.');
     $validator = Validator::make(Input::all(), $rules, $messages);
     if ($validator->passes()) {
         $title = Input::get('title');
         $short_desc = Input::get('short_desc');
         $long_desc = Input::get('long_desc');
         $sku = Input::get('sku');
         $qty = Input::get('qty');
         $price = Input::get('price');
         $update = ['vendor_id' => $vendorID, 'title' => $title, 'short_desc' => $short_desc, 'long_desc' => $long_desc, 'sku' => $sku, 'qty' => $qty, 'price' => $price];
         if (Input::file('image')) {
             $product_img = Input::file('image')->getClientOriginalName();
             Upload::uploadProductImage($vendorID, $productID, $product_img);
             $update['product_img'] = $product_img;
         }
         ProductModel::editProduct($productID, $update);
         return Redirect::to('/product/edit-product/' . $vendorID . '/' . $productID)->with('s_msg', 'Product edited!');
     }
     return Redirect::to('/product/edit-product/' . $vendorID . '/' . $productID)->with('e_msg', 'Something went wrong!')->withErrors($validator);
 }