Sindbad~EG File Manager

Current Path : /home/numerotech/mcq.numerotech.com/MCQ_APP/core_old/library/
Upload File :
Current File : //home/numerotech/mcq.numerotech.com/MCQ_APP/core_old/library/route_group.py

from core import app
from flask import url_for, session, redirect,request,flash,jsonify,render_template
from datetime import datetime, date, time, timedelta
from functools import wraps
from core.library.auth import Auth
from core.library.helper import Helper
from core.model.UserModel import UserModel
# Flask View decorators
class RouteGroup:
	def login_required(f):
		@wraps(f)
		def wrap(*args, **kwargs):
			# if user is not logged in, redirect to login page      
			if Auth.check():
				return f(*args, **kwargs)
			else:
				if Helper.isAjax(request):
					json = {'msg':'Your Session has been expired. Please <a href="'+ request.host_url + url_for('user.Login') +'">click here to login</a>','status' : 0,'data':''}
					return jsonify(json)
				else:
					return redirect(url_for('user.Login'))
		return wrap
	
	def bo_login_required(f):
		@wraps(f)
		def wrap(*args, **kwargs):
			# if user is not logged in, redirect to login page      
			if Auth.bo_check():
				return f(*args, **kwargs)
			else:
				if Helper.isAjax(request):
					json = {'msg':'Your Session has been expired. Please <a href="'+ request.host_url + url_for('bo.Login') +'">click here to login</a>','status' : 0,'data':''}
					return jsonify(json)
				else:
					return redirect(url_for('bo.Login'))
		return wrap
	
	def conf_required(f):
		@wraps(f)
		def wrap(*args, **kwargs):
			# if user is not logged in, redirect to login page      
			conf_id = request.view_args['conf_id']
			conf_key = request.view_args['conf_key']
			conf_data = Auth.get_conference(conf_id)
			if conf_data and conf_data["conf_key"] == conf_key  :
				return f(*args, **kwargs) # redirect to current url
			else:
				conf_data  = UserModel().get_confe(conf_id,conf_key)
				delData    = UserModel().get_delegate_app(conf_id)
				app_style  = UserModel().GetAppStyle(conf_id)
				del_url    = None
				if delData:
					del_url = delData['app_url']
				if conf_data:
					Auth.conference(conf_data,conf_id)
					if app_style:
						Auth.app_style(app_style,conf_id)
					
					return f(*args, **kwargs) # redirect to current url
				else:
					return ("<html><h1>Invalid URL</h1></html>")
		return wrap

Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists