<?php
+/*
+ (c) 2005 Joe Presbrey
+*/
require_once('mitsql.lib.php');
define('MAXDBS', 20);
class proc {
- static function newdb(&$User, $i_newdb) {
+ static function newdb(&$User, &$i_newdb) {
+ // return through $i_newdb the full name of the created db
$msg1 = $err1 = array();
- $dbname = $User->getUsername().DELIMETER.$i_newdb;
- if ($User->isOverQuota()) {
+ $uname = $User->getUsername();
+ $uname = str_replace('.','',$uname);
+ $dbname = $uname.DELIMETER.$i_newdb;
+ if ($User->isOverQuota() && !isAdmin()) {
$err1[] = 'You are over your quota. You may not add more databases.';
- } elseif (count($User->getDBList())>MAXDBS) {
+ } elseif (count($User->getDBList())>=$User->getDBQuotaHard() && !isAdmin()) {
$err1[] = 'You have too many databases. You may not add more databases.';
} elseif (empty($i_newdb)) {
$err1[] = 'Your database name may not be empty.';
$err1[] = 'Database already exists.';
}
} else {
- $msg1[] = 'Database `'.$dbname.'` created.';
+ $msg1[] = 'Database `'.htmlentities($dbname).'` created.';
}
+ $i_newdb = $dbname;
return array($msg1, $err1);
}
static function drop(&$User, $i_drop) {
$dropdbs = array_keys($i_drop);
foreach($dropdbs as $dbname) {
if ($User->delDB($dbname)) {
- $msg1[] = 'Database `'.$dbname.'` dropped.';
+ $msg1[] = 'Database `'.htmlentities($dbname).'` dropped.';
} else {
$err1[] = mysql_error();
}