Sindbad~EG File Manager
from flask import request, Blueprint, jsonify, redirect, url_for,flash, render_template,session,json,render_template_string,Response
from core.model.DelegateAdminModel import DelegateAdminModel
from core.model.DelegateAdminModel import DelegateAdminModel
from core.model.MemAppModel import MemAppModel
from .. import Cryptography,Helper,Auth,RouteGroup,floder_name,template_path,backoff_template,cpanel_api_url,cpanel_username,cpanel_password,cpanel_api_token
from datetime import timedelta,date,datetime,time
import os,sys
from flask import make_response
from os.path import join, dirname, realpath
import ast
from collections import defaultdict
import math
from core import app
from core.library.helper import Helper
from core.library.email import EMAIL
import shutil
import glob
import uuid
import re
from urllib.parse import urlparse
import requests
from requests.auth import HTTPBasicAuth
from PIL import Image
import os
app = Blueprint('delegate',__name__)
@app.route('/<conf_id>/<society_id>/edit_delgate_app',methods=["POST","GET"])
def EditDelgateApp(conf_id,society_id):
societies = DelegateAdminModel().get_societies_config()
conf = MemAppModel().Get_Conf()
societie_data = DelegateAdminModel().get_societies_config_by_society_id(conf_id,society_id)
get_mail_settings = DelegateAdminModel().get_mail_settings()
return render_template('delegate_template/delegate_config.html',conf_id=conf_id,society_id=society_id,data=societies,societie_data=societie_data,conf=conf,get_mail_settings=get_mail_settings)
@app.route('/get_conf_data_by_society_id_config',methods=["GET","POST"])
def GetConfDataBySocietyIdConfig():
try:
society_id = request.values.get('society_id') or None
conf_data_by_society = DelegateAdminModel().get_conf_data_config(society_id)
if conf_data_by_society :
datas = {"conf_data_by_society":conf_data_by_society,"msg":"success","status" : 1}
else:
datas = {"conf_data_by_society":"","msg":"","status" : 2}
return json.dumps(datas,default=str)
except Exception as e:
data = {"conf_data_by_society":"","msg": str(e),"status":400}
return json.dumps(data,default = str)
@app.route('/create_duplicate_app_config',methods=["GET","POST"])
def create_duplicate_app_config():
try:
conf_id = request.values.get('conf_id') or None
society_id = request.values.get('society_id') or None
get_conf_id = request.values.get('get_conf_id') or None
conf_data = DelegateAdminModel().duplicate_app_config(conf_id,society_id,get_conf_id)
last_insert_id = conf_data[0]['last_insert_id']
if last_insert_id :
datas = {"last_insert_id":last_insert_id,"msg":"success","status" : 1}
else:
datas = {"last_insert_id":"","msg":"","status" : 2}
return json.dumps(datas,default=str)
except Exception as e:
data = {"last_insert_id":"","msg": str(e),"status":400}
return json.dumps(data,default = str)
@app.route('/save_update_app_config',methods=["GET","POST"])
def SaveUpdateAppConfig():
try:
conf_id = request.form.get('conf_id') or None
society_id = request.form.get('society_id') or None
app_type_id = request.form.get('app_type_id') or 2
app_title = request.form.get('app_title') or None
app_url = request.form.get('app_url') or None
is_autologin = request.form.get('is_autologin') or None
app_host = request.form.get('app_host') or None
app_domain = request.form.get('app_domain') or None
input_conf_id = request.form.get('input_conf_id') or conf_id
input_society_id = request.form.get('input_society_id') or society_id
is_active = request.form.get('is_active') or None
app_start_at = request.form.get('app_start_at') or None
app_end_at = request.form.get('app_end_at') or None
# created_at = request.form.get('created_at') or None
# updated_at = request.form.get('updated_at') or None
index_content = request.form.get('index_content') or None
paymentgateway_appmaster_id = request.form.get('paymentgateway_appmaster_id') or None
paymentgateway_is_test = request.form.get('paymentgateway_is_test') or None
paymentgateway_api_url = request.form.get('paymentgateway_api_url') or None
paymentgateway_response_url = request.form.get('paymentgateway_response_url') or None
is_email_enable = request.form.get('is_email_enable') or None
mail_setting_id = request.form.get('mail_setting_id') or None
app_style = request.form.get('app_style') or None
is_daily_report_mail = request.form.get('is_daily_report_mail') or None
google_sheet_link = request.form.get('google_sheet_link') or None
del_subheader_text = request.form.get('del_subheader_text') or None
is_gen_number = request.form.get('is_gen_number') or None
digital_badge_commit = request.form.get('digital_badge_commit') or None
b_ref_prefix = request.form.get('b_ref_prefix') or None
is_disable_otp = request.form.get('is_disable_otp') or None
additional_tariff = request.form.get('additional_tariff') or None
photo_whatsapp_content = request.form.get('photo_whatsapp_content') or None
counter_set_whatsapp_content = request.form.get('counter_set_whatsapp_content') or None
is_del_bo_proof_approve = request.form.get('is_del_bo_proof_approve') or 0
is_del_photograph_receiving = request.form.get('is_del_photograph_receiving') or 0
is_del_bo_display_role = request.form.get('is_del_bo_display_role') or 0
data = {
'app_type_id' : app_type_id ,
'conf_id' : input_conf_id,
'society_id' : input_society_id,
'app_title' : app_title,
'app_url' : app_url,
'is_autologin' : is_autologin,
'app_host' : app_host,
'app_domain' : app_domain,
'is_active' : is_active,
'app_start_at' : app_start_at,
'app_end_at' : app_end_at,
'index_content' : index_content,
'paymentgateway_appmaster_id' : paymentgateway_appmaster_id,
'paymentgateway_is_test' : paymentgateway_is_test,
'paymentgateway_api_url' : paymentgateway_api_url,
'paymentgateway_response_url' : paymentgateway_response_url,
'is_email_enable' : is_email_enable,
'mail_setting_id' : mail_setting_id,
'app_style' : app_style,
'is_daily_report_mail' : is_daily_report_mail,
'google_sheet_link' : google_sheet_link,
'del_subheader_text' : del_subheader_text,
'is_gen_number' : is_gen_number,
'digital_badge_commit' : digital_badge_commit,
'b_ref_prefix' : b_ref_prefix,
'is_disable_otp' : is_disable_otp,
'additional_tariff' : additional_tariff,
'photo_whatsapp_content' : photo_whatsapp_content,
'counter_set_whatsapp_content' : counter_set_whatsapp_content,
'is_del_bo_proof_approve' : is_del_bo_proof_approve,
'is_del_photograph_receiving' : is_del_photograph_receiving,
'is_del_bo_display_role' : is_del_bo_display_role
}
societie_data = DelegateAdminModel().get_societies_config_by_society_id(conf_id,society_id)
now = datetime.now()
dt_string = now.strftime("%Y-%m-%d %H:%M:%S")
created_at_date = {'created_at': dt_string}
updated_at_date = {'updated_at': dt_string}
if societie_data:
data.update(updated_at_date)
else:
data.update(created_at_date)
return_data = DelegateAdminModel().insert_update_config_data(app_type_id,conf_id,society_id,societie_data,data)
config_data = return_data[0]
status = return_data[1]['status']
if config_data :
datas = {"config_data":config_data,"msg":"success","status" : status}
else:
datas = {"config_data":"","msg":"","status" : 3}
return json.dumps(datas,default=str)
except Exception as e:
data = {"config_data":"","msg": str(e),"status":400}
return json.dumps(data,default = str)
@app.route('/delegate_app_list', methods = ["GET","POST"])
def DelegateAppList():
userdata = Auth.user()
if userdata and userdata['admin_email']:
apps = DelegateAdminModel().get_delegate_applications(userdata['admin_email'])
count = DelegateAdminModel().get_delegate_status_count()
return render_template('delegate_template/delegate_app_list.html',apps=apps,count=count)
else:
return redirect(url_for("dashboard.AdminPanelLogin"))
@app.route('/<int:conf_id>/<conf_key>/view_tariff', methods = ["GET", "POST"])
def ViewTariff(conf_id,conf_key):
userdata = Auth.user()
if userdata and userdata['admin_email']:
get_conf = DelegateAdminModel().get_conference(conf_id,conf_key)
addon_name_data = DelegateAdminModel().get_addon_name(conf_id)
return render_template('delegate_template/view_tariff.html',get_conf=get_conf,conf_id=conf_id,conf_key=conf_key,addon_name_data=addon_name_data)
else:
return redirect(url_for("dashboard.AdminPanelLogin"))
@app.route('/<int:conf_id>/<conf_key>/post_tariff', methods = ["GET", "POST"])
def PostTariff(conf_id,conf_key):
conf = DelegateAdminModel().get_conference(conf_id,conf_key)
now = datetime.now()
addon_name = request.values.get('addon_name') or None
get_tariff_data = DelegateAdminModel().get_tariff_data(conf_id,addon_name)
html_data = render_template('delegate_template/view_tariff_table.html',conf=conf,tariff_data=get_tariff_data,current_dt=now)
data = {"html_data":html_data,"msg":"Success","status":1}
json_data = json.dumps(data,default=str)
return json_data
@app.route('<int:conf_id>/<conf_key>/update_addon', methods = ["GET", "POST"])
def BoUpdatedAddon(conf_id,conf_key):
now = datetime.now()
curr_dt = now.strftime("%Y-%m-%d %H:%M:%S")
conf = DelegateAdminModel().get_conference(conf_id,conf_key)
addon_id = request.values.get("addon_id")
start_by = request.values.get('start_by',None )
end_by = request.values.get('end_by', None )
if addon_id:
send_mail = request.values.get('send_mail') or 0
data_1 = {'start_by':start_by,'end_by':end_by,'updated_at':curr_dt }
addon_data = DelegateAdminModel().update_addon_data(conf_id,addon_id,data_1,curr_dt)
if addon_data:
data_1 = {"status" : 1 , "msg" : "Updated Successfully"}
else :
data_1 = {"status" : 2 , "msg" : "Updated Failed"}
else:
data_1 = {"status" : 2 , "msg" : "Updated Failed"}
return json.dumps(data_1 ,default=str)
Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists