summary and validation of char params, toolbar,
This commit is contained in:
parent
35e2fa7a80
commit
283dd853b5
@ -1,11 +1,12 @@
|
||||
<?php
|
||||
class charcreation {
|
||||
const DEFAULT_CHAR_NAME = 'Charactername';
|
||||
const DEFAULT_CHAR_NAME = 'ChooseName';
|
||||
const DEFAULT_CHAR_GENDER = 'default';
|
||||
const DEFAULT_CHAR_RACE = 0;
|
||||
const DEFAULT_CHAR_CLASS = 0;
|
||||
const MOJO_CC_SESSIONKEY = 'mojo_charcreation';
|
||||
const DEFAULT_CHAR_APPEARANCE = 1;
|
||||
const DEFAULT_CHAR_APPEARANCE = 0;
|
||||
const DEFAULT_CHAR_SPAWN = 0;
|
||||
public static function data($json = NULL, $returnasjson = true){
|
||||
if(!\SYSTEM\SECURITY\Security::load(self::MOJO_CC_SESSIONKEY)){
|
||||
\SYSTEM\SECURITY\Security::save(self::MOJO_CC_SESSIONKEY, self::session_default());}
|
||||
@ -20,6 +21,29 @@ class charcreation {
|
||||
return $returnasjson ? JsonResult::toString(\SYSTEM\SECURITY\Security::load(self::MOJO_CC_SESSIONKEY)) : \SYSTEM\SECURITY\Security::load(self::MOJO_CC_SESSIONKEY);
|
||||
}
|
||||
|
||||
public static function check_all(){
|
||||
$vars = charcreation::check();
|
||||
foreach($vars as $value){
|
||||
if(!$value){
|
||||
return false;}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
public static function check(){
|
||||
if(!\SYSTEM\SECURITY\Security::load(self::MOJO_CC_SESSIONKEY)){
|
||||
\SYSTEM\SECURITY\Security::save(self::MOJO_CC_SESSIONKEY, self::session_default());}
|
||||
|
||||
$result = array();
|
||||
$data = \SYSTEM\SECURITY\Security::load(self::MOJO_CC_SESSIONKEY);
|
||||
foreach($data as $key=>$value){
|
||||
if(method_exists('charcreation_validator','is_'.$key)){
|
||||
$result[$key.'_ok'] = call_user_func('charcreation_validator::is_'.$key,$value);}
|
||||
}
|
||||
|
||||
return $result;
|
||||
}
|
||||
|
||||
private static function session_default(){
|
||||
return array( 'char_name' => self::DEFAULT_CHAR_NAME,
|
||||
'char_gender' => self::DEFAULT_CHAR_GENDER,
|
||||
@ -34,7 +58,7 @@ class charcreation {
|
||||
'char_skill_tree' => 0,
|
||||
'char_equip' => 0,
|
||||
'char_guild' => 0,
|
||||
'char_spawn' => 0);}
|
||||
'char_spawn' => self::DEFAULT_CHAR_SPAWN);}
|
||||
|
||||
public static function checkClassRace($class,$race){
|
||||
switch($race){
|
||||
|
||||
@ -1,72 +1,110 @@
|
||||
<?php
|
||||
class charcreation_validator {
|
||||
public static function is_char_name($value){
|
||||
return (strlen($value) <= 12) && (strlen($value) > 2) && !preg_match('/[^A-Za-z]/',$value);}
|
||||
public static function char_name($value){
|
||||
$data = \SYSTEM\SECURITY\Security::load(charcreation::MOJO_CC_SESSIONKEY);
|
||||
if( strlen($value) > 12 || //strlen($value) < 2 ||
|
||||
preg_match('/[^A-Za-z]/',$value)){
|
||||
$data['char_name'] = charcreation::DEFAULT_CHAR_NAME;
|
||||
} else {
|
||||
$data['char_name'] = $value;}
|
||||
$data['char_name'] = self::is_char_name($value) ? $value : charcreation::DEFAULT_CHAR_NAME;
|
||||
\SYSTEM\SECURITY\Security::save(charcreation::MOJO_CC_SESSIONKEY,$data);
|
||||
}
|
||||
|
||||
public static function is_char_gender($value){
|
||||
return ($value == ('female' || 'male'));}
|
||||
public static function char_gender($value){
|
||||
$data = \SYSTEM\SECURITY\Security::load(charcreation::MOJO_CC_SESSIONKEY);
|
||||
$data['char_gender'] = ($value == ('female' || 'male')) ? $value : charcreation::DEFAULT_CHAR_GENDER;
|
||||
$data['char_gender'] = self::is_char_gender($value) ? $value : charcreation::DEFAULT_CHAR_GENDER;
|
||||
\SYSTEM\SECURITY\Security::save(charcreation::MOJO_CC_SESSIONKEY,$data);
|
||||
}
|
||||
|
||||
public static function is_char_race($value){
|
||||
return player_races::is($value);}
|
||||
public static function char_race($value){
|
||||
$data = \SYSTEM\SECURITY\Security::load(charcreation::MOJO_CC_SESSIONKEY);
|
||||
$data['char_race'] = $value;
|
||||
if(!charcreation::checkClassRace($data['char_class'], $data['char_race'])){
|
||||
if(!is_char_race($value) || !charcreation::checkClassRace($data['char_class'], $data['char_race'])){
|
||||
$data['char_class'] = charcreation::DEFAULT_CHAR_CLASS;}
|
||||
\SYSTEM\SECURITY\Security::save(charcreation::MOJO_CC_SESSIONKEY,$data);
|
||||
}
|
||||
|
||||
public static function is_char_class($value){
|
||||
return player_classes::is($value);}
|
||||
public static function char_class($value){
|
||||
$data = \SYSTEM\SECURITY\Security::load(charcreation::MOJO_CC_SESSIONKEY);
|
||||
$data['char_class'] = $value;
|
||||
if(!charcreation::checkClassRace($data['char_class'], $data['char_race'])){
|
||||
if(!self::is_char_class($value) || !charcreation::checkClassRace($data['char_class'], $data['char_race'])){
|
||||
$data['char_race'] = charcreation::DEFAULT_CHAR_RACE;}
|
||||
\SYSTEM\SECURITY\Security::save(charcreation::MOJO_CC_SESSIONKEY,$data);
|
||||
}
|
||||
|
||||
public static function is_char_skin_color($value){
|
||||
return true;}
|
||||
public static function char_skin_color($value){
|
||||
$data = \SYSTEM\SECURITY\Security::load(charcreation::MOJO_CC_SESSIONKEY);
|
||||
$data['char_skin_color'] = $value;
|
||||
\SYSTEM\SECURITY\Security::save(charcreation::MOJO_CC_SESSIONKEY,$data);
|
||||
}
|
||||
|
||||
public static function is_char_hair($value){
|
||||
return true;}
|
||||
public static function char_hair($value){
|
||||
$data = \SYSTEM\SECURITY\Security::load(charcreation::MOJO_CC_SESSIONKEY);
|
||||
$data['char_hair'] = $value;
|
||||
\SYSTEM\SECURITY\Security::save(charcreation::MOJO_CC_SESSIONKEY,$data);
|
||||
}
|
||||
|
||||
public static function is_char_hair_color($value){
|
||||
return true;}
|
||||
public static function char_hair_color($value){
|
||||
$data = \SYSTEM\SECURITY\Security::load(charcreation::MOJO_CC_SESSIONKEY);
|
||||
$data['char_hair_color'] = $value;
|
||||
\SYSTEM\SECURITY\Security::save(charcreation::MOJO_CC_SESSIONKEY,$data);
|
||||
}
|
||||
public static function is_char_face($value){
|
||||
return true;}
|
||||
public static function char_face($value){
|
||||
$data = \SYSTEM\SECURITY\Security::load(charcreation::MOJO_CC_SESSIONKEY);
|
||||
$data['char_face'] = $value;
|
||||
\SYSTEM\SECURITY\Security::save(charcreation::MOJO_CC_SESSIONKEY,$data);
|
||||
}
|
||||
|
||||
public static function is_char_facial_hair($value){
|
||||
return true;}
|
||||
public static function char_facial_hair($value){
|
||||
$data = \SYSTEM\SECURITY\Security::load(charcreation::MOJO_CC_SESSIONKEY);
|
||||
$data['char_facial_hair'] = $value;
|
||||
\SYSTEM\SECURITY\Security::save(charcreation::MOJO_CC_SESSIONKEY,$data);
|
||||
}
|
||||
|
||||
public static function is_char_facial_hair_color($value){
|
||||
return true;}
|
||||
public static function char_facial_hair_color($value){
|
||||
$data = \SYSTEM\SECURITY\Security::load(charcreation::MOJO_CC_SESSIONKEY);
|
||||
$data['char_facial_hair_color'] = $value;
|
||||
\SYSTEM\SECURITY\Security::save(charcreation::MOJO_CC_SESSIONKEY,$data);
|
||||
}
|
||||
|
||||
public static function is_char_skill_tree($value){
|
||||
return false;}
|
||||
public static function char_skill_tree($value){}
|
||||
|
||||
public static function is_char_equip($value){
|
||||
return false;}
|
||||
public static function char_equip($value){}
|
||||
|
||||
public static function is_char_guild($value){
|
||||
return false;}
|
||||
public static function char_guild($value){}
|
||||
|
||||
public static function is_char_spawn($value){
|
||||
return player_spawns::is($value);}
|
||||
public static function char_spawn($value){
|
||||
$data = \SYSTEM\SECURITY\Security::load(charcreation::MOJO_CC_SESSIONKEY);
|
||||
$data['char_spawn'] = $value;
|
||||
if((player_races::is_horde($data['char_race']) && player_spawns::is_horde($value)) ||
|
||||
(player_races::is_alliance($data['char_race']) && player_spawns::is_alliance($value)) ){
|
||||
$data['char_spawn'] = $value;
|
||||
} else {
|
||||
$data['char_spawn'] = charcreation::DEFAULT_CHAR_SPAWN;
|
||||
}
|
||||
\SYSTEM\SECURITY\Security::save(charcreation::MOJO_CC_SESSIONKEY,$data);
|
||||
}
|
||||
}
|
||||
@ -47,8 +47,8 @@ class player_races {
|
||||
}
|
||||
}
|
||||
|
||||
public static function is($class){
|
||||
switch($class){
|
||||
public static function is($race){
|
||||
switch($race){
|
||||
case self::HUMAN:
|
||||
case self::ORC:
|
||||
case self::DWARF:
|
||||
@ -62,4 +62,28 @@ class player_races {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
public static function is_horde($race){
|
||||
switch($race){
|
||||
case self::ORC:
|
||||
case self::SCOURGE:
|
||||
case self::TAUREN:
|
||||
case self::TROLL:
|
||||
return true;
|
||||
default:
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
public static function is_alliance($race){
|
||||
switch($race){
|
||||
case self::HUMAN:
|
||||
case self::DWARF:
|
||||
case self::NIGHTELF:
|
||||
case self::GNOME:
|
||||
return true;
|
||||
default:
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -41,10 +41,32 @@ class player_spawns {
|
||||
switch($city){
|
||||
case self::UNDERCITY:
|
||||
case self::IRONFORGE:
|
||||
case self::STROMWIND:
|
||||
case self::STORMWIND:
|
||||
case self::DARNASSUS:
|
||||
case self::ORGRIMMAR:
|
||||
case self::THUNDERBLUF:
|
||||
case self::THUNDERBLUFF:
|
||||
return true;
|
||||
default:
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
public static function is_horde($city){
|
||||
switch($city){
|
||||
case self::UNDERCITY:
|
||||
case self::ORGRIMMAR:
|
||||
case self::THUNDERBLUFF:
|
||||
return true;
|
||||
default:
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
public static function is_alliance($city){
|
||||
switch($city){
|
||||
case self::IRONFORGE:
|
||||
case self::STORMWIND:
|
||||
case self::DARNASSUS:
|
||||
return true;
|
||||
default:
|
||||
return false;
|
||||
|
||||
BIN
mojotrollz/files/wowicons/fail.png
Normal file
BIN
mojotrollz/files/wowicons/fail.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 616 B |
BIN
mojotrollz/files/wowicons/ok.png
Normal file
BIN
mojotrollz/files/wowicons/ok.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 744 B |
BIN
mojotrollz/files/wowicons/ok_summary.png
Normal file
BIN
mojotrollz/files/wowicons/ok_summary.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 7.0 KiB |
@ -1,77 +1,72 @@
|
||||
<div style="text-align: center; color: black;">
|
||||
<H4>Summary</H4>
|
||||
<H3>Summary</H3>
|
||||
</div>
|
||||
|
||||
<table class="table_summ">
|
||||
<!--<tr>
|
||||
<th>Option</th>
|
||||
<th>Wert</th>
|
||||
<th>Check</th>
|
||||
</tr>-->
|
||||
<tr>
|
||||
<td><b>Name</b></td>
|
||||
<td>${char_name}</td>
|
||||
<td>${char_name_ok}</td>
|
||||
<td><img src="${WOWICONS}${char_name_ok}.png"/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><b>Gender</b></td>
|
||||
<td><img src="${WOW_GENDER}${char_gender}.png"/></td>
|
||||
<td>${char_gender_ok}</td>
|
||||
<td><img src="${WOWICONS}${char_gender_ok}.png"/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><b>Race</b></td>
|
||||
<td><img src="${WOW_RACE}${char_race}_${char_gender}.png"/></td>
|
||||
<td>${char_race_ok}</td>
|
||||
<td><img src="${WOWICONS}${char_race_ok}.png"/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><b>Class</b></td>
|
||||
<td><img src="${WOW_CLASS}${char_class}.png"/></td>
|
||||
<td>${char_class_ok}</td>
|
||||
<td><img src="${WOWICONS}${char_class_ok}.png"/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Skin Color</td>
|
||||
<td>${char_skin_color}</td>
|
||||
<td>${char_skin_color_ok}</td>
|
||||
<td><img src="${WOWICONS}${char_skin_color_ok}.png"/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Hair</td>
|
||||
<td>${char_hair}</td>
|
||||
<td>${char_hair_ok}</td>
|
||||
<td><img src="${WOWICONS}${char_hair_ok}.png"/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Hair Color</td>
|
||||
<td>${char_hair_color}</td>
|
||||
<td>${char_hair_color_ok}</td>
|
||||
<td><img src="${WOWICONS}${char_hair_color_ok}.png"/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Face</td>
|
||||
<td>${char_face}</td>
|
||||
<td>${char_face_ok}</td>
|
||||
<td><img src="${WOWICONS}${char_face_ok}.png"/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Facial Hair</td>
|
||||
<td>${char_facial_hair}</td>
|
||||
<td>${char_facial_hair_ok}</td>
|
||||
<td><img src="${WOWICONS}${char_facial_hair_ok}.png"/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Facial Hair Color</td>
|
||||
<td>${char_facial_hair_color}</td>
|
||||
<td>${char_facial_hair_color_ok}</td>
|
||||
<td><img src="${WOWICONS}${char_facial_hair_color_ok}.png"/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Skill Tree</td>
|
||||
<td>${char_skill_tree}</td>
|
||||
<td>${char_skill_tree_ok}</td>
|
||||
<td><img src="${WOWICONS}${char_skill_tree_ok}.png"/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><b>Guild</b></td>
|
||||
<td>${char_guild}</td>
|
||||
<td>${char_guild_ok}</td>
|
||||
<td><img src="${WOWICONS}${char_guild_ok}.png"/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><b>Spawn</b></td>
|
||||
<td><img src="${WOW_CITY}${char_spawn}.png"/></td>
|
||||
<td>${char_spawn_ok}</td>
|
||||
<td><img src="${WOWICONS}${char_spawn_ok}.png"/></td>
|
||||
</tr>
|
||||
</table>
|
||||
<div id="frame_content_toolbar" style="padding-top: 15px; height: 75px;"></div>
|
||||
@ -2,7 +2,14 @@
|
||||
class wizard_summary extends SYSTEM\PAGE\Page {
|
||||
|
||||
public function html(){
|
||||
$vars = charcreation::data(NULL,false);
|
||||
$vars = charcreation::check();
|
||||
foreach($vars as $key=>$value){
|
||||
if($value){
|
||||
$vars[$key] = 'ok';
|
||||
} else {
|
||||
$vars[$key] = 'fail';}
|
||||
}
|
||||
$vars = array_merge($vars,charcreation::data(NULL,false));
|
||||
|
||||
$vars['char_skin_color'] = \DBD\RACE_VISUALS_BY_ID::Q1(array($vars['char_race'],race_visuals::VISUAL_SKIN,$vars['char_skin_color']))['name'];
|
||||
$vars['char_hair'] = \DBD\RACE_VISUALS_BY_ID::Q1(array($vars['char_race'],race_visuals::VISUAL_HAIR,$vars['char_hair']))['name'];
|
||||
@ -15,6 +22,7 @@ class wizard_summary extends SYSTEM\PAGE\Page {
|
||||
$vars['char_class'] = player_classes::name($vars['char_class']);
|
||||
$vars['char_spawn'] = player_spawns::name($vars['char_spawn']);
|
||||
|
||||
$vars['WOWICONS'] = \SYSTEM\FILES\files::getURL('wowicons');
|
||||
$vars['WOW_GENDER'] = \SYSTEM\FILES\files::getURL('gender');
|
||||
$vars['WOW_RACE'] = \SYSTEM\FILES\files::getURL('race');
|
||||
$vars['WOW_CLASS'] = \SYSTEM\FILES\files::getURL('class');
|
||||
|
||||
@ -6,5 +6,5 @@
|
||||
<a class="tb_link" id="tb_skills" sysload="wizard_skills" href="#wizard_skills" style="padding-left: 30px;"><img src="${WOWICONS}default.png" /></a>
|
||||
<a class="tb_link" id="tb_guild" sysload="wizard_guild" href="#wizard_guild" style="padding-left: 30px;"><img src="${WOWICONS}default.png" /></a>
|
||||
<a class="tb_link" id="tb_spawn" sysload="wizard_spawn" href="#wizard_spawn" style="padding-left: 30px;"><img src="${WOW_CITY}${char_spawn}.png" /></a>
|
||||
<a class="tb_link" id="tb_summary" sysload="wizard_summary" href="#wizard_summary" style="padding-left: 30px;"><img src="${WOWICONS}default.png" /></a>
|
||||
<a class="tb_link" id="tb_summary" sysload="wizard_summary" href="#wizard_summary" style="padding-left: 30px;"><img src="${WOWICONS}${char_summary}.png" /></a>
|
||||
<a class="tb_link" id="tb_next" sysload="${next}" href="#${next}" style="padding-left: 15px;"><img src="${WOWICONS}arrow_right.png" /></a>
|
||||
@ -18,6 +18,7 @@ class wizard_toolbar extends SYSTEM\PAGE\Page {
|
||||
$vars['char_class'] = player_classes::name($vars['char_class']);
|
||||
$vars['char_race'] = player_races::name($vars['char_race']);
|
||||
$vars['char_spawn'] = player_spawns::name($vars['char_spawn']);
|
||||
$vars['char_summary'] = charcreation::check_all() ? 'ok_summary' : 'default';
|
||||
$vars['last'] = $this->last;
|
||||
$vars['next'] = $this->next;
|
||||
$vars['WOWICONS'] = \SYSTEM\FILES\files::getURL('wowicons');
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user