forked from science-ation/science-ation
- Add number checking (and parsing) to the config editor
- Change the type of $config['regfee'] to 'number'
This commit is contained in:
parent
8b38f44501
commit
414a85ccb2
@ -30,7 +30,7 @@ ogram; see the file COPYING. If not, write to
|
||||
require("judges.inc.php");
|
||||
require("judges_schedulerconfig_check.inc.php");
|
||||
|
||||
$action = config_editor_handle_actions($config['FAIRYEAR'], "var");
|
||||
$action = config_editor_handle_actions("Judge Scheduler", $config['FAIRYEAR'], "var");
|
||||
if($action == 'update') {
|
||||
header("Location: judges_schedulerconfig.php");
|
||||
exit;
|
||||
|
@ -35,7 +35,7 @@ ogram; see the file COPYING. If not, write to
|
||||
exit;
|
||||
}
|
||||
|
||||
$action = config_editor_handle_actions( $config['FAIRYEAR'], "var");
|
||||
$action = config_editor_handle_actions("Tour Assigner", $config['FAIRYEAR'], "var");
|
||||
if($action == 'update') {
|
||||
header('Location: tours_sa_config.php');
|
||||
exit;
|
||||
|
@ -117,11 +117,13 @@ function config_update_variables($fairyear=NULL, $lastfairyear=NULL)
|
||||
$config_editor_actions_done = false;
|
||||
$config_editor_updated = false;
|
||||
|
||||
function config_editor_handle_actions($year, $array_name)
|
||||
function config_editor_handle_actions($category, $year, $array_name)
|
||||
{
|
||||
global $config;
|
||||
global $config_editor_actions_done;
|
||||
|
||||
$config_vars = config_editor_load($category, $year);
|
||||
|
||||
$config_editor_actions_done = true;
|
||||
$updated = false;
|
||||
if($_POST['action']=="update") {
|
||||
@ -133,9 +135,20 @@ function config_editor_handle_actions($year, $array_name)
|
||||
else
|
||||
$val = $var[$k];
|
||||
|
||||
/* If it hasn't changed, don't update it */
|
||||
if($config[$k] == $val) continue;
|
||||
// echo $config[$k]." ==? $val";
|
||||
/* If it hasn't changed, don't update it (do a string
|
||||
* compare so numbers aren't interpreted.. php thinks
|
||||
* "1.0" == "1") */
|
||||
if(strcmp($config[$k], $val) == 0) continue;
|
||||
|
||||
switch($config_vars[$k]['type']) {
|
||||
case 'number':
|
||||
if(ereg("[0-9]+(\.[0-9]+)?", $val, $regs)) {
|
||||
$val = $regs[0];
|
||||
} else {
|
||||
$val = 0;
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
/* Prep for MySQL update */
|
||||
$val = mysql_escape_string($val);
|
||||
@ -169,7 +182,7 @@ function config_editor($category, $year, $array_name, $self)
|
||||
global $config_editor_actions_done, $config_editor_updated;
|
||||
|
||||
if($config_editor_actions_done == false) {
|
||||
config_editor_handle_actions($year, $array_name);
|
||||
config_editor_handle_actions($category, $year, $array_name);
|
||||
}
|
||||
|
||||
if(is_array($_SESSION['messages'])) {
|
||||
|
@ -1 +1 @@
|
||||
102
|
||||
103
|
||||
|
1
db/db.update.103.sql
Normal file
1
db/db.update.103.sql
Normal file
@ -0,0 +1 @@
|
||||
UPDATE `config` SET `type` = 'number' WHERE `var` = 'regfee';
|
Loading…
Reference in New Issue
Block a user