forked from science-ation/science-ation
91 lines
2.7 KiB
PHP
91 lines
2.7 KiB
PHP
<?
|
|
|
|
/* This file may contain 2 functions, a db_update_$ver_pre() and a
|
|
* db_update_$ver_post(). _pre() is called before the SQL patch is
|
|
*applied, and as expected, _post() is called after.
|
|
*
|
|
* These functions are called from the main db_update.php file, and included
|
|
* once, so any global variables declared in here WILL REMAIN across both
|
|
* calls. meaning you can pull some stuff out of the database in _pre(), and
|
|
* then the patch will be applied, and they it can be inserted back into the
|
|
* database in _post().
|
|
* Also note that MULTIPLE php scripts could be included if the db update is
|
|
* large, so global variable names probably shouldn't conflict... put the version
|
|
* number in them*/
|
|
|
|
$update_62_committee = array();
|
|
function db_update_62_pre()
|
|
{
|
|
global $update_62_committee;
|
|
$q = mysql_query("SELECT * FROM committees_members");
|
|
while($r = mysql_fetch_assoc($q)) {
|
|
$update_62_committee[] = $r;
|
|
}
|
|
}
|
|
|
|
function db_update_62_post()
|
|
{
|
|
global $update_62_committee;
|
|
global $config;
|
|
|
|
foreach($update_62_committee as $c) {
|
|
list($fn, $ln) = explode(' ', $c['name'], 2);
|
|
$username = $c['email'];
|
|
$fn = mysql_escape_string($fn);
|
|
$ln = mysql_escape_string($ln);
|
|
if($config['committee_password_expiry_days'] > 0) {
|
|
$passwordexpiry = "DATE_ADD(CURDATE(),
|
|
INTERVAL {$config['committee_password_expiry_days']} DAY)";
|
|
} else {
|
|
$passwordexpiry = "NULL";
|
|
}
|
|
|
|
$deleted = ($c['deleted'] == 'Y') ? 'yes' : 'no';
|
|
$q = "INSERT INTO users
|
|
(`types`,`firstname`,`lastname`,`username`,`password`,`passwordexpiry`,
|
|
`email`,`phonehome`,`phonework`,`phonecell`,`fax`,`organization`,
|
|
`created`,`deleted`)
|
|
VALUES ('committee','$fn', '$ln', '$username',
|
|
'".mysql_escape_string($c['password'])."',
|
|
$passwordexpiry,
|
|
'{$c['email']}',
|
|
'{$c['phonehome']}',
|
|
'{$c['phonework']}',
|
|
'{$c['phonecell']}',
|
|
'{$c['fax']}',
|
|
'".mysql_escape_string($c['organization'])."',
|
|
NOW(),
|
|
'$deleted')";
|
|
mysql_query($q);
|
|
echo "$q\n";
|
|
$id = mysql_insert_id();
|
|
|
|
$access_admin = ($c['access_admin'] == 'Y') ? 'yes' : 'no';
|
|
$access_config = ($c['access_config'] == 'Y') ? 'yes' : 'no';
|
|
$access_super = ($c['access_super'] == 'Y') ? 'yes' : 'no';
|
|
$displayemail = ($c['displayemail'] == 'Y') ? 'yes' : 'no';
|
|
$q = "INSERT INTO users_committee(`users_id`,`emailprivate`,
|
|
`ord`,`displayemail`,`access_admin`,`access_config`,
|
|
`access_super`) VALUES (
|
|
'$id', '{$c['emailprivate']}',
|
|
'{$c['ord']}',
|
|
'$displayemail',
|
|
'$access_admin',
|
|
'$access_config',
|
|
'$access_super')";
|
|
mysql_query($q);
|
|
echo "$q\n";
|
|
echo mysql_error();
|
|
|
|
/* Update committee links */
|
|
$q = "UPDATE committees_link SET users_id='$id'
|
|
WHERE committees_members_id='{$c['id']}'";
|
|
mysql_query($q);
|
|
echo "$q\n";
|
|
|
|
}
|
|
}
|
|
|
|
|
|
?>
|