/**
  * Add or edit a review
  */
 public function review()
 {
     $msg = "";
     $model = VmModel::getModel('ratings');
     $virtuemart_product_id = vRequest::getInt('virtuemart_product_id', 0);
     $allowReview = $model->allowReview($virtuemart_product_id);
     $allowRating = $model->allowRating($virtuemart_product_id);
     if ($allowReview || $allowRating) {
         $return = $model->saveRating();
         if ($return !== FALSE) {
             $msg = vmText::sprintf('COM_VIRTUEMART_STRING_SAVED', vmText::_('COM_VIRTUEMART_REVIEW'));
             if (!class_exists('ShopFunctionsF')) {
                 require VMPATH_SITE . DS . 'helpers' . DS . 'shopfunctionsf.php';
             }
             $data = vRequest::getPost();
             shopFunctionsF::sendRatingEmailToVendor($data);
         }
     }
     $this->setRedirect(JRoute::_('index.php?option=com_virtuemart&view=productdetails&virtuemart_product_id=' . $virtuemart_product_id, FALSE), $msg);
 }