- do not display serverside events in calendar - include gems in item comparison .. also parse their stats in setup - filters use conditions and are more restrictive - changed DBSimple version so it uses mysqli (mysql is deprecated as of php 5.5) - moved each filter class to matching type; file for baseType and BaseFilter - baseType querys are somewhat modular, trying to avoid ridiculous joins that WILL occur sometimes (especially with items) as far as possible
120 lines
3.6 KiB
PHP
120 lines
3.6 KiB
PHP
<?php
|
|
|
|
if (!defined('AOWOW_REVISION'))
|
|
die('illegal access');
|
|
|
|
|
|
// Create 'realms'-file in datasets; update profile_all with real realms
|
|
// this script requires all realms in use to be defined in auth.realmlist
|
|
// battlegroups has to be set in config file
|
|
|
|
/* seems to be unused, was located in the same file as g_realms
|
|
var g_regions = {
|
|
us => 'www.wowarmory.com',
|
|
eu => 'eu.wowarmory.com'
|
|
};
|
|
*/
|
|
|
|
/* Examples
|
|
1 => {
|
|
name:'Eldre\'Thalas',
|
|
battlegroup:'Reckoning',
|
|
region:'us'
|
|
},
|
|
|
|
var mn_profiles = [
|
|
["us","US & Oceanic",,[
|
|
["bloodlust","Bloodlust",,[
|
|
["amanthul","Aman'Thul"],
|
|
["barthilas","Barthilas"]
|
|
]],
|
|
["cyclone","Cyclone",,[
|
|
["azjol-nerub","Azjol-Nerub"],
|
|
["bloodscalp","Bloodscalp"]
|
|
]]
|
|
]],
|
|
["eu","Europe",,[
|
|
["blackout","Blackout",,[
|
|
["agamaggan","Agamaggan"],
|
|
["aggramar","Aggramar"]
|
|
]],
|
|
["blutdurst","Blutdurst",,[
|
|
["aegwynn","Aegwynn"],
|
|
["destromath","Destromath"]
|
|
]]
|
|
]]
|
|
];
|
|
*/
|
|
|
|
function urlize($str)
|
|
{
|
|
$pairs = [
|
|
"ß" => "ss",
|
|
"á" => "a", "ä" => "a", "à" => "a", "â" => "a",
|
|
"è" => "e", "ê" => "e", "é" => "e", "ë" => "e",
|
|
"í" => "i", "î" => "i", "ì" => "i", "ï" => "i",
|
|
"ñ" => "n",
|
|
"ò" => "o", "ó" => "o", "ö" => "o", "ô" => "o",
|
|
"ú" => "u", "ü" => "u", "û" => "u", "ù" => "u",
|
|
"œ" => "oe",
|
|
"Á" => "A", "Ä" => "A", "À" => "A", "Â" => "A",
|
|
"È" => "E", "Ê" => "E", "É" => "E", "Ë" => "E",
|
|
"Í" => "I", "Î" => "I", "Ì" => "I", "Ï" => "I",
|
|
"Ñ" => "N",
|
|
"Ò" => "O", "Ó" => "O", "Ö" => "O", "Ô" => "O",
|
|
"Ú" => "U", "Ü" => "U", "Û" => "U", "Ù" => "U",
|
|
"œ" => "Oe",
|
|
" " => "-"
|
|
];
|
|
|
|
return preg_replace('/[^\d\w\-]/', '', strtr(strToLower($str), $pairs));
|
|
}
|
|
|
|
if (!file_exists('config\\profile_all.js.in'))
|
|
die('profile_all source file is missing; cannot create realm file');
|
|
|
|
$menu = [
|
|
["us","US & Oceanic", null,[
|
|
[urlize($AoWoWconf['battlegroup']),$AoWoWconf['battlegroup'],null,[]]
|
|
]],
|
|
["eu","Europe", null,[
|
|
[urlize($AoWoWconf['battlegroup']),$AoWoWconf['battlegroup'],null,[]]
|
|
]]
|
|
];
|
|
|
|
$rows = DB::Auth()->select('SELECT id AS ARRAY_KEY, name, ? AS battlegroup, IF(timezone IN (8, 9, 10, 11, 12), "eu", "us") AS region FROM realmlist WHERE allowedSecurityLevel = 0', $AoWoWconf['battlegroup']);
|
|
$str = 'var g_realms = '.json_encode($rows, JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE).';';
|
|
|
|
$handle = fOpen('datasets\\realms', "w");
|
|
fWrite($handle, $str);
|
|
fClose($handle);
|
|
|
|
$set = 0x0;
|
|
foreach ($rows as $row)
|
|
{
|
|
if ($row['region'] == 'eu')
|
|
{
|
|
$set |= 0x1;
|
|
$menu[1][3][0][3][] = [urlize($row['name']),$row['name']];
|
|
}
|
|
else if ($row['region'] == 'us')
|
|
{
|
|
$set |= 0x2;
|
|
$menu[0][3][0][3][] = [urlize($row['name']),$row['name']];
|
|
}
|
|
}
|
|
|
|
if (!($set & 0x1))
|
|
array_pop($menu);
|
|
|
|
if (!($set & 0x2))
|
|
array_shift($menu);
|
|
|
|
$file = file_get_contents('config\\profile_all.js.in');
|
|
$dest = fOpen('template\\js\\profile_all.js', "w");
|
|
|
|
fWrite($dest, str_replace('[/*setup:realms*/]', json_encode($menu, JSON_UNESCAPED_UNICODE), $file));
|
|
fClose($dest);
|
|
|
|
echo 'all done';
|
|
?>
|