Fix flake8

This commit is contained in:
RemiZOffAlex
2020-08-17 19:57:37 +03:00
parent a9736c09fe
commit ae5c629782
46 changed files with 229 additions and 336 deletions

View File

@@ -1,7 +1,5 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
CONFIG = 'config.demo' CONFIG = 'config.demo'

View File

@@ -1,11 +1,8 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
import os import os
import sys
# Конфигурация # Конфигурация
DEBUG = True DEBUG = True

View File

@@ -5,6 +5,6 @@ server {
error_log /var/log/nginx/myapp-error.log info; error_log /var/log/nginx/myapp-error.log info;
location / { location / {
include uwsgi_params; include uwsgi_params;
uwsgi_pass unix:///var/run/uwsgi/myapp.sock; uwsgi_pass unix:///run/uwsgi/myapp.sock;
} }
} }

View File

@@ -1,8 +1,6 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
import config import config
import logging import logging
@@ -28,6 +26,7 @@ app.logger.addHandler(handler)
from . import lib, models from . import lib, models
@app.context_processor @app.context_processor
def inject_data(): def inject_data():
result = {} result = {}
@@ -38,29 +37,30 @@ def inject_data():
return result return result
@app.teardown_appcontext @app.teardown_appcontext
def shutdown_session(exception=None): def shutdown_session(exception=None):
models.db_session.close_all() models.db_session.close_all()
# API # API
from . import ns_api from . import ns_api # noqa F401
# Авторизация # Авторизация
from . import ns_login from . import ns_login # noqa F401
# Заметки # Заметки
from . import ns_note from . import ns_note # noqa F401
# Статьи # Статьи
from . import ns_page from . import ns_page # noqa F401
# Профиль # Профиль
from . import ns_profile from . import ns_profile # noqa F401
# Метки # Метки
from . import ns_tag from . import ns_tag # noqa F401
# Пользователи # Пользователи
from . import ns_user from . import ns_user # noqa F401
from . import views from . import views # noqa F401

View File

@@ -2,9 +2,7 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'http://remizoffalex.ru'
import datetime import datetime
@@ -21,7 +19,7 @@ def login_required(func):
user = models.db_session.query( user = models.db_session.query(
models.User models.User
).filter( ).filter(
models.User.id==session['user_id'] models.User.id == session['user_id']
).first() ).first()
if user: if user:
user.last_activity = datetime.datetime.now() user.last_activity = datetime.datetime.now()

View File

@@ -1,10 +0,0 @@
__author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
from .users import LoginForm
from .page import PageEdit
__all__ = []

View File

@@ -1,16 +0,0 @@
__author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
from wtforms import (
Form,
TextField,
TextAreaField
)
class PageEdit(Form):
title = TextField('Заголовок')
text = TextAreaField('Текст')

View File

@@ -1,12 +0,0 @@
__author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
from wtforms import Form, TextField, PasswordField
class LoginForm(Form):
username = TextField('Имя пользователя')
password = PasswordField('Пароль')

View File

@@ -1,12 +1,10 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
from .pagination import Pagination, getpage from .pagination import Pagination, getpage # noqa F401
from .passwd import pwgen, get_hash_password from .passwd import pwgen, get_hash_password # noqa F401
from .storage import gettree, gethashtree from .storage import gettree, gethashtree # noqa F401
from .info import get_user from .info import get_user # noqa F401
__all__ = [] __all__ = []

View File

@@ -1,22 +1,20 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
from flask import session, request from flask import session
from .. import app, models from .. import models
def get_user(): def get_user():
""" """Получить текущего пользователя
Получить текущего пользователя
""" """
result = None result = None
if 'user_id' in session: if 'user_id' in session:
result = models.db_session.query( result = models.db_session.query(
models.User models.User
).filter( ).filter(
models.User.id==session['user_id'] models.User.id == session['user_id']
).first() ).first()
if result is None: if result is None:
session.pop('logged_in', None) session.pop('logged_in', None)

View File

@@ -1,8 +1,6 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
from math import ceil from math import ceil

View File

@@ -1,16 +1,14 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
import uuid import uuid
import random import random
import hashlib import hashlib
def pwgen(length=15, hex=False): def pwgen(length=15, hex=False):
""" """Генератор пароля
Генератор пароля
""" """
keylist = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ' keylist = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
if hex: if hex:
@@ -22,9 +20,9 @@ def pwgen(length=15, hex=False):
password.append(a_char) password.append(a_char)
return ''.join(password) return ''.join(password)
def get_hash_password(password, salt=None): def get_hash_password(password, salt=None):
""" """Получить хеш пароля SHA-512
Получить хеш пароля SHA-512
""" """
if salt is None: if salt is None:
salt = uuid.uuid4().hex salt = uuid.uuid4().hex

View File

@@ -1,8 +1,7 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
def gettree(number, count=3): def gettree(number, count=3):
""" """
@@ -16,6 +15,7 @@ def gettree(number, count=3):
result.append(newline[i*count:i*count+count]) result.append(newline[i*count:i*count+count])
return result return result
def gethashtree(hash, count=3): def gethashtree(hash, count=3):
""" """
Сформировать дерево каталогов Сформировать дерево каталогов

View File

@@ -1,8 +1,6 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
from sqlalchemy import create_engine from sqlalchemy import create_engine
from sqlalchemy.orm import scoped_session, sessionmaker from sqlalchemy.orm import scoped_session, sessionmaker
@@ -25,16 +23,16 @@ Base = declarative_base()
Base.query = db_session.query_property() Base.query = db_session.query_property()
# Пользователи # Пользователи
from .users import User from .users import User # noqa F401
# Метки # Метки
from .tag import Tag from .tag import Tag # noqa F401
# Статьи # Статьи
from .page import Page, TagPage from .page import Page, TagPage # noqa F401
# Заметки # Заметки
from .note import Note, TagNote from .note import Note, TagNote # noqa F401
Base.metadata.create_all(engine) Base.metadata.create_all(engine)

