diff --git a/README.md b/README.md index 6cf019c..64ab773 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,8 @@ +END OF THIS SYSTEM LIFE : +======== + +[USE OUR NEW MIGRATION SYSTEM](https://github.com/masterking32/WoWMigration) + Character Migration Tool ======== @@ -5,20 +10,43 @@ v12 >> WOTLK (3.3.5a) >> WOTLK (3.3.5a) Translated to Spanish, English, French, German and Russian. -![alt tag](http://i.imgur.com/EgguVzo.png "Migration") +Screenshots +======== +[![login form](https://raw.githubusercontent.com/masterking32/web-character-migration-tool/master/Screenshots/login.jpg)](https://raw.githubusercontent.com/masterking32/web-character-migration-tool/master/Screenshots/userpanel-1.jpg)[![User Panel 1](https://raw.githubusercontent.com/masterking32/web-character-migration-tool/master/Screenshots/userpanel-1.jpg)](https://raw.githubusercontent.com/masterking32/web-character-migration-tool/master/Screenshots/import-step1.jpg)[![login form](https://raw.githubusercontent.com/masterking32/web-character-migration-tool/master/Screenshots/import-step1.jpg)](https://raw.githubusercontent.com/masterking32/web-character-migration-tool/master/Screenshots/import-step1.jpg) Requeriments ======== - -PHP 5.3.X and MySQL 5.1.X +PHP >= 5.3.X and MySQL >= 5.1.X / MariaDB PHP: enable SOAP module World Server: enable SOAP module +How to Install +======== + +Import SQL files to your databases, Inside "SQL+Core's Commit". + +Config file "core/init.php" and "_transfer/t_config.php" +In your database Table, 'account_transfer_blacklist' you can edit or add some servers to your transfer black list. -More information and other items: ZoneWoW.com +How to Install Addon +======== + +Download chardump.zip & extract it in your wow game folder. It should looks like ( D:\wotlk\Interface\AddOns\chardump ) + +Login in game with account, and enable addon. + +While in game, simply write in chat /chardump --> It will generate your character dump file. + +When the process is done. Chardump is located in your wow folder D:\wotlk\WTF\Account\YourAccount\SavedVariables\chardump.lua + +Go on Migration website, write account details and upload Chardump.lua file ---> DONE! + +What is new? +======== +Updated to support last version of PHP (5.3-7.x). -Desch +Fixed all bugs up to AzerothCore rev d34e5329dfe6df44143219b3b9521610ee142ce2. diff --git a/SQL+Core's Commit/at_login.patch b/SQL+Core's Commit/at_login.patch index da8ef5a..f2a95aa 100644 --- a/SQL+Core's Commit/at_login.patch +++ b/SQL+Core's Commit/at_login.patch @@ -1,83 +1,28 @@ -# HG changeset patch -# User RDC -# Date 1356205970 0 -# Node ID 3723de555d1d2ec33dbb683323b8e6f0159ee38b -# Parent 99600389f95783ee9e00aa95084f084f99d981d2 -Character Migration Tool + src/server/game/Handlers/CharacterHandler.cpp | 14 ++++++++++++++ + 1 file changed, 14 insertions(+) -diff -r 99600389f957 -r 3723de555d1d src/server/game/Entities/Player/Player.h ---- a/src/server/game/Entities/Player/Player.h Sat Dec 22 18:00:05 2012 +0000 -+++ b/src/server/game/Entities/Player/Player.h Sat Dec 22 19:52:50 2012 +0000 -@@ -506,7 +506,8 @@ - AT_LOGIN_RESET_PET_TALENTS = 0x10, - AT_LOGIN_FIRST = 0x20, - AT_LOGIN_CHANGE_FACTION = 0x40, -- AT_LOGIN_CHANGE_RACE = 0x80 -+ AT_LOGIN_CHANGE_RACE = 0x80, -+ AT_LOGIN_UPDATE_NAME = 0x100 - }; - - typedef std::map QuestStatusMap; -diff -r 99600389f957 -r 3723de555d1d src/server/game/Handlers/CharacterHandler.cpp ---- a/src/server/game/Handlers/CharacterHandler.cpp Sat Dec 22 18:00:05 2012 +0000 -+++ b/src/server/game/Handlers/CharacterHandler.cpp Sat Dec 22 19:52:50 2012 +0000 -@@ -988,6 +988,22 @@ - - if (pCurrChar->HasAtLoginFlag(AT_LOGIN_FIRST)) +diff --git a/src/server/game/Handlers/CharacterHandler.cpp b/src/server/game/Handlers/CharacterHandler.cpp +index 284a8eb..20c363d 100644 +--- a/src/server/game/Handlers/CharacterHandler.cpp ++++ b/src/server/game/Handlers/CharacterHandler.cpp +@@ -1090,6 +1090,20 @@ void WorldSession::HandlePlayerLoginFromDB(LoginQueryHolder* holder) + if (pCurrChar->HasAtLoginFlag(AT_LOGIN_FIRST)) { pCurrChar->RemoveAtLoginFlag(AT_LOGIN_FIRST); -+ if(pCurrChar->HasAtLoginFlag(AT_LOGIN_UPDATE_NAME)) + ++ if(pCurrChar->HasAtLoginFlag(AT_LOGIN_RENAME)) + { -+// sWorld->UpdateCharacterNameData(pCurrChar->GetGUIDLow() ); + std::string nameUpdate_AT_LOGIN_UPDATE_NAME; -+ QueryResult result = CharacterDatabase.PQuery("SELECT name FROM characters WHERE `guid` = '%u'", pCurrChar->GetGUIDLow()); ++ uint32 accID_Update_AT_LOGIN_UPDATE_NAME; ++ QueryResult result = CharacterDatabase.PQuery("SELECT name,account FROM characters WHERE `guid` = '%u'", pCurrChar->GetGUIDLow()); + if(result) + { -+ //sLog->outErrorDb("SHIT!@ %u", pCurrChar->GetGUIDLow()); + nameUpdate_AT_LOGIN_UPDATE_NAME = (*result)[0].GetString(); -+ sWorld->UpdateCharacterNameData(pCurrChar->GetGUIDLow(), nameUpdate_AT_LOGIN_UPDATE_NAME); -+ sWorld->AddCharacterNameData(pCurrChar->GetGUIDLow(), nameUpdate_AT_LOGIN_UPDATE_NAME, pCurrChar->getGender(), pCurrChar->getRace(), pCurrChar->getClass(), pCurrChar->getLevel()); ++ accID_Update_AT_LOGIN_UPDATE_NAME = (*result)[1].GetUInt32(); ++ sWorld->UpdateGlobalPlayerData(pCurrChar->GetGUIDLow(), PLAYER_UPDATE_DATA_NAME, nameUpdate_AT_LOGIN_UPDATE_NAME, pCurrChar->getLevel(), pCurrChar->getGender(),pCurrChar->getRace(), pCurrChar->getClass()); ++ sWorld->AddGlobalPlayerData(pCurrChar->GetGUIDLow(), accID_Update_AT_LOGIN_UPDATE_NAME, nameUpdate_AT_LOGIN_UPDATE_NAME, pCurrChar->getGender(), pCurrChar->getRace(), pCurrChar->getClass(), pCurrChar->getLevel(), 0, 0); + } -+// if(!sWorld->UpdateCharacterNameData(pCurrChar->GetGUIDLow(), pCurrChar->GetName(), pCurrChar->getGender(), pCurrChar->getRace())) -+// sWorld->AddCharacterNameData(pCurrChar->GetGUIDLow(), pCurrChar->GetName(), pCurrChar->getGender(), pCurrChar->getRace(), pCurrChar->getClass()); -+ pCurrChar->RemoveAtLoginFlag(AT_LOGIN_UPDATE_NAME); ++ pCurrChar->RemoveAtLoginFlag(AT_LOGIN_RENAME); + } - - // show time before shutdown if shutdown planned. - if (sWorld->IsShuttingDown()) -diff -r 99600389f957 -r 3723de555d1d src/server/game/World/World.cpp ---- a/src/server/game/World/World.cpp Sat Dec 22 18:00:05 2012 +0000 -+++ b/src/server/game/World/World.cpp Sat Dec 22 19:52:50 2012 +0000 -@@ -3080,11 +3080,11 @@ - data.m_level = level; - } - --void World::UpdateCharacterNameData(uint32 guid, std::string const& name, uint8 gender /*= GENDER_NONE*/, uint8 race /*= RACE_NONE*/) -+bool World::UpdateCharacterNameData(uint32 guid, std::string const& name, uint8 gender /*= GENDER_NONE*/, uint8 race /*= RACE_NONE*/) - { - std::map::iterator itr = _characterNameDataMap.find(guid); - if (itr == _characterNameDataMap.end()) -- return; -+ return false; - - itr->second.m_name = name; - -@@ -3093,6 +3093,7 @@ - - if (race != RACE_NONE) - itr->second.m_race = race; -+ return true; - } - - void World::UpdateCharacterNameDataLevel(uint32 guid, uint8 level) -diff -r 99600389f957 -r 3723de555d1d src/server/game/World/World.h ---- a/src/server/game/World/World.h Sat Dec 22 18:00:05 2012 +0000 -+++ b/src/server/game/World/World.h Sat Dec 22 19:52:50 2012 +0000 -@@ -730,7 +730,7 @@ - - CharacterNameData const* GetCharacterNameData(uint32 guid) const; - void AddCharacterNameData(uint32 guid, std::string const& name, uint8 gender, uint8 race, uint8 playerClass, uint8 level); -- void UpdateCharacterNameData(uint32 guid, std::string const& name, uint8 gender = GENDER_NONE, uint8 race = RACE_NONE); -+ bool UpdateCharacterNameData(uint32 guid, std::string const& name, uint8 gender = GENDER_NONE, uint8 race = RACE_NONE); - void UpdateCharacterNameDataLevel(uint32 guid, uint8 level); - void DeleteCharaceterNameData(uint32 guid) { _characterNameDataMap.erase(guid); } + sScriptMgr->OnFirstLogin(pCurrChar); + } diff --git a/SQL+Core's Commit/update_auth.sql b/SQL+Core's Commit/update_auth.sql index 6cf0f5b..8c038b4 100644 --- a/SQL+Core's Commit/update_auth.sql +++ b/SQL+Core's Commit/update_auth.sql @@ -14,7 +14,7 @@ CREATE TABLE `account_transfer` ( `cAccount` INT(11) UNSIGNED NOT NULL DEFAULT 0, `cRealm` INT(2) UNSIGNED NOT NULL DEFAULT 1, `date_created` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, - `date_checked` TIMESTAMP DEFAULT 0, + `date_checked` TIMESTAMP DEFAULT CURRENT_TIMESTAMP, `oPassword` CHAR(40) NOT NULL DEFAULT '', `oAccount` CHAR(16) NOT NULL DEFAULT '', `oServer` TEXT, @@ -58,7 +58,7 @@ CREATE TABLE `account_transfer_queue` ( PRIMARY KEY (`id`) ) ENGINE=MYISAM DEFAULT CHARSET=utf8; -DROP TABLE IF EXISTS `account_transfer_guid`; +/*DROP TABLE IF EXISTS `account_transfer_guid`; CREATE TABLE `account_transfer_guid` ( `Realm1` INT(11) NOT NULL DEFAULT 0, `Realm2` INT(11) NOT NULL DEFAULT 0, @@ -68,5 +68,5 @@ CREATE TABLE `account_transfer_guid` ( ) ENGINE=MYISAM DEFAULT CHARSET=utf8; -- DO NOT TOUCH THAT! INSERT INTO `account_transfer_guid` VALUES (0, 0, 0, 0, 0); --- Delete not existed gm acccess +-- Delete not existed gm acccess*/ DELETE FROM `account_access` WHERE `id` NOT IN (SELECT `id` FROM `account`); \ No newline at end of file diff --git a/SQL+Core's Commit/update_characters.sql b/SQL+Core's Commit/update_characters.sql index 0015831..797929d 100644 --- a/SQL+Core's Commit/update_characters.sql +++ b/SQL+Core's Commit/update_characters.sql @@ -1,8 +1,9 @@ -INSERT INTO `characters` (`guid`,`account`,`name`,`race`,`class`,`gender`,`level`,`xp`,`money`,`playerBytes`,`playerBytes2`,`playerFlags`,`position_x`,`position_y`,`position_z`,`map`,`instance_id`,`instance_mode_mask`,`orientation`,`taximask`,`online`,`cinematic`,`totaltime`,`leveltime`,`logout_time`,`is_logout_resting`,`rest_bonus`,`resettalents_cost`,`resettalents_time`,`trans_x`,`trans_y`,`trans_z`,`trans_o`,`transguid`,`extra_flags`,`stable_slots`,`at_login`,`zone`,`death_expire_time`,`taxi_path`,`arenaPoints`,`totalHonorPoints`,`todayHonorPoints`,`yesterdayHonorPoints`,`totalKills`,`todayKills`,`yesterdayKills`,`chosenTitle`,`knownCurrencies`,`watchedFaction`,`drunk`,`health`,`power1`,`power2`,`power3`,`power4`,`power5`,`power6`,`power7`,`latency`,`speccount`,`activespec`,`exploredZones`,`equipmentCache`,`ammoId`,`knownTitles`,`actionBars`,`deleteInfos_Account`,`deleteInfos_Name`,`deleteDate`) VALUES -(1000000,1,'CTrigger1',7,8,1,80,0,2137455906,0,0,0,'5804.86','626.041','647.644',571,0,0,0,'0 0 0 0 0 0 0 0 0 0 0 0 0 0',0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,4395,0,NULL,25,31685,0,0,36,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,NULL,NULL,0,NULL,0,NULL,NULL,NULL), -(2000000,1,'CTrigger2',7,8,1,80,0,2137455906,0,0,0,'5804.86','626.041','647.644',571,0,0,0,'0 0 0 0 0 0 0 0 0 0 0 0 0 0',0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,4395,0,NULL,25,31685,0,0,36,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,NULL,NULL,0,NULL,0,NULL,NULL,NULL); +/* INSERT INTO `characters` (`guid`,`account`,`name`,`race`,`class`,`gender`,`level`,`xp`,`money`,`playerFlags`,`position_x`,`position_y`,`position_z`,`map`,`instance_id`,`instance_mode_mask`,`orientation`,`taximask`,`online`,`cinematic`,`totaltime`,`leveltime`,`logout_time`,`is_logout_resting`,`rest_bonus`,`resettalents_cost`,`resettalents_time`,`trans_x`,`trans_y`,`trans_z`,`trans_o`,`transguid`,`extra_flags`,`stable_slots`,`at_login`,`zone`,`death_expire_time`,`taxi_path`,`arenaPoints`,`totalHonorPoints`,`todayHonorPoints`,`yesterdayHonorPoints`,`totalKills`,`todayKills`,`yesterdayKills`,`chosenTitle`,`knownCurrencies`,`watchedFaction`,`drunk`,`health`,`power1`,`power2`,`power3`,`power4`,`power5`,`power6`,`power7`,`latency`,`exploredZones`,`equipmentCache`,`ammoId`,`knownTitles`,`actionBars`,`deleteInfos_Account`,`deleteInfos_Name`,`deleteDate`) VALUES +(1000000,1,'CTrigger1',7,8,1,80,0,2137455906,0,'5804.86','626.041','647.644',571,0,0,0,'0 0 0 0 0 0 0 0 0 0 0 0 0 0',0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,4395,0,NULL,25,31685,0,0,36,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,NULL,NULL,0,NULL,0,NULL,NULL,NULL), +(2000000,1,'CTrigger2',7,8,1,80,0,2137455906,0,'5804.86','626.041','647.644',571,0,0,0,'0 0 0 0 0 0 0 0 0 0 0 0 0 0',0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,4395,0,NULL,25,31685,0,0,36,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,NULL,NULL,0,NULL,0,NULL,NULL,NULL); +*/ CREATE TABLE IF NOT EXISTS `character_transfer`( `GUID` INT(11) NOT NULL DEFAULT 0, diff --git a/Screenshots/import-step1.jpg b/Screenshots/import-step1.jpg new file mode 100644 index 0000000..4e9cc9b Binary files /dev/null and b/Screenshots/import-step1.jpg differ diff --git a/Screenshots/login.jpg b/Screenshots/login.jpg new file mode 100644 index 0000000..27ccb65 Binary files /dev/null and b/Screenshots/login.jpg differ diff --git a/Screenshots/userpanel-1.jpg b/Screenshots/userpanel-1.jpg new file mode 100644 index 0000000..acbc842 Binary files /dev/null and b/Screenshots/userpanel-1.jpg differ diff --git a/_transfer/b_approve.php b/_transfer/b_approve.php index a044d9e..44c109e 100644 --- a/_transfer/b_approve.php +++ b/_transfer/b_approve.php @@ -1,4 +1,10 @@ + * Copyright (C) 2017+ AzerothCore , released under GNU GPL v2 license: http://github.com/azerothcore/azerothcore-wotlk/LICENSE-GPL2 + * Copyright (C) 2008-2016 TrinityCore + * Copyright (C) 2005-2009 MaNGOS +*/ ob_start(); session_start(); @@ -12,11 +18,13 @@ $ID = $_POST['Approve']; $RealmID = $_POST['RealmlistList']; $GUID = $_POST['GUID']; - if(_CheckCharacterOnlineStatus(_HostDBSwitch($RealmID), $DBUser, $DBPassword, _CharacterDBSwitch($RealmID), $GUID)) { - if(CheckTransferStatus($AccountDBHost, $DBUser, $DBPassword, $AccountDB, $ID) == 0) { - if(_CheckGMAccess($AccountDBHost, $DBUser, $DBPassword, $AccountDB, $ACCOUNT_ID, $GMLevel)) { - ApproveCharacterTransfer(_HostDBSwitch($RealmID), $DBUser, $DBPassword, _CharacterDBSwitch($RealmID), $GUID); - UpdateDumpStatus($AccountDBHost, $DBUser, $DBPassword, $AccountDB, $ID, 1); + if(_CheckCharacterOnlineStatus(_HostDBSwitch($RealmID),$DB_PORT, $DBUser, $DBPassword, _CharacterDBSwitch($RealmID), $GUID)) { + if(CheckTransferStatus($AccountDBHost,$DB_PORT, $DBUser, $DBPassword, $AccountDB, $ID) == 0) { + if(_CheckGMAccess($AccountDBHost,$DB_PORT, $DBUser, $DBPassword, $AccountDB, $ACCOUNT_ID, $GMLevel)) { + ApproveCharacterTransfer(_HostDBSwitch($RealmID),$DB_PORT, $DBUser, $DBPassword, _CharacterDBSwitch($RealmID), $GUID); + UpdateDumpStatus($AccountDBHost,$DB_PORT, $DBUser, $DBPassword, $AccountDB, $ID, 1); + ob_end_flush(); + die("Done"); } else die("ACCESS DENIED:"); } else die("NOT \"IN PROGRESS\" STATUS"); } else die("LOG OFF WITH THIS CHARACTER! BEFORE MAKE ANY ACTIONS!"); diff --git a/_transfer/b_cancel.php b/_transfer/b_cancel.php index 64df8da..4816ba1 100644 --- a/_transfer/b_cancel.php +++ b/_transfer/b_cancel.php @@ -1,4 +1,10 @@ + * Copyright (C) 2017+ AzerothCore , released under GNU GPL v2 license: http://github.com/azerothcore/azerothcore-wotlk/LICENSE-GPL2 + * Copyright (C) 2008-2016 TrinityCore + * Copyright (C) 2005-2009 MaNGOS +*/ ob_start(); session_start(); @@ -12,11 +18,11 @@ $ID = $_POST['cancel']; $RealmID = $_POST['RealmlistList']; $GUID = $_POST['GUID']; - if(_CheckCharacterOnlineStatus(_HostDBSwitch($RealmID), $DBUser, $DBPassword, _CharacterDBSwitch($RealmID), $GUID)) { - if(CheckTransferStatus($AccountDBHost, $DBUser, $DBPassword, $AccountDB, $ID) == 0) { - if(!_CheckGMAccess($AccountDBHost, $DBUser, $DBPassword, $AccountDB, $ACCOUNT_ID, $GMLevel)) { - CancelORDenyCharacterTransfer(_HostDBSwitch($RealmID), $DBUser, $DBPassword, _CharacterDBSwitch($RealmID), $GUID, $STORAGE); - UpdateDumpStatus($AccountDBHost, $DBUser, $DBPassword, $AccountDB, $ID, 3); + if(_CheckCharacterOnlineStatus(_HostDBSwitch($RealmID),$DB_PORT, $DBUser, $DBPassword, _CharacterDBSwitch($RealmID), $GUID)) { + if(CheckTransferStatus($AccountDBHost,$DB_PORT, $DBUser, $DBPassword, $AccountDB, $ID) == 0) { + if(!_CheckGMAccess($AccountDBHost,$DB_PORT, $DBUser, $DBPassword, $AccountDB, $ACCOUNT_ID, $GMLevel)) { + CancelORDenyCharacterTransfer(_HostDBSwitch($RealmID),$DB_PORT, $DBUser, $DBPassword, _CharacterDBSwitch($RealmID), $GUID, $STORAGE); + UpdateDumpStatus($AccountDBHost,$DB_PORT, $DBUser, $DBPassword, $AccountDB, $ID, 3); ob_end_flush(); die("Transfer with ID: ". $ID ." Canceled"); } else die("ACCESS DENIED"); diff --git a/_transfer/b_deny.php b/_transfer/b_deny.php index 5de1793..b37a5dc 100644 --- a/_transfer/b_deny.php +++ b/_transfer/b_deny.php @@ -1,8 +1,14 @@ + * Copyright (C) 2017+ AzerothCore , released under GNU GPL v2 license: http://github.com/azerothcore/azerothcore-wotlk/LICENSE-GPL2 + * Copyright (C) 2008-2016 TrinityCore + * Copyright (C) 2005-2009 MaNGOS +*/ ob_start(); session_start(); - +sleep(5); include_once("t_dbfunctions.php"); include_once("t_functions.php"); include_once("t_config.php"); @@ -17,12 +23,14 @@ if(!isset($REASON) || empty($REASON)) $REASON = "Not meet requeriments."; - if(_CheckCharacterOnlineStatus(_HostDBSwitch($RealmID), $DBUser, $DBPassword, _CharacterDBSwitch($RealmID), $GUID)) { - if(CheckTransferStatus($AccountDBHost, $DBUser, $DBPassword, $AccountDB, $ID) == 0) { - if(_CheckGMAccess($AccountDBHost, $DBUser, $DBPassword, $AccountDB, $ACCOUNT_ID, $GMLevel)) { - AddComment($AccountDBHost, $DBUser, $DBPassword, $AccountDB, $ID, $REASON); - CancelORDenyCharacterTransfer(_HostDBSwitch($RealmID), $DBUser, $DBPassword, _CharacterDBSwitch($RealmID), $GUID, $STORAGE); - UpdateDumpStatus($AccountDBHost, $DBUser, $DBPassword, $AccountDB, $ID, 2); + if(_CheckCharacterOnlineStatus(_HostDBSwitch($RealmID),$DB_PORT, $DBUser, $DBPassword, _CharacterDBSwitch($RealmID), $GUID)) { + if(CheckTransferStatus($AccountDBHost,$DB_PORT, $DBUser, $DBPassword, $AccountDB, $ID) == 0) { + if(_CheckGMAccess($AccountDBHost,$DB_PORT, $DBUser, $DBPassword, $AccountDB, $ACCOUNT_ID, $GMLevel)) { + AddComment($AccountDBHost,$DB_PORT, $DBUser, $DBPassword, $AccountDB, $ID, $REASON); + CancelORDenyCharacterTransfer(_HostDBSwitch($RealmID),$DB_PORT, $DBUser, $DBPassword, _CharacterDBSwitch($RealmID), $GUID, $STORAGE); + UpdateDumpStatus($AccountDBHost,$DB_PORT, $DBUser, $DBPassword, $AccountDB, $ID, 2); + ob_end_flush(); + die("Transfer with ID: ". $ID ." Canceled"); } else die("ACCESS DENIED"); } else die("NOT \"IN PROGRESS\" STATUS"); } else die("LOG OFF WITH THIS CHARACTER! BEFORE MAKE ANY ACTIONS!"); @@ -30,10 +38,10 @@ ob_end_flush(); - function AddComment($AccountDBHost, $DBUser, $DBPassword, $AccountDB, $ID, $REASON){ - $connection = mysql_connect($AccountDBHost, $DBUser, $DBPassword) or die(mysql_error()); - _SelectDB($AccountDB, $connection); - $query = mysql_query("UPDATE `account_transfer` SET `Reason` = \"". _X($REASON) ."\" WHERE `id` = ". (int)$ID .";", $connection) or die(mysql_error()); - mysql_close($connection); + function AddComment($AccountDBHost,$DB_PORT, $DBUser, $DBPassword, $AccountDB, $ID, $REASON){ + $connection = mysqli_connect($AccountDBHost, $DBUser, $DBPassword,$AccountDB,$DB_PORT) or die(mysqli_error($connection)); + _SelectDB($connection); + $query = mysqli_query($connection,"UPDATE `account_transfer` SET `Reason` = \"". _X($connection,$REASON) ."\" WHERE `id` = ". (int)$ID .";") or die(mysqli_error($connection)); + mysqli_close($connection); } ?> \ No newline at end of file diff --git a/_transfer/b_resend.php b/_transfer/b_resend.php index 06226f1..bd0b750 100644 --- a/_transfer/b_resend.php +++ b/_transfer/b_resend.php @@ -1,4 +1,10 @@ + * Copyright (C) 2017+ AzerothCore , released under GNU GPL v2 license: http://github.com/azerothcore/azerothcore-wotlk/LICENSE-GPL2 + * Copyright (C) 2008-2016 TrinityCore + * Copyright (C) 2005-2009 MaNGOS +*/ ob_start(); session_start(); @@ -12,11 +18,11 @@ $ID = $_POST['Resend']; $RealmID = $_POST['RealmlistList']; $GUID = $_POST['GUID']; - if(_CheckCharacterOnlineStatus(_HostDBSwitch($RealmID), $DBUser, $DBPassword, _CharacterDBSwitch($RealmID), $GUID)) { - if(CheckTransferStatus($AccountDBHost, $DBUser, $DBPassword, $AccountDB, $ID) == 0) { - if(_CheckGMAccess($AccountDBHost, $DBUser, $DBPassword, $AccountDB, $ACCOUNT_ID, $GMLevel)) { - _PreparateMails(LoadItemRoW($AccountDBHost, $DBUser, $DBPassword, $AccountDB, $ID), - _GetCharacterName(_HostDBSwitch($RealmID), $DBUser, $DBPassword, _CharacterDBSwitch($RealmID), $GUID), + if(_CheckCharacterOnlineStatus(_HostDBSwitch($RealmID),$DB_PORT, $DBUser, $DBPassword, _CharacterDBSwitch($RealmID), $GUID)) { + if(CheckTransferStatus($AccountDBHost,$DB_PORT, $DBUser, $DBPassword, $AccountDB, $ID) == 0) { + if(_CheckGMAccess($AccountDBHost,$DB_PORT, $DBUser, $DBPassword, $AccountDB, $ACCOUNT_ID, $GMLevel)) { + _PreparateMails(LoadItemRoW($AccountDBHost,$DB_PORT, $DBUser, $DBPassword, $AccountDB, $ID), + _GetCharacterName(_HostDBSwitch($RealmID),$DB_PORT, $DBUser, $DBPassword, _CharacterDBSwitch($RealmID), $GUID), $TransferLetterTitle, $TransferLetterMessage, $SOAPUser, $SOAPPassword, _SOAPPSwitch($RealmID), _SOAPHSwitch($RealmID), _SOAPURISwitch($RealmID)); ob_end_flush(); die("ITEMS RE-SENDED"); diff --git a/_transfer/f_switch.php b/_transfer/f_switch.php index 881c434..0ad5690 100644 --- a/_transfer/f_switch.php +++ b/_transfer/f_switch.php @@ -1,4 +1,11 @@  + * Copyright (C) 2017+ AzerothCore , released under GNU GPL v2 license: http://github.com/azerothcore/azerothcore-wotlk/LICENSE-GPL2 + * Copyright (C) 2008-2016 TrinityCore + * Copyright (C) 2005-2009 MaNGOS +*/ + function GetSkillID($skill, $locale) { switch($locale) { case "FRFR": { diff --git a/_transfer/language.php b/_transfer/language.php index b59350a..3810971 100644 --- a/_transfer/language.php +++ b/_transfer/language.php @@ -1,5 +1,10 @@  + * Copyright (C) 2017+ AzerothCore , released under GNU GPL v2 license: http://github.com/azerothcore/azerothcore-wotlk/LICENSE-GPL2 + * Copyright (C) 2008-2016 TrinityCore + * Copyright (C) 2005-2009 MaNGOS +*/ include_once("t_config.php"); switch($language) { @@ -20,7 +25,7 @@ $write[41] = 'Вы удачно покинули Личный Кабинет'; $write[42] = 'Вернутся на сайт'; $write[50] = 'Формат файла не верен, нужна другая версия игры'; - $write[51] = 'Ваш аддон chardump устарел, пожалуйста скачайте более новую версию аддона.'; + $write[51] = 'Ваш аддон chardump устарел, пожалуйста скачайте более новую версию аддона.'; $write[52] = 'Слишком много персонажей на аккунте: "'; $write[53] = '" (не более 9)'; $write[54] = 'На выбеном мире: '; @@ -36,7 +41,7 @@ $write[73] = 'Реалмлист старого сервера. Только полностью: Пример: set realmlist 127.0.0.1'; $write[74] = 'Адрес сайта "старого" сервера, где Гейм Мастер сможет прочесть информацию о нем
"старом":'; $write[76] = 'Использовать ТОЛЬКО файл "chardump.lua"!'; - $write[75] = 'Скачать аддон(игровое расширение) для получения dump персонажа v303.664.rar
Введите /chardump в чате игры зайдя на вашего персонажа для начала переноса персонажа.
Отройте сумки инвентаря и банка, чтобы они перенеслись на новый сервер.
Для переноса рецептов и профессий - откройте окна профессии.
Выйдите из игры и найдите файла дампа, он будет сохранен в WTF \ Account \ %Username% \ SavedVariables \ chardump.lua
Все выше сказаное есть в видео '; + $write[75] = 'Скачать аддон(игровое расширение) для получения dump персонажа chardump.zip
Введите /chardump в чате игры зайдя на вашего персонажа для начала переноса персонажа.
Отройте сумки инвентаря и банка, чтобы они перенеслись на новый сервер.
Для переноса рецептов и профессий - откройте окна профессии.
Выйдите из игры и найдите файла дампа, он будет сохранен в WTF \ Account \ %Username% \ SavedVariables \ chardump.lua
Все выше сказаное есть в видео '; $write[77] = 'Начало переноса, ШАГ 2'; $write[78] = 'Добро пожаловать в Панель Администратора Установите статус персонажа, Please click "Одобрено" или "Отклонено" что-бы изменить статус переноса.'; $write[79] = 'Выберите мир, в который хотите перенести персонажа'; @@ -73,7 +78,7 @@ $write[41] = 'Du hast dich erfolgreich ausgeloggt'; $write[42] = 'Zurück'; $write[50] = 'Deine Datei war fehlerhaft.'; - $write[51] = 'Dein Chardump ist fehlerhaft, bitte downloade ein neues Addon.'; + $write[51] = 'Dein Chardump ist fehlerhaft, bitte downloade ein neues Addon.'; $write[52] = 'Deine Anzahl an Characteren auf dem Realm: "'; $write[53] = '" (Mehr als 9)'; $write[54] = 'Für den Realm: '; @@ -89,7 +94,7 @@ $write[73] = 'Nur komplette Angaben: Beispiel: set realmlist 127.0.0.1'; $write[74] = 'Server Adresse, mit der der GM den "Alten" Server überprüfen kann.
Beispiel: '; $write[76] = 'Lade nur den erstellten Chardump hoch! "chardump.lua"'; - $write[75] = 'Lade folgendes Addon herunter um einen Chardump zu erstellen v303.664.rar
Gib /chardump im Chatfenster ein um einen DUMP durchzuführen.
Um die Sachen aus der Bank zu transferieren müssen diese Seiten auch geöffnet sein.
Logge dich as und der Dump wird wie folgt gespeichert: WTF \ Account \ %Username% \ SavedVariables \ chardump.lua
'; + $write[75] = 'Lade folgendes Addon herunter um einen Chardump zu erstellen chardump.zip
Gib /chardump im Chatfenster ein um einen DUMP durchzuführen.
Um die Sachen aus der Bank zu transferieren müssen diese Seiten auch geöffnet sein.
Logge dich as und der Dump wird wie folgt gespeichert: WTF \ Account \ %Username% \ SavedVariables \ chardump.lua
'; $write[77] = 'Transfer starten, Schritt 2'; $write[78] = 'Willkommen im ADMIN PANEL. Wenn du Transfers prüfst, dann bitte klicke entweder "Bestätigen" oder "Ablehnen" um die Transfers zu Bestätigen oder Abzulehnen.'; $write[79] = 'Wähle zu welchem Realm soll dein Character transferiert werden.'; @@ -126,7 +131,7 @@ $write[41] = 'Has salido de tu cuenta'; $write[42] = 'Volver'; $write[50] = 'Tu archivo esta corrupto'; - $write[51] = 'Tu dump esta corrupto no es valido, Por favor descarga el nuevo addon.'; + $write[51] = 'Tu dump esta corrupto no es valido, Por favor descarga el nuevo addon.'; $write[52] = 'Personajes en el reino: "'; $write[53] = '" (Mas de 9)'; $write[54] = 'Para el reino: '; @@ -142,7 +147,7 @@ $write[73] = 'Realmlist entero: Ejemplo: set realmlist 127.0.0.1'; $write[74] = 'Web del servidor antiguo, donde el MJ puede leer informacion o identificar tu antigua cuenta (servidor del que provienes)
Ejemplo:'; $write[76] = 'Sube el dump "chardump.lua"'; - $write[75] = 'Descarga el addon para hacer dump de tu PJ v303.664.rar
Escribe /chardump en el chat.
Para guardar las cosas de fuera del banco debes tener la ventana abierta.
Para conservar las recetas de tus profesiones debes abrir las profesiones.
Desconecta del servidor y sube el dump, (se encuentra en WTF \ Account \ %Username% \ SavedVariables \ chardump.lua)
'; + $write[75] = 'Descarga el addon para hacer dump de tu PJ chardump.zip
Escribe /chardump en el chat.
Para guardar las cosas de fuera del banco debes tener la ventana abierta.
Para conservar las recetas de tus profesiones debes abrir las profesiones.
Desconecta del servidor y sube el dump, (se encuentra en WTF \ Account \ %Username% \ SavedVariables \ chardump.lua)
'; $write[77] = 'Empezar con la migracion, PASO 2'; $write[78] = 'Bienvenido al PANEL DE ADMINISTRACION donde puedes administrar los PJs de la gente, haz click en "Aprobar" o "Denegar" para aprobar o denegar las migraciones'; $write[79] = 'Selecciona el reino al cual quieres migrar tu personaje'; @@ -179,7 +184,7 @@ $write[41] = 'You have successfully left your account'; $write[42] = 'Go Back'; $write[50] = 'Your file corrupted, or your client build not'; - $write[51] = 'Your chardump corrupted, Please download new addon.'; + $write[51] = 'Your chardump corrupted, Please download new addon.'; $write[52] = 'You have so much characters on Realm: "'; $write[53] = '" (More then 9)'; $write[54] = 'For Realm: '; @@ -195,7 +200,7 @@ $write[73] = 'Only full string: Example: set realmlist 127.0.0.1'; $write[74] = 'Server URL, where Game Master can read info or identify your "old" server
Example: '; $write[76] = 'Upload created character dump ONLY! "chardump.lua"'; - $write[75] = 'Download the game addon to dump the character v303.664.rar
Enter /chardump in the chat frame to dump.
To dump things out of the bank to bank so that the window was also open.
To dump recipes professions in turn open the frames of the professions.
Make logout and the dump file will be saved in the WTF \ Account \ %Username% \ SavedVariables \ chardump.lua
'; + $write[75] = 'Download the game addon to dump the character chardump.zip
Enter /chardump in the chat frame to dump.
To dump things out of the bank to bank so that the window was also open.
To dump recipes professions in turn open the frames of the professions.
Make logout and the dump file will be saved in the WTF \ Account \ %Username% \ SavedVariables \ chardump.lua
'; $write[77] = 'Start Transfer, STEP 2'; $write[78] = 'Welcome to ADMIN PANEL When you check Player Characters, Please click "Approve" or "Deny" for approving or deny their transfers'; $write[79] = 'Select in which realm you want to tranfer your character'; @@ -232,7 +237,7 @@ $write[41] = 'Vous êtes déconnecté.'; $write[42] = 'Retour'; $write[50] = 'Votre fichier est corrompu, ou votre DUMP de personnage n\'\'a pas été fait sous la bonne version (3.3.5)'; - $write[51] = 'Votre DUMP de personnage est corrompu, Merci de télécharger le nouvel addon.'; + $write[51] = 'Votre DUMP de personnage est corrompu, Merci de télécharger le nouvel addon.'; $write[52] = 'Vous avez trop de personnages sur le Royaume: "'; $write[53] = '" (pas plus de 9)'; $write[54] = 'Pour le Royaume: '; @@ -248,7 +253,7 @@ $write[73] = 'Realmlist de votre serveur. Exemple: set realmlist pandaria-games.com'; $write[74] = 'Adresse URL de votre serveur, où le MJ pourra voir les informations de votre serveur
Exemple: http://pandaria-games.com/index.php/'; $write[76] = 'Uploader SEULEMENT un fichier généré par notre Addon! "chardump.lua"'; - $write[75] = 'Télécharger notre Addon pour créer votre DUMP de personnage v303.664.rar
Tapez /chardump dans la fenêtre de chat pour générer le fichier DUMP de votre personnage.
Pour récupérer votre Banque, pensez à ouvrir la fenêtre de votre Banque avant de taper la commande /chardump.
Pour récupérer vos recettes de métier, pensez à ouvrir la fenêtre de vos Métiers avant de taper la commande /chardump.
Une fois le DUMP crée par l\'\'addon vous trouverez le fichier à nous envoyer dans votre dossier WTF \ Account \ %Username% \ SavedVariables \ chardump.lua
'; + $write[75] = 'Télécharger notre Addon pour créer votre DUMP de personnage chardump.zip
Tapez /chardump dans la fenêtre de chat pour générer le fichier DUMP de votre personnage.
Pour récupérer votre Banque, pensez à ouvrir la fenêtre de votre Banque avant de taper la commande /chardump.
Pour récupérer vos recettes de métier, pensez à ouvrir la fenêtre de vos Métiers avant de taper la commande /chardump.
Une fois le DUMP crée par l\'\'addon vous trouverez le fichier à nous envoyer dans votre dossier WTF \ Account \ %Username% \ SavedVariables \ chardump.lua
'; $write[77] = 'Démarrer la récupération, Étape 2'; $write[78] = 'Bienvenue dans le GESTIONNAIRE ADMIN lorsque la vérification de récupération est faite, merci de cliquer sur "Approuvé" ou "Refusé" pour autoriser ou refuser une récupération.'; $write[79] = 'Sélectionner le royaume dans lequel vous voulez tranférer votre personnage'; diff --git a/_transfer/step1.php b/_transfer/step1.php index 1cc4b7a..94d32c9 100644 --- a/_transfer/step1.php +++ b/_transfer/step1.php @@ -1,4 +1,10 @@ + * Copyright (C) 2017+ AzerothCore , released under GNU GPL v2 license: http://github.com/azerothcore/azerothcore-wotlk/LICENSE-GPL2 + * Copyright (C) 2008-2016 TrinityCore + * Copyright (C) 2005-2009 MaNGOS +*/ include_once("t_dbfunctions.php"); include_once("t_functions.php"); @@ -12,7 +18,7 @@ $o_URL = trim($_POST['ServerUrl']); if($_FILES['file']['name'] != "chardump.lua") { $realson = _RT("Wrong file!"); - Step1Form($AccountDB, $AccountDBHost, $DBUser, $DBPassword, $write[70], $write[71], $write[72], $write[79], $write[74], $write[76], $write[63], $write[77], $realson); + Step1Form($AccountDB, $AccountDBHost, $DB_PORT, $DBUser, $DBPassword, $write[70], $write[71], $write[72], $write[79], $write[74], $write[76], $write[63], $write[77], $realson); } else { move_uploaded_file($_FILES['file']['tmp_name'], "./storage/". $_FILES['file']['name']); $file = "./storage/chardump.lua"; @@ -32,9 +38,9 @@ $DUMP = $part[1]; $REALM_NAME = $_POST['RealmlistList']; $DECODED_DUMP = _DECRYPT($DUMP); - $CHAR_REALM = GetRealmID($AccountDBHost, $DBUser, $DBPassword, $AccountDB, $REALM_NAME); + $CHAR_REALM = GetRealmID($AccountDBHost, $DB_PORT, $DBUser, $DBPassword, $AccountDB, $REALM_NAME); $CHAR_ACCOUNT_ID = _GetCharacterAccountID(); - $GM_ACCOUNT_ID = CanOrNoTransferServer($AccountDBHost, $DBUser, $DBPassword, $AccountDB, $CHAR_REALM, $GMLevel); + $GM_ACCOUNT_ID = CanOrNoTransferServer($AccountDBHost, $DB_PORT, $DBUser, $DBPassword, $AccountDB, $CHAR_REALM, $GMLevel); $json = json_decode(stripslashes($DECODED_DUMP), true); $CHAR_NAME = mb_convert_case(mb_strtolower($json['uinf']['name'], 'UTF-8'), MB_CASE_TITLE, 'UTF-8'); $O_REALMLIST = $json['ginf']['realmlist']; @@ -42,14 +48,14 @@ $RaceID = _GetRaceID(strtoupper($json['uinf']['race'])); $ClassID = _GetClassID(strtoupper($json['uinf']['class'])); $CharLevel = _MaxValue($json['uinf']['level'], $MaxCL); - - $connection = mysql_connect($AccountDBHost, $DBUser, $DBPassword); + //print_r($json);exit(); + $connection = mysqli_connect($AccountDBHost, $DBUser, $DBPassword,$AccountDB,$DB_PORT); _SelectDB($AccountDB, $connection); - $result = mysql_query("SELECT `address`,`port` FROM `realmlist` WHERE `id` = ". $CHAR_REALM .";", $connection) or die(mysql_error()); - $row = mysql_fetch_array($result); + $result = mysqli_query($connection,"SELECT `address`,`port` FROM `realmlist` WHERE `id` = ". $CHAR_REALM .";") or die(mysqli_error($connection)); + $row = mysqli_fetch_array($result); $SPT = $row['port']; $SIP = $row['address']; - mysql_close($connection); + mysqli_close($connection); $AchievementsCount = 0; $ACHMINTime = 0; @@ -70,11 +76,11 @@ $realson = _RT("Seems bad characters, not enought achievements!"); } else if(CHECKDAY($ACHMAXTime, $ACHMINTime) < $PLAYTIME) { $realson = _RT("Small playtime!"); - } else if(_CheckBlackList($AccountDBHost, $DBUser, $DBPassword, $AccountDB, $o_URL) || - _CheckBlackList($AccountDBHost, $DBUser, $DBPassword, $AccountDB, $O_REALM) || - _CheckBlackList($AccountDBHost, $DBUser, $DBPassword, $AccountDB, $O_REALMLIST)) { + } else if(_CheckBlackList($AccountDBHost, $DB_PORT, $DBUser, $DBPassword, $AccountDB, $o_URL) || + _CheckBlackList($AccountDBHost, $DB_PORT, $DBUser, $DBPassword, $AccountDB, $O_REALM) || + _CheckBlackList($AccountDBHost, $DB_PORT, $DBUser, $DBPassword, $AccountDB, $O_REALMLIST)) { $realson = _RT($write[57]); - } else if(CanOrNoTransferPlayer(_HostDBSwitch($CHAR_REALM), $DBUser, $DBPassword, _CharacterDBSwitch($CHAR_REALM), $CHAR_ACCOUNT_ID)) { + } else if(CanOrNoTransferPlayer(_HostDBSwitch($CHAR_REALM), $DB_PORT, $DBUser, $DBPassword, _CharacterDBSwitch($CHAR_REALM), $CHAR_ACCOUNT_ID)) { $realson = _RT($write[52] . $REALM_NAME . $write[53]); } else if($GM_ACCOUNT_ID < 0) { $realson = _RT($write[54] . $REALM_NAME . $write[55]); @@ -83,24 +89,24 @@ } else if(!_ServerOn($SIP, $SPT)) $realson = _RT("Realm: \"". $REALM_NAME ."\" OFFLINE!"); - $GUID = CheckCharacterGuid($AccountDBHost, $DBUser, $DBPassword, $AccountDB, $CHAR_REALM, GetCharacterGuid(_HostDBSwitch($CHAR_REALM), $DBUser, $DBPassword, _CharacterDBSwitch($CHAR_REALM))); + $GUID = GetCharacterGuid(_HostDBSwitch($CHAR_REALM), $DB_PORT, $DBUser, $DBPassword, _CharacterDBSwitch($CHAR_REALM)); if(empty($realson)) { $ID = 0; $ID = - WriteDumpFromFileInDB($AccountDBHost, $DBUser, $DBPassword, $AccountDB, + WriteDumpFromFileInDB($AccountDBHost, $DB_PORT, $DBUser, $DBPassword, $AccountDB, $DUMP, $CHAR_NAME, $CHAR_ACCOUNT_ID, $CHAR_REALM, $o_Account, $o_Password, $O_REALMLIST, $O_REALM, $o_URL, $ID, $GUID, $GM_ACCOUNT_ID, $write[20]); } } else if(!isset($part[1])) $realson = _RT($write[51]); if(!empty($realson)) { - Step1Form($AccountDB, $AccountDBHost, $DBUser, $DBPassword, $write[70], $write[71], $write[72], $write[79], $write[74], $write[76], $write[63], $write[77], $realson); + Step1Form($AccountDB, $AccountDBHost,$DB_PORT, $DBUser, $DBPassword, $write[70], $write[71], $write[72], $write[79], $write[74], $write[76], $write[63], $write[77], $realson); } else { $_SESSION['STEP2'] = "NO"; $char_money = _MaxValue($json['uinf']['money'], $MaxMoney); $char_speccount = $json['uinf']['specs']; - $char_gender = $json['uinf']['gender'] - 2 == 1 ? 1 : 0; + $char_gender = $json['uinf']['gender'] - 2 == 1 ? 1 : 0; $char_totalkills = $json['uinf']['kills']; $char_arenapoints = _MaxValue($json['uinf']['arenapoints'], $MaxAP); $char_honorpoints = _MaxValue($json['uinf']['honor'], $MaxHP); @@ -110,13 +116,11 @@ $row = ""; $QUERYFOREXECUTE = ""; - $connection = mysql_connect(_HostDBSwitch($CHAR_REALM), $DBUser, $DBPassword); - - _SelectDB(_CharacterDBSwitch($CHAR_REALM), $connection); - mysql_query(" - INSERT INTO `characters`(`guid`,`name`,`level`,`gender`,`totalHonorPoints`,`arenaPoints`,`totalKills`,`money`,`class`,`race`,`at_login`,`account`,`taximask`,`speccount`,`online`) VALUES ( - ". $GUID .",\"". _X($CHAR_NAME) ."\",". (int)$CharLevel .",". (int)$char_gender .",". (int)$char_honorpoints .",". (int)$char_arenapoints .", - ". (int)$char_totalkills .",".(int)$char_money .",". $ClassID .",". $RaceID .", 0x180, 1, \"0 0 0 0 0 0 0 0 0 0 0 0 0 0\",". (int)$char_speccount .", 0);", $connection); + $connection = mysqli_connect(_HostDBSwitch($CHAR_REALM), $DBUser, $DBPassword,_CharacterDBSwitch($CHAR_REALM),$DB_PORT); + mysqli_query($connection," + INSERT INTO `characters`(`guid`,`account`,`name`,`level`,`gender`,`totalHonorPoints`,`arenaPoints`,`totalKills`,`money`,`class`,`race`,`at_login`,`taximask`,`online`) VALUES ( + ". $GUID .",0,'". _X($connection,$CHAR_NAME) ."',". (int)$CharLevel .",". (int)$char_gender .",". (int)$char_honorpoints .",". (int)$char_arenapoints .", + ". (int)$char_totalkills .",".(int)$char_money .",". $ClassID .",". $RaceID .", 0x01, \"0 0 0 0 0 0 0 0 0 0 0 0 0 0\", 0);") or die(mysqli_error($connection)); $QUERYFOREXECUTE = $QUERYFOREXECUTE. " INSERT INTO `character_transfer` VALUES (". $GUID .",". $CHAR_ACCOUNT_ID .",". $GM_ACCOUNT_ID .",". $ID ."); @@ -201,7 +205,7 @@ $QUERYFOREXECUTE = $QUERYFOREXECUTE. "\n INSERT IGNORE /* MOUNT OR CRITTER */ INTO `character_spell` VALUES (". $GUID .", ". (int)$SpellID .", 1, 0);"; } - mysql_close($connection); + mysqli_close($connection); foreach($json['currency'] as $key => $value) { $CurrencyID = $value['I']; $COUNT = $value['C']; @@ -228,34 +232,35 @@ $GEMrow .= $GEM3 .":1 "; } - $QUERYFOREXECUTE_CON = new mysqli(_HostDBSwitch($CHAR_REALM), $DBUser, $DBPassword, _CharacterDBSwitch($CHAR_REALM)); - mysqli_multi_query($QUERYFOREXECUTE_CON, $QUERYFOREXECUTE) or die(mysql_error()); + + $QUERYFOREXECUTE_CON = mysqli_connect(_HostDBSwitch($CHAR_REALM), $DBUser, $DBPassword, _CharacterDBSwitch($CHAR_REALM), $DB_PORT); + mysqli_multi_query($QUERYFOREXECUTE_CON, $QUERYFOREXECUTE) or die(mysqli_error($QUERYFOREXECUTE_CON)); $row = trim($INVrow . $GEMrow . $CURrow); - UpdateDumpITEMROW($AccountDBHost, $DBUser, $DBPassword, $AccountDB, $ID, $row); - if(_CheckCharacterName(_HostDBSwitch($CHAR_REALM), $DBUser, $DBPassword, _CharacterDBSwitch($CHAR_REALM), $CHAR_NAME) > 1) { + UpdateDumpITEMROW($AccountDBHost,$DB_PORT, $DBUser, $DBPassword, $AccountDB, $ID, $row); + if(_CheckCharacterName(_HostDBSwitch($CHAR_REALM),$DB_PORT, $DBUser, $DBPassword, _CharacterDBSwitch($CHAR_REALM), $CHAR_NAME) > 1) { $_SESSION['guid'] = $GUID; $_SESSION['realm'] = $CHAR_REALM; $_SESSION['dumpID'] = $ID; $_SESSION['STEP2'] = "YES"; include("step2.php"); } else { - UpdateDumpStatus($AccountDBHost, $DBUser, $DBPassword, $AccountDB, $ID, 0); + UpdateDumpStatus($AccountDBHost,$DB_PORT, $DBUser, $DBPassword, $AccountDB, $ID, 0); _PreparateMails($row, $CHAR_NAME, $TransferLetterTitle, $TransferLetterMessage, $SOAPUser, $SOAPPassword, _SOAPPSwitch($CHAR_REALM), _SOAPHSwitch($CHAR_REALM), _SOAPURISwitch($CHAR_REALM)); - _TalentsReset(_HostDBSwitch($CHAR_REALM), $DBUser, $DBPassword, _CharacterDBSwitch($CHAR_REALM), $GUID); - MoveToGMAccount(_HostDBSwitch($CHAR_REALM), $DBUser, $DBPassword, _CharacterDBSwitch($CHAR_REALM), $GUID); + _TalentsReset(_HostDBSwitch($CHAR_REALM),$DB_PORT, $DBUser, $DBPassword, _CharacterDBSwitch($CHAR_REALM), $GUID); + MoveToGMAccount(_HostDBSwitch($CHAR_REALM),$DB_PORT, $DBUser, $DBPassword, _CharacterDBSwitch($CHAR_REALM), $GUID); echo "". $write[91] .""; } } } -} else Step1Form($AccountDB, $AccountDBHost, $DBUser, $DBPassword, $write[70], $write[71], $write[72], $write[79], $write[74], $write[76], $write[63], $write[77]); +} else Step1Form($AccountDB, $AccountDBHost,$DB_PORT, $DBUser, $DBPassword, $write[70], $write[71], $write[72], $write[79], $write[74], $write[76], $write[63], $write[77]); function CHECKDAY($TIME1, $TIME2) { $DIFF = floor(($TIME1-$TIME2)/86400); return $DIFF; } - function Step1Form($AccountDB, $AccountDBHost, $DBUser, $DBPassword, $TEXT1, $TEXT2, $TEXT3, $TEXT4, $TEXT5, $TEXT6, $TEXT7, $TEXT8, $REALSON = "") { + function Step1Form($AccountDB, $AccountDBHost,$DB_PORT, $DBUser, $DBPassword, $TEXT1, $TEXT2, $TEXT3, $TEXT4, $TEXT5, $TEXT6, $TEXT7, $TEXT8, $REALSON = "") { echo $REALSON. "
". $TEXT1 ."

@@ -267,11 +272,11 @@ function Step1Form($AccountDB, $AccountDBHost, $DBUser, $DBPassword, $TEXT1, $TE
". $TEXT4 ."
I want transfer to Realm:
". $TEXT5 ."
diff --git a/_transfer/step2.php b/_transfer/step2.php index daba6f8..d87a63b 100644 --- a/_transfer/step2.php +++ b/_transfer/step2.php @@ -1,5 +1,10 @@ + * Copyright (C) 2017+ AzerothCore , released under GNU GPL v2 license: http://github.com/azerothcore/azerothcore-wotlk/LICENSE-GPL2 + * Copyright (C) 2008-2016 TrinityCore + * Copyright (C) 2005-2009 MaNGOS +*/ include_once("t_dbfunctions.php"); include_once("t_functions.php"); @@ -12,18 +17,18 @@ $ID = $_SESSION['dumpID']; $realson = ""; - $connection = mysql_connect($AccountDBHost, $DBUser, $DBPassword); - _SelectDB($AccountDB, $connection); - $result = mysql_query("SELECT `name`,`address`,`port` FROM `realmlist` WHERE `id` = ". $RealmID .";", $connection) or die(mysql_error()); - $row = mysql_fetch_array($result); + $connection = mysqli_connect($AccountDBHost, $DBUser, $DBPassword, $AccountDB, $DB_PORT); + _SelectDB($connection); + $result = mysqli_query($connection,"SELECT `name`,`address`,`port` FROM `realmlist` WHERE `id` = ". $RealmID .";") or die(mysqli_error($connection)); + $row = mysqli_fetch_array($result); $SPT = $row["port"]; $SNA = $row["name"]; $SIP = $row["address"]; - mysql_close($connection); + mysqli_close($connection); if(!isset($_SESSION['guid']) || !isset ($_SESSION['realm']) || !isset($_SESSION['dumpID']) || $_SESSION['STEP2'] != "YES") { $realson = $write[98]; - } else if(preg_match('/[\'^?$%&*()}{@#~?><>,|=_+-]./', $CHAR_NAME)) { + } else if(preg_match('/[\'^?$%&*()}{@#~?><>,|=_+�-]./', $CHAR_NAME)) { $realson = $write[92]; } else if(strstr( $CHAR_NAME, " ")) { $realson = $write[93]; @@ -31,7 +36,7 @@ $realson = $write[94]; } else if(mb_strlen($CHAR_NAME, 'UTF-8') > 16 && mb_strlen($CHAR_NAME, 'UTF-8') > 1) { $realson = $write[95]; - } else if(_CheckCharacterName(_HostDBSwitch($RealmID), $DBUser, $DBPassword, _CharacterDBSwitch($RealmID), $CHAR_NAME) > 0) { + } else if(_CheckCharacterName(_HostDBSwitch($RealmID), $DB_PORT, $DBUser, $DBPassword, _CharacterDBSwitch($RealmID), $CHAR_NAME) > 0) { $realson = $write[96] . $CHAR_NAME . $write[97]; } else if(!_ServerOn($SIP, $SPT)) $realson = "Realm: \"". $SNA ."\" OFFLINE!"; @@ -40,12 +45,12 @@ Step2Form($realson, $write[90]); } else { $_SESSION['STEP2'] = "NO"; - UpdateCharacterName(_HostDBSwitch($RealmID), $DBUser, $DBPassword, _CharacterDBSwitch($RealmID), $CHAR_NAME, $GUID); - _TalentsReset(_HostDBSwitch($RealmID), $DBUser, $DBPassword, _CharacterDBSwitch($RealmID), $GUID); - _PreparateMails(LoadItemRoW($AccountDBHost, $DBUser, $DBPassword, $AccountDB, $ID), + UpdateCharacterName(_HostDBSwitch($RealmID), $DB_PORT, $DBUser, $DBPassword, _CharacterDBSwitch($RealmID), $CHAR_NAME, $GUID); + _TalentsReset(_HostDBSwitch($RealmID), $DB_PORT, $DBUser, $DBPassword, _CharacterDBSwitch($RealmID), $GUID); + _PreparateMails(LoadItemRoW($AccountDBHost, $DB_PORT, $DBUser, $DBPassword, $AccountDB, $ID), $CHAR_NAME, $TransferLetterTitle, $TransferLetterMessage, $SOAPUser, $SOAPPassword, _SOAPPSwitch($RealmID),_SOAPHSwitch($RealmID), _SOAPURISwitch($RealmID)); - UpdateDumpSTATUSandNAME($AccountDBHost, $DBUser, $DBPassword, $AccountDB, $ID, $CHAR_NAME, 0); - MoveToGMAccount(_HostDBSwitch($RealmID), $DBUser, $DBPassword, _CharacterDBSwitch($RealmID), $GUID); + UpdateDumpSTATUSandNAME($AccountDBHost, $DB_PORT, $DBUser, $DBPassword, $AccountDB, $ID, $CHAR_NAME, 0); + MoveToGMAccount(_HostDBSwitch($RealmID), $DB_PORT, $DBUser, $DBPassword, _CharacterDBSwitch($RealmID), $GUID); echo "". $write[91] .""; } diff --git a/_transfer/t_config.php b/_transfer/t_config.php index 6527ab8..69681fd 100644 --- a/_transfer/t_config.php +++ b/_transfer/t_config.php @@ -1,4 +1,10 @@ + * Copyright (C) 2017+ AzerothCore , released under GNU GPL v2 license: http://github.com/azerothcore/azerothcore-wotlk/LICENSE-GPL2 + * Copyright (C) 2008-2016 TrinityCore + * Copyright (C) 2005-2009 MaNGOS +*/ $TransferLetterTitle = "Transfer System"; // Letter Title $TransferLetterMessage = "Items from Character Transfer"; // Letter Message @@ -7,12 +13,13 @@ $captchaEnable = 0; // ENABLE (1) / DISABLE (0) Captcha $AchievementsCheck = 0; // ENABLE (1) / DISABLE (0) FORMULA: must have more then Level > 10 OR AchievementsMinCount param $AchievementsMinCount = 50; // Minimum ammount of Achievements. - $PLAYTIME = 10; // Minimum Playtime. Counted as: last archievment date - first archievment date + $PLAYTIME = 0; // Minimum Playtime. Counted as: last archievment date - first archievment date $AccountDB = "auth"; // Your Account DB Name $AccountDBHost = "127.0.0.1"; // Your Account DB Host + $DB_PORT = "3306"; // Your DB Port $DBUser = "root"; // Your DB User - $DBPassword = "sTAr5r2mawR"; // Your DB Password + $DBPassword = "root"; // Your DB Password $SOAPUser = "admin"; // SOAP USER $SOAPPassword = "admin"; // SOAP USER PASSWORD @@ -26,7 +33,7 @@ $MaxAP = 5000; // Max Arena Points, if more then it, then only this. // if do not exist stay -1, if no then put info function _SOAPURISwitch($ID) { // Realm ID = Realm ID From Realmlist table - $SOAPURI1 = "MC"; // Realm 1 SOAP URI + $SOAPURI1 = "urn:TC"; // Realm 1 SOAP URI $SOAPURI2 = -1; // Realm 2 SOAP URI $SOAPURI3 = -1; // Realm 3 SOAP URI $SOAPURI4 = -1; // Realm 4 SOAP URI diff --git a/_transfer/t_dbfunctions.php b/_transfer/t_dbfunctions.php index 606d35f..985e872 100644 --- a/_transfer/t_dbfunctions.php +++ b/_transfer/t_dbfunctions.php @@ -1,61 +1,66 @@  + * Copyright (C) 2017+ AzerothCore , released under GNU GPL v2 license: http://github.com/azerothcore/azerothcore-wotlk/LICENSE-GPL2 + * Copyright (C) 2008-2016 TrinityCore + * Copyright (C) 2005-2009 MaNGOS +*/ include_once('t_config.php'); include_once('language.php'); - function _X($A) { - return get_magic_quotes_gpc() ? stripslashes(mysql_real_escape_string($A)) : mysql_real_escape_string($A); + function _X($C,$A) { + return get_magic_quotes_gpc() ? stripslashes(mysqli_real_escape_string($C,$A)) : mysqli_real_escape_string($C,$A); } - function _CheckCharacterOnlineStatus($DBHost, $DBUser, $DBPassword, $CharactersDB, $GUID) { - $connection = mysql_connect($DBHost, $DBUser, $DBPassword) or die(mysql_error()); - _SelectDB($CharactersDB, $connection); - $query = mysql_query("SELECT `online` FROM `characters` WHERE `guid` = ". $GUID .";", $connection) or die(mysql_error()); - $result = mysql_fetch_array($query); - mysql_close($connection); + function _CheckCharacterOnlineStatus($DBHost, $DB_PORT, $DBUser, $DBPassword, $CharactersDB, $GUID) { + $connection = mysqli_connect($DBHost, $DBUser, $DBPassword,$CharactersDB,$DB_PORT) or die(mysqli_error($connection)); + _SelectDB($connection); + $query = mysqli_query($connection,"SELECT `online` FROM `characters` WHERE `guid` = ". $GUID .";") or die(mysqli_error($connection)); + $result = mysqli_fetch_array($query); + mysqli_close($connection); return $result[0] == 0 ? true : false; } - function CheckTransferStatus($DBHost, $DBUser, $DBPassword, $AccountDB, $ID) { - $connection = mysql_connect($DBHost, $DBUser, $DBPassword) or die(mysql_error()); - _SelectDB($AccountDB, $connection); - $query = mysql_query("SELECT `cStatus` FROM `account_transfer` WHERE `id` = ". (int)$ID .";", $connection) or die(mysql_error()); - $row = mysql_fetch_array($query); - mysql_close($connection); + function CheckTransferStatus($DBHost, $DB_PORT, $DBUser, $DBPassword, $AccountDB, $ID) { + $connection = mysqli_connect($DBHost, $DBUser, $DBPassword,$AccountDB,$DB_PORT) or die(mysqli_error($connection)); + + $query = mysqli_query($connection,"SELECT `cStatus` FROM `account_transfer` WHERE `id` = ". (int)$ID .";") or die(mysqli_error($connection)); + $row = mysqli_fetch_array($query); + mysqli_close($connection); return $row['cStatus']; } - function CanOrNoTransferPlayer($DBHost, $DBUser, $DBPassword, $CharactersDB, $AccountID) { - $connection = mysql_connect($DBHost, $DBUser, $DBPassword) or die(mysql_error()); - _SelectDB($CharactersDB, $connection); - $query = mysql_query("SELECT COUNT(*) FROM `characters` WHERE `account` = ". $AccountID .";", $connection) or die(mysql_error()); - $result = mysql_fetch_array($query); - mysql_close($connection); + function CanOrNoTransferPlayer($DBHost, $DB_PORT, $DBUser, $DBPassword, $CharactersDB, $AccountID) { + $connection = mysqli_connect($DBHost, $DBUser, $DBPassword,$CharactersDB,$DB_PORT) or die(mysqli_error($connection)); + _SelectDB($connection); + $query = mysqli_query($connection,"SELECT COUNT(*) FROM `characters` WHERE `account` = ". $AccountID .";") or die(mysqli_error($connection)); + $result = mysqli_fetch_array($query); + mysqli_close($connection); return $result[0] < 9 ? false : true; } - function CanOrNoTransferServer($DBHost, $DBUser, $DBPassword, $AccountDB, $RealmID, $GMLevel) { - $connection = mysql_connect($DBHost, $DBUser, $DBPassword) or die(mysql_error()); - _SelectDB($AccountDB, $connection); + function CanOrNoTransferServer($DBHost, $DB_PORT, $DBUser, $DBPassword, $AccountDB, $RealmID, $GMLevel) { + $connection = mysqli_connect($DBHost, $DBUser, $DBPassword,$AccountDB,$DB_PORT) or die(mysqli_error($connection)); + //echo "
DELETE FROM `account_transfer_queue`;"; - $query = mysql_query("DELETE FROM `account_transfer_queue`;", $connection) or die(mysql_error()); + $query = mysqli_query($connection,"DELETE FROM `account_transfer_queue`;") or die(mysqli_error($connection)); //echo "
INSERT IGNORE INTO `account_transfer_queue`(`id`) SELECT `id` FROM `account_access`;"; - $query = mysql_query("INSERT IGNORE INTO `account_transfer_queue`(`id`) SELECT `id` FROM `account_access` WHERE `gmlevel` IN ". $GMLevel .";", $connection) or die(mysql_error()); + $query = mysqli_query($connection,"INSERT IGNORE INTO `account_transfer_queue`(`id`) SELECT `id` FROM `account_access` WHERE `gmlevel` IN ". $GMLevel .";") or die(mysqli_error($connection)); //echo "
SELECT `id` FROM `account_transfer_queue`"; - $query = mysql_query("SELECT `id` FROM `account_transfer_queue`"); - mysql_close($connection); - while($result = mysql_fetch_array($query)) { + $query = mysqli_query($connection,"SELECT `id` FROM `account_transfer_queue`"); + mysqli_close($connection); + while($result = mysqli_fetch_array($query)) { $ACCOUNT_ID = $result[0]; //echo "
< 1st WHILE CYCLE > Reviewer ID: ". $ACCOUNT_ID; - UPDATEReviewer($DBHost, $DBUser, $DBPassword, $AccountDB, $ACCOUNT_ID); + UPDATEReviewer($DBHost, $DB_PORT, $DBUser, $DBPassword, $AccountDB, $ACCOUNT_ID); } - $connection = mysql_connect($DBHost, $DBUser, $DBPassword) or die(mysql_error()); - _SelectDB($AccountDB, $connection); + $connection = mysqli_connect($DBHost, $DBUser, $DBPassword,$AccountDB,$DB_PORT) or die(mysqli_error($connection)); + $REVIEWER_ID = -1; $MIN = 8; //echo "
SELECT `id`,`Realm". $ID ."` FROM `account_transfer_queue`"; - $query = mysql_query("SELECT `id`,`Realm". $RealmID ."` FROM `account_transfer_queue`"); - while($result = mysql_fetch_array($query)) { + $query = mysqli_query($connection,"SELECT `id`,`Realm". $RealmID ."` FROM `account_transfer_queue`"); + while($result = mysqli_fetch_array($query)) { if($result[1] == 0){ $REVIEWER_ID = $result[0]; //echo "
< 2nd WHILE CYCLE \\ IF 0 Queue> Reviewer ID: ". $REVIEWER_ID; @@ -72,110 +77,93 @@ function CanOrNoTransferServer($DBHost, $DBUser, $DBPassword, $AccountDB, $Realm return $REVIEWER_ID; } - function _CheckBlackList($DBHost, $DBUser, $DBPassword, $AccountDB, $VALUE) { - $connection = mysql_connect($DBHost, $DBUser, $DBPassword) or die(mysql_error()); - _SelectDB($AccountDB, $connection); - $query = mysql_query("SELECT `b_address` FROM `account_transfer_blacklist` WHERE `b_address` LIKE \"%". _X(trim($VALUE)) ."%\";", $connection) or die(mysql_error()); - $row = mysql_fetch_array($query); - mysql_close($connection); + function _CheckBlackList($DBHost, $DB_PORT, $DBUser, $DBPassword, $AccountDB, $VALUE) { + $connection = mysqli_connect($DBHost, $DBUser, $DBPassword,$AccountDB,$DB_PORT) or die(mysqli_error($connection)); + + $query = mysqli_query($connection,"SELECT `b_address` FROM `account_transfer_blacklist` WHERE `b_address` LIKE \"%". _X($connection,trim($VALUE)) ."%\";") or die(mysqli_error($connection)); + $row = mysqli_fetch_array($query); + mysqli_close($connection); return $row ? true : false; } - function UPDATEReviewer($DBHost, $DBUser, $DBPassword, $AccountDB, $ACCOUNT_ID) { - $Realm1 = CountQueue(_HostDBSwitch(1), $DBUser, $DBPassword, _CharacterDBSwitch(1), $ACCOUNT_ID); - $Realm2 = CountQueue(_HostDBSwitch(2), $DBUser, $DBPassword, _CharacterDBSwitch(2), $ACCOUNT_ID); - $Realm3 = CountQueue(_HostDBSwitch(3), $DBUser, $DBPassword, _CharacterDBSwitch(3), $ACCOUNT_ID); - $Realm4 = CountQueue(_HostDBSwitch(4), $DBUser, $DBPassword, _CharacterDBSwitch(4), $ACCOUNT_ID); - $Realm5 = CountQueue(_HostDBSwitch(5), $DBUser, $DBPassword, _CharacterDBSwitch(5), $ACCOUNT_ID); - $connection = mysql_connect($DBHost, $DBUser, $DBPassword) or die(mysql_error()); - _SelectDB($AccountDB, $connection); - $query = mysql_query("UPDATE `account_transfer_queue` SET + function UPDATEReviewer($DBHost, $DB_PORT, $DBUser, $DBPassword, $AccountDB, $ACCOUNT_ID) { + $Realm1 = CountQueue(_HostDBSwitch(1), $DB_PORT, $DBUser, $DBPassword, _CharacterDBSwitch(1), $ACCOUNT_ID); + $Realm2 = CountQueue(_HostDBSwitch(2), $DB_PORT, $DBUser, $DBPassword, _CharacterDBSwitch(2), $ACCOUNT_ID); + $Realm3 = CountQueue(_HostDBSwitch(3), $DB_PORT, $DBUser, $DBPassword, _CharacterDBSwitch(3), $ACCOUNT_ID); + $Realm4 = CountQueue(_HostDBSwitch(4), $DB_PORT, $DBUser, $DBPassword, _CharacterDBSwitch(4), $ACCOUNT_ID); + $Realm5 = CountQueue(_HostDBSwitch(5), $DB_PORT, $DBUser, $DBPassword, _CharacterDBSwitch(5), $ACCOUNT_ID); + $connection = mysqli_connect($DBHost, $DBUser, $DBPassword,$AccountDB,$DB_PORT) or die(mysqli_error($connection)); + + $query = mysqli_query($connection,"UPDATE `account_transfer_queue` SET `Realm1` = ". $Realm1 .", `Realm2` = ". $Realm2 .", `Realm3` = ". $Realm3 .", `Realm4` = ". $Realm4 .", `Realm5` = ". $Realm5 ." - WHERE `id` = ". $ACCOUNT_ID.";", $connection) or die(mysql_error()); - mysql_close($connection); + WHERE `id` = ". $ACCOUNT_ID.";") or die(mysqli_error($connection)); + mysqli_close($connection); } - function CountQueue($DBHost, $DBUser, $DBPassword, $CharacterDB, $ACCOUNT_ID) { + function CountQueue($DBHost, $DB_PORT, $DBUser, $DBPassword, $CharacterDB, $ACCOUNT_ID) { if($CharacterDB < 0 || $DBHost < 0) return 0; else { - $connection = mysql_connect($DBHost, $DBUser, $DBPassword) or die(mysql_error()); - _SelectDB($CharacterDB, $connection); - $query = mysql_query("SELECT COUNT(*) FROM `characters` WHERE `account` = ". $ACCOUNT_ID .";", $connection) or die(mysql_error()); - $result = mysql_fetch_array($query); - mysql_close($connection); + $connection = mysqli_connect($DBHost, $DBUser, $DBPassword,$CharacterDB,$DB_PORT) or die(mysqli_error($connection)); + _SelectDB($CharacterDB); + $query = mysqli_query($connection,"SELECT COUNT(*) FROM `characters` WHERE `account` = ". $ACCOUNT_ID .";") or die(mysqli_error($connection)); + $result = mysqli_fetch_array($query); + mysqli_close($connection); //echo " Characters Count: ". $result[0]; return $result[0]; } } - function GetRealmID($DBHost, $DBUser, $DBPassword, $AccountDB, $Realm) { - $connection = mysql_connect($DBHost, $DBUser, $DBPassword) or die(mysql_error()); - _SelectDB($AccountDB, $connection); - $query = mysql_query("SELECT `id` FROM `realmlist` WHERE `name` = \"". _X($Realm) ."\";", $connection) or die(mysql_error()); - $row = mysql_fetch_array($query); - mysql_close($connection); + function GetRealmID($DBHost, $DB_PORT, $DBUser, $DBPassword, $AccountDB, $Realm) { + $connection = mysqli_connect($DBHost, $DBUser, $DBPassword,$AccountDB,$DB_PORT) or die(mysqli_error($connection)); + + $query = mysqli_query($connection,"SELECT `id` FROM `realmlist` WHERE `name` = \"". _X($connection,$Realm) ."\";") or die(mysqli_error($connection)); + $row = mysqli_fetch_array($query); + mysqli_close($connection); return $row['id']; } - function GetCharacterGuid($DBHost, $DBUser, $DBPassword, $CharactersDB) { - $connection = mysql_connect($DBHost, $DBUser, $DBPassword) or die(mysql_error()); - _SelectDB($CharactersDB, $connection); - $query = mysql_query("SELECT MAX(`guid`) FROM `characters` WHERE `guid` BETWEEN 1000000 AND 1999999;", $connection) or die(mysql_error()); - $row = mysql_fetch_array($query); - mysql_close($connection); - return $row[0]; + function GetCharacterGuid($DBHost, $DB_PORT, $DBUser, $DBPassword, $CharactersDB) { + $connection = mysqli_connect($DBHost, $DBUser, $DBPassword,$CharactersDB,$DB_PORT) or die(mysqli_error($connection)); + _SelectDB($connection); + $query = mysqli_query($connection,"SELECT MAX(`guid`) FROM `characters` WHERE `guid`;") or die(mysqli_error($connection)); + $row = mysqli_fetch_array($query); + mysqli_close($connection); + if(empty($row[0])) + { + return 1; + } + return $row[0] + 1; } - - function UpdateCharacterGuid($DBHost, $DBUser, $DBPassword, $AccountDB, $RealmID, $GUID) { - $connection = mysql_connect($DBHost, $DBUser, $DBPassword) or die(mysql_error()); - _SelectDB($AccountDB, $connection); - $query = mysql_query("UPDATE `account_transfer_guid` SET `Realm". $RealmID ."` = ". $GUID .";", $connection) or die(mysql_error()); - mysql_close($connection); + function CancelORDenyCharacterTransfer($DBHost, $DB_PORT, $DBUser, $DBPassword, $CharactersDB, $GUID, $STORAGE) { + $connection = mysqli_connect($DBHost, $DBUser, $DBPassword,$CharactersDB,$DB_PORT) or die(mysqli_error($connection)); + _SelectDB($connection); + mysqli_query($connection,"UPDATE `characters` SET `name` = (SELECT `dump_id` FROM `character_transfer` WHERE `guid` = ". $GUID ."),`account` = ". $STORAGE ." WHERE `guid` = ". $GUID .";") or die(mysqli_error($connection)); + mysqli_close($connection); } - function CheckCharacterGuid($DBHost, $DBUser, $DBPassword, $AccountDB, $RealmID, $GUID) { - $connection = mysql_connect($DBHost, $DBUser, $DBPassword) or die(mysql_error()); - _SelectDB($AccountDB, $connection); - $query = mysql_query("SELECT MAX(`Realm". $RealmID ."`) FROM `account_transfer_guid`;", $connection) or die(mysql_error()); - $row = mysql_fetch_array($query); - mysql_close($connection); - if($row[0] > $GUID) - $GUID = $row[0] + 1; - else - $GUID = $GUID + 1; - UpdateCharacterGuid($DBHost, $DBUser, $DBPassword, $AccountDB, $RealmID, $GUID); - return $GUID; + function ApproveCharacterTransfer($DBHost, $DB_PORT, $DBUser, $DBPassword, $CharactersDB, $GUID) { + $connection = mysqli_connect($DBHost, $DBUser, $DBPassword,$CharactersDB,$DB_PORT) or die(mysqli_error($connection)); + _SelectDB($connection); + mysqli_query($connection,"UPDATE `characters` SET `account` = (SELECT `player_account` FROM `character_transfer` WHERE guid = ". $GUID .") WHERE `guid` = ". $GUID .";") or die(mysqli_error($connection)); + mysqli_close($connection); } - function CancelORDenyCharacterTransfer($DBHost, $DBUser, $DBPassword, $CharactersDB, $GUID, $STORAGE) { - $connection = mysql_connect($DBHost, $DBUser, $DBPassword) or die(mysql_error()); - _SelectDB($CharactersDB, $connection); - mysql_query("UPDATE `characters` SET `name` = (SELECT `dump_id` FROM `character_transfer` WHERE `guid` = ". $GUID ."),`account` = ". $STORAGE ." WHERE `guid` = ". $GUID .";", $connection) or die(mysql_error()); - mysql_close($connection); + function MoveToGMAccount($DBHost, $DB_PORT, $DBUser, $DBPassword, $CharactersDB, $GUID) { + $connection = mysqli_connect($DBHost, $DBUser, $DBPassword,$CharactersDB,$DB_PORT) or die(mysqli_error($connection)); + _SelectDB($connection); + mysqli_query($connection,"UPDATE `characters` SET `account` = (SELECT `gm_account` FROM `character_transfer` WHERE `guid` = ". $GUID .") WHERE `guid` = ". $GUID .";") or die(mysqli_error($connection)); + mysqli_close($connection); } - function ApproveCharacterTransfer($DBHost, $DBUser, $DBPassword, $CharactersDB, $GUID) { - $connection = mysql_connect($DBHost, $DBUser, $DBPassword) or die(mysql_error()); - _SelectDB($CharactersDB, $connection); - mysql_query("UPDATE `characters` SET `account` = (SELECT `player_account` FROM `character_transfer` WHERE guid = ". $GUID .") WHERE `guid` = ". $GUID .";", $connection) or die(mysql_error()); - mysql_close($connection); - } - - function MoveToGMAccount($DBHost, $DBUser, $DBPassword, $CharactersDB, $GUID) { - $connection = mysql_connect($DBHost, $DBUser, $DBPassword) or die(mysql_error()); - _SelectDB($CharactersDB, $connection); - mysql_query("UPDATE `characters` SET `account` = (SELECT `gm_account` FROM `character_transfer` WHERE `guid` = ". $GUID .") WHERE `guid` = ". $GUID .";", $connection) or die(mysql_error()); - mysql_close($connection); - } - - function _SelectDB($DBName, $connection) { - mysql_select_db($DBName, $connection); - mysql_set_charset('utf8',$connection); + function _SelectDB($connection) { + //mysqli_set_charset($connection,"utf8"); + //mysqli_query($connection,"SET CHARACTER SET 'utf8'"); + //mysqli_query($connection,"SET SESSION collation_connection ='utf8_general_ci'"); } function _CheckStatus($VALUE, $P1, $P2, $P3, $P4, $P5, $COMMENT = "") { @@ -195,113 +183,128 @@ function _CheckReason($VALUE, $REASON) { } } - function _CheckRealm($DBHost, $DBUser, $DBPassword, $AccountDB, $RealmID) { - $connection = mysql_connect($DBHost, $DBUser, $DBPassword) or die(mysql_error()); - _SelectDB($AccountDB, $connection); - $query = mysql_query("SELECT `name` FROM `realmlist` WHERE `id` = ". $RealmID .";", $connection) or die(mysql_error()); - $row = mysql_fetch_array($query); - mysql_close($connection); + function _CheckRealm($DBHost, $DB_PORT, $DBUser, $DBPassword, $AccountDB, $RealmID) { + $connection = mysqli_connect($DBHost, $DBUser, $DBPassword,$AccountDB,$DB_PORT) or die(mysqli_error($connection)); + + $query = mysqli_query($connection,"SELECT `name` FROM `realmlist` WHERE `id` = ". $RealmID .";") or die(mysqli_error($connection)); + $row = mysqli_fetch_array($query); + mysqli_close($connection); return $row[0]; } - function _CheckGMAccess($DBHost, $DBUser, $DBPassword, $AccountDB, $ID, $GMLevel) { - $connection = mysql_connect($DBHost, $DBUser, $DBPassword) or die(mysql_error()); - _SelectDB($AccountDB, $connection); - $query = mysql_query("SELECT * FROM `account_access` WHERE `id` = ". $ID ." AND `gmlevel` IN ". $GMLevel .";", $connection) or die(mysql_error()); - $row = mysql_fetch_array($query); - mysql_close($connection); + function _CheckGMAccess($DBHost, $DB_PORT, $DBUser, $DBPassword, $AccountDB, $ID, $GMLevel) { + $connection = mysqli_connect($DBHost, $DBUser, $DBPassword,$AccountDB,$DB_PORT) or die(mysqli_error($connection)); + $query = mysqli_query($connection,"SELECT * FROM `account_access` WHERE `id` = ". $ID ." AND `gmlevel` IN ". $GMLevel .";") or die(mysqli_error($connection)); + $row = mysqli_fetch_array($query); + mysqli_close($connection); return $row ? true : false; } - function _CheckCharacterName($DBHost, $DBUser, $DBPassword, $CharactersDB, $NAME) { - $connection = mysql_connect($DBHost, $DBUser, $DBPassword) or die(mysql_error()); - _SelectDB($CharactersDB, $connection); - $query = mysql_query("SELECT COUNT(*) AS `AMOUNT` FROM `characters` WHERE `name` = \"". _X($NAME) ."\";", $connection) or die(mysql_error()); - $row = mysql_fetch_array($query); - mysql_close($connection); + function _CheckCharacterName($DBHost, $DB_PORT, $DBUser, $DBPassword, $CharactersDB, $NAME) { + $connection = mysqli_connect($DBHost, $DBUser, $DBPassword,$CharactersDB,$DB_PORT) or die(mysqli_error($connection)); + _SelectDB($connection); + $query = mysqli_query($connection,"SELECT COUNT(*) AS `AMOUNT` FROM `characters` WHERE `name` = \"". _X($connection,$NAME) ."\";") or die(mysqli_error($connection)); + $row = mysqli_fetch_array($query); + mysqli_close($connection); return $row["AMOUNT"]; } - function _GetCharacterName($DBHost, $DBUser, $DBPassword, $CharactersDB, $GUID) { - $connection = mysql_connect($DBHost, $DBUser, $DBPassword) or die(mysql_error()); - _SelectDB($CharactersDB, $connection); - $query = mysql_query("SELECT `name` FROM `characters` WHERE `guid` = ". (int)$GUID .";", $connection) or die(mysql_error()); - $row = mysql_fetch_array($query); - mysql_close($connection); + function _GetCharacterName($DBHost, $DB_PORT, $DBUser, $DBPassword, $CharactersDB, $GUID) { + $connection = mysqli_connect($DBHost, $DBUser, $DBPassword,$CharactersDB,$DB_PORT) or die(mysqli_error($connection)); + _SelectDB($connection); + $query = mysqli_query($connection,"SELECT `name` FROM `characters` WHERE `guid` = ". (int)$GUID .";") or die(mysqli_error($connection)); + $row = mysqli_fetch_array($query); + mysqli_close($connection); return $row["name"]; } - function UpdateCharacterName($DBHost, $DBUser, $DBPassword, $CharactersDB, $Name, $GUID) { - $connection = mysql_connect($DBHost, $DBUser, $DBPassword) or die(mysql_error()); - _SelectDB($CharactersDB, $connection); - mysql_query("UPDATE `characters` SET `name` = \"". _X($Name) ."\" WHERE `guid` = ". $GUID .";", $connection) or die(mysql_error()); - mysql_close($connection); + function UpdateCharacterName($DBHost, $DB_PORT, $DBUser, $DBPassword, $CharactersDB, $Name, $GUID) { + $connection = mysqli_connect($DBHost, $DBUser, $DBPassword,$CharactersDB,$DB_PORT) or die(mysqli_error($connection)); + _SelectDB($connection); + mysqli_query($connection,"UPDATE `characters` SET `name` = \"". _X($connection,$Name) ."\" WHERE `guid` = ". $GUID .";") or die(mysqli_error($connection)); + mysqli_close($connection); return $Name; } - function LearnSeparateSpell($SpellID, $GUID, $connection) { + function LearnSeparateSpell($SpellID, $GUID,$connection) { if($SpellID < 1) return; - mysql_query("/* function GetExtraSpellForSkill */ INSERT IGNORE INTO `character_spell` VALUES (". $GUID .", ". (int)$SpellID .", 1, 0 );", $connection) or die(mysql_error()); + mysqli_query($connection,"/* function GetExtraSpellForSkill */ INSERT IGNORE INTO `character_spell` VALUES (". $GUID .", ". (int)$SpellID .", 1, 0 );") or die(mysqli_error($connection)); } - function UpdateDumpStatus($DBHost, $DBUser, $DBPassword, $AccountDB, $ID, $STATUS) { - $connection = mysql_connect($DBHost, $DBUser, $DBPassword) or die(mysql_error()); - _SelectDB($AccountDB, $connection); - mysql_query("UPDATE `account_transfer` SET `cStatus` = ".(int)$STATUS ." WHERE `id` = ". (int)$ID .";", $connection) or die(mysql_error()); - mysql_close($connection); + function UpdateDumpStatus($DBHost, $DB_PORT, $DBUser, $DBPassword, $AccountDB, $ID, $STATUS) { + $connection = mysqli_connect($DBHost, $DBUser, $DBPassword,$AccountDB,$DB_PORT) or die(mysqli_error($connection)); + + mysqli_query($connection,"UPDATE `account_transfer` SET `cStatus` = ".(int)$STATUS ." WHERE `id` = ". (int)$ID .";") or die(mysqli_error($connection)); + mysqli_close($connection); } - function UpdateDumpSTATUSandNAME($DBHost, $DBUser, $DBPassword, $AccountDB, $ID, $NAME, $STATUS) { - $connection = mysql_connect($DBHost, $DBUser, $DBPassword) or die(mysql_error()); - _SelectDB($AccountDB, $connection); - mysql_query("UPDATE `account_transfer` SET `cNameNew` = \"". _X($NAME) ."\", `cStatus` = ". (int)$STATUS ." WHERE `id` = ". (int)$ID .";", $connection) or die(mysql_error()); - mysql_close($connection); + function UpdateDumpSTATUSandNAME($DBHost, $DB_PORT, $DBUser, $DBPassword, $AccountDB, $ID, $NAME, $STATUS) { + $connection = mysqli_connect($DBHost, $DBUser, $DBPassword,$AccountDB,$DB_PORT) or die(mysqli_error($connection)); + + mysqli_query($connection,"UPDATE `account_transfer` SET `cNameNew` = \"". _X($connection,$NAME) ."\", `cStatus` = ". (int)$STATUS ." WHERE `id` = ". (int)$ID .";") or die(mysqli_error($connection)); + mysqli_close($connection); } - function UpdateDumpITEMROW($DBHost, $DBUser, $DBPassword, $AccountDB, $ID, $ROW) { - $connection = mysql_connect($DBHost, $DBUser, $DBPassword) or die(mysql_error()); - _SelectDB($AccountDB, $connection); - mysql_query("UPDATE `account_transfer` SET `cItemRow` = \"". _X($ROW) ."\" WHERE `id` = ". (int)$ID .";", $connection) or die(mysql_error()); - mysql_close($connection); + function UpdateDumpITEMROW($DBHost, $DB_PORT, $DBUser, $DBPassword, $AccountDB, $ID, $ROW) { + $connection = mysqli_connect($DBHost, $DBUser, $DBPassword,$AccountDB,$DB_PORT) or die(mysqli_error($connection)); + + mysqli_query($connection,"UPDATE `account_transfer` SET `cItemRow` = \"". _X($connection,$ROW) ."\" WHERE `id` = ". (int)$ID .";") or die(mysqli_error($connection)); + mysqli_close($connection); } - function LoadItemRoW($DBHost, $DBUser, $DBPassword, $AccountDB, $ID) { - $connection = mysql_connect($DBHost, $DBUser, $DBPassword) or die(mysql_error()); - _SelectDB($AccountDB, $connection); - $query = mysql_query("SELECT `cItemRow` FROM `account_transfer` WHERE `id` = \"". (int)$ID ."\";", $connection) or die(mysql_error()); - $row = mysql_fetch_array($query); - mysql_close($connection); + function LoadItemRoW($DBHost, $DB_PORT, $DBUser, $DBPassword, $AccountDB, $ID) { + $connection = mysqli_connect($DBHost, $DBUser, $DBPassword,$AccountDB,$DB_PORT) or die(mysqli_error($connection)); + + $query = mysqli_query($connection,"SELECT `cItemRow` FROM `account_transfer` WHERE `id` = \"". (int)$ID ."\";") or die(mysqli_error($connection)); + $row = mysqli_fetch_array($query); + mysqli_close($connection); return $row[0]; } - function LoadDump($DBHost, $DBUser, $DBPassword, $AccountDB, $ID) { - $connection = mysql_connect($DBHost, $DBUser, $DBPassword) or die(mysql_error()); - _SelectDB($AccountDB, $connection); - $query = mysql_query("SELECT `cDump` FROM `account_transfer` WHERE `id` = \"". (int)$ID ."\";", $connection) or die(mysql_error()); - $row = mysql_fetch_array($query); - mysql_close($connection); + function LoadDump($DBHost, $DB_PORT, $DBUser, $DBPassword, $AccountDB, $ID) { + $connection = mysqli_connect($DBHost, $DBUser, $DBPassword,$AccountDB,$DB_PORT) or die(mysqli_error($connection)); + + $query = mysqli_query($connection,"SELECT `cDump` FROM `account_transfer` WHERE `id` = \"". (int)$ID ."\";") or die(mysqli_error($connection)); + $row = mysqli_fetch_array($query); + mysqli_close($connection); return $row[0]; } - function WriteDumpFromFileInDB($DBHost, $DBUser, $DBPassword, $AccountDB, $DUMP, $CHAR_NAME, $CHAR_ACCOUNT_ID, $CHAR_REALM, + function WriteDumpFromFileInDB($DBHost, $DB_PORT, $DBUser, $DBPassword, $AccountDB, $DUMP, $CHAR_NAME, $CHAR_ACCOUNT_ID, $CHAR_REALM, $o_Account, $o_Password, $O_REALMLIST, $O_REALM, $o_URL, $ID, $GUID, $GM_ACCOUNT, $ERROR) { - $connection = mysql_connect($DBHost, $DBUser, $DBPassword) or die(mysql_error()); - _SelectDB($AccountDB, $connection); - $query = mysql_query("INSERT INTO `account_transfer`( + $connection = mysqli_connect($DBHost, $DBUser, $DBPassword,$AccountDB,$DB_PORT) or die(mysqli_error($connection)); + + $query = mysqli_query($connection,"INSERT INTO `account_transfer`( `cStatus`,`cRealm`,`oAccount`,`oPassword`,`oRealmlist`,`oRealm`,`oServer`,`cDump`,`cNameOLD`,`cNameNEW`,`cAccount`,`GUID`,`gmAccount`) VALUES ( - 5,\"". _X($CHAR_REALM) ."\",\"". _X($o_Account) ."\",\"". _X($o_Password) ."\",\"". _X($O_REALMLIST) ."\",\"". _X($O_REALM) ."\",\"". _X($o_URL) ."\" - ,\"". _X($DUMP) ."\",\"". _X($CHAR_NAME) ."\",\"". _X($CHAR_NAME) ."\",". $CHAR_ACCOUNT_ID .",". $GUID .",". $GM_ACCOUNT .");", $connection) or die(mysql_error()); - $ID = mysql_insert_id($connection); - mysql_close($connection); + 5,\"". _X($connection,$CHAR_REALM) ."\",\"". _X($connection,$o_Account) ."\",\"". _X($connection,$o_Password) ."\",\"". _X($connection,$O_REALMLIST) ."\",\"". _X($connection,$O_REALM) ."\",\"". _X($connection,$o_URL) ."\" + ,\"". _X($connection,$DUMP) ."\",\"". _X($connection,$CHAR_NAME) ."\",\"". _X($connection,$CHAR_NAME) ."\",". $CHAR_ACCOUNT_ID .",". $GUID .",". $GM_ACCOUNT .");") or die(mysqli_error($connection)); + $ID = mysqli_insert_id($connection); + mysqli_close($connection); return $ID; } function RemoteCommandWithSOAP($SOAPUser, $SOAPPassword, $SOAPPort, $SOAPHost, $URI, $COMMAND) { - $SOAP = new SOAP(array("soap_user" => "". $SOAPUser ."", "soap_pass" => "". $SOAPPassword ."", "soap_port" => "". $SOAPPort ."", "addr" => "". $SOAPHost ."", "uri" => "". $URI ."")); - $SOAP->fetch($COMMAND); + $conn = new SoapClient(NULL, array( + 'location' => "http://$SOAPHost:$SOAPPort/", + 'uri' => $URI, + 'style' => SOAP_RPC, + 'login' => $SOAPUser, + 'password' => $SOAPPassword + )); + try + { + $conn->executeCommand(new SoapParam($COMMAND, 'command')); + } + catch (Exception $e) + { + //die("Something went wrong! An administrator has been noticed and will send your order as soon as possible."); + } + + //$SOAP = new SOAP(array("soap_user" => "". $SOAPUser ."", "soap_pass" => "". $SOAPPassword ."", "soap_port" => "". $SOAPPort ."", "addr" => "". $SOAPHost ."", "uri" => "". $URI ."")); + //$SOAP->fetch($COMMAND); //echo "
". $SOAP->fetch("". $COMMAND ."") ."
"; - unset($SOAP); + unset($conn); } class SOAP { @@ -372,11 +375,11 @@ function getResult($xmlresponse) { } } - function _TalentsReset($DBHost, $DBUser, $DBPassword, $CharactersDB, $GUID) { - $connection = mysql_connect($DBHost, $DBUser, $DBPassword) or die(mysql_error()); - _SelectDB($CharactersDB, $connection); - $query = mysql_query("UPDATE `characters` SET `at_login` = `at_login`|4|16 WHERE `guid` = ". $GUID .";", $connection) or die(mysql_error()); - mysql_close($connection); + function _TalentsReset($DBHost, $DB_PORT, $DBUser, $DBPassword, $CharactersDB, $GUID) { + $connection = mysqli_connect($DBHost, $DBUser, $DBPassword,$CharactersDB,$DB_PORT) or die(mysqli_error($connection)); + _SelectDB($connection); + $query = mysqli_query($connection,"UPDATE `characters` SET `at_login` = `at_login`|4|16 WHERE `guid` = ". $GUID .";") or die(mysqli_error($connection)); + mysqli_close($connection); } function _CheckRiding($SKILL, $CUR, $connection, $GUID, $LEVEL) { @@ -393,11 +396,11 @@ function _CheckRiding($SKILL, $CUR, $connection, $GUID, $LEVEL) { case 225: $SpellID = 34090; break; case 300: $SpellID = 34091; if($LEVEL == 80) - LearnSeparateSpell(54197, $GUID, $connection); + LearnSeparateSpell(54197, $GUID,$connection); break; default: return false; } - LearnSeparateSpell($SpellID, $GUID, $connection); + LearnSeparateSpell($SpellID, $GUID,$connection); return true; default: return false; } diff --git a/_transfer/t_functions.php b/_transfer/t_functions.php index 65a866a..6aa0106 100644 --- a/_transfer/t_functions.php +++ b/_transfer/t_functions.php @@ -1,5 +1,10 @@  + * Copyright (C) 2017+ AzerothCore , released under GNU GPL v2 license: http://github.com/azerothcore/azerothcore-wotlk/LICENSE-GPL2 + * Copyright (C) 2008-2016 TrinityCore + * Copyright (C) 2005-2009 MaNGOS +*/ function _ServerOn($IP, $PORT) { $STATUS = @fsockopen($IP, $PORT, $ERROR_NO, $ERROR_STR,(float)0.5); @@ -30,24 +35,11 @@ function CheckItemCount($count) { function _PreparateMails($row, $PlayerName, $TransferLetterTitle, $TransferLetterMessage, $SOAPUser, $SOAPPassword, $SOAPPort, $SOAPHost, $URI) { $item_array = explode(" ", trim($row)); - $by10 = 1; - $toSend = ""; - $needSend = count($item_array); - for($i = 0; $i < count($item_array); $i++) { - $toSend .= $item_array[$i]; - $toSend .= " "; - if($by10 == 10) { - RemoteCommandWithSOAP($SOAPUser, $SOAPPassword, $SOAPPort, $SOAPHost, $URI, - trim(".send items ". $PlayerName ." \"". $TransferLetterTitle ."\" \"". $TransferLetterMessage ."\" ". $toSend)); - $needSend = $needSend - $by10; - $by10 = 1; - $toSend = ""; - } else if($needSend - $by10 == 0) { - RemoteCommandWithSOAP($SOAPUser, $SOAPPassword, $SOAPPort, $SOAPHost, $URI, - trim(".send items ". $PlayerName ." \"". $TransferLetterTitle ."\" \"". $TransferLetterMessage ."\" ". $toSend)); - $toSend = ""; - } else $by10++; - } + foreach($item_array as $item) + { + RemoteCommandWithSOAP($SOAPUser, $SOAPPassword, $SOAPPort, $SOAPHost, $URI, + trim("send items ". $PlayerName ." \"". $TransferLetterTitle ."\" \"". $TransferLetterMessage ."\" ". $item)); + } } function RemoveRaceBonus($RaceID, $SkillID, $value) { diff --git a/chardump.zip b/chardump.zip new file mode 100644 index 0000000..d6e04b6 Binary files /dev/null and b/chardump.zip differ diff --git a/classes/Config.php b/classes/Config.php index f96fce8..ac609d1 100644 --- a/classes/Config.php +++ b/classes/Config.php @@ -1,6 +1,7 @@ , released under GNU GPL v2 license: http://github.com/azerothcore/azerothcore-wotlk/LICENSE-GPL2 + * Copyright (C) 2019+ MasterkinG32 + * Copyright (C) 2017+ AzerothCore , released under GNU GPL v2 license: http://github.com/azerothcore/azerothcore-wotlk/LICENSE-GPL2 * Copyright (C) 2008-2016 TrinityCore * Copyright (C) 2005-2009 MaNGOS */ diff --git a/classes/DB.php b/classes/DB.php index 0f9d710..27f6602 100644 --- a/classes/DB.php +++ b/classes/DB.php @@ -1,6 +1,7 @@ , released under GNU GPL v2 license: http://github.com/azerothcore/azerothcore-wotlk/LICENSE-GPL2 + * Copyright (C) 2019+ MasterkinG32 + * Copyright (C) 2017+ AzerothCore , released under GNU GPL v2 license: http://github.com/azerothcore/azerothcore-wotlk/LICENSE-GPL2 * Copyright (C) 2008-2016 TrinityCore * Copyright (C) 2005-2009 MaNGOS */ @@ -15,7 +16,7 @@ class DB { private function __construct() { try { - $this->_pdo = new PDO('mysql:host=' . Config::get('mysql/host') . ';dbname=' . Config::get('mysql/db'), Config::get('mysql/username'), Config::get('mysql/password')); + $this->_pdo = new PDO('mysql:host=' . Config::get('mysql/host') . ';port='.Config::get('mysql/port'). ';dbname='.Config::get('mysql/db'), Config::get('mysql/username'), Config::get('mysql/password')); } catch(PDOException $e) { die($e->getMessage()); } diff --git a/classes/Hash.php b/classes/Hash.php index 9916106..706388b 100644 --- a/classes/Hash.php +++ b/classes/Hash.php @@ -1,6 +1,7 @@ , released under GNU GPL v2 license: http://github.com/azerothcore/azerothcore-wotlk/LICENSE-GPL2 + * Copyright (C) 2019+ MasterkinG32 + * Copyright (C) 2017+ AzerothCore , released under GNU GPL v2 license: http://github.com/azerothcore/azerothcore-wotlk/LICENSE-GPL2 * Copyright (C) 2008-2016 TrinityCore * Copyright (C) 2005-2009 MaNGOS */ diff --git a/classes/Input.php b/classes/Input.php index e80383e..9db0506 100644 --- a/classes/Input.php +++ b/classes/Input.php @@ -1,6 +1,7 @@ , released under GNU GPL v2 license: http://github.com/azerothcore/azerothcore-wotlk/LICENSE-GPL2 + * Copyright (C) 2019+ MasterkinG32 + * Copyright (C) 2017+ AzerothCore , released under GNU GPL v2 license: http://github.com/azerothcore/azerothcore-wotlk/LICENSE-GPL2 * Copyright (C) 2008-2016 TrinityCore * Copyright (C) 2005-2009 MaNGOS */ diff --git a/classes/Redirect.php b/classes/Redirect.php index a883f46..dbd02d5 100644 --- a/classes/Redirect.php +++ b/classes/Redirect.php @@ -1,6 +1,7 @@ , released under GNU GPL v2 license: http://github.com/azerothcore/azerothcore-wotlk/LICENSE-GPL2 + * Copyright (C) 2019+ MasterkinG32 + * Copyright (C) 2017+ AzerothCore , released under GNU GPL v2 license: http://github.com/azerothcore/azerothcore-wotlk/LICENSE-GPL2 * Copyright (C) 2008-2016 TrinityCore * Copyright (C) 2005-2009 MaNGOS */ diff --git a/classes/Session.php b/classes/Session.php index 2d3bbc8..acf31d9 100644 --- a/classes/Session.php +++ b/classes/Session.php @@ -1,6 +1,7 @@ , released under GNU GPL v2 license: http://github.com/azerothcore/azerothcore-wotlk/LICENSE-GPL2 + * Copyright (C) 2019+ MasterkinG32 + * Copyright (C) 2017+ AzerothCore , released under GNU GPL v2 license: http://github.com/azerothcore/azerothcore-wotlk/LICENSE-GPL2 * Copyright (C) 2008-2016 TrinityCore * Copyright (C) 2005-2009 MaNGOS */ diff --git a/classes/Token.php b/classes/Token.php index 6f1ffcc..082f572 100644 --- a/classes/Token.php +++ b/classes/Token.php @@ -1,6 +1,7 @@ , released under GNU GPL v2 license: http://github.com/azerothcore/azerothcore-wotlk/LICENSE-GPL2 + * Copyright (C) 2019+ MasterkinG32 + * Copyright (C) 2017+ AzerothCore , released under GNU GPL v2 license: http://github.com/azerothcore/azerothcore-wotlk/LICENSE-GPL2 * Copyright (C) 2008-2016 TrinityCore * Copyright (C) 2005-2009 MaNGOS */ diff --git a/classes/User.php b/classes/User.php index afe100a..f603b43 100644 --- a/classes/User.php +++ b/classes/User.php @@ -1,6 +1,7 @@ , released under GNU GPL v2 license: http://github.com/azerothcore/azerothcore-wotlk/LICENSE-GPL2 + * Copyright (C) 2019+ MasterkinG32 + * Copyright (C) 2017+ AzerothCore , released under GNU GPL v2 license: http://github.com/azerothcore/azerothcore-wotlk/LICENSE-GPL2 * Copyright (C) 2008-2016 TrinityCore * Copyright (C) 2005-2009 MaNGOS */ @@ -52,10 +53,11 @@ public function find($user = null) { public function login($username = null, $password = null) { $user = $this->find($username); - $hash = Hash::marble(strtoupper(addslashes($username)), strtoupper(addslashes($password))); + $hash = strtoupper(sha1(strtoupper(($username)).":".strtoupper(($password)))); if($user) { - if($this->data()->sha_pass_hash === $hash) { + if(strtoupper($this->data()->sha_pass_hash) == $hash) { + $_SESSION["id"] = $this->data()->id; Session::put($this->_sessionName, $this->data()->id); return true; diff --git a/classes/Validation.php b/classes/Validation.php index 8ef2e45..09865f5 100644 --- a/classes/Validation.php +++ b/classes/Validation.php @@ -1,6 +1,7 @@ , released under GNU GPL v2 license: http://github.com/azerothcore/azerothcore-wotlk/LICENSE-GPL2 + * Copyright (C) 2019+ MasterkinG32 + * Copyright (C) 2017+ AzerothCore , released under GNU GPL v2 license: http://github.com/azerothcore/azerothcore-wotlk/LICENSE-GPL2 * Copyright (C) 2008-2016 TrinityCore * Copyright (C) 2005-2009 MaNGOS */ diff --git a/core/init.php b/core/init.php index a9ba6d4..3c55ac4 100644 --- a/core/init.php +++ b/core/init.php @@ -1,6 +1,7 @@ , released under GNU GPL v2 license: http://github.com/azerothcore/azerothcore-wotlk/LICENSE-GPL2 + * Copyright (C) 2019+ MasterkinG32 + * Copyright (C) 2017+ AzerothCore , released under GNU GPL v2 license: http://github.com/azerothcore/azerothcore-wotlk/LICENSE-GPL2 * Copyright (C) 2008-2016 TrinityCore * Copyright (C) 2005-2009 MaNGOS */ @@ -10,8 +11,9 @@ $GLOBALS['config'] = array( 'mysql' => array( 'host' => '127.0.0.1', + 'port' => '3306', 'username' => 'root', - 'password' => 'sTAr5r2mawR', + 'password' => 'root', 'db' => 'auth' ), diff --git a/index.php b/index.php index f8a3db4..10a8f03 100644 --- a/index.php +++ b/index.php @@ -1,6 +1,7 @@ , released under GNU GPL v2 license: http://github.com/azerothcore/azerothcore-wotlk/LICENSE-GPL2 + * Copyright (C) 2019+ MasterkinG32 + * Copyright (C) 2017+ AzerothCore , released under GNU GPL v2 license: http://github.com/azerothcore/azerothcore-wotlk/LICENSE-GPL2 * Copyright (C) 2008-2016 TrinityCore * Copyright (C) 2005-2009 MaNGOS */ @@ -16,7 +17,6 @@ } if(Input::exists()) { - if(Token::check(Input::get('token'))) { $validate = new Validation(); $validation = $validate->check($_POST, array( 'username' => array('required' => true), @@ -35,7 +35,6 @@ echo $error, '
'; } } - } } // START OF HELL DOWN BELOW... @@ -73,4 +72,4 @@ function keyDown(event) } - \ No newline at end of file + \ No newline at end of file diff --git a/logout.php b/logout.php index 9cc22b9..06547a3 100644 --- a/logout.php +++ b/logout.php @@ -1,6 +1,7 @@ , released under GNU GPL v2 license: http://github.com/azerothcore/azerothcore-wotlk/LICENSE-GPL2 + * Copyright (C) 2019+ MasterkinG32 + * Copyright (C) 2017+ AzerothCore , released under GNU GPL v2 license: http://github.com/azerothcore/azerothcore-wotlk/LICENSE-GPL2 * Copyright (C) 2008-2016 TrinityCore * Copyright (C) 2005-2009 MaNGOS */ diff --git a/playerside.php b/playerside.php index b443e74..23d25c4 100644 --- a/playerside.php +++ b/playerside.php @@ -1,6 +1,7 @@ , released under GNU GPL v2 license: http://github.com/azerothcore/azerothcore-wotlk/LICENSE-GPL2 + * Copyright (C) 2019+ MasterkinG32 + * Copyright (C) 2017+ AzerothCore , released under GNU GPL v2 license: http://github.com/azerothcore/azerothcore-wotlk/LICENSE-GPL2 * Copyright (C) 2008-2016 TrinityCore * Copyright (C) 2005-2009 MaNGOS */ @@ -30,7 +31,7 @@