117 lines
		
	
	
		
			4.1 KiB
		
	
	
	
		
			Python
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			117 lines
		
	
	
		
			4.1 KiB
		
	
	
	
		
			Python
		
	
	
		
			Executable File
		
	
	
	
	
#!/usr/local/bin/python3
 | 
						|
# -*- coding: utf-8 -*-
 | 
						|
from flask import Flask, request, flash, render_template, url_for, session, redirect, abort, make_response, send_file, send_from_directory
 | 
						|
from werkzeug.utils import secure_filename
 | 
						|
from markupsafe import escape
 | 
						|
from wtforms import BooleanField, StringField, IntegerField, PasswordField, validators
 | 
						|
import sqlite3
 | 
						|
from flask_bcrypt import Bcrypt
 | 
						|
from os import system
 | 
						|
 | 
						|
 | 
						|
from views.blog import blog
 | 
						|
from views.filesupload import filesupload
 | 
						|
from views.inscription import inscription
 | 
						|
from views.profil import profil
 | 
						|
from views.logs import logs
 | 
						|
from views.loginlogout import loginlogout
 | 
						|
from views.gallery import mygallery
 | 
						|
 | 
						|
from tools.databaseinit import init_db, init_dir, db_migrate
 | 
						|
 | 
						|
import glob, os, sys, time
 | 
						|
 | 
						|
app = Flask( 'pywallter' )
 | 
						|
app.config.from_pyfile('config.py')
 | 
						|
bcrypt = Bcrypt(app)
 | 
						|
 | 
						|
init_db()
 | 
						|
db_migrate()
 | 
						|
if init_dir():
 | 
						|
    print ("Le repertoire des utilisateurs a été créer")
 | 
						|
 | 
						|
 | 
						|
#### Variables Globales #########################################################################
 | 
						|
 | 
						|
 | 
						|
DOSSIER_PERSO= app.config['DOSSIER_APP']
 | 
						|
 | 
						|
extensionimg = app.config['EXT_IMG']
 | 
						|
MAIL_SERVER = app.config['MAIL_SERVER']
 | 
						|
XMPP_SERVER = app.config['XMPP_SERVER']
 | 
						|
#################################################################################################
 | 
						|
 | 
						|
xmpp_server_not_installed = system('whereis prosodyctl')
 | 
						|
mail_server_not_installed = system('whereis set_mail_alias') + system('whereis set_mail_passwd') + \
 | 
						|
    system('whereis dovecot') + system('whereis smtpd')
 | 
						|
 | 
						|
if XMPP_SERVER and xmpp_server_not_installed :
 | 
						|
    print ("Vous avez activé la prise en charge du protocole XMPP mais prosody n'est pas installé")
 | 
						|
    print ("Prosody doit être installé pour que pywaller puisse gérer les comptes XMPP")
 | 
						|
    print ("pywallter ne peut démarrer en l'état, installez prosody ou désactiver la fonction XMPP")
 | 
						|
    exit(1)
 | 
						|
        
 | 
						|
 | 
						|
if MAIL_SERVER and mail_server_not_installed  :
 | 
						|
    print("Vous avez activé la prise en charge des compte mail mais il manque des applications sur votre serveur pour que cela fonctionne")
 | 
						|
    print(" Pywallter ne peut démarrer en l'état, désactivez la fonction Mail ou/et installé et confiurer les programme Dovecot et opensmtpd ainsi que les scripts pour gérer les comptes mails")
 | 
						|
    exit(1)
 | 
						|
 | 
						|
 | 
						|
app.register_blueprint(inscription)
 | 
						|
app.register_blueprint(blog)
 | 
						|
app.register_blueprint(filesupload)
 | 
						|
app.register_blueprint(profil)
 | 
						|
app.register_blueprint(logs)
 | 
						|
app.register_blueprint(loginlogout)
 | 
						|
app.register_blueprint(mygallery)
 | 
						|
 | 
						|
 | 
						|
 | 
						|
 | 
						|
 | 
						|
def create_app():
 | 
						|
 | 
						|
    app = Flask( 'pywallter' )
 | 
						|
    app.config.from_pyfile('config.py')
 | 
						|
    bcrypt = Bcrypt(app)
 | 
						|
    xmpp_server_not_installed = system('whereis prosodyctl')
 | 
						|
    mail_server_not_installed = system('whereis set_mail_alias') + system('whereis set_mail_passwd') +  system('whereis smtpctl')
 | 
						|
 | 
						|
    if XMPP_SERVER and xmpp_server_not_installed :
 | 
						|
        print ("Vous avez activé la prise en charge du protocole XMPP mais prosody n'est pas installé")
 | 
						|
        print ("Prosody doit être installé pour que pywaller puisse gérer les comptes XMPP")
 | 
						|
        print ("pywallter ne peut démarrer en l'état installé prosody ou désactiver la fonction XMPP")
 | 
						|
        exit(1)
 | 
						|
        
 | 
						|
 | 
						|
    if MAIL_SERVER and mail_server_not_installed :
 | 
						|
        print("Vous avez activé la prise en charge des comptes mail mais il manque des applications sur votre serveur pour que cela fonctionne")
 | 
						|
        print(" Pywallter ne peut démarrer en l'état désactivé la fonction Mail ou/et installé et confiurer les programme Dovecot et opensmtpd ainsi que les scripts pour gérer les comptes mails")
 | 
						|
        exit(1)
 | 
						|
        
 | 
						|
    init_db()
 | 
						|
    db_migrate()
 | 
						|
    if init_dir():
 | 
						|
        print ("Le repertoire des utilisateurs a été créer")
 | 
						|
 | 
						|
 | 
						|
 | 
						|
    DOSSIER_PERSO= app.config['DOSSIER_APP']
 | 
						|
 | 
						|
    extensionimg = app.config['EXT_IMG']
 | 
						|
 | 
						|
 | 
						|
    app.register_blueprint(inscription)
 | 
						|
    app.register_blueprint(blog)
 | 
						|
    app.register_blueprint(filesupload)
 | 
						|
    app.register_blueprint(profil)
 | 
						|
    app.register_blueprint(logs)
 | 
						|
    app.register_blueprint(loginlogout)
 | 
						|
    app.register_blueprint(mygallery)
 | 
						|
 | 
						|
    return app
 | 
						|
 | 
						|
if __name__ == '__main__' :
 | 
						|
    app.run(host='192.168.7.146', port=8000, debug=True)
 |