#!/usr/bin/env python3
# -*- coding: utf-8 -*-

'''
This script uses the RemoteFolder class to send files or directory.
'''

import argparse

from hateno import jsonfiles
from hateno.remote import RemoteFolder

def addArguments(parser):
	parser.add_argument('--delete', action = 'store_true', help = 'delete the original file/directory once sent')
	parser.add_argument('remote_folder', type = argparse.FileType('r'), help = 'path to the file where the configuration of the remote folder can be found')
	parser.add_argument('to_send', type = str, help = 'path of file/directory to send')
	parser.add_argument('remote_path', type = str, nargs = '?', help = 'remote path where the file/directory should be sent')

def action(args):
	remote_folder_conf = jsonfiles.read(args.remote_folder.name)
	with RemoteFolder(remote_folder_conf) as remote_folder:
		remote_folder.send(args.to_send, args.remote_path, delete = args.delete)

if __name__ == '__main__':
	parser = argparse.ArgumentParser(description = 'Send files or directory to a remote folder.')
	addArguments(parser)
	action(parser.parse_args())
