#!/bin/bash

function enumAllVolumes ()
{
	grep normal /run/synostorage/volumetab | awk '{ print $2 }'
}

function findBestVolume ()
{
	local candidate=$(enumAllVolumes																			\
						| /bin/xargs -n1 -i /bin/stat -c '%Y %m' '{}/@database/synolog/.SMBXFERDB' 2>/dev/null	\
						| /bin/sort -k1 -nr 																	\
						| /bin/head -n1 																		\
						| /bin/cut -d' ' -f2)

	if [[ ${#candidate} -eq 0 ]]; then
		CANDIDATE_VOLUME="$(/usr/syno/bin/servicetool --get-alive-volume)"
		if [ "${CANDIDATE_VOLUME:0:7}" = "/volume" ]; then
			echo -n "${CANDIDATE_VOLUME}"
		fi
	else
		echo -n "${candidate}"
	fi
}

function createDBLink ()
{
	local bestVolume=$(findBestVolume)

	if [[ ${#bestVolume} -eq 0 ]]; then
		exit
	fi

	env RESULT=0 MOUNTPOINT="${bestVolume}"	\
		/usr/libexec/volume/create/SynologVolumeCreate.sh --post
}

createDBLink
