Sindbad~EG File Manager
from sqlalchemy import create_engine, MetaData, Table, insert, select,update,delete,text
from sqlalchemy.sql import and_, or_
from core import app
from .. import Cryptography,Auth
from core.library.helper import Helper
import json
engine = create_engine(app.config['DATABASE_URI'],pool_size=5000,pool_pre_ping=True,pool_recycle=3600)
primay_emgine = create_engine(app.config['DATABASE_URI_PRIMARY'],pool_size=5000,pool_pre_ping=True,pool_recycle=3600)
class facultyModel():
def __init__(self):
try:
self.meta = MetaData()
self.users = Table("users", self.meta, autoload_with=primay_emgine)
except Exception as e:
print(e)
def get_faculty_email_data(self,email,society_id):
with primay_emgine.connect() as conn:
stmt = text("select * from users where email = '{}' and society_id = {}".format(email,society_id))
results = conn.execute(stmt).one_or_none()
results = dict(results._mapping) if results else None
return results
def get_otp_random(self,user_id):
with primay_emgine.connect() as conn:
stmt = text("select otp from users where user_id = {} ".format(user_id))
results = conn.execute(stmt).one_or_none()
results = dict(results._mapping) if results else None
conn.close()
return results
def update_member(self,user_id,data):
with primay_emgine.connect() as conn:
stmt = self.users.update().values(data).where(self.users.c.user_id.in_([user_id]))
select_stmt = text("select * from users where user_id = "+str(user_id)+" ")
result = conn.execute(stmt)
conn.commit()
select_result = conn.execute(select_stmt).one_or_none()
result_2 = dict(select_result._mapping) if select_result else None
return result_2
def get_member(self,user_id):
with primay_emgine.connect() as conn:
stmt = text("select * from users where user_id = {} ".format(user_id))
results = conn.execute(stmt).one_or_none()
results = dict(results._mapping) if results else None
return results
def get_workshop_data(self,conf_id):
with engine.connect() as conn:
stmt = text(f"select * from m_workshop where conf_id = {conf_id};")
results = conn.execute(stmt).all()
results = [dict(r._mapping) for r in results] if results else None
return results
def get_course_data(self,user_id,conf_id):
with engine.connect() as conn:
stmt = text(f"select * from workshopcourses w left join facultycourse f on w.WorkshopCourseId = f.course_id and f.user_id = {user_id} where w.conf_id = {conf_id} order by order_no,WorkshopId")
print(stmt)
results = conn.execute(stmt).all()
results = [dict(r._mapping) for r in results] if results else None
return results
def get_user_workshop_data(self,user_id):
with engine.connect() as conn:
stmt = text(f"select * from m_workshop w inner join facultycourse f on w.WorkshopId = f.Workshop_id and f.user_id = {user_id} group by Workshop_id;")
results = conn.execute(stmt)
results = [dict(r._mapping) for r in results] if results else None
return results
def get_user_course_data(self,user_id):
with engine.connect() as conn:
stmt = text(f"select * from workshopcourses w inner join facultycourse f on w.WorkshopCourseId = f.course_id and f.user_id = {user_id} order by order_no,CourseName")
results = conn.execute(stmt)
results = [dict(r._mapping) for r in results] if results else None
return results
def get_old_coursedata(self,workshopid,user_id):
with engine.connect() as conn:
stmt = text(f"select * from facultycourse where Workshop_id = {workshopid} and user_id = {user_id} ;")
results = conn.execute(stmt)
results = [dict(r._mapping) for r in results] if results else None
return results
def insert_course_db(self,insert_fellowship,workshopid,user_id):
with engine.connect() as conn:
stmt_1 = str("INSERT INTO facultycourse (Workshop_id,user_id,course_id) VALUES")
row_val = []
for i in insert_fellowship:
row_val.append(('(' + "'{}','{}','{}'" +')').format(workshopid,user_id,i))
stmt_1 = stmt_1 + ",".join(row_val)
stmt_1 = text(stmt_1)
result = conn.execute(stmt_1)
conn.commit()
return result
def delete_course_db(self,delete_fellowship,user_id):
with engine.connect() as conn:
stmt = text("delete from facultycourse WHERE course_id IN("+str(delete_fellowship)+") and user_id = "+str(user_id))
result = conn.execute(stmt)
conn.commit()
return result
app.jinja_env.globals.update(facultyModel=facultyModel)
Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists