45 lines
1.1 KiB
Bash
Executable File
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"
|