#!/usr/bin/with-contenv bashio
bashio::log.info 'Mounting external hdd...'

# Allow SMB1
if bashio::config.true 'smbv1'; then
    SMBVERS=",vers=1.0"
else
    SMBVERS=""
fi

# Mount local Share if configured and if Protection Mode is active
if bashio::config.has_value 'localdisks'; then
    MOREDISKS=$(bashio::config 'localdisks')
    bashio::log.info "Local Disks mounting.. ${MOREDISKS}" && \
    for disk in $MOREDISKS 
    do
        bashio::log.info "Mount ${disk}"
        mkdir -p /share/$disk && \
            if [ ! -d /share/$disk ]; then
              echo "Creating /share/$disk"
              mkdir -p /share/$disk
              chown -R abc:abc /share/$disk
            fi
            mount /dev/$disk /share/$disk && \
            bashio::log.info "Success!"   
    done || \
    bashio::log.warning "Protection mode is ON. Unable to mount local drives!"
fi

# Mount CIFS Share if configured and if Protection Mode is active
if bashio::config.has_value 'networkdisks'; then
    MOREDISKS=$(bashio::config 'networkdisks')
    CIFS_USERNAME=$(bashio::config 'cifsusername')
    CIFS_PASSWORD=$(bashio::config 'cifspassword')
    ITERATOR=1
    bashio::log.info "Network Disks mounting.. ${MOREDISKS}" && \
    for disk in $MOREDISKS
    do
        bashio::log.info "Mount ${disk}"
        if [ "$ITERATOR" -eq "1" ]; then
            mkdir -p /share/storagecifs && \
                if [ ! -d /storage/storagecifs ]; then
                echo "Creating /storage/storagecifs"
                mkdir -p /storage/storagecifs
                chown -R abc:abc /storage/storagecifs
                fi
                mount -t cifs -o username=$CIFS_USERNAME,password=$CIFS_PASSWORD$SMBVERS $disk /storage/storagecifs && \
                bashio::log.info "Success!"
        else
            mkdir -p /share/storagecifs$ITERATOR && \
                if [ ! -d /storage/storagecifs$ITERATOR ]; then
                echo "Creating /storage/storagecifs$ITERATOR"
                mkdir -p /storage/storagecifs$ITERATOR
                chown -R abc:abc /storage/storagecifs$ITERATOR
                fi
                mount -t cifs -o username=$CIFS_USERNAME,password=$CIFS_PASSWORD$SMBVERS $disk /storage/storagecifs$ITERATOR && \
                bashio::log.info "Success!"
        fi
        ITERATOR=$((ITERATOR+1))
    done || \
    bashio::log.warning "Protection mode is ON. Unable to mount external drives!"
fi
