function delAllImagesFromProducts($products_ids) { global $application; $tables = $this->getTables(); $images_table = $tables['pi_images']['columns']; $query = new DB_Select(); $query->addSelectField($images_table['image_path']); $query->addSelectField($images_table['thumb_path']); $query->Where($images_table['product_id'], DB_IN, "('" . implode("','", $products_ids) . "')"); $res = $application->db->getDB_Result($query); if (count($res) > 0) { //$this->unlinkFiles($res); $query = new DB_Delete('pi_images'); $query->deleteMultiLangField($images_table['alt_text'], $images_table['image_id'], 'Product_Images'); $query->Where($images_table['product_id'], DB_IN, "('" . implode("','", $products_ids) . "')"); $application->db->getDB_Result($query); } return; }
function _deleteShippingMethod($method_id) { global $application; $tables = $this->getTables(); // delete method $table = 'sm_dsr_methods'; $columns = $tables[$table]['columns']; $query = new DB_Delete($table); $query->deleteMultiLangField($columns['method_name'], $columns['id'], 'Shipping_Module_DSR'); $query->Where($columns['id'], DB_EQ, $method_id); $application->db->getDB_Result($query); // delete rates of deleted method $table = 'sm_dsr_rates'; $columns = $tables[$table]['columns']; $query = new DB_Delete($table); $query->Where($columns['method_id'], DB_EQ, $method_id); $application->db->getDB_Result($query); if (count($this->getShippingMethods('AVAILABLE')) == 0) { //$this->setActive(false); modApiFunc("Checkout", "setModuleActive", modApiFunc("Shipping_Module_DSR", "getUid"), false); } }
function removeCustomField($variantId, $attributeId) { global $application; $tables = $this->getTables(); $piva = $tables['person_info_variants_to_attributes']['columns']; $pa = $tables['person_attributes']['columns']; $s = $this->getPersonAttributeData($variantId, $attributeId); // removing the field from notification infotags // Note: only for Billing and Shipping info if ($variantId == '2') { modApiFunc('Notifications', 'removeCustomInfoTag', 'Billing' . $s[0]['person_attribute_view_tag']); } elseif ($variantId == '3') { modApiFunc('Notifications', 'removeCustomInfoTag', 'Shipping' . $s[0]['person_attribute_view_tag']); } $d = new DB_Delete("person_attributes"); $d->WhereValue($pa['id'], DB_EQ, $attributeId); $application->db->PrepareSQL($d); $application->db->DB_Exec(); $d2 = new DB_Delete("person_info_variants_to_attributes"); $d2->deleteMultiLangField($piva['name'], $piva['id'], 'Checkout'); $d2->deleteMultiLangField($piva['descr'], $piva['id'], 'Checkout'); $d2->WhereValue($piva['variant_id'], DB_EQ, $variantId); $d2->WhereAND(); $d2->WhereValue($piva['attribute_id'], DB_EQ, $attributeId); $application->db->PrepareSQL($d2); $application->db->DB_Exec(); if ($s[0]['input_type_id'] > 9) { $tables = modApiFunc('Catalog', 'getTables'); $it = $tables['input_types']['columns']; $itv = $tables['input_type_values']['columns']; $d3 = new DB_Delete("input_types"); $d3->WhereValue($it['id'], DB_EQ, $s[0]['input_type_id']); $application->db->PrepareSQL($d3); $application->db->DB_Exec(); $d4 = new DB_Delete("input_type_values"); $d4->deleteMultiLangField($itv['value'], $itv['id'], 'Catalog'); $d4->WhereValue($itv['it_id'], DB_EQ, $s[0]['input_type_id']); $application->db->getDB_Result($d4); } }
/** * Deletes the notification from the database. * *@return */ function deleteNotification($n_id) { global $application; $tables = $this->getTables(); //========================================== $n = $tables['notifications']['columns']; $query = new DB_Delete('notifications'); $query->WhereValue($n['id'], DB_EQ, $n_id); $query->deleteMultiLangField($n['name'], $n['id'], 'Notifications'); $query->deleteMultiLangField($n['subject'], $n['id'], 'Notifications'); $query->deleteMultiLangField($n['from_email_custom_address'], $n['id'], 'Notifications'); $query->deleteMultiLangField($n['body'], $n['id'], 'Notifications'); $application->db->getDB_Result($query); //========================================== $ov2n = $tables['option_values_to_notification']['columns']; $query = new DB_Delete('option_values_to_notification'); $query->WhereValue($ov2n['n_id'], DB_EQ, $n_id); $application->db->getDB_Result($query); //========================================== $nst = $tables['notification_send_to']['columns']; $query = new DB_Delete('notification_send_to'); $query->WhereValue($nst['n_id'], DB_EQ, $n_id); $application->db->getDB_Result($query); //========================================== $nbb = $tables['notification_blocktag_bodies']['columns']; $query = new DB_Delete('notification_blocktag_bodies'); $query->WhereValue($nbb['n_id'], DB_EQ, $n_id); $query->deleteMultiLangField($nbb['body'], $nbb['id'], 'Notifications'); $application->db->getDB_Result($query); }
/** * Deletes all optoin values. * * @param int $option_id - option ID * @return true or false */ function __delAllValuesFromOption($option_id) { global $application; $tables = $this->getTables(); $values = $tables['po_options_values']['columns']; $query = new DB_Delete('po_options_values'); $query->deleteMultiLangField($values['value_name'], $values['value_id'], 'Product_Options'); $query->WhereValue($values['option_id'], DB_EQ, $option_id); $application->db->getDB_Result($query); return $application->db->QueryResult; }
/** * Deletes Display Option. * * @param * @return */ function deleteTaxDisplayOption($id) { global $application; $tables = $this->getTables(); $td = $tables['tax_display']['columns']; $query = new DB_Delete('tax_display'); $query->deleteMultiLangField($td['view'], $td['id'], 'Taxes'); $query->WhereValue($td['id'], DB_EQ, $id); $application->db->getDB_Result($query); }