Sindbad~EG File Manager

Current Path : /home/numerotech/mobileapp.aios-scientificcommittee.org/aiosapp/core/controller/
Upload File :
Current File : //home/numerotech/mobileapp.aios-scientificcommittee.org/aiosapp/core/controller/APPController.py

from flask import Flask, request, Blueprint, jsonify, redirect, url_for,flash, render_template,session
from core.model.AppModel import AppModel
from random import randint
import datetime
from datetime import timedelta,date,datetime
import  json
from flask import session, app

import hashlib
from .. import config
import flask
from urllib.parse import unquote
import html
from html import unescape



app = Blueprint('mobileapp', __name__)

@app.route('/menu_table', methods = ["GET", "POST"])
def MenuTable():
	updated_at = request.values.get("last_sync_at") or None
	if updated_at :
		updated_at =unquote(updated_at)
		
	menu_data = AppModel().getMenu(updated_at)
	if menu_data:
		return json.dumps(menu_data,default=str)
	else :
		menu_data = []
		return json.dumps(menu_data,default=str)


@app.route('/pages_table', methods = ["GET", "POST"])
def PageTable():
	updated_at = request.values.get("last_sync_at") or None
	if updated_at :
		updated_at =unquote(updated_at)
	page_data = AppModel().getPage(updated_at)
	if page_data:
# 		print(type(page_data))
		for index ,value in enumerate(page_data) :
			page_data_1 = value['page_data']
			if page_data_1 and  "\n" in page_data_1 :
				page_data_1        = page_data_1.replace("\n","")
				value['page_data'] = page_data_1.replace('\"','"')
				
				
		return json.dumps(page_data,default=str)
	else :
		page_data =[]
		return json.dumps(page_data,default=str)


@app.route('/asset_table', methods = ["GET", "POST"])
def AssetTable():
	updated_at = request.values.get("last_sync_at") or None
	if updated_at :
		updated_at =unquote(updated_at)
	asset_data = AppModel().getAsset(updated_at)
	if asset_data:
		return json.dumps(asset_data,default=str)
	else :
		asset_data = []
		return json.dumps(asset_data,default=str)

@app.route('/pageasset_table', methods = ["GET", "POST"])
def PageAssetTable():
	updated_at = request.values.get("last_sync_at") or None
	if updated_at :
		updated_at =unquote(updated_at)
	page_asset_map_data = AppModel().getPageAssetMap(updated_at)
	if page_asset_map_data:
		return json.dumps(page_asset_map_data,default=str)
	else :
		page_asset_map_data = []
		return json.dumps(page_asset_map_data,default=str)
		
# https://stackoverflow.com/questions/5099550/how-to-check-an-android-device-is-hdpi-screen-or-mdpi-screen
@app.route('/splash_screen', methods = ["GET", "POST"])
def SplashScreen():
	splash_screen_1 = {}
	updated_at  = request.values.get('updated_at') or None
	device_type = request.values.get('device_type') or None
	screen_size = request.values.get('screen_size') or None
	try:
		splash_screen = AppModel().getSplashScreenData(updated_at,device_type,screen_size)
		if splash_screen:
			return json.dumps(splash_screen,default=str)
		else :
			splash_screen = []
		
	except Exception as e:
		splash_screen = []

	# splash_screen_1 =splash_screen_1.replace('\"' , '"')	
	
	return json.dumps(splash_screen,default=str)


@app.route('/splash_screen_ios', methods = ["GET", "POST"])
def SplashScreenIOS():
	splash_screen_1 = {}
	updated_at  = request.values.get('updated_at') or None
	device_type = request.values.get('device_type') or None
	screen_size = request.values.get('screen_size') or None
	try:
		splash_screen = AppModel().getSplashScreenDataIOS(updated_at,device_type,screen_size)
		if splash_screen:
			return json.dumps(splash_screen,default=str)
		else :
			splash_screen = []
		
	except Exception as e:
		splash_screen = []

	# splash_screen_1 =splash_screen_1.replace('\"' , '"')	
	
	return json.dumps(splash_screen,default=str)




###### learning for IOS api with python ########
@app.route('/signup_table', methods = ["GET", "POST"])
def SignupTable():
	updated_at = request.values.get('updated_at') or None
	signup_data = AppModel().getSignup(updated_at)
	if signup_data:
		signup_data= signup_data
		
	else :
		signup_data =[]
		
	return jsonify(signup_data)
		# return json.dumps(page_data,default=str)

@app.route('/save_signup_table', methods = ["GET", "POST"])
def SaveSignupTable():
	fname = request.values.get('fname') or None
	lname = request.values.get('lname') or None
	phone = request.values.get('phone') or None
	email = request.values.get('email') or None
	data  = {'fname' : fname,'lname' : lname,'phone' : phone , 'email' : email}
	saveData  = AppModel().SaveSignupData(data)
	if saveData:
		return jsonify(saveData)
		# return json.dumps(saveData,default=str)
	else :
		saveData =[]
		return jsonify(saveData)
		# return json.dumps(saveData,default=str)
		


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