do_showupload();
     break;
 case 'upload':
     do_upload();
     break;
 case 'showmkdir':
     do_showmkdir();
     break;
 case 'mkdir':
     do_mkdir();
     break;
 case 'showrename':
     do_showrename();
     break;
 case 'rename':
     do_rename();
     break;
 case 'showmove':
     do_showmove();
     break;
 case 'move':
     do_move();
     break;
 case 'download':
     do_download();
     break;
 case 'showdelete':
     do_showdelete();
     break;
 case 'delete':
     do_delete();
{
    if (!array_key_exists("name", $_REQUEST)) {
        die("bad parameters");
    }
    $class_obj->remove_file($_REQUEST["name"]);
}
$class_id = $_REQUEST["class"];
if (!is_numeric($class_id)) {
    die("go away, loser");
}
$class_obj = HardwareClass::load_from_id($class_id);
if (array_key_exists("action", $_REQUEST)) {
    $action = $_REQUEST["action"];
    switch ($action) {
        case "rename":
            do_rename($class_obj);
            break;
        case "delete":
            do_delete($class_obj);
            break;
        case "add_member":
            do_add_mem($class_obj);
            break;
        case "remove_members":
            do_delete_members($class_obj);
            break;
        case "delete_over":
            do_delete_override($class_obj);
            break;
        case "create_over":
            do_create_override($class_obj);