# Send Files via FTP

import ftplib
import os
import sys
import shutil

import default_setting

# Get Current Path
dir_path = os.path.dirname(os.path.realpath(__file__))

def main():
# get Upload Directories from company settings
	defaults = default_setting.defaultSettings()
	uploadDirs = default_setting.companySettings(defaults)

	sys.stdout.write("\r")
#    sys.stdout.write(uploadDirs['interfaceout'])
	sys.stdout.flush()
	
 # Get All remaining files in upload Directory
	directory = uploadDirs['interfaceout']			
	for fileName in os.listdir(directory):
		try:
			filePath = os.path.join(directory, fileName)
			if not os.path.isfile(filePath):
				continue			
			print(filePath)
# Archive
			shutil.copy(filePath, os.path.join(dir_path, '../vimsarchive/'+fileName))
# put file
			ftpPut(filePath)
		except:
			pass
# remove file
		try:
			if os.path.exists(filePath):
				os.remove(filePath)
		except:
			pass

def ftpPut(filePath):    
# set-up ftp connection
	ftp = ftplib.FTP('172.18.25.28')
	ftp.login('ANONYMOUS','VANTEC')
#    ftp.cwd('/test/in')
    ftp.cwd('/LIVE/out')

    path, fileName = os.path.split(filePath)

    try:
        file = open(filePath,'rb') 
        ftp.storbinary('STOR ' + fileName, file) 
    except ftplib.error_perm:
        print("FAIL-FTP Error ")
        pass 
    ftp.quit()
	
if __name__ == '__main__':
	main()
#	input("Press ENTER")