/** * Validates that a product can be deleted * * @param array $d The input vars * @return boolean Validation sucessful? */ function validate_delete($product_id, &$d) { global $vmLogger, $VM_LANG; require_once CLASSPATH . 'imageTools.class.php'; /* Check that ps_vendor_id and product_id match if (!$this->check_vendor($d)) { $d["error"] = "ERROR: Cannot delete product. Wrong product or vendor." ; return false; }*/ if (empty($product_id)) { $vmLogger->err($VM_LANG->_('VM_PRODUCT_SPECIFY_DELETE', false)); return false; } /* Get the image filenames from the database */ $db = new ps_DB(); $q = "SELECT product_thumb_image,product_full_image "; $q .= "FROM #__{vm}_product "; $q .= "WHERE product_id='{$product_id}'"; $db->setQuery($q); $db->query(); $db->next_record(); /* Prepare product_thumb_image for Deleting */ if (!stristr($db->f("product_thumb_image"), "http")) { $_REQUEST["product_thumb_image_curr"] = $db->f("product_thumb_image"); $d["product_thumb_image_action"] = "delete"; if (!vmImageTools::validate_image($d, "product_thumb_image", "product")) { $vmLogger->err($VM_LANG->_('VM_PRODUCT_IMGDEL_FAILED', false)); return false; } } /* Prepare product_full_image for Deleting */ if (!stristr($db->f("product_full_image"), "http")) { $_REQUEST["product_full_image_curr"] = $db->f("product_full_image"); $d["product_full_image_action"] = "delete"; if (!vmImageTools::validate_image($d, "product_full_image", "product")) { return false; } } return true; }
/** * Validates the Input Parameters onBeforeVendorDelete * * @param int $vendor_id * @param array $d * @return boolean */ function validate_delete($vendor_id, &$d) { global $vmLogger; $db = new ps_DB(); if (!$d["vendor_id"]) { $vmLogger->err('Please select a vendor to delete.'); return False; } $q = "SELECT vendor_id FROM #__{vm}_product where vendor_id='{$vendor_id}'"; $db->query($q); if ($db->next_record()) { $vmLogger->err('This vendor still has products. Delete all products first.'); return False; } /* Get the image filenames from the database */ $db = new ps_DB(); $q = "SELECT vendor_thumb_image,vendor_full_image "; $q .= "FROM #__{vm}_vendor "; $q .= "WHERE vendor_id='{$vendor_id}'"; $db->query($q); $db->next_record(); require_once CLASSPATH . 'imageTools.class.php'; /* Validate vendor_thumb_image */ $d["vendor_thumb_image_curr"] = $db->f("vendor_thumb_image"); $d["vendor_thumb_image_name"] = "none"; if (!vmImageTools::validate_image($d, "vendor_thumb_image", "vendor")) { return false; } /* Validate vendor_full_image */ $d["vendor_full_image_curr"] = $db->f("vendor_full_image"); $d["vendor_full_image_name"] = "none"; if (!vmImageTools::validate_image($d, "vendor_full_image", "vendor")) { return false; } return True; }
/** * Validates all product category fields and uploaded image files * on category deletion. * * @param mixed $category_id The category_id (or IDs when it's an array) * @param array $d The input vars * @return boolean True when validation successful, false when not */ function validate_delete($category_id, &$d) { global $vmLogger, $VM_LANG; $db = new ps_DB(); require_once CLASSPATH . 'imageTools.class.php'; if (empty($category_id)) { $vmLogger->err($VM_LANG->_('VM_PRODUCT_CATEGORY_ERR_DELETE_SELECT')); return False; } // Check for children $q = "SELECT * FROM #__{vm}_category_xref where category_parent_id='{$category_id}'"; $db->setQuery($q); $db->query(); if ($db->next_record()) { $vmLogger->err($VM_LANG->_('VM_PRODUCT_CATEGORY_ERR_DELETE_CHILDREN')); return False; } $q = "SELECT category_thumb_image,category_full_image FROM #__{vm}_category WHERE category_id='{$category_id}'"; $db->query($q); $db->next_record(); /* Prepare category_thumb_image for Deleting */ if ($db->f("category_thumb_image") && !stristr($db->f("category_thumb_image"), "http")) { $dbc = new ps_DB(); $dbc->query('SELECT category_id FROM #__{vm}_category WHERE category_id=' . $category_id . ' AND category_thumb_image = \'' . $db->f("category_thumb_image") . '\''); if ($dbc->num_rows() >= 1) { $_REQUEST["category_thumb_image_curr"] = $db->f("category_thumb_image"); $d["category_thumb_image_action"] = "delete"; if (!vmImageTools::validate_image($d, "category_thumb_image", "category")) { $vmLogger->err($VM_LANG->_('VM_PRODUCT_CATEGORY_ERR_DELETE_IMAGES')); return false; } } } /* Prepare product_full_image for Deleting */ if ($db->f("category_full_image") && !stristr($db->f("category_full_image"), "http")) { $dbc = new ps_DB(); $dbc->query('SELECT category_id FROM #__{vm}_category WHERE category_id=' . $category_id . ' AND category_full_image = \'' . $db->f("category_full_image") . '\''); if ($dbc->num_rows() >= 1) { $_REQUEST["category_full_image_curr"] = $db->f("category_full_image"); $d["category_full_image_action"] = "delete"; if (!vmImageTools::validate_image($d, "category_full_image", "category")) { return false; } } } return True; }