View File

@@ -1,11 +1,9 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'http://remizoffalex.ru'
import datetime import datetime
from sqlalchemy import Column, Boolean, Integer, ForeignKey, String, DateTime from sqlalchemy import Column, Integer, ForeignKey, String, DateTime
from sqlalchemy.orm import relationship from sqlalchemy.orm import relationship
from . import Base from . import Base
@@ -31,9 +29,8 @@ class Note(Base):
) )
tags = relationship("TagNote", primaryjoin="Note.id==TagNote.note_id") tags = relationship("TagNote", primaryjoin="Note.id==TagNote.note_id")
def __init__(self, user, title): def __init__(self, user, title):
assert type(user).__name__=='User', app.logger.info('Не передан объект User') assert type(user).__name__ == 'User', 'Не передан объект User'
self.user_id = user.id self.user_id = user.id
self.title = title self.title = title
self.created = datetime.datetime.now() self.created = datetime.datetime.now()
@@ -56,12 +53,20 @@ class TagNote(Base):
created = Column(DateTime) # Дата создания created = Column(DateTime) # Дата создания
# Связи # Связи
note = relationship("Note", primaryjoin="TagNote.note_id==Note.id", uselist=False) note = relationship(
tag = relationship("Tag", primaryjoin="TagNote.tag_id==Tag.id", uselist=False) "Note",
primaryjoin="TagNote.note_id==Note.id",
uselist=False
)
tag = relationship(
"Tag",
primaryjoin="TagNote.tag_id==Tag.id",
uselist=False
)
def __init__(self, note, tag): def __init__(self, note, tag):
assert type(note).__name__=='Note', app.logger.info('Не передан объект Note') assert type(note).__name__ == 'Note', 'Не передан объект Note'
assert type(tag).__name__=='Tag', app.logger.info('Не передан объект Tag') assert type(tag).__name__ == 'Tag', 'Не передан объект Tag'
self.note_id = note.id self.note_id = note.id
self.tag_id = tag.id self.tag_id = tag.id
self.created = datetime.datetime.now() self.created = datetime.datetime.now()

View File

@@ -1,19 +1,16 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'http://remizoffalex.ru'
import datetime import datetime
from sqlalchemy import Column, Boolean, Integer, ForeignKey, String, DateTime from sqlalchemy import Column, Integer, ForeignKey, String, DateTime
from sqlalchemy.orm import relationship from sqlalchemy.orm import relationship
from . import Base from . import Base
class Page(Base): class Page(Base):
""" """Страницы
Страницы
""" """
__tablename__ = "page" __tablename__ = "page"
@@ -32,9 +29,8 @@ class Page(Base):
) )
tags = relationship("TagPage", primaryjoin="Page.id==TagPage.page_id") tags = relationship("TagPage", primaryjoin="Page.id==TagPage.page_id")
def __init__(self, user, title): def __init__(self, user, title):
assert type(user).__name__=='User', app.logger.info('Не передан объект User') assert type(user).__name__ == 'User', 'Не передан объект User'
self.user_id = user.id self.user_id = user.id
self.title = title self.title = title
self.created = datetime.datetime.now() self.created = datetime.datetime.now()
@@ -57,12 +53,20 @@ class TagPage(Base):
created = Column(DateTime) # Дата создания created = Column(DateTime) # Дата создания
# Связи # Связи
page = relationship("Page", primaryjoin="TagPage.page_id==Page.id", uselist=False) page = relationship(
tag = relationship("Tag", primaryjoin="TagPage.tag_id==Tag.id", uselist=False) "Page",
primaryjoin="TagPage.page_id==Page.id",
uselist=False
)
tag = relationship(
"Tag",
primaryjoin="TagPage.tag_id==Tag.id",
uselist=False
)
def __init__(self, page, tag): def __init__(self, page, tag):
assert type(page).__name__=='Page', app.logger.info('Не передан объект Page') assert type(page).__name__ == 'Page', 'Не передан объект Page'
assert type(tag).__name__=='Tag', app.logger.info('Не передан объект Tag') assert type(tag).__name__ == 'Tag', 'Не передан объект Tag'
self.page_id = page.id self.page_id = page.id
self.tag_id = tag.id self.tag_id = tag.id
self.created = datetime.datetime.now() self.created = datetime.datetime.now()

View File

@@ -6,21 +6,16 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'http://remizoffalex.ru'
import datetime from sqlalchemy import Column, Integer, String
from sqlalchemy import Column, Integer, ForeignKey, String, DateTime
from sqlalchemy.orm import relationship from sqlalchemy.orm import relationship
from . import Base from . import Base
from .. import app
class Tag(Base): class Tag(Base):
""" """Теги, метки
Теги, метки
""" """
__tablename__ = "tag" __tablename__ = "tag"
@@ -37,7 +32,6 @@ class Tag(Base):
return "<Tag('%s')>" % (self.name) return "<Tag('%s')>" % (self.name)
def as_dict(self): def as_dict(self):
""" """Возвращает словарь
Возвращает словарь
""" """
return {c.name: getattr(self, c.name) for c in self.__table__.columns} return {c.name: getattr(self, c.name) for c in self.__table__.columns}

View File

