Files
aowow/setup/tools/sqlgen/icons.func.php
Sarjuuk ccef11323b Setup/Scripts
* restructure setup to allow for self contained setup steps to self register (just the sql for now)
 * should ease adding new scripts in future
2020-02-14 00:36:41 +01:00

42 lines
1.1 KiB
PHP

<?php
if (!defined('AOWOW_REVISION'))
die('illegal access');
if (!CLI)
die('not in cli mode');
SqlGen::register(new class extends SetupScript
{
protected $command = 'icons';
protected $dbcSourceFiles = ['spellicon', 'itemdisplayinfo', 'creaturefamily'];
public function generate(array $ids = []) : bool
{
DB::Aowow()->query('TRUNCATE ?_icons');
DB::Aowow()->query('ALTER TABLE ?_icons AUTO_INCREMENT = 1');
$baseQuery = '
INSERT INTO ?_icons (`name`) SELECT x FROM
(
(SELECT LOWER(SUBSTRING_INDEX(iconPath, "\\\\", -1)) AS x FROM dbc_spellicon WHERE iconPath LIKE "%icons%")
UNION
(SELECT LOWER(inventoryIcon1) AS x FROM dbc_itemdisplayinfo WHERE inventoryIcon1 <> "")
UNION
(SELECT LOWER(SUBSTRING_INDEX(iconString, "\\\\", -1)) AS x FROM dbc_creaturefamily WHERE iconString LIKE "%icons%")
) y
GROUP BY
x
ORDER BY
x ASC';
DB::Aowow()->query($baseQuery);
return true;
}
});
?>