Added first files
This commit is contained in:
commit
d325960160
12 changed files with 510 additions and 0 deletions
133
app.py
Normal file
133
app.py
Normal file
|
|
@ -0,0 +1,133 @@
|
|||
#!/usr/bin/env python3
|
||||
|
||||
#from paramecio.wsgiapp import app
|
||||
from paramecio2.libraries.mtemplates import PTemplate, env_theme
|
||||
from modules.pages2.models.pages import Page2
|
||||
from paramecio2.libraries.db.webmodel import WebModel
|
||||
from settings import config
|
||||
#from bottle import abort
|
||||
from flask import abort, request
|
||||
from modules.pages2 import pages2_app
|
||||
from paramecio2.libraries.db.coreforms import BaseForm
|
||||
from paramecio2.libraries.mtemplates import env_theme, PTemplate
|
||||
from paramecio2.libraries.urls import make_media_url
|
||||
import os
|
||||
from werkzeug.utils import secure_filename
|
||||
import pathlib
|
||||
|
||||
try:
|
||||
import ujson as json
|
||||
except:
|
||||
import json
|
||||
|
||||
env=env_theme(__file__)
|
||||
|
||||
t=PTemplate(env)
|
||||
|
||||
pages_modules_to_search=[]
|
||||
|
||||
if hasattr(config, 'pages_modules_to_search'):
|
||||
pages_modules_to_search=config.pages_modules_to_search
|
||||
|
||||
for mod in pages_modules_to_search:
|
||||
|
||||
t.env.directories.insert(0, mod.replace('.', '/')+'/templates')
|
||||
|
||||
@pages2_app.route('/page/<int:page_id>/')
|
||||
@pages2_app.route('/page/<path:slug>/')
|
||||
def pages2_home(page_id=0, slug=''):
|
||||
|
||||
conn=WebModel.connection()
|
||||
|
||||
page=Page2(conn)
|
||||
|
||||
page.show_formatted=True
|
||||
|
||||
if page_id:
|
||||
|
||||
page.set_conditions('WHERE id=%s', [page_id])
|
||||
|
||||
if slug:
|
||||
|
||||
page.set_conditions('WHERE slugify=%s', [slug])
|
||||
|
||||
arr_page=page.select_a_row_where()
|
||||
|
||||
conn.close()
|
||||
|
||||
if arr_page:
|
||||
|
||||
arr_final_text=[]
|
||||
|
||||
arr_text=json.loads(arr_page['text'])
|
||||
|
||||
#print(arr_text)
|
||||
"""
|
||||
for jtext in arr_text['blocks']:
|
||||
#{'id': 'Vp0iLVnqq4', 'type': 'image', 'data': {'caption': 'Hi my friends', 'withBorder': False, 'withBackground': False, 'stretched': False, 'file': {'url': '/mediafrom/pages2/images/editor/33abad83-a37b-4d74-b83d-ba7283f0f952.jpg'}}}
|
||||
|
||||
#if jtext['type']=='paragraph':
|
||||
# arr_final_text.append('<p>'+jtext['data']['text']+'</p>')
|
||||
|
||||
match jtext['type']:
|
||||
|
||||
case 'paragraph':
|
||||
arr_final_text.append('<p>'+jtext['data']['text']+'</p>')
|
||||
|
||||
case 'image':
|
||||
arr_final_text.append('<p align="center"><img src="{}" style="width:50%;" title="{}" /><br /><strong>{}</strong></p>'.format(jtext['data']['file']['url'], jtext['data']['caption'], jtext['data']['caption']))
|
||||
"""
|
||||
|
||||
return t.load_template('page.phtml', title_page=arr_page['title'], content_page=arr_text)
|
||||
|
||||
else:
|
||||
|
||||
abort(404)
|
||||
|
||||
@pages2_app.route('/pages/upload_image/', methods=['POST'])
|
||||
def pages2_upload_image():
|
||||
|
||||
"""
|
||||
{
|
||||
"success" : 1,
|
||||
"file": {
|
||||
"url" : "https://www.tesla.com/tesla_theme/assets/img/_vehicle_redesign/roadster_and_semi/roadster/hero.jpg",
|
||||
// ... and any additional fields you want to store, such as width, height, color, extension, etc
|
||||
}
|
||||
}
|
||||
"""
|
||||
#print(request.files.keys())
|
||||
success=0
|
||||
|
||||
new_url=''
|
||||
|
||||
if 'image' in request.files:
|
||||
|
||||
file=request.files['image']
|
||||
|
||||
images_dir='./modules/pages2/media/images/editor'
|
||||
|
||||
if not os.path.isdir(images_dir):
|
||||
#os.mkdir(images_dir)
|
||||
pathlib.Path(images_dir).mkdir(0o755, True)
|
||||
|
||||
filename=secure_filename(file.filename)
|
||||
|
||||
file.save(os.path.join(images_dir, filename))
|
||||
success=1
|
||||
new_url=make_media_url('images/editor/'+filename, 'pages2')
|
||||
|
||||
print({'success': success, 'file': {'url': new_url}})
|
||||
return {'success': success, 'file': {'url': new_url}}
|
||||
|
||||
|
||||
|
||||
@pages2_app.route('/home/')
|
||||
def pages_home():
|
||||
|
||||
return ""
|
||||
|
||||
|
||||
if config.default_module=="pages2":
|
||||
|
||||
home=pages2_app.route("/")(pages2_home)
|
||||
Loading…
Add table
Add a link
Reference in a new issue