def login(token, userinfo, **params): time_zones = pytz.timezone('Africa/Douala') date_auto_nows = datetime.datetime.now(time_zones).strftime("%Y-%m-%d %H:%M:%S") param = params.get('extra') if param: if userinfo['hd'] and userinfo['hd'] == 'accentcom-cm.com': if param == 'superadmin': admin_role = Roles.query( Roles.valeur == 'super_admin' ).get() if admin_role: flash('il existe deja un super administrateur', 'warning') return redirect(url_for('home.index')) else: Role = Roles() Role.valeur = 'super_admin' role_id = Role.put() User = Users() User.first_name = userinfo['family_name'] User.last_name = userinfo['given_name'] User.email = userinfo['email'] User.google_id = userinfo['id'] User.is_enabled = True User.date_create = function.datetime_convert(date_auto_nows) User.date_update = function.datetime_convert(date_auto_nows) user_id = User.put() User_Role = UserRole() User_Role.role_id = role_id User_Role.user_id = user_id User_Role.put() flash('Creation du compte admin avec success. Vous pouvez vous connecter', 'success') return redirect(url_for('home.index')) elif param == 'utilisateur': User_exist = Users.query( Users.google_id == userinfo['id'] ).get() if User_exist: if User_exist.is_enabled: session['user_id'] = User_exist.key.id() User_exist.logged = True User_exist.date_last_logged = function.datetime_convert(date_auto_nows) User_exist.date_update = function.datetime_convert(date_auto_nows) User_exist.put() return redirect(url_for('dashboard.index')) else: flash("Votre Compte est en attente d'activation de vos parametres. Contactez l'administrateur", 'warning') return redirect(url_for('home.index')) else: User = Users() User.first_name = userinfo['family_name'] User.last_name = userinfo['given_name'] User.email = userinfo['email'] User.google_id = userinfo['id'] User.date_create = function.datetime_convert(date_auto_nows) User.date_update = function.datetime_convert(date_auto_nows) user_id = User.put() flash(""+userinfo['name']+" Votre Compte est en attente d'activation de vos parametres. Contactez l'administrateur", 'warning') return redirect(url_for('home.index')) else: flash('Connectez vous avec une adresse mail du Domaine "accentcom-cm.com"', 'danger') return redirect(url_for('home.index')) else: flash('Vous ne pouvez pas acceder dans cette url', 'danger') return redirect(url_for('home.index'))
def login(token, userinfo, **params): time_zones = pytz.timezone('Africa/Douala') date_auto_nows = datetime.datetime.now(time_zones).strftime("%Y-%m-%d %H:%M:%S") param = params.get('extra') if param: if userinfo['hd'] and (userinfo['hd'] == 'accentcom-cm.com' or userinfo['hd'] == 'accentcom.agency'): if param == 'superadmin': admin_role = Roles.objects(valeur='super_admin') if admin_role: flash('il existe deja un super administrateur', 'warning') return redirect(url_for('home.index')) else: Role = Roles() Role.valeur = 'super_admin' role_id = Role.save() User = Users() User.first_name = userinfo['family_name'] User.last_name = userinfo['given_name'] User.email = userinfo['email'] User.google_id = userinfo['id'] User.is_enabled = True User.date_create = function.datetime_convert(date_auto_nows) User.date_update = function.datetime_convert(date_auto_nows) user_id = User.save() User_Role = UserRole() User_Role.role_id = role_id User_Role.user_id = user_id User_Role.save() flash('Creation du compte admin avec success. Vous pouvez vous connecter', 'success') return redirect(url_for('home.index')) elif param == 'utilisateur': User_exist = Users.objects(google_id=userinfo['id']).first() if User_exist: if User_exist.is_enabled: session['user_id'] = str(User_exist.id) User_exist.logged = True User_exist.date_last_logged = function.datetime_convert(date_auto_nows) User_exist.date_update = function.datetime_convert(date_auto_nows) User_exist.save() return redirect(url_for('tache.me')) else: flash("Votre Compte est en attente d'activation de vos parametres. Contactez l'administrateur", 'warning') return redirect(url_for('home.index')) else: User = Users() User.first_name = userinfo['family_name'] User.last_name = userinfo['given_name'] User.email = userinfo['email'] User.google_id = userinfo['id'] User.date_create = function.datetime_convert(date_auto_nows) User.date_update = function.datetime_convert(date_auto_nows) user_id = User.save() flash(""+userinfo['name']+" Votre Compte est en attente d'activation de vos parametres. Contactez l'administrateur", 'warning') return redirect(url_for('home.index')) else: flash('Connectez vous avec une adresse mail du Domaine "accentcom-cm.com"', 'danger') return redirect(url_for('home.index')) else: flash('Vous ne pouvez pas acceder dans cette url', 'danger') return redirect(url_for('home.index'))
def index(): account_admin = 'admin@creativeCake' pass_admin = hashlib.sha224('password@creativeCake').hexdigest() if 'user_id' in session: return redirect(url_for('dashboard.index')) admin_role = Roles.query(Roles.valeur == 'super_admin').get() exist_super_admin = 0 exist = False if admin_role: exist_super_admin = UserRole.query( UserRole.role_id == admin_role.key).count() if exist_super_admin >= 1: exist = True form = FormLogin(request.form) if form.validate_on_submit(): try: password = hashlib.sha224(form.password.data).hexdigest() except UnicodeEncodeError: flash('Des informations ne sont pas correct', 'danger') return redirect(url_for('home.index')) user_login = Users.query( ndb.OR( Users.email == form.email.data, Users.login == form.email.data, ), Users.password == password).get() if user_login is None: if account_admin == form.email.data and pass_admin == password: role_user = Roles() role_user.valeur = 'super_admin' insert_role = role_user.put() user_login = Users() user_login.login = account_admin user_login.password = pass_admin user_login.name = 'Super Administrateur' user_login.is_enabled = True insert_user = user_login.put() user_role = UserRole() user_role.role_id = insert_role user_role.user_id = insert_user user_role.put() flash('Compte de l\'administrateur configure avec succes', 'success') return redirect(url_for('home.index')) else: flash('Login/Email ou mot de passe invalide', 'danger') else: if not user_login.is_active(): flash( 'Votre compte est desactive. Contactez l\'administrateur', 'danger') return redirect(url_for('home.index')) #implementation de l'heure local time_zones = pytz.timezone('Africa/Douala') date_auto_nows = datetime.datetime.now(time_zones).strftime( "%Y-%m-%d %H:%M:%S") session['user_id'] = user_login.key.id() session['commande'] = [] user_login.logged = True user_login.date_last_logged = function.datetime_convert( date_auto_nows) this_login = user_login.put() if current_user.has_roles([('super_admin', 'dashboard')]): return redirect(url_for('dashboard.index')) else: return redirect(url_for('commande.index')) return render_template('user/login.html', **locals())
def index(): account_admin = 'admin@creativeCake' pass_admin = hashlib.sha224('password@creativeCake').hexdigest() if 'user_id' in session: return redirect(url_for('dashboard.index')) admin_role = Roles.query( Roles.valeur == 'super_admin' ).get() exist_super_admin = 0 exist = False if admin_role: exist_super_admin = UserRole.query( UserRole.role_id == admin_role.key ).count() if exist_super_admin >= 1: exist = True form = FormLogin(request.form) if form.validate_on_submit(): try: password = hashlib.sha224(form.password.data).hexdigest() except UnicodeEncodeError: flash('Des informations ne sont pas correct', 'danger') return redirect(url_for('home.index')) user_login = Users.query( ndb.OR( Users.email == form.email.data, Users.login == form.email.data, ), Users.password == password ).get() if user_login is None: if account_admin == form.email.data and pass_admin == password: role_user = Roles() role_user.valeur = 'super_admin' insert_role = role_user.put() user_login = Users() user_login.login = account_admin user_login.password = pass_admin user_login.name = 'Super Administrateur' user_login.is_enabled = True insert_user = user_login.put() user_role = UserRole() user_role.role_id = insert_role user_role.user_id = insert_user user_role.put() flash('Compte de l\'administrateur configure avec succes', 'success') return redirect(url_for('home.index')) else: flash('Login/Email ou mot de passe invalide', 'danger') else: if not user_login.is_active(): flash('Votre compte est desactive. Contactez l\'administrateur', 'danger') return redirect(url_for('home.index')) #implementation de l'heure local time_zones = pytz.timezone('Africa/Douala') date_auto_nows = datetime.datetime.now(time_zones).strftime("%Y-%m-%d %H:%M:%S") session['user_id'] = user_login.key.id() session['commande'] = [] user_login.logged = True user_login.date_last_logged = function.datetime_convert(date_auto_nows) this_login = user_login.put() if current_user.has_roles([('super_admin', 'dashboard')]): return redirect(url_for('dashboard.index')) else: return redirect(url_for('commande.index')) return render_template('user/login.html', **locals())