def project_add(): if request.method == 'POST': project_data = session.get('project_data') versioning_data = session.get('versioning_data') project = Project(project_data['client'], project_data['project_name'], project_data['subproject_name']) project.user = g.user project.add_user(g.user) post_add = project.add(project) version_number_formatted_without_the_dot = versioning_data['version'].replace('.', '') if project_data['subproject_name']: zf_name = "scripts-{0}-{1}-{2}-v{3}.zip".format(project_data['client'], project_data['project_name'], project_data['subproject_name'], version_number_formatted_without_the_dot) else: zf_name = "scripts-{0}-{1}-v{2}.zip".format(project_data['client'], project_data['project_name'], version_number_formatted_without_the_dot) project = last_project() project_versioning = ProjectVersioning(versioning_data['version'], versioning_data['excel_file'], versioning_data['template_file'], versioning_data['to_fill'], versioning_data['filled'], versioning_data['fillingRatio'], zf_name, versioning_data['description'], project, g.user) project_versioning = project_versioning.add(project_versioning) if not post_add and not project_versioning: new_project_folder = os.path.join(app.config['UPLOAD_FOLDER'], str(project.id), 'v{}'.format(version_number_formatted_without_the_dot)) move(session['project_folder'], new_project_folder) try: zip_file(new_project_folder, os.path.join(new_project_folder, zf_name)) except: pass return redirect(url_for('project_display', project_id=last_id_of_the_table_project())) else: error = post_add flash(error) return redirect(url_for('project_display_all'))
def project_upgrade(project_id): if request.method == 'POST': versioning_data = session.get('versioning_data') project = Project.query.get(project_id) version_number_formatted_without_the_dot = versioning_data['version'].replace('.', '') if project.subProjectName: zf_name = "scripts-{0}-{1}-{2}-v{3}.zip".format(project.client, project.projectName, project.subProjectName, version_number_formatted_without_the_dot) else: zf_name = "scripts-{0}-{1}-v{2}.zip".format(project.client, project.projectName, version_number_formatted_without_the_dot) new_version = ProjectVersioning(versioning_data['version'], versioning_data['excel_file'], versioning_data['template_file'], versioning_data['to_fill'], versioning_data['filled'], versioning_data['fillingRatio'], zf_name, versioning_data['description'], project, g.user) error_in_creation_of_new_version = new_version.add(new_version) if not error_in_creation_of_new_version: try: zip_file(versioning_data['project_folder'], os.path.join(versioning_data['project_folder'], zf_name)) except: pass return redirect(url_for('project_display', project_id=project_id)) else: flash(error_in_creation_of_new_version) return redirect(url_for('project_display_all'))