@@ -1,12 +1,9 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
import datetime import datetime
from sqlalchemy import ( from sqlalchemy import (
Table,
Column, Column,
Boolean, Boolean,
Integer, Integer,
@@ -20,8 +17,7 @@ from . import Base
class User(Base): class User(Base):
""" """Пользователи
Пользователи
""" """
__tablename__ = "user" __tablename__ = "user"
@@ -31,11 +27,16 @@ class User(Base):
disabled = Column(Boolean, default=True) disabled = Column(Boolean, default=True)
created = Column(DateTime) created = Column(DateTime)
# Связи
pages = relationship("Page", primaryjoin="Page.user_id==User.id")
def __init__(self, name): def __init__(self, name):
self.name = name self.name = name
self.created = datetime.datetime.utcnow() self.created = datetime.datetime.utcnow()
def as_dict(self): def as_dict(self):
return {c.name: getattr(self, c.name) return {
c.name: getattr(self, c.name)
for c in self.__table__.columns for c in self.__table__.columns
if c.name!='password'} if c.name != 'password'
}

View File

@@ -1,8 +1,6 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
from functools import wraps from functools import wraps
from flask_jsonrpc import JSONRPC from flask_jsonrpc import JSONRPC
@@ -10,6 +8,7 @@ from flask import session
from .. import app, models from .. import app, models
def login_required(func): def login_required(func):
@wraps(func) @wraps(func)
def decorated_function(*args, **kwargs): def decorated_function(*args, **kwargs):
@@ -17,7 +16,7 @@ def login_required(func):
user = models.db_session.query( user = models.db_session.query(
models.User models.User
).filter( ).filter(
models.User.id==session['user_id'] models.User.id == session['user_id']
).first() ).first()
if user: if user:
return func(*args, **kwargs) return func(*args, **kwargs)
@@ -29,9 +28,10 @@ def login_required(func):
raise Exception('Необходима авторизация') raise Exception('Необходима авторизация')
return decorated_function return decorated_function
jsonrpc = JSONRPC(app, '/api') jsonrpc = JSONRPC(app, '/api')
from . import ( from . import ( # noqa F401
login, login,
note, note,
page, page,

View File

@@ -2,26 +2,23 @@ __author__ = 'RemiZOffAlex'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru/' __url__ = 'https://remizoffalex.ru/'
import string
from flask import session from flask import session
from flask_jsonrpc.exceptions import InvalidRequestError
from . import jsonrpc from . import jsonrpc
from .. import app, lib, models from .. import app, lib, models
@jsonrpc.method('login') @jsonrpc.method('login')
def login(username: str, password: str)->bool: def login(username: str, password: str) -> bool:
user = models.db_session.query( user = models.db_session.query(
models.User models.User
).filter( ).filter(
models.User.name==username, models.User.name == username,
models.User.password==lib.get_hash_password( models.User.password == lib.get_hash_password(
password, password,
app.config['SECRET_KEY'] app.config['SECRET_KEY']
), ),
models.User.disabled==False models.User.disabled == False
).first() ).first()
if user is None: if user is None:
raise ValueError raise ValueError

View File

@@ -1,19 +1,18 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
from . import jsonrpc, login_required from . import jsonrpc, login_required
from .. import app, lib, models from .. import app, lib, models
@jsonrpc.method('note') @jsonrpc.method('note')
def note_id(id: int)->dict: def note_id(id: int) -> dict:
"""Заметка """Заметка
""" """
note = models.db_session.query( note = models.db_session.query(
models.Note models.Note
).filter( ).filter(
models.Note.id==id models.Note.id == id
).first() ).first()
if note is None: if note is None:
raise ValueError raise ValueError
@@ -28,7 +27,7 @@ def note_id(id: int)->dict:
@jsonrpc.method('note.add') @jsonrpc.method('note.add')
@login_required @login_required
def note_add(title: str, body: str)->dict: def note_add(title: str, body: str) -> dict:
"""Добавление новой заметки """Добавление новой заметки
""" """
newNote = models.Note( newNote = models.Note(
@@ -47,7 +46,7 @@ def note_add(title: str, body: str)->dict:
@jsonrpc.method('note.destroy') @jsonrpc.method('note.destroy')
@login_required @login_required
def note_destroy(id: int)->bool: def note_destroy(id: int) -> bool:
"""Полное уничтожение заметки """Полное уничтожение заметки
Аргументы: Аргументы:
@@ -56,7 +55,7 @@ def note_destroy(id: int)->bool:
note = models.db_session.query( note = models.db_session.query(
models.Note models.Note
).filter( ).filter(
models.Note.id==id models.Note.id == id
).first() ).first()
if note is None: if note is None:
raise ValueError raise ValueError
@@ -69,13 +68,13 @@ def note_destroy(id: int)->bool:
@jsonrpc.method('note.update') @jsonrpc.method('note.update')
@login_required @login_required
def note_update(id: int, title: str, body: str)->dict: def note_update(id: int, title: str, body: str) -> dict:
"""Обновить заметку """Обновить заметку
""" """
note = models.db_session.query( note = models.db_session.query(
models.Note models.Note
).filter( ).filter(
models.Note.id==id models.Note.id == id
).first() ).first()
if note is None: if note is None:
raise ValueError raise ValueError
@@ -92,7 +91,7 @@ def note_update(id: int, title: str, body: str)->dict:
@jsonrpc.method('notes') @jsonrpc.method('notes')
def notes_list(page: int)->list: def notes_list(page: int) -> list:
"""Список заметок """Список заметок
""" """
notes = models.db_session.query( notes = models.db_session.query(
@@ -118,7 +117,7 @@ def notes_list(page: int)->list:
@jsonrpc.method('notes.count') @jsonrpc.method('notes.count')
def notes_count()->int: def notes_count() -> int:
"""Количество заметок """Количество заметок
""" """
result = models.db_session.query( result = models.db_session.query(

View File

@@ -1,19 +1,18 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
from . import jsonrpc, login_required from . import jsonrpc, login_required
from .. import app, lib, models from .. import app, lib, models
@jsonrpc.method('page') @jsonrpc.method('page')
def page_id(id: int)->dict: def page_id(id: int) -> dict:
"""Статья """Статья
""" """
page = models.db_session.query( page = models.db_session.query(
models.Page models.Page
).filter( ).filter(
models.Page.id==id models.Page.id == id
).first() ).first()
if page is None: if page is None:
raise ValueError raise ValueError
@@ -28,7 +27,7 @@ def page_id(id: int)->dict:
@jsonrpc.method('page.add') @jsonrpc.method('page.add')
@login_required @login_required
def page_add(title: str, body: str)->dict: def page_add(title: str, body: str) -> dict:
"""Добавление новой статьи """Добавление новой статьи
""" """
newPage = models.Page( newPage = models.Page(
@@ -47,7 +46,7 @@ def page_add(title: str, body: str)->dict:
@jsonrpc.method('page.destroy') @jsonrpc.method('page.destroy')
@login_required @login_required
def page_destroy(id: int)->bool: def page_destroy(id: int) -> bool:
"""Полное уничтожение статьи """Полное уничтожение статьи
Аргументы: Аргументы:
@@ -56,7 +55,7 @@ def page_destroy(id: int)->bool:
page = models.db_session.query( page = models.db_session.query(
models.Page models.Page
).filter( ).filter(
models.Page.id==id models.Page.id == id
).first() ).first()
if page is None: if page is None:
raise ValueError raise ValueError
@@ -69,13 +68,13 @@ def page_destroy(id: int)->bool:
@jsonrpc.method('page.update') @jsonrpc.method('page.update')
@login_required @login_required
def page_update(id: int, title: str, text: str)->dict: def page_update(id: int, title: str, text: str) -> dict:
"""Обновить статью """Обновить статью
""" """
page = models.db_session.query( page = models.db_session.query(
models.Page models.Page
).filter( ).filter(
models.Page.id==id models.Page.id == id
).first() ).first()
if page is None: if page is None:
raise ValueError raise ValueError
@@ -92,7 +91,7 @@ def page_update(id: int, title: str, text: str)->dict:
@jsonrpc.method('pages') @jsonrpc.method('pages')
def pages_list(page: int)->list: def pages_list(page: int) -> list:
"""Список статей """Список статей
""" """
pages = models.db_session.query( pages = models.db_session.query(
@@ -118,7 +117,7 @@ def pages_list(page: int)->list:
@jsonrpc.method('pages.count') @jsonrpc.method('pages.count')
def pages_count()->int: def pages_count() -> int:
"""Общее количество статей """Общее количество статей
""" """
result = models.db_session.query( result = models.db_session.query(

View File

@@ -1,11 +1,9 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
from . import ( from . import ( # noqa F401
note, note,
page, page,
tag tag

View File

@@ -1,8 +1,6 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
from .. import jsonrpc, login_required from .. import jsonrpc, login_required
from ... import app, lib, models from ... import app, lib, models
@@ -10,29 +8,29 @@ from ... import app, lib, models
@jsonrpc.method('tag.note.add') @jsonrpc.method('tag.note.add')
@login_required @login_required
def tag_note_add(tag: int, id: int)->dict: def tag_note_add(tag: int, id: int) -> dict:
"""Добавление тега в заметку """Добавление тега в заметку
""" """
noteRow = models.db_session.query( noteRow = models.db_session.query(
models.Note models.Note
).filter( ).filter(
models.Note.id==id, models.Note.id == id,
models.Note.user_id==lib.get_user().id models.Note.user_id == lib.get_user().id
).first() ).first()
if noteRow is None: if noteRow is None:
raise ValueError raise ValueError
tagRow = models.db_session.query( tagRow = models.db_session.query(
models.Tag models.Tag
).filter( ).filter(
models.Tag.id==tag models.Tag.id == tag
).first() ).first()
if tagRow is None: if tagRow is None:
raise ValueError raise ValueError
exist = models.db_session.query( exist = models.db_session.query(
models.TagNote models.TagNote
).filter( ).filter(
models.TagNote.tag_id==tagRow.id, models.TagNote.tag_id == tagRow.id,
models.TagNote.note_id==noteRow.id models.TagNote.note_id == noteRow.id
).first() ).first()
if exist: if exist:
raise ValueError raise ValueError
@@ -48,29 +46,29 @@ def tag_note_add(tag: int, id: int)->dict:
@jsonrpc.method('tag.note.delete') @jsonrpc.method('tag.note.delete')
@login_required @login_required
def tag_note_delete(tag: int, id: int)->bool: def tag_note_delete(tag: int, id: int) -> bool:
"""Удаление тега из заметки """Удаление тега из заметки
""" """
noteRow = models.db_session.query( noteRow = models.db_session.query(
models.Note models.Note
).filter( ).filter(
models.Note.id==id, models.Note.id == id,
models.Note.user_id==lib.get_user().id models.Note.user_id == lib.get_user().id
).first() ).first()
if noteRow is None: if noteRow is None:
raise ValueError raise ValueError
tagRow = models.db_session.query( tagRow = models.db_session.query(
models.Tag models.Tag
).filter( ).filter(
models.Tag.id==tag models.Tag.id == tag
).first() ).first()
if tagRow is None: if tagRow is None:
raise ValueError raise ValueError
exist = models.db_session.query( exist = models.db_session.query(
models.TagNote models.TagNote
).filter( ).filter(
models.TagNote.tag_id==tag, models.TagNote.tag_id == tag,
models.TagNote.note_id==id models.TagNote.note_id == id
).first() ).first()
if exist is None: if exist is None:
raise ValueError raise ValueError
@@ -81,25 +79,25 @@ def tag_note_delete(tag: int, id: int)->bool:
@jsonrpc.method('tag.notes') @jsonrpc.method('tag.notes')
@login_required @login_required
def tag_notes_list(id: int, page: int)->list: def tag_notes_list(id: int, page: int) -> list:
"""Список заметок """Список заметок
""" """
tag = models.db_session.query( tag = models.db_session.query(
models.Tag models.Tag
).filter( ).filter(
models.Tag.id==id models.Tag.id == id
).first() ).first()
if tag is None: if tag is None:
raise ValueError raise ValueError
indexes = models.db_session.query( indexes = models.db_session.query(
models.TagNote.note_id models.TagNote.note_id
).filter( ).filter(
models.TagNote.tag_id==id models.TagNote.tag_id == id
) )
notes = models.db_session.query( notes = models.db_session.query(
models.Note models.Note
).filter( ).filter(
models.Note.user_id==lib.get_user().id, models.Note.user_id == lib.get_user().id,
models.Note.id.in_(indexes) models.Note.id.in_(indexes)
).order_by( ).order_by(
models.Note.title.asc() models.Note.title.asc()
@@ -122,25 +120,25 @@ def tag_notes_list(id: int, page: int)->list:
@jsonrpc.method('tag.notes.count') @jsonrpc.method('tag.notes.count')
@login_required @login_required
def tag_notes_count(id: int)->int: def tag_notes_count(id: int) -> int:
"""Общее количество заметок """Общее количество заметок
""" """
tag = models.db_session.query( tag = models.db_session.query(
models.Tag models.Tag
).filter( ).filter(
models.Tag.id==id models.Tag.id == id
).first() ).first()
if tag is None: if tag is None:
raise ValueError raise ValueError
indexes = models.db_session.query( indexes = models.db_session.query(
models.TagNote.note_id models.TagNote.note_id
).filter( ).filter(
models.TagNote.tag_id==id models.TagNote.tag_id == id
) )
result = models.db_session.query( result = models.db_session.query(
models.Note models.Note
).filter( ).filter(
models.Note.user_id==lib.get_user().id, models.Note.user_id == lib.get_user().id,
models.Note.id.in_(indexes) models.Note.id.in_(indexes)
).count() ).count()
return result return result

View File

@@ -1,8 +1,6 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
from .. import jsonrpc, login_required from .. import jsonrpc, login_required
from ... import app, lib, models from ... import app, lib, models
@@ -10,28 +8,28 @@ from ... import app, lib, models
@jsonrpc.method('tag.page.add') @jsonrpc.method('tag.page.add')
@login_required @login_required
def tag_page_add(tag: int, id: int)->dict: def tag_page_add(tag: int, id: int) -> dict:
"""Добавление тега на страницы """Добавление тега на страницы
""" """
tagRow = models.db_session.query( tagRow = models.db_session.query(
models.Tag models.Tag
).filter( ).filter(
models.Tag.id==tag models.Tag.id == tag
).first() ).first()
if tagRow is None: if tagRow is None:
raise ValueError raise ValueError
page = models.db_session.query( page = models.db_session.query(
models.Page models.Page
).filter( ).filter(
models.Page.id==id models.Page.id == id
).first() ).first()
if page is None: if page is None:
raise ValueError raise ValueError
exist = models.db_session.query( exist = models.db_session.query(
models.TagPage models.TagPage
).filter( ).filter(
models.TagPage.tag_id==tagRow.id, models.TagPage.tag_id == tagRow.id,
models.TagPage.page_id==page.id models.TagPage.page_id == page.id
).first() ).first()
if exist: if exist:
raise ValueError raise ValueError
@@ -47,14 +45,14 @@ def tag_page_add(tag: int, id: int)->dict:
@jsonrpc.method('tag.page.delete)') @jsonrpc.method('tag.page.delete)')
@login_required @login_required
def tag_page_delete(tag: int, id: int)->bool: def tag_page_delete(tag: int, id: int) -> bool:
"""Удаление тега со страницы """Удаление тега со страницы
""" """
exist = models.db_session.query( exist = models.db_session.query(
models.TagPage models.TagPage
).filter( ).filter(
models.TagPage.tag_id==tag, models.TagPage.tag_id == tag,
models.TagPage.page_id==id models.TagPage.page_id == id
).first() ).first()
if exist is None: if exist is None:
raise ValueError raise ValueError
@@ -64,20 +62,20 @@ def tag_page_delete(tag: int, id: int)->bool:
@jsonrpc.method('tag.pages') @jsonrpc.method('tag.pages')
def tag_pages_list(id: int, page: int)->list: def tag_pages_list(id: int, page: int) -> list:
"""Список статей """Список статей
""" """
tag = models.db_session.query( tag = models.db_session.query(
models.Tag models.Tag
).filter( ).filter(
models.Tag.id==id models.Tag.id == id
).first() ).first()
if tag is None: if tag is None:
raise ValueError raise ValueError
indexes = models.db_session.query( indexes = models.db_session.query(
models.TagPage.page_id models.TagPage.page_id
).filter( ).filter(
models.TagPage.tag_id==id models.TagPage.tag_id == id
) )
pages = models.db_session.query( pages = models.db_session.query(
models.Page models.Page
@@ -104,20 +102,20 @@ def tag_pages_list(id: int, page: int)->list:
@jsonrpc.method('tag.pages.count') @jsonrpc.method('tag.pages.count')
def tag_pages_count(id: int)->int: def tag_pages_count(id: int) -> int:
"""Общее количество статей """Общее количество статей
""" """
tag = models.db_session.query( tag = models.db_session.query(
models.Tag models.Tag
).filter( ).filter(
models.Tag.id==id models.Tag.id == id
).first() ).first()
if tag is None: if tag is None:
raise ValueError raise ValueError
indexes = models.db_session.query( indexes = models.db_session.query(
models.TagPage.page_id models.TagPage.page_id
).filter( ).filter(
models.TagPage.tag_id==id models.TagPage.tag_id == id
) )
result = models.db_session.query( result = models.db_session.query(
models.Page models.Page

View File

@@ -1,16 +1,14 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
from .. import jsonrpc, login_required from .. import jsonrpc, login_required
from ... import app, lib, models from ... import models
@jsonrpc.method('tag.add') @jsonrpc.method('tag.add')
@login_required @login_required
def tag_add(name: str)->dict: def tag_add(name: str) -> dict:
"""Добавить новый тег """Добавить новый тег
""" """
exist = models.db_session.query( exist = models.db_session.query(
@@ -29,13 +27,13 @@ def tag_add(name: str)->dict:
@jsonrpc.method('tag.delete') @jsonrpc.method('tag.delete')
@login_required @login_required
def tag_delete(id: int)->bool: def tag_delete(id: int) -> bool:
"""Удалить тег """Удалить тег
""" """
exist = models.db_session.query( exist = models.db_session.query(
models.Tag models.Tag
).filter( ).filter(
models.Tag.id==id models.Tag.id == id
).first() ).first()
if exist is None: if exist is None:
raise ValueError raise ValueError
@@ -46,14 +44,14 @@ def tag_delete(id: int)->bool:
@jsonrpc.method('tag.exist') @jsonrpc.method('tag.exist')
def tag_exist(name: str)->dict: def tag_exist(name: str) -> dict:
"""Проверить существует ли тег и вернуть информацию о нём """Проверить существует ли тег и вернуть информацию о нём
""" """
text = name.lower().strip() text = name.lower().strip()
tagRow = models.db_session.query( tagRow = models.db_session.query(
models.Tag models.Tag
).filter( ).filter(
models.Tag.name==text models.Tag.name == text
).first() ).first()
if tagRow is None: if tagRow is None:
raise ValueError raise ValueError
@@ -65,7 +63,7 @@ def tag_exist(name: str)->dict:
@jsonrpc.method('tags') @jsonrpc.method('tags')
def tags_list()->list: def tags_list() -> list:
"""Список тегов """Список тегов
""" """
tags = models.db_session.query( tags = models.db_session.query(
@@ -80,7 +78,7 @@ def tags_list()->list:
@jsonrpc.method('tags.groups') @jsonrpc.method('tags.groups')
def tags_groups()->dict: def tags_groups() -> dict:
"""Облако тегов """Облако тегов
""" """
tags = models.db_session.query( tags = models.db_session.query(

View File

@@ -1,28 +1,26 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
from . import jsonrpc, login_required from . import jsonrpc
from .. import app, lib, models from .. import app, lib, models
@jsonrpc.method('user.pages') @jsonrpc.method('user.pages')
def user_pages_list(id: int, page: int)->list: def user_pages_list(id: int, page: int) -> list:
"""Список статей пользователя """Список статей пользователя
""" """
user = models.db_session.query( user = models.db_session.query(
models.User models.User
).filter( ).filter(
models.User.id==id models.User.id == id
).first() ).first()
if user is None: if user is None:
raise ValueError raise ValueError
pages = models.db_session.query( pages = models.db_session.query(
models.Page models.Page
).filter( ).filter(
models.Page.user_id==id models.Page.user_id == id
).order_by( ).order_by(
models.Page.title.asc() models.Page.title.asc()
) )
@@ -44,26 +42,26 @@ def user_pages_list(id: int, page: int)->list:
@jsonrpc.method('user.pages.count') @jsonrpc.method('user.pages.count')
def user_pages_count(id: int)->int: def user_pages_count(id: int) -> int:
"""Общее количество статей """Общее количество статей
""" """
user = models.db_session.query( user = models.db_session.query(
models.User models.User
).filter( ).filter(
models.User.id==id models.User.id == id
).first() ).first()
if user is None: if user is None:
raise ValueError raise ValueError
result = models.db_session.query( result = models.db_session.query(
models.Page models.Page
).filter( ).filter(
models.Page.user_id==id models.Page.user_id == id
).count() ).count()
return result return result
@jsonrpc.method('users') @jsonrpc.method('users')
def users_list(page: int)->list: def users_list(page: int) -> list:
"""Показать список пользователей """Показать список пользователей
""" """
users = models.db_session.query( users = models.db_session.query(
@@ -82,7 +80,7 @@ def users_list(page: int)->list:
@jsonrpc.method('users.count') @jsonrpc.method('users.count')
def users_count()->int: def users_count() -> int:
"""Количество список пользователей """Количество список пользователей
""" """
result = models.db_session.query( result = models.db_session.query(

View File

@@ -1,18 +1,18 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
import os import os
import jinja2 import jinja2
from . import views from . import views # noqa F401
from .. import app from .. import app
my_loader = jinja2.ChoiceLoader([ my_loader = jinja2.ChoiceLoader([
app.jinja_loader, app.jinja_loader,
jinja2.FileSystemLoader(os.path.dirname(os.path.abspath(__file__)) + "/templates"), jinja2.FileSystemLoader(
os.path.dirname(os.path.abspath(__file__)) + "/templates"
),
]) ])
app.jinja_loader = my_loader app.jinja_loader = my_loader

View File

@@ -1,18 +1,15 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
from flask import render_template, escape, request, session, redirect from flask import render_template, session, redirect
from .. import app, lib, models from .. import app
@app.route('/login') @app.route('/login')
def login(): def login():
""" """Вход
Логин
""" """
pagedata = {} pagedata = {}
body = render_template('login.html', pagedata=pagedata) body = render_template('login.html', pagedata=pagedata)
@@ -21,6 +18,8 @@ def login():
@app.route('/logout') @app.route('/logout')
def logout(): def logout():
"""Выход
"""
session.pop('logged_in', None) session.pop('logged_in', None)
session.pop('user_id', None) session.pop('user_id', None)
return redirect("/", code=302) return redirect("/", code=302)

View File

@@ -1,18 +1,18 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
import os import os
import jinja2 import jinja2
from . import views from . import views # noqa F401
from .. import app from .. import app
my_loader = jinja2.ChoiceLoader([ my_loader = jinja2.ChoiceLoader([
app.jinja_loader, app.jinja_loader,
jinja2.FileSystemLoader(os.path.dirname(os.path.abspath(__file__)) + "/templates"), jinja2.FileSystemLoader(
os.path.dirname(os.path.abspath(__file__)) + "/templates"
),
]) ])
app.jinja_loader = my_loader app.jinja_loader = my_loader

View File

@@ -1,12 +1,10 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
from flask import render_template, escape, request, session, redirect from flask import abort, render_template
from .. import app, lib, models from .. import app, models
@app.route('/note/<int:id>') @app.route('/note/<int:id>')
@@ -15,7 +13,7 @@ def note_id(id):
note = models.db_session.query( note = models.db_session.query(
models.Note models.Note
).filter( ).filter(
models.Note.id==id models.Note.id == id
).first() ).first()
if note is None: if note is None:
abort(404) abort(404)

View File

@@ -1,18 +1,18 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
import os import os
import jinja2 import jinja2
from . import routes from . import routes # noqa F401
from .. import app from .. import app
my_loader = jinja2.ChoiceLoader([ my_loader = jinja2.ChoiceLoader([
app.jinja_loader, app.jinja_loader,
jinja2.FileSystemLoader(os.path.dirname(os.path.abspath(__file__)) + "/templates"), jinja2.FileSystemLoader(
os.path.dirname(os.path.abspath(__file__)) + "/templates"
),
]) ])
app.jinja_loader = my_loader app.jinja_loader = my_loader

View File

@@ -6,7 +6,6 @@ from flask import abort
from . import views_user, views_guest from . import views_user, views_guest
from .. import app, lib from .. import app, lib
from ..decorators import login_required
@app.route('/page/<int:id>') @app.route('/page/<int:id>')

View File

@@ -2,12 +2,9 @@ __author__ = 'RemiZOffAlex'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru/' __url__ = 'https://remizoffalex.ru/'
from flask import ( from flask import abort, render_template
abort,
render_template
)
from .. import app, lib, models from .. import app, models
def pages(page): def pages(page):
@@ -25,13 +22,12 @@ def pages(page):
def page_id(id): def page_id(id):
""" """Документ
Документ
""" """
page = models.db_session.query( page = models.db_session.query(
models.Page models.Page
).filter( ).filter(
models.Page.id==id models.Page.id == id
).first() ).first()
if page is None: if page is None:
abort(404) abort(404)

View File

@@ -2,18 +2,9 @@ __author__ = 'RemiZOffAlex'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru/' __url__ = 'https://remizoffalex.ru/'
import datetime from flask import abort, render_template
from flask import ( from .. import app, models
abort,
render_template,
request,
redirect,
escape,
session
)
from .. import app, lib, models
def pages(page): def pages(page):
@@ -33,17 +24,19 @@ def pages(page):
def page_id(id): def page_id(id):
"""Статья
""" """
Статья
"""
pagedata = {}
page = models.db_session.query( page = models.db_session.query(
models.Page models.Page
).filter( ).filter(
models.Page.id==id models.Page.id == id
).first() ).first()
if page is None: if page is None:
abort(404) abort(404)
pagedata = {}
pagedata['title'] = '{} - {}'.format(page.title, app.config['TITLE'])
pagedata['page'] = page.as_dict() pagedata['page'] = page.as_dict()
pagedata['page']['user'] = page.user.as_dict() pagedata['page']['user'] = page.user.as_dict()
@@ -60,38 +53,14 @@ def page_id(id):
return body return body
def page_id(id):
"""Документ"""
page = models.db_session.query(
models.Page
).filter(
models.Page.id==id
).first()
if page is None:
abort(404)
pagedata = {}
pagedata['title'] = '{} - {}'.format(page.title, app.config['TITLE'])
pagedata['page'] = page.as_dict()
pagedata['page']['user'] = page.user.as_dict()
pagedata['page']['tags'] = []
for tagLink in page.tags:
pagedata['page']['tags'].append(tagLink.tag.as_dict())
body = render_template('user/page.html', pagedata=pagedata)
return body
def page_edit(id): def page_edit(id):
""" """Редактирование статьи
Редактирование статьи
""" """
pagedata = {'title': app.config['TITLE']} pagedata = {'title': app.config['TITLE']}
page = models.db_session.query( page = models.db_session.query(
models.Page models.Page
).filter( ).filter(
models.Page.id==id models.Page.id == id
).first() ).first()
if page is None: if page is None:
abort(404) abort(404)
@@ -102,7 +71,8 @@ def page_edit(id):
def page_add(): def page_add():
"""Добавление нового документа""" """Добавление нового документа
"""
pagedata = {} pagedata = {}
pagedata['title'] = 'Новый документ - ' + app.config['TITLE'] pagedata['title'] = 'Новый документ - ' + app.config['TITLE']
body = render_template('user/page_add.html', pagedata=pagedata) body = render_template('user/page_add.html', pagedata=pagedata)

View File

@@ -1,18 +1,18 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'http://remizoffalex.ru'
import os import os
import jinja2 import jinja2
from . import views from . import views # noqa F401
from .. import app from .. import app
my_loader = jinja2.ChoiceLoader([ my_loader = jinja2.ChoiceLoader([
app.jinja_loader, app.jinja_loader,
jinja2.FileSystemLoader(os.path.dirname(os.path.abspath(__file__)) + "/templates"), jinja2.FileSystemLoader(
os.path.dirname(os.path.abspath(__file__)) + "/templates"
),
]) ])
app.jinja_loader = my_loader app.jinja_loader = my_loader

View File

@@ -1,8 +1,6 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'http://remizoffalex.ru'
from flask import render_template from flask import render_template

View File

@@ -1,18 +1,18 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
import os import os
import jinja2 import jinja2
from . import routes from . import routes # noqa F401
from .. import app from .. import app
my_loader = jinja2.ChoiceLoader([ my_loader = jinja2.ChoiceLoader([
app.jinja_loader, app.jinja_loader,
jinja2.FileSystemLoader(os.path.dirname(os.path.abspath(__file__)) + "/templates"), jinja2.FileSystemLoader(
os.path.dirname(os.path.abspath(__file__)) + "/templates"
),
]) ])
app.jinja_loader = my_loader app.jinja_loader = my_loader

View File

@@ -1,10 +1,8 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
from flask import render_template from flask import abort, render_template
from .. import app, models from .. import app, models

View File

@@ -1,10 +1,8 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
from flask import render_template from flask import abort, render_template
from .. import app, models from .. import app, models

View File

@@ -1,18 +1,18 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
import os import os
import jinja2 import jinja2
from . import views from . import views # noqa F401
from .. import app from .. import app
my_loader = jinja2.ChoiceLoader([ my_loader = jinja2.ChoiceLoader([
app.jinja_loader, app.jinja_loader,
jinja2.FileSystemLoader(os.path.dirname(os.path.abspath(__file__)) + "/templates"), jinja2.FileSystemLoader(
os.path.dirname(os.path.abspath(__file__)) + "/templates"
),
]) ])
app.jinja_loader = my_loader app.jinja_loader = my_loader

View File

@@ -1,10 +1,8 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
from flask import render_template from flask import abort, render_template
from .. import app, models from .. import app, models
@@ -17,7 +15,7 @@ def user_id(id):
user = models.db_session.query( user = models.db_session.query(
models.User models.User
).filter( ).filter(
models.User.id==id models.User.id == id
).first() ).first()
if user is None: if user is None:
abort(404) abort(404)
@@ -35,7 +33,7 @@ def user_pages(id):
user = models.db_session.query( user = models.db_session.query(
models.User models.User
).filter( ).filter(
models.User.id==id models.User.id == id
).first() ).first()
if user is None: if user is None:
abort(404) abort(404)

View File

@@ -1,13 +1,9 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
from myapp import app from myapp import app
from flask import Flask, render_template, request, Response from flask import render_template, Response
from . import forms, models
@app.route('/') @app.route('/')
@@ -30,7 +26,12 @@ def robots_txt():
def error_missing(exception): def error_missing(exception):
pagedata = {} pagedata = {}
error_message = "Не судьба..." error_message = "Не судьба..."
return render_template("error.html", error_code=404, error_message=error_message, pagedata=pagedata), 404 return render_template(
"error.html",
error_code=404,
error_message=error_message,
pagedata=pagedata
), 404
# noinspection PyUnusedLocal # noinspection PyUnusedLocal
@@ -38,7 +39,12 @@ def error_missing(exception):
def error_unauthorized(exception): def error_unauthorized(exception):
pagedata = {} pagedata = {}
error_message = "У вас нет прав" error_message = "У вас нет прав"
return render_template("error.html", error_code=403, error_message=error_message, pagedata=pagedata), 403 return render_template(
"error.html",
error_code=403,
error_message=error_message,
pagedata=pagedata
), 403
# noinspection PyUnusedLocal # noinspection PyUnusedLocal
@@ -46,4 +52,9 @@ def error_unauthorized(exception):
def error_crash(exception): def error_crash(exception):
pagedata = {} pagedata = {}
error_message = "Вот незадача..." error_message = "Вот незадача..."
return render_template("error.html", error_code=500, error_message=error_message, pagedata=pagedata), 500 return render_template(
"error.html",
error_code=500,
error_message=error_message,
pagedata=pagedata
), 500

2
run.py
View File

@@ -2,9 +2,7 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
from myapp import app as application from myapp import app as application

View File

@@ -2,9 +2,7 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
import os import os
import sys import sys

View File

@@ -2,8 +2,6 @@
__author__ = 'RemiZOffAlex' __author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex' __copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru' __email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
from myapp import app as application from myapp import app as application # noqa F401