diff --git a/ynet b/ynet new file mode 100755 index 0000000..ed7db20 --- /dev/null +++ b/ynet @@ -0,0 +1,76 @@ +#!/usr/bin/python +import sys, os, re, datetime, subprocess +working_path = os.getcwd() + +def get_project_codes(): + project_codes = [] + files = os.listdir( working_path ) + for f in files: + code=re.findall("[0-9]{5}_[A-Z]{3}[0-9]{3}",f) + if code != []: + project_codes.append(code[0]) + project_codes.sort() + return project_codes + +def get_clients_codes(): + client_codes = [] + for code in get_project_codes(): + client_code = code[6:9] + if client_code not in client_codes: + client_codes.append(client_code) + + return client_codes + +def get_project_structure( my_path ): + dirs = list() + for (dirpath, dirnames, files) in os.walk(my_path): + dirs += [os.path.join(dirpath, d)[len(my_path)+1:] for d in dirnames] + return dirs + +def new_project(): + + #print( "current clients are : ") + + codes = "" + for code in get_clients_codes(): + codes += code + "," + + #client = input("enter client code:") + client = str(subprocess.check_output("echo '" + codes + "' | rofi -dmenu -i -format s -sep ',' -p 'current clients are'", shell=True)) + client = client[2:5].upper() + #client = client[0:3].upper() + project_codes = get_project_codes() + client_project_n = str( project_codes ).count(client) + 1 + project_n = int(project_codes[-1][2:5])+1 + + #project = input("enter project name:") + + project = str(subprocess.check_output("rofi -dmenu -i -format s -p 'enter project name'", shell=True))[2:-3] + + project = project.replace(" ","_").title() + + new_folder = datetime.datetime.now().strftime("%y")+str(project_n).zfill(3)+"_"+client+str(client_project_n).zfill(3)+"_"+project + struct = get_project_structure("/media/TioTigre/00_libreria/tigre_struct") + if not os.path.lexists( new_folder ): + os.mkdir( new_folder) + for d in struct: + if not os.path.lexists( new_folder+os.sep+d ): + os.mkdir( new_folder+os.sep+d ) + +def create_todays_folder(): + todays_folder=(datetime.datetime.now().strftime("%y%m%d")) + if not os.path.lexists( todays_folder ): + os.mkdir( todays_folder ) + +if sys.argv.count("--newproj") > 0 or sys.argv.count("-n") > 0 : + new_project() + +if sys.argv.count("--today") > 0 or sys.argv.count("-t") > 0 : + create_todays_folder() + +elif sys.argv.count("--debug") > 0 : + subprocess + +else: + print("error : no valid arguments given") +