예제 #1
0
         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");
     break;
 case 'delete':
     $tenant = $model->find($OPTS->code)->current();
     if (null === $tenant) {
         fwrite(STDERR, "Tenant `{$OPTS->code} does not exists\n");
         exit(2);
     }
     $tenant->delete();
     break;
 default:
     fwrite(STDERR, "unkown action `{$action}`\n");