forked from coop-cloud/outline
Add delete_user cmd
This commit is contained in:
parent
6ee580b9de
commit
0841e85a57
33
abra.sh
33
abra.sh
|
@ -1 +1,34 @@
|
|||
export APP_ENTRYPOINT_VERSION=v2
|
||||
|
||||
delete_user() {
|
||||
if [ -z "$1" ] || [ -z "$2" ]; then
|
||||
echo "Usage: ... delete_user <user-to-delete> <user-to-replace>"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
USERID_REMOVE=$(echo "SELECT id FROM users WHERE username = '$1'" | psql -t -A -U user outline)
|
||||
USERID_REPLACE=$(echo "SELECT id FROM users WHERE username = '$2'" | psql -t -A -U user outline)
|
||||
|
||||
if [ -z "$USERID_REMOVE" ]; then
|
||||
echo "Can't find ID of '$1'"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ -z "$USERID_REPLACE" ]; then
|
||||
echo "Can't find ID of '$2'"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
psql -U user outline <<- SQL
|
||||
UPDATE documents SET "userId" = '$USERID_REPLACE' WHERE "userId" = '$USERID_REMOVE';
|
||||
UPDATE documents SET "lastModifiedById" = '$USERID_REPLACE' WHERE "lastModifiedById" = '$USERID_REMOVE';
|
||||
UPDATE documents SET "createdById" = '$USERID_REPLACE' WHERE "createdById" = '$USERID_REMOVE';
|
||||
UPDATE revisions SET "userId" = '$USERID_REPLACE' WHERE "userId" = '$USERID_REMOVE';
|
||||
UPDATE attachments SET "userId" = '$USERID_REPLACE' WHERE "userId" = '$USERID_REMOVE';
|
||||
DELETE FROM shares WHERE "userId" = '$USERID_REMOVE';
|
||||
DELETE FROM notification_settings WHERE "userId" = '$USERID_REMOVE';
|
||||
DELETE FROM events WHERE "actorId" = '$USERID_REMOVE';
|
||||
DELETE FROM events WHERE "userId" = '$USERID_REMOVE';
|
||||
DELETE FROM users WHERE username = '$1';
|
||||
SQL
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue