/** * @param $UserID */ function DeleteSelectedUser($UserID) { // TODO: Full rewrite sn_db_transaction_start(); $TheUser = db_user_by_id($UserID); if ($TheUser['ally_id'] != 0) { $TheAlly = doquery("SELECT * FROM `{{alliance}}` WHERE `id` = '" . $TheUser['ally_id'] . "';", '', true); $TheAlly['ally_members'] -= 1; if ($TheAlly['ally_members'] > 0) { doquery("UPDATE `{{alliance}}` SET `ally_members` = '" . $TheAlly['ally_members'] . "' WHERE `id` = '" . $TheAlly['id'] . "';"); } else { doquery("DELETE FROM `{{alliance}}` WHERE `id` = '" . $TheAlly['id'] . "';"); doquery("DELETE FROM `{{statpoints}}` WHERE `stat_type` = '2' AND `id_owner` = '" . $TheAlly['id'] . "';"); } } doquery("DELETE FROM `{{statpoints}}` WHERE `stat_type` = '1' AND `id_owner` = '" . $UserID . "';"); db_planet_list_delete_by_owner($UserID); doquery("DELETE FROM `{{messages}}` WHERE `message_sender` = '" . $UserID . "';"); doquery("DELETE FROM `{{messages}}` WHERE `message_owner` = '" . $UserID . "';"); doquery("DELETE FROM `{{notes}}` WHERE `owner` = '" . $UserID . "';"); doquery("DELETE FROM `{{fleets}}` WHERE `fleet_owner` = '" . $UserID . "';"); // doquery ( "DELETE FROM `{{rw}}` WHERE `id_owner1` = '" . $UserID . "';"); // doquery ( "DELETE FROM `{{rw}}` WHERE `id_owner2` = '" . $UserID . "';"); doquery("DELETE FROM `{{buddy}}` WHERE `BUDDY_SENDER_ID` = '" . $UserID . "';"); doquery("DELETE FROM `{{buddy}}` WHERE `BUDDY_OWNER_ID` = '" . $UserID . "';"); doquery("DELETE FROM `{{annonce}}` WHERE `user` = '" . $UserID . "';"); classSupernova::db_del_record_by_id(LOC_USER, $UserID); doquery("DELETE FROM `{{referrals}}` WHERE (`id` = '{$UserID}') OR (`id_partner` = '{$UserID}');"); global $config; $config->db_saveItem('users_amount', $config->db_loadItem('users_amount') - 1); sn_db_transaction_commit(); }
function db_planet_delete_by_id($planet_id) { // if(!($planet_id = intval($planet_id))) return false; if (!($planet_id = idval($planet_id))) { return false; } classSupernova::db_del_record_by_id(LOC_PLANET, $planet_id); classSupernova::db_del_record_list(LOC_UNIT, "`unit_location_type` = " . LOC_PLANET . " AND `unit_location_id` = " . $planet_id); // Очереди очистятся автоматически по FOREIGN KEY return true; }
function db_que_delete_by_id($que_id) { return classSupernova::db_del_record_by_id(LOC_QUE, $que_id); // return doquery("DELETE FROM {{que}} WHERE que_id = {$que_id} LIMIT 1"); }