Files
early-concept/read_registrations.sh
2024-04-23 13:56:26 +03:00

45 lines
1.1 KiB
Bash
Executable File

#!/bin/bash
set -xue
. ./config.sh
PREV_ID=$(cat "$DEALS_PREV_MESSAGE_ID_FOR_REGISTRATIONS" || echo "")
NEW_PREV_ID_FILE="${DEALS_PREV_MESSAGE_ID_FOR_REGISTRATIONS}.new"
TEXT_FILE="${DEALS_BASE}/message.txt"
python get_bm_message.py \
--to-address "$DEALS_BM_FOR_REGISTRATIONS" \
--prev-id "$PREV_ID" \
--output-id "$NEW_PREV_ID_FILE" \
--output-text "$TEXT_FILE" \
--from-address /dev/null
if [ ! -f "$NEW_PREV_ID_FILE" ]; then
echo "No new messages"
exit 0
fi
NAME=$(grep "name: " "$TEXT_FILE" | sed "s/^name: //" || echo "")
if [ "$NAME" == "" ]; then
echo "Failed to parse registration message"
else
if ! ( echo "$NAME" | egrep --quiet '^[a-zA-Z0-9_]{3,10}$' ) ; then
echo "Name ${NAME} is not acceptable"
else
mkdir -p "$DEALS_REG_DB_ROOT"
DB_FILE="${DEALS_REG_DB_ROOT}/${NAME}"
if [ -f "$DB_FILE" ]; then
echo "User ${NAME} already exists"
else
echo "Registering user ${NAME}"
mv "$TEXT_FILE" "$DB_FILE"
fi
fi
fi
mv "$NEW_PREV_ID_FILE" "$DEALS_PREV_MESSAGE_ID_FOR_REGISTRATIONS"