modern #2

Merged
absurdo merged 38 commits from modern into master 2025-03-15 00:00:11 +00:00
108 changed files with 250 additions and 257 deletions
Showing only changes of commit 50034d9ad6 - Show all commits

View file

@ -2,8 +2,7 @@ include paramecio/*.py
include README.md include README.md
include LICENSE include LICENSE
include REQUIREMENTS include REQUIREMENTS
recursive-include paramecio/citoplasma * recursive-include paramecio/libraries *
recursive-include paramecio/frontend * recursive-include paramecio/frontend *
recursive-include paramecio/cromosoma *
recursive-include paramecio/settings * recursive-include paramecio/settings *
recursive-include paramecio/modules * recursive-include paramecio/modules *

View file

@ -7,7 +7,7 @@ import getpass
import re import re
from pathlib import Path from pathlib import Path
from base64 import b64encode from base64 import b64encode
from paramecio.cromosoma.webmodel import WebModel from paramecio.libraries.db.webmodel import WebModel
from paramecio.modules.admin.models.admin import UserAdmin from paramecio.modules.admin.models.admin import UserAdmin
from subprocess import call from subprocess import call
from urllib.parse import urlparse from urllib.parse import urlparse

View file

@ -1,5 +1,5 @@
from paramecio.citoplasma.mtemplates import env_theme, PTemplate from paramecio.libraries.mtemplates import env_theme, PTemplate
from paramecio.citoplasma.urls import make_url from paramecio.libraries.urls import make_url
from bottle import request from bottle import request
from settings import config from settings import config
from paramecio.wsgiapp import app from paramecio.wsgiapp import app

View file

@ -1,6 +1,6 @@
#!/usr/bin/env python3 #!/usr/bin/env python3
from paramecio.citoplasma.check_i18n import start from paramecio.libraries.check_i18n import start
start() start()

View file

@ -1,6 +1,6 @@
#!/usr/bin/env python3 #!/usr/bin/env python3
from paramecio.cromosoma.dbadmin import start from paramecio.libraries.db.dbadmin import start
start() start()

View file

@ -1,6 +1,6 @@
#!/usr/bin/env python3 #!/usr/bin/env python3
from paramecio.citoplasma.i18n import I18n from paramecio.libraries.i18n import I18n
I18n.l['en-US']=I18n.l.get('en-US', {}) I18n.l['en-US']=I18n.l.get('en-US', {})

View file

@ -1,6 +1,6 @@
#!/usr/bin/env python3 #!/usr/bin/env python3
from paramecio.citoplasma.i18n import I18n from paramecio.libraries.i18n import I18n
I18n.l['en-US']=I18n.l.get('en-US', {}) I18n.l['en-US']=I18n.l.get('en-US', {})

View file

@ -4,18 +4,18 @@ from bottle import route, get, post, run, default_app, abort, request, response,
from settings import config from settings import config
#from beaker.middleware import SessionMiddleware #from beaker.middleware import SessionMiddleware
from mimetypes import guess_type from mimetypes import guess_type
from paramecio.cromosoma.webmodel import WebModel from paramecio.libraries.db.webmodel import WebModel
from paramecio.citoplasma.datetime import set_timezone from paramecio.libraries.datetime import set_timezone
#from itsdangerous import JSONWebSignatureSerializer #from itsdangerous import JSONWebSignatureSerializer
from paramecio.citoplasma.keyutils import create_key_encrypt, create_key_encrypt_256, create_key from paramecio.libraries.keyutils import create_key_encrypt, create_key_encrypt_256, create_key
from paramecio.wsgiapp import app from paramecio.wsgiapp import app
#from paramecio.citoplasma.sessions import after_session #from paramecio.libraries.sessions import after_session
modules_pass=False modules_pass=False
#app.reset() #app.reset()
#from paramecio.citoplasma.sessions import generate_session #from paramecio.libraries.sessions import generate_session
#Prepare links for static. #Prepare links for static.
#WARNING: only use this feature in development, not in production. #WARNING: only use this feature in development, not in production.
@ -113,7 +113,7 @@ def prepare_app():
set_timezone() set_timezone()
if error_reporting: if error_reporting:
from paramecio.citoplasma.error_reporting import ErrorReportingPlugin from paramecio.libraries.error_reporting import ErrorReportingPlugin
app.install(ErrorReportingPlugin()) app.install(ErrorReportingPlugin())

View file

@ -1,14 +1,14 @@
#!/usr/bin/env python3 #!/usr/bin/env python3
from collections import OrderedDict from collections import OrderedDict
from paramecio.citoplasma.sessions import get_session from paramecio.libraries.sessions import get_session
from paramecio.citoplasma.urls import make_url from paramecio.libraries.urls import make_url
from paramecio.citoplasma.i18n import I18n from paramecio.libraries.i18n import I18n
from paramecio.citoplasma.httputils import GetPostFiles from paramecio.libraries.httputils import GetPostFiles
from paramecio.citoplasma.keyutils import create_key_encrypt, create_key_encrypt_256, create_key from paramecio.libraries.keyutils import create_key_encrypt, create_key_encrypt_256, create_key
from paramecio.cromosoma.formsutils import generate_csrf from paramecio.libraries.db.formsutils import generate_csrf
from bottle import response,request from bottle import response,request
from paramecio.cromosoma.webmodel import WebModel from paramecio.libraries.db.webmodel import WebModel
from time import time from time import time
try: try:

View file

@ -1,10 +1,10 @@
#!/usr/bin/env python3 #!/usr/bin/env python3
from paramecio.citoplasma.mtemplates import PTemplate from paramecio.libraries.mtemplates import PTemplate
from paramecio.citoplasma.adminutils import check_login, get_language, get_menu from paramecio.libraries.adminutils import check_login, get_language, get_menu
from paramecio.cromosoma.webmodel import WebModel from paramecio.libraries.db.webmodel import WebModel
from paramecio.citoplasma.sessions import get_session from paramecio.libraries.sessions import get_session
from paramecio.citoplasma.i18n import I18n from paramecio.libraries.i18n import I18n
try: try:

View file

@ -5,7 +5,7 @@ import os
import re import re
from pathlib import Path from pathlib import Path
from importlib import import_module from importlib import import_module
from paramecio.citoplasma.i18n import I18n from paramecio.libraries.i18n import I18n
from settings import config from settings import config
pattern=re.compile('^\w+\.(py|html|phtml|js)$') pattern=re.compile('^\w+\.(py|html|phtml|js)$')
@ -91,7 +91,7 @@ def start():
file_lang="#!/usr/bin/env python3\n\n" file_lang="#!/usr/bin/env python3\n\n"
file_lang+="from paramecio.citoplasma.i18n import I18n\n\n" file_lang+="from paramecio.libraries.i18n import I18n\n\n"
for lang in I18n.dict_i18n: for lang in I18n.dict_i18n:

View file

@ -6,7 +6,7 @@ try:
from settings import config from settings import config
except: except:
config={} config={}
#from paramecio.citoplasma.sessions import get_session #from paramecio.libraries.sessions import get_session
from os import environ from os import environ
"""Simple hook for timedate functions from Arrow datetime module. Maybe in the future use native python datetime functions or other libraries. Is simply an abstraction for not depend of particular library. """Simple hook for timedate functions from Arrow datetime module. Maybe in the future use native python datetime functions or other libraries. Is simply an abstraction for not depend of particular library.

View file

@ -17,9 +17,9 @@ You should have received a copy of the GNU Affero General Public License
along with this program. If not, see <https://www.gnu.org/licenses/>. along with this program. If not, see <https://www.gnu.org/licenses/>.
""" """
from paramecio.cromosoma.webmodel import PhangoField from paramecio.libraries.db.webmodel import PhangoField
from paramecio.cromosoma import coreforms from paramecio.libraries.db import coreforms
from paramecio.citoplasma.i18n import I18n from paramecio.libraries.i18n import I18n
#from bs4 import BeautifulSoup #from bs4 import BeautifulSoup
import bleach import bleach

View file

@ -29,7 +29,7 @@ from datetime import date
from pathlib import Path from pathlib import Path
from colorama import init, Fore, Back, Style from colorama import init, Fore, Back, Style
from importlib import import_module, reload from importlib import import_module, reload
from paramecio.cromosoma.webmodel import WebModel from paramecio.libraries.db.webmodel import WebModel
sys.path.insert(0, os.path.realpath('.')) sys.path.insert(0, os.path.realpath('.'))
try: try:

View file

@ -1,4 +1,4 @@
from paramecio.cromosoma.webmodel import PhangoField,WebModel from paramecio.libraries.db.webmodel import PhangoField,WebModel
import json import json
class ArrayField(PhangoField): class ArrayField(PhangoField):

View file

@ -1,5 +1,5 @@
from paramecio.cromosoma.corefields import IntegerField from paramecio.libraries.db.corefields import IntegerField
from paramecio.cromosoma.extraforms.colorform import ColorForm from paramecio.libraries.db.extraforms.colorform import ColorForm
class ColorField(IntegerField): class ColorField(IntegerField):

View file

@ -1,6 +1,6 @@
from paramecio.cromosoma.corefields import PhangoField from paramecio.libraries.db.corefields import PhangoField
from paramecio.citoplasma import datetime from paramecio.libraries import datetime
from paramecio.cromosoma.extraforms.dateform import DateForm from paramecio.libraries.db.extraforms.dateform import DateForm
class DateField(PhangoField): class DateField(PhangoField):

View file

@ -1,6 +1,6 @@
from paramecio.cromosoma.corefields import PhangoField from paramecio.libraries.db.corefields import PhangoField
from paramecio.citoplasma import datetime from paramecio.libraries import datetime
from paramecio.cromosoma.extraforms.dateform import DateForm from paramecio.libraries.db.extraforms.dateform import DateForm
class DateTimeField(PhangoField): class DateTimeField(PhangoField):

View file

@ -1,4 +1,4 @@
from paramecio.cromosoma.webmodel import WebModel, PhangoField from paramecio.libraries.db.webmodel import WebModel, PhangoField
try: try:
import ujson as json import ujson as json

View file

@ -1,4 +1,4 @@
from paramecio.cromosoma.corefields import CharField from paramecio.libraries.db.corefields import CharField
import re import re
mail_pattern=re.compile(r"\w[\w\.-]*@\w[\w\.-]+\.\w+") mail_pattern=re.compile(r"\w[\w\.-]*@\w[\w\.-]+\.\w+")

View file

@ -1,17 +1,17 @@
import os import os
import sys import sys
from pathlib import Path from pathlib import Path
from paramecio.cromosoma.corefields import CharField from paramecio.libraries.db.corefields import CharField
from paramecio.cromosoma.extraforms.fileform import FileForm from paramecio.libraries.db.extraforms.fileform import FileForm
from paramecio.citoplasma import httputils from paramecio.libraries import httputils
from paramecio.citoplasma.keyutils import create_key from paramecio.libraries.keyutils import create_key
import traceback import traceback
from bottle import request from bottle import request
from uuid import uuid4 from uuid import uuid4
#from paramecio.cromosoma.extraforms.fileform import FileForm #from paramecio.libraries.db.extraforms.fileform import FileForm
class FileField(CharField): class FileField(CharField):

View file

@ -1,11 +1,11 @@
#!/usr/bin/env python3 #!/usr/bin/env python3
import json import json
from paramecio.cromosoma.webmodel import PhangoField from paramecio.libraries.db.webmodel import PhangoField
from paramecio.cromosoma.coreforms import BaseForm from paramecio.libraries.db.coreforms import BaseForm
from paramecio.cromosoma.extraforms.i18nform import I18nForm from paramecio.libraries.db.extraforms.i18nform import I18nForm
from paramecio.citoplasma.i18n import I18n from paramecio.libraries.i18n import I18n
from paramecio.citoplasma.httputils import GetPostFiles from paramecio.libraries.httputils import GetPostFiles
import json import json
import re import re

View file

@ -1,10 +1,10 @@
import os import os
import sys import sys
from pathlib import Path from pathlib import Path
from paramecio.cromosoma.corefields import CharField from paramecio.libraries.db.corefields import CharField
from paramecio.cromosoma.extraforms.fileform import FileForm from paramecio.libraries.db.extraforms.fileform import FileForm
from paramecio.citoplasma import httputils from paramecio.libraries import httputils
from paramecio.citoplasma.keyutils import create_key from paramecio.libraries.keyutils import create_key
import traceback import traceback
from bottle import request from bottle import request
@ -16,7 +16,7 @@ except:
from uuid import uuid4 from uuid import uuid4
#from paramecio.cromosoma.extraforms.fileform import FileForm #from paramecio.libraries.db.extraforms.fileform import FileForm
class ImageField(CharField): class ImageField(CharField):

View file

@ -1,4 +1,4 @@
from paramecio.cromosoma.corefields import CharField from paramecio.libraries.db.corefields import CharField
import ipaddress import ipaddress
class IpField(CharField): class IpField(CharField):

View file

@ -1,8 +1,8 @@
#!/usr/bin/env python3 #!/usr/bin/env python3
from paramecio.cromosoma.corefields import CharField from paramecio.libraries.db.corefields import CharField
from paramecio.cromosoma import coreforms from paramecio.libraries.db import coreforms
from paramecio.citoplasma.i18n import I18n from paramecio.libraries.i18n import I18n
class LangField(CharField): class LangField(CharField):

View file

@ -1,4 +1,4 @@
from paramecio.cromosoma.corefields import DecimalField from paramecio.libraries.db.corefields import DecimalField
from decimal import Decimal, getcontext from decimal import Decimal, getcontext
from locale import format_string from locale import format_string

View file

@ -1,9 +1,9 @@
#!/usr/bin/env python3 #!/usr/bin/env python3
#from paramecio.cromosoma.webmodel import PhangoField #from paramecio.libraries.db.webmodel import PhangoField
from paramecio.cromosoma.corefields import IntegerField from paramecio.libraries.db.corefields import IntegerField
from paramecio.cromosoma.coreforms import SelectModelForm from paramecio.libraries.db.coreforms import SelectModelForm
from paramecio.citoplasma.httputils import GetPostFiles from paramecio.libraries.httputils import GetPostFiles
class ParentField(IntegerField): class ParentField(IntegerField):

View file

@ -19,8 +19,8 @@ You should have received a copy of the GNU Affero General Public License
along with this program. If not, see <https://www.gnu.org/licenses/>. along with this program. If not, see <https://www.gnu.org/licenses/>.
""" """
from paramecio.cromosoma.corefields import PhangoField from paramecio.libraries.db.corefields import PhangoField
from paramecio.cromosoma.coreforms import PasswordForm from paramecio.libraries.db.coreforms import PasswordForm
from hmac import compare_digest as compare_hash from hmac import compare_digest as compare_hash
from hmac import compare_digest as compare_hash from hmac import compare_digest as compare_hash
#try: #try:

View file

@ -1,4 +1,4 @@
from paramecio.cromosoma.corefields import IntegerField from paramecio.libraries.db.corefields import IntegerField
class PercentField(IntegerField): class PercentField(IntegerField):

View file

@ -1,8 +1,8 @@
#!/usr/bin/env python3 #!/usr/bin/env python3
from paramecio.cromosoma.corefields import CharField from paramecio.libraries.db.corefields import CharField
from paramecio.citoplasma.slugify import slugify from paramecio.libraries.slugify import slugify
from paramecio.cromosoma.coreforms import HiddenForm from paramecio.libraries.db.coreforms import HiddenForm
class SlugifyField(CharField): class SlugifyField(CharField):

View file

@ -1,4 +1,4 @@
from paramecio.cromosoma.corefields import CharField from paramecio.libraries.db.corefields import CharField
import re import re
check_url = re.compile( check_url = re.compile(

View file

@ -1,5 +1,5 @@
from paramecio.cromosoma.corefields import PhangoField from paramecio.libraries.db.corefields import PhangoField
from paramecio.cromosoma.coreforms import PasswordForm from paramecio.libraries.db.coreforms import PasswordForm
from hmac import compare_digest as compare_hash from hmac import compare_digest as compare_hash
import crypt import crypt
import re import re

View file

@ -1,6 +1,6 @@
#!/usr/bin/env python3 #!/usr/bin/env python3
from paramecio.cromosoma.coreforms import BaseForm from paramecio.libraries.db.coreforms import BaseForm
class CheckForm(BaseForm): class CheckForm(BaseForm):

View file

@ -1,7 +1,7 @@
#!/usr/bin/env python3 #!/usr/bin/env python3
from paramecio.cromosoma.coreforms import BaseForm from paramecio.libraries.db.coreforms import BaseForm
from paramecio.citoplasma.mtemplates import standard_t from paramecio.libraries.mtemplates import standard_t
class ColorForm(BaseForm): class ColorForm(BaseForm):

View file

@ -1,8 +1,8 @@
#!/usr/bin/env python3 #!/usr/bin/env python3
from paramecio.cromosoma.coreforms import BaseForm from paramecio.libraries.db.coreforms import BaseForm
from paramecio.citoplasma.mtemplates import standard_t from paramecio.libraries.mtemplates import standard_t
from paramecio.citoplasma.datetime import format_timedata from paramecio.libraries.datetime import format_timedata
class DateForm(BaseForm): class DateForm(BaseForm):

View file

@ -1,7 +1,7 @@
#!/usr/bin/env python3 #!/usr/bin/env python3
from paramecio.cromosoma.coreforms import BaseForm from paramecio.libraries.db.coreforms import BaseForm
from paramecio.citoplasma.mtemplates import env_theme, PTemplate from paramecio.libraries.mtemplates import env_theme, PTemplate
env=env_theme(__file__) env=env_theme(__file__)

View file

@ -1,8 +1,8 @@
#!/usr/bin/env python3 #!/usr/bin/env python3
from paramecio.cromosoma.coreforms import BaseForm from paramecio.libraries.db.coreforms import BaseForm
from paramecio.citoplasma.i18n import I18n from paramecio.libraries.i18n import I18n
from paramecio.citoplasma.mtemplates import standard_t from paramecio.libraries.mtemplates import standard_t
import json import json
class I18nForm(BaseForm): class I18nForm(BaseForm):

View file

@ -1,6 +1,6 @@
from paramecio.cromosoma.coreforms import BaseForm from paramecio.libraries.db.coreforms import BaseForm
from paramecio.citoplasma.mtemplates import env_theme, PTemplate from paramecio.libraries.mtemplates import env_theme, PTemplate
env=env_theme(__file__) env=env_theme(__file__)

View file

@ -1,6 +1,6 @@
from paramecio.cromosoma.coreforms import BaseForm from paramecio.libraries.db.coreforms import BaseForm
from paramecio.citoplasma.mtemplates import env_theme, PTemplate from paramecio.libraries.mtemplates import env_theme, PTemplate
env=env_theme(__file__) env=env_theme(__file__)

View file

@ -1,10 +1,10 @@
#!/usr/bin/env python3 #!/usr/bin/env python3
from paramecio.cromosoma import corefields from paramecio.libraries.db import corefields
from paramecio.cromosoma.coreforms import PasswordForm from paramecio.libraries.db.coreforms import PasswordForm
from paramecio.citoplasma.i18n import I18n from paramecio.libraries.i18n import I18n
from paramecio.citoplasma.sessions import get_session from paramecio.libraries.sessions import get_session
from paramecio.citoplasma.keyutils import create_key_encrypt from paramecio.libraries.keyutils import create_key_encrypt
from bottle import request from bottle import request
# Need unittest # Need unittest

View file

@ -1,9 +1,9 @@
#!/usr/bin/env python3 #!/usr/bin/env python3
from paramecio.cromosoma.webmodel import WebModel from paramecio.libraries.db.webmodel import WebModel
from paramecio.cromosoma.coreforms import PasswordForm from paramecio.libraries.db.coreforms import PasswordForm
from paramecio.citoplasma.i18n import I18n from paramecio.libraries.i18n import I18n
from paramecio.citoplasma.httputils import GetPostFiles from paramecio.libraries.httputils import GetPostFiles
class UserModel(WebModel): class UserModel(WebModel):

View file

@ -1,7 +1,7 @@
#!/usr/bin/env python3 #!/usr/bin/env python3
from paramecio.cromosoma.databases.sqlalchemy import SqlClass from paramecio.libraries.db.databases.sqlalchemy import SqlClass
from paramecio.cromosoma.coreforms import BaseForm, HiddenForm from paramecio.libraries.db.coreforms import BaseForm, HiddenForm
import sys import sys
import re import re
import uuid import uuid

View file

@ -3,7 +3,7 @@
# A bottle plugin for send emails if # A bottle plugin for send emails if
from settings import config from settings import config
from paramecio.citoplasma.sendmail import SendMail from paramecio.libraries.sendmail import SendMail
import sys, traceback import sys, traceback
email_failed='' email_failed=''

View file

@ -1,10 +1,10 @@
from paramecio.citoplasma.lists import SimpleList from paramecio.libraries.lists import SimpleList
from bottle import request from bottle import request
from paramecio.citoplasma.urls import add_get_parameters, redirect from paramecio.libraries.urls import add_get_parameters, redirect
from paramecio.citoplasma.mtemplates import set_flash_message from paramecio.libraries.mtemplates import set_flash_message
from paramecio.cromosoma.formsutils import show_form from paramecio.libraries.db.formsutils import show_form
from paramecio.citoplasma.i18n import I18n from paramecio.libraries.i18n import I18n
from paramecio.citoplasma.httputils import GetPostFiles from paramecio.libraries.httputils import GetPostFiles
from collections import OrderedDict from collections import OrderedDict
class GenerateAdminClass: class GenerateAdminClass:

View file

@ -1,6 +1,6 @@
#/usr/bin/env python3 #/usr/bin/env python3
from paramecio.citoplasma.urls import add_get_parameters from paramecio.libraries.urls import add_get_parameters
class HierarchyLinks: class HierarchyLinks:

View file

@ -2,8 +2,8 @@
import json, re import json, re
from bottle import request, response from bottle import request, response
from paramecio.citoplasma.sessions import get_session from paramecio.libraries.sessions import get_session
from paramecio.citoplasma.keyutils import create_key_encrypt from paramecio.libraries.keyutils import create_key_encrypt
from bottle import HTTPResponse from bottle import HTTPResponse
no_csrf=False no_csrf=False

View file

@ -20,7 +20,7 @@ along with this program. If not, see <https://www.gnu.org/licenses/>.
""" """
from importlib import import_module from importlib import import_module
from paramecio.citoplasma.sessions import get_session from paramecio.libraries.sessions import get_session
import json import json
from bottle import request from bottle import request
import gettext import gettext

View file

@ -1,5 +1,5 @@
from paramecio.citoplasma.sessions import get_session from paramecio.libraries.sessions import get_session
from paramecio.citoplasma.i18n import I18n from paramecio.libraries.i18n import I18n
from settings import config from settings import config
def make_js_url(file_path, module): def make_js_url(file_path, module):

View file

@ -1,14 +1,14 @@
#By default id is not showed #By default id is not showed
from paramecio.citoplasma.pages import Pages from paramecio.libraries.pages import Pages
from paramecio.citoplasma.urls import add_get_parameters from paramecio.libraries.urls import add_get_parameters
from paramecio.citoplasma.sessions import get_session from paramecio.libraries.sessions import get_session
from paramecio.citoplasma.i18n import I18n from paramecio.libraries.i18n import I18n
from paramecio.citoplasma.httputils import GetPostFiles from paramecio.libraries.httputils import GetPostFiles
from bottle import request from bottle import request
import sys import sys
import re import re
from paramecio.citoplasma.pages import Pages from paramecio.libraries.pages import Pages
class SimpleList: class SimpleList:

View file

@ -22,12 +22,12 @@ along with this program. If not, see <https://www.gnu.org/licenses/>.
from bottle import hook from bottle import hook
from mako.template import Template from mako.template import Template
from mako.lookup import TemplateLookup from mako.lookup import TemplateLookup
from paramecio.citoplasma.urls import make_url, make_url_domain, make_media_url, make_media_url_module, add_get_parameters from paramecio.libraries.urls import make_url, make_url_domain, make_media_url, make_media_url_module, add_get_parameters
from paramecio.citoplasma.i18n import I18n, PGetText from paramecio.libraries.i18n import I18n, PGetText
from paramecio.citoplasma.sessions import get_session from paramecio.libraries.sessions import get_session
from paramecio.citoplasma.adminutils import make_admin_url from paramecio.libraries.adminutils import make_admin_url
from paramecio.cromosoma.formsutils import csrf_token from paramecio.libraries.db.formsutils import csrf_token
from paramecio.citoplasma.js import make_js_url from paramecio.libraries.js import make_js_url
from settings import config from settings import config
from os import path from os import path
from collections import OrderedDict from collections import OrderedDict

View file

@ -1,8 +1,8 @@
#!/usr/bin/env python3 #!/usr/bin/env python3
from math import ceil, floor from math import ceil, floor
from paramecio.citoplasma.urls import add_get_parameters from paramecio.libraries.urls import add_get_parameters
from paramecio.citoplasma.i18n import I18n from paramecio.libraries.i18n import I18n
class Pages: class Pages:

View file

@ -1,8 +1,8 @@
from paramecio.modules.admin.models.admin import UserAdmin from paramecio.modules.admin.models.admin import UserAdmin
from bottle import request from bottle import request
from paramecio.citoplasma.sessions import get_session from paramecio.libraries.sessions import get_session
from paramecio.citoplasma.urls import redirect, make_url from paramecio.libraries.urls import redirect, make_url
from paramecio.cromosoma.webmodel import WebModel from paramecio.libraries.db.webmodel import WebModel
import inspect import inspect
class LoginPlugin(object): class LoginPlugin(object):

View file

@ -1,6 +1,6 @@
#!/usr/bin/env python3 #!/usr/bin/env python3
from paramecio.citoplasma.keyutils import create_key_encrypt, create_key_encrypt_256, create_key from paramecio.libraries.keyutils import create_key_encrypt, create_key_encrypt_256, create_key
from oslo_concurrency import lockutils from oslo_concurrency import lockutils
@ -142,77 +142,70 @@ elif config.session_opts['session.type']=='redis':
import redis import redis
def generate_session(session={}, max_age=None):
token=create_key(30).replace('/', '#')
s={'token': token}
# Bug in python 3.6, if you put max_age how None, is passed to header cookie.
if not max_age:
response.set_cookie(config.cookie_name, token, path=config.session_opts['session.path'], httponly=True)
else:
response.set_cookie(config.cookie_name, token, path=config.session_opts['session.path'], max_age=max_age, httponly=True)
request.environ['session']=s
save_session(token, s)
request.environ['session']=s
return s
def regenerate_session():
token=create_key(30).replace('/', '#')
s={'token': token}
response.set_cookie(config.cookie_name, token, path=config.session_opts['session.path'], httponly=True)
save_session(token, s)
request.environ['session']=s
return ParamecioSession(s)
def load_session(token): def load_session(token):
s={} s={}
r=redis.StrictRedis(host=config.session_opts['session.host'], port=config.session_opts['session.port'], db=config.session_opts['session.db']) r=redis.Redis(host=config.session_opts['session.host'], port=config.session_opts['session.port'], decode_responses=True)
value=r.get(token) value=r.get(token)
r.close()
if not value: if not value:
s={'token': token} s={'token': token}
else: else:
try: try:
s=json.loads(value.decode('utf-8')) s=json.loads(value)
except: except:
s={'token': token} s={'token': token}
return s return s
def save_session(token, session): def save_session(token, session):
r=redis.StrictRedis(host=config.session_opts['session.host'], port=config.session_opts['session.port'], db=config.session_opts['session.db']) r=redis.Redis(host=config.session_opts['session.host'], port=config.session_opts['session.port'])
r.set(token, json.dumps(session)) r.set(token, json.dumps(session))
r.close()
def after_session(): def after_session():
pass pass
elif config.session_opts['session.type']=='cookie':
from itsdangerous.url_safe import URLSafeSerializer
def generate_session(session : dict ={} , max_age=None):
#se=UrlSafeSerializer(config.key_encrypt)
#cookie_value=se.dumps(session)
request.environ['session']=session
return session
def regenerate_session():
request.environ['session']={}
return ParamecioSession({})
def load_session(token):
se=URLSafeSerializer(config.key_encrypt)
s=se.loads(token)
return s
def save_session(token, session, create_file=False):
cookie=session
try:
if not max_age:
response.set_cookie(config.cookie_name, token, path=config.session_opts['session.path'], httponly=True)
else:
response.set_cookie(config.cookie_name, token, path=config.session_opts['session.path'], max_age=max_age, httponly=True)
return True
except:
return False
else: else:

View file

@ -1,9 +1,9 @@
#!/usr/bin/python #!/usr/bin/python
from jinja2 import Template, Environment, FileSystemLoader from jinja2 import Template, Environment, FileSystemLoader
from paramecio.citoplasma.urls import make_url, make_media_url, make_media_url_module, add_get_parameters from paramecio.libraries.urls import make_url, make_media_url, make_media_url_module, add_get_parameters
from paramecio.citoplasma.i18n import I18n from paramecio.libraries.i18n import I18n
from paramecio.citoplasma.sessions import get_session from paramecio.libraries.sessions import get_session
from settings import config from settings import config
# Preparing envs for views of modules, and views of # Preparing envs for views of modules, and views of

View file

@ -1,11 +1,11 @@
#!/usr/bin/env python3 #!/usr/bin/env python3
from paramecio.modules.admin.models.admin import UserAdmin from paramecio.modules.admin.models.admin import UserAdmin
from paramecio.citoplasma.urls import make_url from paramecio.libraries.urls import make_url
from paramecio.citoplasma.generate_admin_class import GenerateAdminClass from paramecio.libraries.generate_admin_class import GenerateAdminClass
from paramecio2.libraries.i18n import I18n, PGetText from paramecio2.libraries.i18n import I18n, PGetText
from paramecio.cromosoma.coreforms import SelectForm from paramecio.libraries.db.coreforms import SelectForm
from paramecio.citoplasma.sessions import get_session from paramecio.libraries.sessions import get_session
from settings import config from settings import config
from bottle import request from bottle import request

View file

@ -1,24 +1,24 @@
#!/usr/bin/env python3 #!/usr/bin/env python3
import traceback, sys import traceback, sys
from paramecio.citoplasma.mtemplates import env_theme, PTemplate from paramecio.libraries.mtemplates import env_theme, PTemplate
from paramecio.modules.admin.models.admin import UserAdmin from paramecio.modules.admin.models.admin import UserAdmin
from paramecio.citoplasma.i18n import load_lang, I18n from paramecio.libraries.i18n import load_lang, I18n
from paramecio.citoplasma.urls import make_url, add_get_parameters, redirect from paramecio.libraries.urls import make_url, add_get_parameters, redirect
from paramecio.citoplasma.sessions import get_session, generate_session from paramecio.libraries.sessions import get_session, generate_session
from bottle import get,post,response,request, Bottle from bottle import get,post,response,request, Bottle
from settings import config from settings import config
from settings import config_admin from settings import config_admin
from paramecio.citoplasma.adminutils import get_menu, get_language, make_admin_url, check_login, login_model from paramecio.libraries.adminutils import get_menu, get_language, make_admin_url, check_login, login_model
from paramecio.citoplasma.httputils import GetPostFiles from paramecio.libraries.httputils import GetPostFiles
from paramecio.cromosoma.formsutils import show_form, pass_values_to_form, set_extra_forms_user from paramecio.libraries.db.formsutils import show_form, pass_values_to_form, set_extra_forms_user
from paramecio.cromosoma.coreforms import PasswordForm from paramecio.libraries.db.coreforms import PasswordForm
from paramecio.cromosoma.webmodel import WebModel from paramecio.libraries.db.webmodel import WebModel
from importlib import import_module, reload from importlib import import_module, reload
from collections import OrderedDict from collections import OrderedDict
from time import time from time import time
from paramecio.citoplasma.keyutils import create_key_encrypt, create_key_encrypt_256, create_key from paramecio.libraries.keyutils import create_key_encrypt, create_key_encrypt_256, create_key
from paramecio.citoplasma.sendmail import SendMail from paramecio.libraries.sendmail import SendMail
from os import path from os import path
from paramecio.wsgiapp import app from paramecio.wsgiapp import app
import copy import copy
@ -26,7 +26,7 @@ from paramecio.i18n import admin
admin_app=Bottle() admin_app=Bottle()
#from citoplasma.login import LoginClass #from libraries.login import LoginClass
# Check login # Check login
yes_recovery_login=False yes_recovery_login=False
@ -185,6 +185,8 @@ def home(module='', submodule='', t=t):
else: else:
c=0
user_admin.conditions=['WHERE privileges=%s', [2]] user_admin.conditions=['WHERE privileges=%s', [2]]
c=user_admin.select_count() c=user_admin.select_count()
@ -503,5 +505,4 @@ def change_theme():
return {'error': error} return {'error': error}
app.mount('/'+config.admin_folder+'/', admin_app) app.mount('/'+config.admin_folder+'/', admin_app)

View file

@ -1,12 +1,12 @@
#!/usr/bin/env python3 #!/usr/bin/env python3
from paramecio.citoplasma.i18n import I18n from paramecio.libraries.i18n import I18n
from paramecio.cromosoma.webmodel import WebModel from paramecio.libraries.db.webmodel import WebModel
from paramecio.cromosoma.usermodel import UserModel from paramecio.libraries.db.usermodel import UserModel
from paramecio.cromosoma import corefields from paramecio.libraries.db import corefields
from paramecio.cromosoma.extrafields.emailfield import EmailField from paramecio.libraries.db.extrafields.emailfield import EmailField
from paramecio.cromosoma.extrafields.passwordfield import PasswordField from paramecio.libraries.db.extrafields.passwordfield import PasswordField
from paramecio.cromosoma.extrafields.langfield import LangField from paramecio.libraries.db.extrafields.langfield import LangField
class PrivilegesField(corefields.IntegerField): class PrivilegesField(corefields.IntegerField):

View file

@ -1,6 +1,6 @@
<% <%
from paramecio.citoplasma.sessions import get_session from paramecio.libraries.sessions import get_session
s=get_session() s=get_session()

View file

@ -1,10 +1,10 @@
#!/usr/bin/python3 #!/usr/bin/python3
from paramecio.wsgiapp import app from paramecio.wsgiapp import app
from paramecio.citoplasma.mtemplates import env_theme, PTemplate from paramecio.libraries.mtemplates import env_theme, PTemplate
from settings import config from settings import config
from paramecio.citoplasma.sessions import get_session from paramecio.libraries.sessions import get_session
from paramecio.citoplasma.i18n import I18n from paramecio.libraries.i18n import I18n
from bottle import response from bottle import response
import os import os

View file

@ -1,15 +1,15 @@
#from modules.pastafari.models.servers import OsServer #from modules.pastafari.models.servers import OsServer
from paramecio.citoplasma.generate_admin_class import GenerateConfigClass from paramecio.libraries.generate_admin_class import GenerateConfigClass
from paramecio.citoplasma.lists import SimpleList from paramecio.libraries.lists import SimpleList
from paramecio.citoplasma.adminutils import make_admin_url from paramecio.libraries.adminutils import make_admin_url
#from paramecio.citoplasma.urls import make_url #from paramecio.libraries.urls import make_url
from paramecio.citoplasma.i18n import I18n from paramecio.libraries.i18n import I18n
from paramecio.citoplasma.urls import add_get_parameters from paramecio.libraries.urls import add_get_parameters
from settings import config from settings import config
from paramecio.citoplasma.httputils import GetPostFiles from paramecio.libraries.httputils import GetPostFiles
from paramecio.cromosoma.coreforms import SelectForm, BaseForm from paramecio.libraries.db.coreforms import SelectForm, BaseForm
from paramecio.cromosoma.extraforms.i18nform import I18nForm from paramecio.libraries.db.extraforms.i18nform import I18nForm
import re, json import re, json
from collections import OrderedDict from collections import OrderedDict
from importlib import import_module from importlib import import_module
@ -94,7 +94,7 @@ def admin(**args):
file_lang="#!/usr/bin/env python3\n\n" file_lang="#!/usr/bin/env python3\n\n"
file_lang+="from paramecio.citoplasma.i18n import I18n\n\n" file_lang+="from paramecio.libraries.i18n import I18n\n\n"
z=0 z=0

View file

@ -1,7 +1,7 @@
from paramecio.citoplasma.i18n import I18n from paramecio.libraries.i18n import I18n
from bottle import get,response,request from bottle import get,response,request
from paramecio.citoplasma.sessions import get_session from paramecio.libraries.sessions import get_session
from paramecio.citoplasma.urls import redirect from paramecio.libraries.urls import redirect
import re import re
@get('/change_lang/<lang>') @get('/change_lang/<lang>')

View file

@ -1,7 +1,7 @@
#!/usr/bin/env python3 #!/usr/bin/env python3
from paramecio.citoplasma.mtemplates import PTemplate, env_theme from paramecio.libraries.mtemplates import PTemplate, env_theme
from paramecio.citoplasma.urls import make_url from paramecio.libraries.urls import make_url
from paramecio.wsgiapp import app from paramecio.wsgiapp import app
from settings import config from settings import config

View file

@ -1,7 +1,7 @@
#!/usr/bin/python3 #!/usr/bin/python3
import os import os
from paramecio.citoplasma.i18n import I18n, load_lang from paramecio.libraries.i18n import I18n, load_lang
from settings import config from settings import config
from importlib import import_module from importlib import import_module

View file

@ -24,7 +24,7 @@ setup(name='paramecio',
install_requires=['bottle', 'mako', 'pymysql', 'sqlalchemy', 'oslo.concurrency', 'itsdangerous', 'colorama','cherrypy', 'arrow', 'argon2-cffi', 'pillow', 'itsdangerous'], install_requires=['bottle', 'mako', 'pymysql', 'sqlalchemy', 'oslo.concurrency', 'itsdangerous', 'colorama','cherrypy', 'arrow', 'argon2-cffi', 'pillow', 'itsdangerous'],
entry_points={'console_scripts': [ entry_points={'console_scripts': [
'paramecio = paramecio.console:start', 'paramecio = paramecio.console:start',
'parameciodb = paramecio.cromosoma.dbamin.start' 'parameciodb = paramecio.libraries.db.dbamin.start'
]}, ]},
license='AGPLV3', license='AGPLV3',
platforms = 'any', platforms = 'any',

View file

@ -1,6 +1,6 @@
from settings import config from settings import config
from paramecio.cromosoma import corefields from paramecio.libraries.db import corefields
from paramecio.cromosoma.extrafields.arrayfield import ArrayField from paramecio.libraries.db.extrafields.arrayfield import ArrayField
import unittest import unittest
import json import json

View file

@ -1,5 +1,5 @@
from settings import config from settings import config
from paramecio.cromosoma.extrafields.colorfield import ColorField from paramecio.libraries.db.extrafields.colorfield import ColorField
import unittest import unittest
class TestFieldMethods(unittest.TestCase): class TestFieldMethods(unittest.TestCase):

View file

@ -1,5 +1,5 @@
from settings import config from settings import config
from paramecio.citoplasma import datetime from paramecio.libraries import datetime
import unittest import unittest
class TestFieldMethods(unittest.TestCase): class TestFieldMethods(unittest.TestCase):

Some files were not shown because too many files have changed in this diff Show more