#!/bin/bash

# Check if root
if [ "$EUID" -ne 0 ]
  then echo "Please run as root"
  exit
fi

status=$1
model=$(cat /etc/salicru/env)

if (systemctl -q is-active device-mapper.service)
then
    MDB=true
else
    MDB=false
fi

sudo systemctl disable device-mapper.service
sudo rm /lib/systemd/system/device-mapper.service

echo "[Unit]" >> /lib/systemd/system/device-mapper.service
echo "Description=device-mapper service" >> /lib/systemd/system/device-mapper.service

if [ "$model" == "cube40720" ] || [[ "$model" == *twinpro2* ]] || [[ "$model" == *twinrt2* ]] || [[ "$model" == *twinproA* ]] || [[ "$model" == *twinrtA* ]] || [[ "$model" == *advance* ]]; then
  echo "Requires=device-serial.service" >> /lib/systemd/system/device-mapper.service
else
  echo "Requires=device-modbus.service" >> /lib/systemd/system/device-mapper.service
fi
echo "[Service]" >> /lib/systemd/system/device-mapper.service
if [ "$status" == "true" ];
then
  echo 'Environment="NETWORK_HOST=0.0.0.0"' >> /lib/systemd/system/device-mapper.service
fi
echo "Type=simple" >> /lib/systemd/system/device-mapper.service
echo "WorkingDirectory=/opt/scripts/device-mapper/" >> /lib/systemd/system/device-mapper.service
echo "ExecStart=/opt/scripts/device-mapper/start.sh" >> /lib/systemd/system/device-mapper.service
echo "ExecReload=/bin/kill -HUP \$MAINPID" >> /lib/systemd/system/device-mapper.service

echo "Restart=always" >> /lib/systemd/system/device-mapper.service

echo "[Install]" >> /lib/systemd/system/device-mapper.service
echo "WantedBy=multi-user.target" >> /lib/systemd/system/device-mapper.service

sudo systemctl daemon-reload
sudo systemctl enable device-mapper.service

if $MDB
then
  sudo service device-mapper restart
fi
