# -*- coding: utf-8 -*- from flask import Blueprint, Flask, request, flash, render_template, url_for, session, redirect, abort, make_response, send_file, flash, abort, send_file, send_from_directory from werkzeug.utils import secure_filename from markupsafe import escape from PIL import Image import time import sqlite3 import os from tools.filesutils import check_and_create from tools.utils import login_required mygallery = Blueprint('mygallery', __name__, template_folder='templates') app = Flask( 'pywallter' ) app.config.from_pyfile('config.py') #### Variables ################################################################################## DOSSIER_PERSO = app.config.get("DOSSIER_APP") DOSSIER_PUBLIC = app.config.get("DOSSIER_PUBLIC") extensionimg = app.config.get("EXT_IMG") DATABASE = app.config.get("DATABASE") ################################################################################################# @mygallery.route( '/gallery/') @login_required def gallery(): user ='%s' % escape(session['username']) print (DOSSIER_PUBLIC) print (os.path.join(DOSSIER_PUBLIC, user , 'images')) check_and_create(os.path.join(DOSSIER_PUBLIC, user , 'images')) check_and_create(os.path.join(DOSSIER_PUBLIC, user , 'images', 'thumbnails')) check_and_create(os.path.join(DOSSIER_PERSO , user , 'images')) check_and_create(os.path.join(DOSSIER_PERSO, user, 'images','thumbnails')) THUMBNAILS=os.path.join(DOSSIER_PERSO, user, 'images','thumbnails') fichiers = [fich for fich in os.listdir(THUMBNAILS)] return render_template('gallery.html', section='Gallery', THUMBNAILS=THUMBNAILS, fichiers=fichiers) @mygallery.route('/myfiles/images/') @login_required def myimg(filename): user = '%s' % escape(session['username']) return send_from_directory( os.path.join(DOSSIER_PERSO, user, 'images'), filename ) @mygallery.route('/myfiles/images/thumbnails/') @login_required def mythumbnails(filename): user='%s' % escape(session['username']) return send_from_directory( os.path.join(DOSSIER_PERSO, user, 'images','thumbnails'), filename ) @mygallery.route('/remove_privateImage/') @login_required def remove_privateImage(filename): user = '%s' % escape(session['username']) filename = secure_filename(filename) try: os.remove(os.path.join(DOSSIER_PERSO, user, 'images','thumbnails', filename)) # on le supprime os.remove(os.path.join(DOSSIER_PERSO, user, 'images', filename)) # on le supprime except FileNotFoundError: flash(u'Image {filename} inexistante.'.format(filename=filename), 'error') return redirect(url_for('mygallery.gallery')) @mygallery.route('/remove_publicImage/') @login_required def remove_publicImage(filename): user = '%s' % escape(session['username']) filename = secure_filename(filename) try: os.remove(os.path.join(DOSSIER_PUBLIC, user, 'images','thumbnails', filename)) # on le supprime os.remove(os.path.join(DOSSIER_PUBLIC, user, 'images', filename)) # on le supprime except FileNotFoundError: flash(u'Image {filename} inexistante.'.format(filename=filename), 'error') return redirect(url_for('mygallery.gallery'))