Example #1
0
    exit(1);
}
include 'bootstrap.inc.php';
$model = new OpenSKOS_Db_Table_Tenants();
switch ($action) {
    case 'create':
        if (null === $OPTS->name) {
            fwrite(STDERR, "missing required `name` argument\n");
            exit(1);
        }
        if (null === $OPTS->email) {
            fwrite(STDERR, "missing required `email` argument\n");
            exit(1);
        }
        if (null === $OPTS->password) {
            $password = OpenSKOS_Db_Table_Users::pwgen(8);
        } else {
            $password = $OPTS->password;
        }
        try {
            $model->createRow(array('code' => $OPTS->code, 'name' => $OPTS->name))->save();
        } catch (Zend_Db_Exception $e) {
            fwrite(STDERR, $e->getMessage() . "\n");
            exit(2);
        }
        $model = new OpenSKOS_Db_Table_Users();
        $model->createRow(array('email' => $OPTS->email, 'name' => $OPTS->name, 'password' => new Zend_Db_Expr('MD5(' . $model->getAdapter()->quote($password) . ')'), 'tenant' => $OPTS->code, 'eppn' => $OPTS->code, 'type' => OpenSKOS_Db_Table_Users::USER_TYPE_BOTH, 'role' => OpenSKOS_Db_Table_Users::USER_ROLE_ADMINISTRATOR))->save();
        fwrite(STDOUT, 'A tenant has been created with this user account:' . "\n");
        fwrite(STDOUT, "  - code: {$OPTS->code}\n");
        fwrite(STDOUT, "  - login: {$OPTS->email}\n");
        fwrite(STDOUT, "  - password: {$password}\n");