Редактироваться будет всего-лишь 1 файл administrator\components\com_virtuemart\classes\ps_product_category.php в именно функция validate_delete
Было:
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();
Стало:
function validate_delete( $category_id, &$d) {
global $vmLogger, $VM_LANG, $ps_product_category;
$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->num_rows() > 0) {
while ($db->next_record()) {
$cat_delete = array('category_id'=>$db->f("category_child_id"));
$ps_product_category->delete($cat_delete);
}
}
$q = "SELECT category_thumb_image,category_full_image FROM #__{vm}_category WHERE category_id='$category_id'";
$db->query( $q );
$db->next_record();
