#!/bin/bash
# The following creates a mixtape data message
ZFOLDERSDIR="$AK_WORKDIR/folders"
TEMP="/tmp/aktmp"
if [ ! -d $ZFOLDERSDIR ]; then
	mkdir $ZFOLDERSDIR
	cd $ZFOLDERSDIR
else
	ak-logthis "error $ZFOLDERSDIR not found"
fi
TEMPASSIN="$(ak-tempassin)"
cd $TEMPASSIN

usage(){
	title
	echo "$0 - folder"
}

add(){
    CRP="$(pwd)"
    FOLDERNAME="$1"
    main $FOLDERNAME $CRP
    cat data | jq -M
}

main(){
    FOLDERNAME="$1"
    CRP="$2"
    echo "Adding $FOLDERNAME"
    ak-logthis "Copying $1 to temporary folder"
    cp -r $2/$1 $1
    if [ $? == 0 ]; then
	    ak-logthis "Copied successfully"
    else
	    ak-logthis "Error copying..."
    fi

    FOLDER="$1"

    ak-logthis "Adding $FOLDER to IPFS..."
    FOLDER_IPFS_HASH=$(ak-ipfs-add $FOLDER)
    if [ $? == 0 ]; then
	    ak-logthis "done"
    else
	    ak-logthis "error"
    fi
    ak-logthis "Folders are not signing..."

#    NOT NEEDED HERE
#    SIGN_FOLDER=$FOLDERNAME".asc"
#    gpg2 --detach-sign --sign-with $FINGERPRINT --armor --output $SIGN_FOLDER $FOLDER
#    if [ $? == 0 ]; then
#	    ak-logthis "Signed"
#    else
#	    ak-logthis "Error while signing"
#    fi
#
#    ak-logthis "Adding signature to IPFS"
#    SIGNATURE=$(ak-ipfs-add $SIGN_FOLDER)
#    if [ $? == 0 ]; then
#	    ak-logthis "Added"
#    else
#	    ak-logthis "Error while adding"
#    fi

#     cat > data <<EOF
# {
#     "timestamp":"$(date -u +%s)",
#     "foldername":"$FOLDERNAME",
#     "ipfs":"$FOLDER_IPFS_HASH"
# }
# EOF
    printf '{"timestamp":"%s","foldername":"%s","ipfs":"%s"}' $(date -u +%s) $FOLDERNAME $FOLDER_IPFS_HASH

    echo "Printing data..."
    cat data
    echo "Publishing..."

    ak-pack_z_block folders/add $(pwd)/data
    if [ $? == 0 ]
    then
	    echo "cool"
    else
	    echo "not?"
	    exit 2
    fi
}

title(){
    echo "Folder block creator"
}


if [ ! -z $1 ]; then
	case $1 in
		help) usage; exit;;
		add) add $2; exit;;
		*) usage; exit;;
	esac
else usage
fi