#!/bin/bash

# Get script name
SCRIPT=$(basename "$0")

# First param is docker container
CONTAINER=$1

# Default configuration
PACKAGE_PATH="/usr/lib/python3/dist-packages/"

# Custom configuration
FILE_PATH="${PACKAGE_PATH}odoo/addons/hr_holidays/models/hr_leave.py"
FIND="body=_('Your %s planned on %s has been refused') % (holiday.holiday_status_id.display_name, holiday.date_from),"
IFS='' read -r -d '' REPLACE << EOM
                    body=(_('Your %s planned on %s has been refused') % (holiday.holiday_status_id.display_name, holiday.date_from)) + _('<br/>Note: %s') % (holiday.sudo().report_note),
EOM

# Get filename
FILE=`basename "$FILE_PATH"`

# Copy from docker
docker cp "$CONTAINER":"$FILE_PATH" .

LINE=$(grep -n "$FIND" $FILE | cut -f1 -d:)

# Find and append
awk -v n="$LINE" -v s="$REPLACE" '{ if(NR == n) {print s} else {print} }' $FILE > $FILE.tmp && mv $FILE.tmp $FILE

# Copy back to docker
docker cp $FILE "$CONTAINER":"$FILE_PATH"

# Remove file
rm -f $FILE

# Register patch installation
echo "Patch $SCRIPT applied."
touch "/etc/odoo/${SCRIPT}_${CONTAINER}_installed"
