diff --git a/.flaskenv b/.flaskenv index 77b58f4..5d867f9 100644 --- a/.flaskenv +++ b/.flaskenv @@ -1 +1,3 @@ -FLASK_APP = bulletin_board \ No newline at end of file +FLASK_ENV=development +# FLASK_APP=app +FLASK_APP = "app:create_app('development')" \ No newline at end of file diff --git a/.gitignore b/.gitignore index fc293bc..6ae2f99 100644 --- a/.gitignore +++ b/.gitignore @@ -76,3 +76,5 @@ fabric.properties # Android studio 3.1+ serialized cache file .idea/caches/build_file_checksums.ser + +*.env \ No newline at end of file diff --git a/admin/__init__.py b/admin/__init__.py deleted file mode 100644 index e69de29..0000000 diff --git a/app/__init__.py b/app/__init__.py new file mode 100644 index 0000000..90ab879 --- /dev/null +++ b/app/__init__.py @@ -0,0 +1,47 @@ +import os +from flask import Flask, url_for, redirect +from flask_login import LoginManager +from flask_migrate import Migrate + +from config import config +from app.department.models import db + + +def create_app(config_name=None): + app = Flask(__name__, static_url_path='') + configure_app(app, config_name) # 导入参数设置 + db.init_app(app) # 初始化绑定app对象 + migrate = Migrate(app, db) + login_manager = LoginManager(app) + login_manager.login_view = 'login.login' + login_manager.login_message = '访问页面需要登录' + + @login_manager.user_loader + def load_user(user_id): + # from .department.models import Department + from app.department.models import Department + dep = Department.query.get(int(user_id)) + return dep + + # 引入蓝图并注册 + from app import login, admin, user, department, commands + app.register_blueprint(login.bp) # 注册登录页面视图 + app.register_blueprint(admin.admin) # 注册管理员页面视图 + app.register_blueprint(user.user) # 注册用户页面视图 + app.register_blueprint(department.department) # 注册部门管理页面视图 + app.register_blueprint(commands.bp) # 注册部门管理页面视图 + + # 注册首页路由 + @app.route('/') + def hello_world(): + return redirect(url_for('login.login')) + + return app + + +def configure_app(app, config_name=None): + if config_name is None: + config_name = os.environ.get('FLASK_ENV', 'development') + if config_name in config: + app.config.from_object(config[config_name]) + diff --git a/app/admin/__init__.py b/app/admin/__init__.py new file mode 100644 index 0000000..b7aa28f --- /dev/null +++ b/app/admin/__init__.py @@ -0,0 +1,5 @@ +from flask import Blueprint + +admin = Blueprint('admin', __name__, url_prefix='/admin/') + +from .views import * diff --git a/admin/forms.py b/app/admin/forms.py similarity index 100% rename from admin/forms.py rename to app/admin/forms.py diff --git a/admin/models.py b/app/admin/models.py similarity index 99% rename from admin/models.py rename to app/admin/models.py index 21243d1..64ce566 100644 --- a/admin/models.py +++ b/app/admin/models.py @@ -1,5 +1,6 @@ # flask-sqlalchemy的基本使用 -from exts import db +# db的引用关系: exts<-admin<-department +from app.exts import db # 柱状图数据表 diff --git a/admin/views.py b/app/admin/views.py similarity index 96% rename from admin/views.py rename to app/admin/views.py index f65e2b4..13ef37c 100644 --- a/admin/views.py +++ b/app/admin/views.py @@ -1,4 +1,4 @@ -from flask import Blueprint, render_template, jsonify, request, session, redirect, url_for, flash, send_file +from flask import render_template, jsonify, request, session, redirect, url_for, flash, send_file from flask.views import MethodView from flask_login import login_required, current_user from io import BytesIO @@ -6,14 +6,10 @@ import time import xlsxwriter import os - -# from exts import db -# from admin.models import DataBar, DataLine, Content, Category1, Category2, Unit, Document, Filetype -from admin.models import * -from admin.forms import DocumentForm -from settings import UPLOAD_FOLDER - -admin = Blueprint('admin', __name__, url_prefix='/admin/') +from . import admin +from .models import * +from .forms import DocumentForm +from config import UPLOAD_FOLDER def is_admin(f): diff --git a/commands.py b/app/commands.py similarity index 80% rename from commands.py rename to app/commands.py index 10dfadb..cb97d0a 100644 --- a/commands.py +++ b/app/commands.py @@ -1,9 +1,11 @@ -from bulletin_board import app, db import click -from department.models import Department +from flask import Blueprint +from app.department.models import db, Department +bp = Blueprint('commands',__name__) -@app.cli.command() + +@bp.cli.command() @click.option('--username', prompt=True, help='The username used to login.') @click.option('--password', prompt=True, hide_input=True, confirmation_prompt=True, help='The password used to login.') def admin(username, password): @@ -22,8 +24,4 @@ def admin(username, password): db.session.add(admin) db.session.commit() # 提交数据库会话 - click.echo('Create Admin Done.') - - -if __name__ == '__main__': - admin() + click.echo('Create Admin Done.') \ No newline at end of file diff --git a/app/department/__init__.py b/app/department/__init__.py new file mode 100644 index 0000000..f5b731f --- /dev/null +++ b/app/department/__init__.py @@ -0,0 +1,5 @@ +from flask import Blueprint + +department = Blueprint('department', __name__, url_prefix='/') + +from .views import * diff --git a/department/forms.py b/app/department/forms.py similarity index 100% rename from department/forms.py rename to app/department/forms.py diff --git a/department/models.py b/app/department/models.py similarity index 96% rename from department/models.py rename to app/department/models.py index 09597d5..acf9aaa 100644 --- a/department/models.py +++ b/app/department/models.py @@ -1,4 +1,4 @@ -from admin.models import db +from app.admin.models import db from werkzeug.security import generate_password_hash, check_password_hash from flask_login import UserMixin db = db # 赋值给一变量,否则系统会只找到admin应用的db diff --git a/department/views.py b/app/department/views.py similarity index 91% rename from department/views.py rename to app/department/views.py index 11e376c..6de27a7 100644 --- a/department/views.py +++ b/app/department/views.py @@ -2,11 +2,11 @@ from flask.views import MethodView from flask_login import login_required -from department.forms import DepartmentForm -from department.models import Department, db -from admin.models import Unit +from .forms import DepartmentForm +from .models import Department, db +from app.admin.models import Unit +from . import department -department = Blueprint('department', __name__, url_prefix='/department/') # 部门详情 diff --git a/exts.py b/app/exts.py similarity index 100% rename from exts.py rename to app/exts.py diff --git a/app/login/__init__.py b/app/login/__init__.py new file mode 100644 index 0000000..4e9f057 --- /dev/null +++ b/app/login/__init__.py @@ -0,0 +1,5 @@ +from flask import Blueprint + +bp = Blueprint('login', __name__, url_prefix='/') + +from .views import * diff --git a/login/views.py b/app/login/views.py similarity index 95% rename from login/views.py rename to app/login/views.py index 46e7d97..1169d5c 100644 --- a/login/views.py +++ b/app/login/views.py @@ -1,8 +1,7 @@ from flask import Blueprint, session, redirect, url_for, request, flash, render_template from flask_login import login_user, logout_user, login_required -from department.models import Department - -bp = Blueprint('login', __name__, url_prefix='/') +from app.department.models import Department +from . import bp # 登录页面,使用flask-login diff --git a/static/css/animate.css b/app/static/css/animate.css similarity index 100% rename from static/css/animate.css rename to app/static/css/animate.css diff --git a/static/css/bootstrap.min.css b/app/static/css/bootstrap.min.css similarity index 100% rename from static/css/bootstrap.min.css rename to app/static/css/bootstrap.min.css diff --git a/static/css/daterangepicker.css b/app/static/css/daterangepicker.css similarity index 100% rename from static/css/daterangepicker.css rename to app/static/css/daterangepicker.css diff --git a/static/css/materialdesignicons.min.css b/app/static/css/materialdesignicons.min.css similarity index 100% rename from static/css/materialdesignicons.min.css rename to app/static/css/materialdesignicons.min.css diff --git a/static/css/style.min.css b/app/static/css/style.min.css similarity index 100% rename from static/css/style.min.css rename to app/static/css/style.min.css diff --git a/static/fonts/materialdesignicons.eot b/app/static/fonts/materialdesignicons.eot similarity index 100% rename from static/fonts/materialdesignicons.eot rename to app/static/fonts/materialdesignicons.eot diff --git a/static/fonts/materialdesignicons.svg b/app/static/fonts/materialdesignicons.svg similarity index 100% rename from static/fonts/materialdesignicons.svg rename to app/static/fonts/materialdesignicons.svg diff --git a/static/fonts/materialdesignicons.ttf b/app/static/fonts/materialdesignicons.ttf similarity index 100% rename from static/fonts/materialdesignicons.ttf rename to app/static/fonts/materialdesignicons.ttf diff --git a/static/fonts/materialdesignicons.woff b/app/static/fonts/materialdesignicons.woff similarity index 100% rename from static/fonts/materialdesignicons.woff rename to app/static/fonts/materialdesignicons.woff diff --git a/static/fonts/materialdesignicons.woff2 b/app/static/fonts/materialdesignicons.woff2 similarity index 100% rename from static/fonts/materialdesignicons.woff2 rename to app/static/fonts/materialdesignicons.woff2 diff --git a/static/images/captcha.png b/app/static/images/captcha.png similarity index 100% rename from static/images/captcha.png rename to app/static/images/captcha.png diff --git a/static/images/gallery/1.jpg b/app/static/images/gallery/1.jpg similarity index 100% rename from static/images/gallery/1.jpg rename to app/static/images/gallery/1.jpg diff --git a/static/images/gallery/10.jpg b/app/static/images/gallery/10.jpg similarity index 100% rename from static/images/gallery/10.jpg rename to app/static/images/gallery/10.jpg diff --git a/static/images/gallery/11.jpg b/app/static/images/gallery/11.jpg similarity index 100% rename from static/images/gallery/11.jpg rename to app/static/images/gallery/11.jpg diff --git a/static/images/gallery/13.jpg b/app/static/images/gallery/13.jpg similarity index 100% rename from static/images/gallery/13.jpg rename to app/static/images/gallery/13.jpg diff --git a/static/images/gallery/14.jpg b/app/static/images/gallery/14.jpg similarity index 100% rename from static/images/gallery/14.jpg rename to app/static/images/gallery/14.jpg diff --git a/static/images/gallery/15.jpg b/app/static/images/gallery/15.jpg similarity index 100% rename from static/images/gallery/15.jpg rename to app/static/images/gallery/15.jpg diff --git a/static/images/gallery/16.jpg b/app/static/images/gallery/16.jpg similarity index 100% rename from static/images/gallery/16.jpg rename to app/static/images/gallery/16.jpg diff --git a/static/images/gallery/17.jpg b/app/static/images/gallery/17.jpg similarity index 100% rename from static/images/gallery/17.jpg rename to app/static/images/gallery/17.jpg diff --git a/static/images/gallery/2.jpg b/app/static/images/gallery/2.jpg similarity index 100% rename from static/images/gallery/2.jpg rename to app/static/images/gallery/2.jpg diff --git a/static/images/gallery/3.jpg b/app/static/images/gallery/3.jpg similarity index 100% rename from static/images/gallery/3.jpg rename to app/static/images/gallery/3.jpg diff --git a/static/images/gallery/4.jpg b/app/static/images/gallery/4.jpg similarity index 100% rename from static/images/gallery/4.jpg rename to app/static/images/gallery/4.jpg diff --git a/static/images/gallery/5.jpg b/app/static/images/gallery/5.jpg similarity index 100% rename from static/images/gallery/5.jpg rename to app/static/images/gallery/5.jpg diff --git a/static/images/gallery/6.jpg b/app/static/images/gallery/6.jpg similarity index 100% rename from static/images/gallery/6.jpg rename to app/static/images/gallery/6.jpg diff --git a/static/images/gallery/7.jpg b/app/static/images/gallery/7.jpg similarity index 100% rename from static/images/gallery/7.jpg rename to app/static/images/gallery/7.jpg diff --git a/static/images/gallery/8.jpg b/app/static/images/gallery/8.jpg similarity index 100% rename from static/images/gallery/8.jpg rename to app/static/images/gallery/8.jpg diff --git a/static/images/gallery/9.jpg b/app/static/images/gallery/9.jpg similarity index 100% rename from static/images/gallery/9.jpg rename to app/static/images/gallery/9.jpg diff --git a/static/images/img-slide-1.jpg b/app/static/images/img-slide-1.jpg similarity index 100% rename from static/images/img-slide-1.jpg rename to app/static/images/img-slide-1.jpg diff --git a/static/images/img-slide-2.jpg b/app/static/images/img-slide-2.jpg similarity index 100% rename from static/images/img-slide-2.jpg rename to app/static/images/img-slide-2.jpg diff --git a/static/images/img-slide-3.jpg b/app/static/images/img-slide-3.jpg similarity index 100% rename from static/images/img-slide-3.jpg rename to app/static/images/img-slide-3.jpg diff --git a/static/images/img-slide-4.jpg b/app/static/images/img-slide-4.jpg similarity index 100% rename from static/images/img-slide-4.jpg rename to app/static/images/img-slide-4.jpg diff --git a/static/images/img-slide-5.jpg b/app/static/images/img-slide-5.jpg similarity index 100% rename from static/images/img-slide-5.jpg rename to app/static/images/img-slide-5.jpg diff --git a/static/images/login-bg-2.jpg b/app/static/images/login-bg-2.jpg similarity index 100% rename from static/images/login-bg-2.jpg rename to app/static/images/login-bg-2.jpg diff --git a/static/images/login-bg-3.jpg b/app/static/images/login-bg-3.jpg similarity index 100% rename from static/images/login-bg-3.jpg rename to app/static/images/login-bg-3.jpg diff --git a/static/images/login-bg-4.jpg b/app/static/images/login-bg-4.jpg similarity index 100% rename from static/images/login-bg-4.jpg rename to app/static/images/login-bg-4.jpg diff --git a/static/images/login-bg.jpg b/app/static/images/login-bg.jpg similarity index 100% rename from static/images/login-bg.jpg rename to app/static/images/login-bg.jpg diff --git a/static/images/logo-ico.png b/app/static/images/logo-ico.png similarity index 100% rename from static/images/logo-ico.png rename to app/static/images/logo-ico.png diff --git a/static/images/logo-sidebar.png b/app/static/images/logo-sidebar.png similarity index 100% rename from static/images/logo-sidebar.png rename to app/static/images/logo-sidebar.png diff --git a/static/images/logo.png b/app/static/images/logo.png similarity index 100% rename from static/images/logo.png rename to app/static/images/logo.png diff --git a/static/images/users/avatar.jpg b/app/static/images/users/avatar.jpg similarity index 100% rename from static/images/users/avatar.jpg rename to app/static/images/users/avatar.jpg diff --git a/static/js/Chart.js b/app/static/js/Chart.js similarity index 100% rename from static/js/Chart.js rename to app/static/js/Chart.js diff --git a/static/js/bootstrap-colorpicker/bootstrap-colorpicker.js b/app/static/js/bootstrap-colorpicker/bootstrap-colorpicker.js similarity index 100% rename from static/js/bootstrap-colorpicker/bootstrap-colorpicker.js rename to app/static/js/bootstrap-colorpicker/bootstrap-colorpicker.js diff --git a/static/js/bootstrap-colorpicker/bootstrap-colorpicker.min.js b/app/static/js/bootstrap-colorpicker/bootstrap-colorpicker.min.js similarity index 100% rename from static/js/bootstrap-colorpicker/bootstrap-colorpicker.min.js rename to app/static/js/bootstrap-colorpicker/bootstrap-colorpicker.min.js diff --git a/static/js/bootstrap-colorpicker/css/bootstrap-colorpicker.css b/app/static/js/bootstrap-colorpicker/css/bootstrap-colorpicker.css similarity index 100% rename from static/js/bootstrap-colorpicker/css/bootstrap-colorpicker.css rename to app/static/js/bootstrap-colorpicker/css/bootstrap-colorpicker.css diff --git a/static/js/bootstrap-colorpicker/css/bootstrap-colorpicker.css.map b/app/static/js/bootstrap-colorpicker/css/bootstrap-colorpicker.css.map similarity index 100% rename from static/js/bootstrap-colorpicker/css/bootstrap-colorpicker.css.map rename to app/static/js/bootstrap-colorpicker/css/bootstrap-colorpicker.css.map diff --git a/static/js/bootstrap-colorpicker/css/bootstrap-colorpicker.min.css b/app/static/js/bootstrap-colorpicker/css/bootstrap-colorpicker.min.css similarity index 100% rename from static/js/bootstrap-colorpicker/css/bootstrap-colorpicker.min.css rename to app/static/js/bootstrap-colorpicker/css/bootstrap-colorpicker.min.css diff --git a/static/js/bootstrap-colorpicker/css/bootstrap-colorpicker.min.css.map b/app/static/js/bootstrap-colorpicker/css/bootstrap-colorpicker.min.css.map similarity index 100% rename from static/js/bootstrap-colorpicker/css/bootstrap-colorpicker.min.css.map rename to app/static/js/bootstrap-colorpicker/css/bootstrap-colorpicker.min.css.map diff --git a/static/js/bootstrap-colorpicker/img/bootstrap-colorpicker/alpha-horizontal.png b/app/static/js/bootstrap-colorpicker/img/bootstrap-colorpicker/alpha-horizontal.png similarity index 100% rename from static/js/bootstrap-colorpicker/img/bootstrap-colorpicker/alpha-horizontal.png rename to app/static/js/bootstrap-colorpicker/img/bootstrap-colorpicker/alpha-horizontal.png diff --git a/static/js/bootstrap-colorpicker/img/bootstrap-colorpicker/alpha.png b/app/static/js/bootstrap-colorpicker/img/bootstrap-colorpicker/alpha.png similarity index 100% rename from static/js/bootstrap-colorpicker/img/bootstrap-colorpicker/alpha.png rename to app/static/js/bootstrap-colorpicker/img/bootstrap-colorpicker/alpha.png diff --git a/static/js/bootstrap-colorpicker/img/bootstrap-colorpicker/hue-horizontal.png b/app/static/js/bootstrap-colorpicker/img/bootstrap-colorpicker/hue-horizontal.png similarity index 100% rename from static/js/bootstrap-colorpicker/img/bootstrap-colorpicker/hue-horizontal.png rename to app/static/js/bootstrap-colorpicker/img/bootstrap-colorpicker/hue-horizontal.png diff --git a/static/js/bootstrap-colorpicker/img/bootstrap-colorpicker/hue.png b/app/static/js/bootstrap-colorpicker/img/bootstrap-colorpicker/hue.png similarity index 100% rename from static/js/bootstrap-colorpicker/img/bootstrap-colorpicker/hue.png rename to app/static/js/bootstrap-colorpicker/img/bootstrap-colorpicker/hue.png diff --git a/static/js/bootstrap-colorpicker/img/bootstrap-colorpicker/saturation.png b/app/static/js/bootstrap-colorpicker/img/bootstrap-colorpicker/saturation.png similarity index 100% rename from static/js/bootstrap-colorpicker/img/bootstrap-colorpicker/saturation.png rename to app/static/js/bootstrap-colorpicker/img/bootstrap-colorpicker/saturation.png diff --git a/static/js/bootstrap-datepicker/bootstrap-datepicker.js b/app/static/js/bootstrap-datepicker/bootstrap-datepicker.js similarity index 100% rename from static/js/bootstrap-datepicker/bootstrap-datepicker.js rename to app/static/js/bootstrap-datepicker/bootstrap-datepicker.js diff --git a/static/js/bootstrap-datepicker/bootstrap-datepicker.min.js b/app/static/js/bootstrap-datepicker/bootstrap-datepicker.min.js similarity index 100% rename from static/js/bootstrap-datepicker/bootstrap-datepicker.min.js rename to app/static/js/bootstrap-datepicker/bootstrap-datepicker.min.js diff --git a/static/js/bootstrap-datepicker/bootstrap-datepicker3.css b/app/static/js/bootstrap-datepicker/bootstrap-datepicker3.css similarity index 100% rename from static/js/bootstrap-datepicker/bootstrap-datepicker3.css rename to app/static/js/bootstrap-datepicker/bootstrap-datepicker3.css diff --git a/static/js/bootstrap-datepicker/bootstrap-datepicker3.css.map b/app/static/js/bootstrap-datepicker/bootstrap-datepicker3.css.map similarity index 100% rename from static/js/bootstrap-datepicker/bootstrap-datepicker3.css.map rename to app/static/js/bootstrap-datepicker/bootstrap-datepicker3.css.map diff --git a/static/js/bootstrap-datepicker/bootstrap-datepicker3.min.css b/app/static/js/bootstrap-datepicker/bootstrap-datepicker3.min.css similarity index 100% rename from static/js/bootstrap-datepicker/bootstrap-datepicker3.min.css rename to app/static/js/bootstrap-datepicker/bootstrap-datepicker3.min.css diff --git a/static/js/bootstrap-datepicker/bootstrap-datepicker3.min.css.map b/app/static/js/bootstrap-datepicker/bootstrap-datepicker3.min.css.map similarity index 100% rename from static/js/bootstrap-datepicker/bootstrap-datepicker3.min.css.map rename to app/static/js/bootstrap-datepicker/bootstrap-datepicker3.min.css.map diff --git a/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.ar.min.js b/app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.ar.min.js similarity index 100% rename from static/js/bootstrap-datepicker/locales/bootstrap-datepicker.ar.min.js rename to app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.ar.min.js diff --git a/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.az.min.js b/app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.az.min.js similarity index 100% rename from static/js/bootstrap-datepicker/locales/bootstrap-datepicker.az.min.js rename to app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.az.min.js diff --git a/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.bg.min.js b/app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.bg.min.js similarity index 100% rename from static/js/bootstrap-datepicker/locales/bootstrap-datepicker.bg.min.js rename to app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.bg.min.js diff --git a/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.bs.min.js b/app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.bs.min.js similarity index 100% rename from static/js/bootstrap-datepicker/locales/bootstrap-datepicker.bs.min.js rename to app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.bs.min.js diff --git a/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.ca.min.js b/app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.ca.min.js similarity index 100% rename from static/js/bootstrap-datepicker/locales/bootstrap-datepicker.ca.min.js rename to app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.ca.min.js diff --git a/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.cs.min.js b/app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.cs.min.js similarity index 100% rename from static/js/bootstrap-datepicker/locales/bootstrap-datepicker.cs.min.js rename to app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.cs.min.js diff --git a/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.cy.min.js b/app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.cy.min.js similarity index 100% rename from static/js/bootstrap-datepicker/locales/bootstrap-datepicker.cy.min.js rename to app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.cy.min.js diff --git a/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.da.min.js b/app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.da.min.js similarity index 100% rename from static/js/bootstrap-datepicker/locales/bootstrap-datepicker.da.min.js rename to app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.da.min.js diff --git a/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.de.min.js b/app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.de.min.js similarity index 100% rename from static/js/bootstrap-datepicker/locales/bootstrap-datepicker.de.min.js rename to app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.de.min.js diff --git a/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.el.min.js b/app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.el.min.js similarity index 100% rename from static/js/bootstrap-datepicker/locales/bootstrap-datepicker.el.min.js rename to app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.el.min.js diff --git a/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.en-AU.min.js b/app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.en-AU.min.js similarity index 100% rename from static/js/bootstrap-datepicker/locales/bootstrap-datepicker.en-AU.min.js rename to app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.en-AU.min.js diff --git a/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.en-GB.min.js b/app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.en-GB.min.js similarity index 100% rename from static/js/bootstrap-datepicker/locales/bootstrap-datepicker.en-GB.min.js rename to app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.en-GB.min.js diff --git a/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.eo.min.js b/app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.eo.min.js similarity index 100% rename from static/js/bootstrap-datepicker/locales/bootstrap-datepicker.eo.min.js rename to app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.eo.min.js diff --git a/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.es.min.js b/app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.es.min.js similarity index 100% rename from static/js/bootstrap-datepicker/locales/bootstrap-datepicker.es.min.js rename to app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.es.min.js diff --git a/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.et.min.js b/app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.et.min.js similarity index 100% rename from static/js/bootstrap-datepicker/locales/bootstrap-datepicker.et.min.js rename to app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.et.min.js diff --git a/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.eu.min.js b/app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.eu.min.js similarity index 100% rename from static/js/bootstrap-datepicker/locales/bootstrap-datepicker.eu.min.js rename to app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.eu.min.js diff --git a/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.fa.min.js b/app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.fa.min.js similarity index 100% rename from static/js/bootstrap-datepicker/locales/bootstrap-datepicker.fa.min.js rename to app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.fa.min.js diff --git a/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.fi.min.js b/app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.fi.min.js similarity index 100% rename from static/js/bootstrap-datepicker/locales/bootstrap-datepicker.fi.min.js rename to app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.fi.min.js diff --git a/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.fo.min.js b/app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.fo.min.js similarity index 100% rename from static/js/bootstrap-datepicker/locales/bootstrap-datepicker.fo.min.js rename to app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.fo.min.js diff --git a/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.fr-CH.min.js b/app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.fr-CH.min.js similarity index 100% rename from static/js/bootstrap-datepicker/locales/bootstrap-datepicker.fr-CH.min.js rename to app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.fr-CH.min.js diff --git a/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.fr.min.js b/app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.fr.min.js similarity index 100% rename from static/js/bootstrap-datepicker/locales/bootstrap-datepicker.fr.min.js rename to app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.fr.min.js diff --git a/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.gl.min.js b/app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.gl.min.js similarity index 100% rename from static/js/bootstrap-datepicker/locales/bootstrap-datepicker.gl.min.js rename to app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.gl.min.js diff --git a/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.he.min.js b/app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.he.min.js similarity index 100% rename from static/js/bootstrap-datepicker/locales/bootstrap-datepicker.he.min.js rename to app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.he.min.js diff --git a/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.hr.min.js b/app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.hr.min.js similarity index 100% rename from static/js/bootstrap-datepicker/locales/bootstrap-datepicker.hr.min.js rename to app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.hr.min.js diff --git a/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.hu.min.js b/app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.hu.min.js similarity index 100% rename from static/js/bootstrap-datepicker/locales/bootstrap-datepicker.hu.min.js rename to app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.hu.min.js diff --git a/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.hy.min.js b/app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.hy.min.js similarity index 100% rename from static/js/bootstrap-datepicker/locales/bootstrap-datepicker.hy.min.js rename to app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.hy.min.js diff --git a/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.id.min.js b/app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.id.min.js similarity index 100% rename from static/js/bootstrap-datepicker/locales/bootstrap-datepicker.id.min.js rename to app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.id.min.js diff --git a/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.is.min.js b/app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.is.min.js similarity index 100% rename from static/js/bootstrap-datepicker/locales/bootstrap-datepicker.is.min.js rename to app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.is.min.js diff --git a/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.it-CH.min.js b/app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.it-CH.min.js similarity index 100% rename from static/js/bootstrap-datepicker/locales/bootstrap-datepicker.it-CH.min.js rename to app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.it-CH.min.js diff --git a/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.it.min.js b/app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.it.min.js similarity index 100% rename from static/js/bootstrap-datepicker/locales/bootstrap-datepicker.it.min.js rename to app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.it.min.js diff --git a/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.ja.min.js b/app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.ja.min.js similarity index 100% rename from static/js/bootstrap-datepicker/locales/bootstrap-datepicker.ja.min.js rename to app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.ja.min.js diff --git a/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.ka.min.js b/app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.ka.min.js similarity index 100% rename from static/js/bootstrap-datepicker/locales/bootstrap-datepicker.ka.min.js rename to app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.ka.min.js diff --git a/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.kh.min.js b/app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.kh.min.js similarity index 100% rename from static/js/bootstrap-datepicker/locales/bootstrap-datepicker.kh.min.js rename to app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.kh.min.js diff --git a/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.kk.min.js b/app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.kk.min.js similarity index 100% rename from static/js/bootstrap-datepicker/locales/bootstrap-datepicker.kk.min.js rename to app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.kk.min.js diff --git a/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.ko.min.js b/app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.ko.min.js similarity index 100% rename from static/js/bootstrap-datepicker/locales/bootstrap-datepicker.ko.min.js rename to app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.ko.min.js diff --git a/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.kr.min.js b/app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.kr.min.js similarity index 100% rename from static/js/bootstrap-datepicker/locales/bootstrap-datepicker.kr.min.js rename to app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.kr.min.js diff --git a/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.lt.min.js b/app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.lt.min.js similarity index 100% rename from static/js/bootstrap-datepicker/locales/bootstrap-datepicker.lt.min.js rename to app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.lt.min.js diff --git a/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.lv.min.js b/app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.lv.min.js similarity index 100% rename from static/js/bootstrap-datepicker/locales/bootstrap-datepicker.lv.min.js rename to app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.lv.min.js diff --git a/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.me.min.js b/app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.me.min.js similarity index 100% rename from static/js/bootstrap-datepicker/locales/bootstrap-datepicker.me.min.js rename to app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.me.min.js diff --git a/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.mk.min.js b/app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.mk.min.js similarity index 100% rename from static/js/bootstrap-datepicker/locales/bootstrap-datepicker.mk.min.js rename to app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.mk.min.js diff --git a/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.mn.min.js b/app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.mn.min.js similarity index 100% rename from static/js/bootstrap-datepicker/locales/bootstrap-datepicker.mn.min.js rename to app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.mn.min.js diff --git a/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.ms.min.js b/app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.ms.min.js similarity index 100% rename from static/js/bootstrap-datepicker/locales/bootstrap-datepicker.ms.min.js rename to app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.ms.min.js diff --git a/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.nb.min.js b/app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.nb.min.js similarity index 100% rename from static/js/bootstrap-datepicker/locales/bootstrap-datepicker.nb.min.js rename to app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.nb.min.js diff --git a/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.nl-BE.min.js b/app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.nl-BE.min.js similarity index 100% rename from static/js/bootstrap-datepicker/locales/bootstrap-datepicker.nl-BE.min.js rename to app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.nl-BE.min.js diff --git a/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.nl.min.js b/app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.nl.min.js similarity index 100% rename from static/js/bootstrap-datepicker/locales/bootstrap-datepicker.nl.min.js rename to app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.nl.min.js diff --git a/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.no.min.js b/app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.no.min.js similarity index 100% rename from static/js/bootstrap-datepicker/locales/bootstrap-datepicker.no.min.js rename to app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.no.min.js diff --git a/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.pl.min.js b/app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.pl.min.js similarity index 100% rename from static/js/bootstrap-datepicker/locales/bootstrap-datepicker.pl.min.js rename to app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.pl.min.js diff --git a/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.pt-BR.min.js b/app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.pt-BR.min.js similarity index 100% rename from static/js/bootstrap-datepicker/locales/bootstrap-datepicker.pt-BR.min.js rename to app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.pt-BR.min.js diff --git a/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.pt.min.js b/app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.pt.min.js similarity index 100% rename from static/js/bootstrap-datepicker/locales/bootstrap-datepicker.pt.min.js rename to app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.pt.min.js diff --git a/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.ro.min.js b/app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.ro.min.js similarity index 100% rename from static/js/bootstrap-datepicker/locales/bootstrap-datepicker.ro.min.js rename to app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.ro.min.js diff --git a/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.rs-latin.min.js b/app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.rs-latin.min.js similarity index 100% rename from static/js/bootstrap-datepicker/locales/bootstrap-datepicker.rs-latin.min.js rename to app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.rs-latin.min.js diff --git a/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.rs.min.js b/app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.rs.min.js similarity index 100% rename from static/js/bootstrap-datepicker/locales/bootstrap-datepicker.rs.min.js rename to app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.rs.min.js diff --git a/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.ru.min.js b/app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.ru.min.js similarity index 100% rename from static/js/bootstrap-datepicker/locales/bootstrap-datepicker.ru.min.js rename to app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.ru.min.js diff --git a/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.sk.min.js b/app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.sk.min.js similarity index 100% rename from static/js/bootstrap-datepicker/locales/bootstrap-datepicker.sk.min.js rename to app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.sk.min.js diff --git a/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.sl.min.js b/app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.sl.min.js similarity index 100% rename from static/js/bootstrap-datepicker/locales/bootstrap-datepicker.sl.min.js rename to app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.sl.min.js diff --git a/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.sq.min.js b/app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.sq.min.js similarity index 100% rename from static/js/bootstrap-datepicker/locales/bootstrap-datepicker.sq.min.js rename to app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.sq.min.js diff --git a/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.sr-latin.min.js b/app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.sr-latin.min.js similarity index 100% rename from static/js/bootstrap-datepicker/locales/bootstrap-datepicker.sr-latin.min.js rename to app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.sr-latin.min.js diff --git a/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.sr.min.js b/app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.sr.min.js similarity index 100% rename from static/js/bootstrap-datepicker/locales/bootstrap-datepicker.sr.min.js rename to app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.sr.min.js diff --git a/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.sv.min.js b/app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.sv.min.js similarity index 100% rename from static/js/bootstrap-datepicker/locales/bootstrap-datepicker.sv.min.js rename to app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.sv.min.js diff --git a/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.sw.min.js b/app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.sw.min.js similarity index 100% rename from static/js/bootstrap-datepicker/locales/bootstrap-datepicker.sw.min.js rename to app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.sw.min.js diff --git a/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.th.min.js b/app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.th.min.js similarity index 100% rename from static/js/bootstrap-datepicker/locales/bootstrap-datepicker.th.min.js rename to app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.th.min.js diff --git a/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.tr.min.js b/app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.tr.min.js similarity index 100% rename from static/js/bootstrap-datepicker/locales/bootstrap-datepicker.tr.min.js rename to app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.tr.min.js diff --git a/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.uk.min.js b/app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.uk.min.js similarity index 100% rename from static/js/bootstrap-datepicker/locales/bootstrap-datepicker.uk.min.js rename to app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.uk.min.js diff --git a/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.vi.min.js b/app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.vi.min.js similarity index 100% rename from static/js/bootstrap-datepicker/locales/bootstrap-datepicker.vi.min.js rename to app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.vi.min.js diff --git a/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.zh-CN.min.js b/app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.zh-CN.min.js similarity index 100% rename from static/js/bootstrap-datepicker/locales/bootstrap-datepicker.zh-CN.min.js rename to app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.zh-CN.min.js diff --git a/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.zh-TW.min.js b/app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.zh-TW.min.js similarity index 100% rename from static/js/bootstrap-datepicker/locales/bootstrap-datepicker.zh-TW.min.js rename to app/static/js/bootstrap-datepicker/locales/bootstrap-datepicker.zh-TW.min.js diff --git a/static/js/bootstrap-daterangepicker/daterangepicker.min.js b/app/static/js/bootstrap-daterangepicker/daterangepicker.min.js similarity index 100% rename from static/js/bootstrap-daterangepicker/daterangepicker.min.js rename to app/static/js/bootstrap-daterangepicker/daterangepicker.min.js diff --git a/static/js/bootstrap-datetimepicker/bootstrap-datetimepicker.css b/app/static/js/bootstrap-datetimepicker/bootstrap-datetimepicker.css similarity index 100% rename from static/js/bootstrap-datetimepicker/bootstrap-datetimepicker.css rename to app/static/js/bootstrap-datetimepicker/bootstrap-datetimepicker.css diff --git a/static/js/bootstrap-datetimepicker/bootstrap-datetimepicker.js b/app/static/js/bootstrap-datetimepicker/bootstrap-datetimepicker.js similarity index 100% rename from static/js/bootstrap-datetimepicker/bootstrap-datetimepicker.js rename to app/static/js/bootstrap-datetimepicker/bootstrap-datetimepicker.js diff --git a/static/js/bootstrap-datetimepicker/bootstrap-datetimepicker.min.css b/app/static/js/bootstrap-datetimepicker/bootstrap-datetimepicker.min.css similarity index 100% rename from static/js/bootstrap-datetimepicker/bootstrap-datetimepicker.min.css rename to app/static/js/bootstrap-datetimepicker/bootstrap-datetimepicker.min.css diff --git a/static/js/bootstrap-datetimepicker/bootstrap-datetimepicker.min.js b/app/static/js/bootstrap-datetimepicker/bootstrap-datetimepicker.min.js similarity index 100% rename from static/js/bootstrap-datetimepicker/bootstrap-datetimepicker.min.js rename to app/static/js/bootstrap-datetimepicker/bootstrap-datetimepicker.min.js diff --git a/static/js/bootstrap-datetimepicker/locale/af.js b/app/static/js/bootstrap-datetimepicker/locale/af.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/af.js rename to app/static/js/bootstrap-datetimepicker/locale/af.js diff --git a/static/js/bootstrap-datetimepicker/locale/ar-ma.js b/app/static/js/bootstrap-datetimepicker/locale/ar-ma.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/ar-ma.js rename to app/static/js/bootstrap-datetimepicker/locale/ar-ma.js diff --git a/static/js/bootstrap-datetimepicker/locale/ar-sa.js b/app/static/js/bootstrap-datetimepicker/locale/ar-sa.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/ar-sa.js rename to app/static/js/bootstrap-datetimepicker/locale/ar-sa.js diff --git a/static/js/bootstrap-datetimepicker/locale/ar-tn.js b/app/static/js/bootstrap-datetimepicker/locale/ar-tn.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/ar-tn.js rename to app/static/js/bootstrap-datetimepicker/locale/ar-tn.js diff --git a/static/js/bootstrap-datetimepicker/locale/ar.js b/app/static/js/bootstrap-datetimepicker/locale/ar.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/ar.js rename to app/static/js/bootstrap-datetimepicker/locale/ar.js diff --git a/static/js/bootstrap-datetimepicker/locale/az.js b/app/static/js/bootstrap-datetimepicker/locale/az.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/az.js rename to app/static/js/bootstrap-datetimepicker/locale/az.js diff --git a/static/js/bootstrap-datetimepicker/locale/be.js b/app/static/js/bootstrap-datetimepicker/locale/be.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/be.js rename to app/static/js/bootstrap-datetimepicker/locale/be.js diff --git a/static/js/bootstrap-datetimepicker/locale/bg.js b/app/static/js/bootstrap-datetimepicker/locale/bg.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/bg.js rename to app/static/js/bootstrap-datetimepicker/locale/bg.js diff --git a/static/js/bootstrap-datetimepicker/locale/bn.js b/app/static/js/bootstrap-datetimepicker/locale/bn.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/bn.js rename to app/static/js/bootstrap-datetimepicker/locale/bn.js diff --git a/static/js/bootstrap-datetimepicker/locale/bo.js b/app/static/js/bootstrap-datetimepicker/locale/bo.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/bo.js rename to app/static/js/bootstrap-datetimepicker/locale/bo.js diff --git a/static/js/bootstrap-datetimepicker/locale/br.js b/app/static/js/bootstrap-datetimepicker/locale/br.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/br.js rename to app/static/js/bootstrap-datetimepicker/locale/br.js diff --git a/static/js/bootstrap-datetimepicker/locale/bs.js b/app/static/js/bootstrap-datetimepicker/locale/bs.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/bs.js rename to app/static/js/bootstrap-datetimepicker/locale/bs.js diff --git a/static/js/bootstrap-datetimepicker/locale/ca.js b/app/static/js/bootstrap-datetimepicker/locale/ca.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/ca.js rename to app/static/js/bootstrap-datetimepicker/locale/ca.js diff --git a/static/js/bootstrap-datetimepicker/locale/cs.js b/app/static/js/bootstrap-datetimepicker/locale/cs.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/cs.js rename to app/static/js/bootstrap-datetimepicker/locale/cs.js diff --git a/static/js/bootstrap-datetimepicker/locale/cv.js b/app/static/js/bootstrap-datetimepicker/locale/cv.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/cv.js rename to app/static/js/bootstrap-datetimepicker/locale/cv.js diff --git a/static/js/bootstrap-datetimepicker/locale/cy.js b/app/static/js/bootstrap-datetimepicker/locale/cy.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/cy.js rename to app/static/js/bootstrap-datetimepicker/locale/cy.js diff --git a/static/js/bootstrap-datetimepicker/locale/da.js b/app/static/js/bootstrap-datetimepicker/locale/da.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/da.js rename to app/static/js/bootstrap-datetimepicker/locale/da.js diff --git a/static/js/bootstrap-datetimepicker/locale/de-at.js b/app/static/js/bootstrap-datetimepicker/locale/de-at.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/de-at.js rename to app/static/js/bootstrap-datetimepicker/locale/de-at.js diff --git a/static/js/bootstrap-datetimepicker/locale/de.js b/app/static/js/bootstrap-datetimepicker/locale/de.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/de.js rename to app/static/js/bootstrap-datetimepicker/locale/de.js diff --git a/static/js/bootstrap-datetimepicker/locale/el.js b/app/static/js/bootstrap-datetimepicker/locale/el.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/el.js rename to app/static/js/bootstrap-datetimepicker/locale/el.js diff --git a/static/js/bootstrap-datetimepicker/locale/en-au.js b/app/static/js/bootstrap-datetimepicker/locale/en-au.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/en-au.js rename to app/static/js/bootstrap-datetimepicker/locale/en-au.js diff --git a/static/js/bootstrap-datetimepicker/locale/en-ca.js b/app/static/js/bootstrap-datetimepicker/locale/en-ca.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/en-ca.js rename to app/static/js/bootstrap-datetimepicker/locale/en-ca.js diff --git a/static/js/bootstrap-datetimepicker/locale/en-gb.js b/app/static/js/bootstrap-datetimepicker/locale/en-gb.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/en-gb.js rename to app/static/js/bootstrap-datetimepicker/locale/en-gb.js diff --git a/static/js/bootstrap-datetimepicker/locale/eo.js b/app/static/js/bootstrap-datetimepicker/locale/eo.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/eo.js rename to app/static/js/bootstrap-datetimepicker/locale/eo.js diff --git a/static/js/bootstrap-datetimepicker/locale/es.js b/app/static/js/bootstrap-datetimepicker/locale/es.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/es.js rename to app/static/js/bootstrap-datetimepicker/locale/es.js diff --git a/static/js/bootstrap-datetimepicker/locale/et.js b/app/static/js/bootstrap-datetimepicker/locale/et.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/et.js rename to app/static/js/bootstrap-datetimepicker/locale/et.js diff --git a/static/js/bootstrap-datetimepicker/locale/eu.js b/app/static/js/bootstrap-datetimepicker/locale/eu.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/eu.js rename to app/static/js/bootstrap-datetimepicker/locale/eu.js diff --git a/static/js/bootstrap-datetimepicker/locale/fa.js b/app/static/js/bootstrap-datetimepicker/locale/fa.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/fa.js rename to app/static/js/bootstrap-datetimepicker/locale/fa.js diff --git a/static/js/bootstrap-datetimepicker/locale/fi.js b/app/static/js/bootstrap-datetimepicker/locale/fi.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/fi.js rename to app/static/js/bootstrap-datetimepicker/locale/fi.js diff --git a/static/js/bootstrap-datetimepicker/locale/fo.js b/app/static/js/bootstrap-datetimepicker/locale/fo.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/fo.js rename to app/static/js/bootstrap-datetimepicker/locale/fo.js diff --git a/static/js/bootstrap-datetimepicker/locale/fr-ca.js b/app/static/js/bootstrap-datetimepicker/locale/fr-ca.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/fr-ca.js rename to app/static/js/bootstrap-datetimepicker/locale/fr-ca.js diff --git a/static/js/bootstrap-datetimepicker/locale/fr.js b/app/static/js/bootstrap-datetimepicker/locale/fr.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/fr.js rename to app/static/js/bootstrap-datetimepicker/locale/fr.js diff --git a/static/js/bootstrap-datetimepicker/locale/fy.js b/app/static/js/bootstrap-datetimepicker/locale/fy.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/fy.js rename to app/static/js/bootstrap-datetimepicker/locale/fy.js diff --git a/static/js/bootstrap-datetimepicker/locale/gl.js b/app/static/js/bootstrap-datetimepicker/locale/gl.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/gl.js rename to app/static/js/bootstrap-datetimepicker/locale/gl.js diff --git a/static/js/bootstrap-datetimepicker/locale/he.js b/app/static/js/bootstrap-datetimepicker/locale/he.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/he.js rename to app/static/js/bootstrap-datetimepicker/locale/he.js diff --git a/static/js/bootstrap-datetimepicker/locale/hi.js b/app/static/js/bootstrap-datetimepicker/locale/hi.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/hi.js rename to app/static/js/bootstrap-datetimepicker/locale/hi.js diff --git a/static/js/bootstrap-datetimepicker/locale/hr.js b/app/static/js/bootstrap-datetimepicker/locale/hr.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/hr.js rename to app/static/js/bootstrap-datetimepicker/locale/hr.js diff --git a/static/js/bootstrap-datetimepicker/locale/hu.js b/app/static/js/bootstrap-datetimepicker/locale/hu.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/hu.js rename to app/static/js/bootstrap-datetimepicker/locale/hu.js diff --git a/static/js/bootstrap-datetimepicker/locale/hy-am.js b/app/static/js/bootstrap-datetimepicker/locale/hy-am.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/hy-am.js rename to app/static/js/bootstrap-datetimepicker/locale/hy-am.js diff --git a/static/js/bootstrap-datetimepicker/locale/id.js b/app/static/js/bootstrap-datetimepicker/locale/id.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/id.js rename to app/static/js/bootstrap-datetimepicker/locale/id.js diff --git a/static/js/bootstrap-datetimepicker/locale/is.js b/app/static/js/bootstrap-datetimepicker/locale/is.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/is.js rename to app/static/js/bootstrap-datetimepicker/locale/is.js diff --git a/static/js/bootstrap-datetimepicker/locale/it.js b/app/static/js/bootstrap-datetimepicker/locale/it.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/it.js rename to app/static/js/bootstrap-datetimepicker/locale/it.js diff --git a/static/js/bootstrap-datetimepicker/locale/ja.js b/app/static/js/bootstrap-datetimepicker/locale/ja.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/ja.js rename to app/static/js/bootstrap-datetimepicker/locale/ja.js diff --git a/static/js/bootstrap-datetimepicker/locale/jv.js b/app/static/js/bootstrap-datetimepicker/locale/jv.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/jv.js rename to app/static/js/bootstrap-datetimepicker/locale/jv.js diff --git a/static/js/bootstrap-datetimepicker/locale/ka.js b/app/static/js/bootstrap-datetimepicker/locale/ka.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/ka.js rename to app/static/js/bootstrap-datetimepicker/locale/ka.js diff --git a/static/js/bootstrap-datetimepicker/locale/km.js b/app/static/js/bootstrap-datetimepicker/locale/km.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/km.js rename to app/static/js/bootstrap-datetimepicker/locale/km.js diff --git a/static/js/bootstrap-datetimepicker/locale/ko.js b/app/static/js/bootstrap-datetimepicker/locale/ko.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/ko.js rename to app/static/js/bootstrap-datetimepicker/locale/ko.js diff --git a/static/js/bootstrap-datetimepicker/locale/lb.js b/app/static/js/bootstrap-datetimepicker/locale/lb.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/lb.js rename to app/static/js/bootstrap-datetimepicker/locale/lb.js diff --git a/static/js/bootstrap-datetimepicker/locale/lt.js b/app/static/js/bootstrap-datetimepicker/locale/lt.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/lt.js rename to app/static/js/bootstrap-datetimepicker/locale/lt.js diff --git a/static/js/bootstrap-datetimepicker/locale/lv.js b/app/static/js/bootstrap-datetimepicker/locale/lv.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/lv.js rename to app/static/js/bootstrap-datetimepicker/locale/lv.js diff --git a/static/js/bootstrap-datetimepicker/locale/me.js b/app/static/js/bootstrap-datetimepicker/locale/me.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/me.js rename to app/static/js/bootstrap-datetimepicker/locale/me.js diff --git a/static/js/bootstrap-datetimepicker/locale/mk.js b/app/static/js/bootstrap-datetimepicker/locale/mk.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/mk.js rename to app/static/js/bootstrap-datetimepicker/locale/mk.js diff --git a/static/js/bootstrap-datetimepicker/locale/ml.js b/app/static/js/bootstrap-datetimepicker/locale/ml.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/ml.js rename to app/static/js/bootstrap-datetimepicker/locale/ml.js diff --git a/static/js/bootstrap-datetimepicker/locale/mr.js b/app/static/js/bootstrap-datetimepicker/locale/mr.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/mr.js rename to app/static/js/bootstrap-datetimepicker/locale/mr.js diff --git a/static/js/bootstrap-datetimepicker/locale/ms-my.js b/app/static/js/bootstrap-datetimepicker/locale/ms-my.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/ms-my.js rename to app/static/js/bootstrap-datetimepicker/locale/ms-my.js diff --git a/static/js/bootstrap-datetimepicker/locale/ms.js b/app/static/js/bootstrap-datetimepicker/locale/ms.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/ms.js rename to app/static/js/bootstrap-datetimepicker/locale/ms.js diff --git a/static/js/bootstrap-datetimepicker/locale/my.js b/app/static/js/bootstrap-datetimepicker/locale/my.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/my.js rename to app/static/js/bootstrap-datetimepicker/locale/my.js diff --git a/static/js/bootstrap-datetimepicker/locale/nb.js b/app/static/js/bootstrap-datetimepicker/locale/nb.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/nb.js rename to app/static/js/bootstrap-datetimepicker/locale/nb.js diff --git a/static/js/bootstrap-datetimepicker/locale/ne.js b/app/static/js/bootstrap-datetimepicker/locale/ne.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/ne.js rename to app/static/js/bootstrap-datetimepicker/locale/ne.js diff --git a/static/js/bootstrap-datetimepicker/locale/nl.js b/app/static/js/bootstrap-datetimepicker/locale/nl.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/nl.js rename to app/static/js/bootstrap-datetimepicker/locale/nl.js diff --git a/static/js/bootstrap-datetimepicker/locale/nn.js b/app/static/js/bootstrap-datetimepicker/locale/nn.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/nn.js rename to app/static/js/bootstrap-datetimepicker/locale/nn.js diff --git a/static/js/bootstrap-datetimepicker/locale/pl.js b/app/static/js/bootstrap-datetimepicker/locale/pl.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/pl.js rename to app/static/js/bootstrap-datetimepicker/locale/pl.js diff --git a/static/js/bootstrap-datetimepicker/locale/pt-br.js b/app/static/js/bootstrap-datetimepicker/locale/pt-br.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/pt-br.js rename to app/static/js/bootstrap-datetimepicker/locale/pt-br.js diff --git a/static/js/bootstrap-datetimepicker/locale/pt.js b/app/static/js/bootstrap-datetimepicker/locale/pt.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/pt.js rename to app/static/js/bootstrap-datetimepicker/locale/pt.js diff --git a/static/js/bootstrap-datetimepicker/locale/ro.js b/app/static/js/bootstrap-datetimepicker/locale/ro.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/ro.js rename to app/static/js/bootstrap-datetimepicker/locale/ro.js diff --git a/static/js/bootstrap-datetimepicker/locale/ru.js b/app/static/js/bootstrap-datetimepicker/locale/ru.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/ru.js rename to app/static/js/bootstrap-datetimepicker/locale/ru.js diff --git a/static/js/bootstrap-datetimepicker/locale/si.js b/app/static/js/bootstrap-datetimepicker/locale/si.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/si.js rename to app/static/js/bootstrap-datetimepicker/locale/si.js diff --git a/static/js/bootstrap-datetimepicker/locale/sk.js b/app/static/js/bootstrap-datetimepicker/locale/sk.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/sk.js rename to app/static/js/bootstrap-datetimepicker/locale/sk.js diff --git a/static/js/bootstrap-datetimepicker/locale/sl.js b/app/static/js/bootstrap-datetimepicker/locale/sl.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/sl.js rename to app/static/js/bootstrap-datetimepicker/locale/sl.js diff --git a/static/js/bootstrap-datetimepicker/locale/sq.js b/app/static/js/bootstrap-datetimepicker/locale/sq.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/sq.js rename to app/static/js/bootstrap-datetimepicker/locale/sq.js diff --git a/static/js/bootstrap-datetimepicker/locale/sr-cyrl.js b/app/static/js/bootstrap-datetimepicker/locale/sr-cyrl.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/sr-cyrl.js rename to app/static/js/bootstrap-datetimepicker/locale/sr-cyrl.js diff --git a/static/js/bootstrap-datetimepicker/locale/sr.js b/app/static/js/bootstrap-datetimepicker/locale/sr.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/sr.js rename to app/static/js/bootstrap-datetimepicker/locale/sr.js diff --git a/static/js/bootstrap-datetimepicker/locale/sv.js b/app/static/js/bootstrap-datetimepicker/locale/sv.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/sv.js rename to app/static/js/bootstrap-datetimepicker/locale/sv.js diff --git a/static/js/bootstrap-datetimepicker/locale/ta.js b/app/static/js/bootstrap-datetimepicker/locale/ta.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/ta.js rename to app/static/js/bootstrap-datetimepicker/locale/ta.js diff --git a/static/js/bootstrap-datetimepicker/locale/th.js b/app/static/js/bootstrap-datetimepicker/locale/th.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/th.js rename to app/static/js/bootstrap-datetimepicker/locale/th.js diff --git a/static/js/bootstrap-datetimepicker/locale/tl-ph.js b/app/static/js/bootstrap-datetimepicker/locale/tl-ph.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/tl-ph.js rename to app/static/js/bootstrap-datetimepicker/locale/tl-ph.js diff --git a/static/js/bootstrap-datetimepicker/locale/tr.js b/app/static/js/bootstrap-datetimepicker/locale/tr.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/tr.js rename to app/static/js/bootstrap-datetimepicker/locale/tr.js diff --git a/static/js/bootstrap-datetimepicker/locale/tzl.js b/app/static/js/bootstrap-datetimepicker/locale/tzl.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/tzl.js rename to app/static/js/bootstrap-datetimepicker/locale/tzl.js diff --git a/static/js/bootstrap-datetimepicker/locale/tzm-latn.js b/app/static/js/bootstrap-datetimepicker/locale/tzm-latn.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/tzm-latn.js rename to app/static/js/bootstrap-datetimepicker/locale/tzm-latn.js diff --git a/static/js/bootstrap-datetimepicker/locale/tzm.js b/app/static/js/bootstrap-datetimepicker/locale/tzm.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/tzm.js rename to app/static/js/bootstrap-datetimepicker/locale/tzm.js diff --git a/static/js/bootstrap-datetimepicker/locale/uk.js b/app/static/js/bootstrap-datetimepicker/locale/uk.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/uk.js rename to app/static/js/bootstrap-datetimepicker/locale/uk.js diff --git a/static/js/bootstrap-datetimepicker/locale/uz.js b/app/static/js/bootstrap-datetimepicker/locale/uz.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/uz.js rename to app/static/js/bootstrap-datetimepicker/locale/uz.js diff --git a/static/js/bootstrap-datetimepicker/locale/vi.js b/app/static/js/bootstrap-datetimepicker/locale/vi.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/vi.js rename to app/static/js/bootstrap-datetimepicker/locale/vi.js diff --git a/static/js/bootstrap-datetimepicker/locale/zh-cn.js b/app/static/js/bootstrap-datetimepicker/locale/zh-cn.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/zh-cn.js rename to app/static/js/bootstrap-datetimepicker/locale/zh-cn.js diff --git a/static/js/bootstrap-datetimepicker/locale/zh-tw.js b/app/static/js/bootstrap-datetimepicker/locale/zh-tw.js similarity index 100% rename from static/js/bootstrap-datetimepicker/locale/zh-tw.js rename to app/static/js/bootstrap-datetimepicker/locale/zh-tw.js diff --git a/static/js/bootstrap-datetimepicker/moment.min.js b/app/static/js/bootstrap-datetimepicker/moment.min.js similarity index 100% rename from static/js/bootstrap-datetimepicker/moment.min.js rename to app/static/js/bootstrap-datetimepicker/moment.min.js diff --git a/static/js/bootstrap-notify.min.js b/app/static/js/bootstrap-notify.min.js similarity index 100% rename from static/js/bootstrap-notify.min.js rename to app/static/js/bootstrap-notify.min.js diff --git a/static/js/bootstrap.min.js b/app/static/js/bootstrap.min.js similarity index 100% rename from static/js/bootstrap.min.js rename to app/static/js/bootstrap.min.js diff --git a/static/js/chosen.jquery.min.js b/app/static/js/chosen.jquery.min.js similarity index 100% rename from static/js/chosen.jquery.min.js rename to app/static/js/chosen.jquery.min.js diff --git a/static/js/ion-rangeslider/ion.rangeSlider.min.css b/app/static/js/ion-rangeslider/ion.rangeSlider.min.css similarity index 100% rename from static/js/ion-rangeslider/ion.rangeSlider.min.css rename to app/static/js/ion-rangeslider/ion.rangeSlider.min.css diff --git a/static/js/ion-rangeslider/ion.rangeSlider.min.js b/app/static/js/ion-rangeslider/ion.rangeSlider.min.js similarity index 100% rename from static/js/ion-rangeslider/ion.rangeSlider.min.js rename to app/static/js/ion-rangeslider/ion.rangeSlider.min.js diff --git a/static/js/jconfirm/jquery-confirm.min.css b/app/static/js/jconfirm/jquery-confirm.min.css similarity index 100% rename from static/js/jconfirm/jquery-confirm.min.css rename to app/static/js/jconfirm/jquery-confirm.min.css diff --git a/static/js/jconfirm/jquery-confirm.min.js b/app/static/js/jconfirm/jquery-confirm.min.js similarity index 100% rename from static/js/jconfirm/jquery-confirm.min.js rename to app/static/js/jconfirm/jquery-confirm.min.js diff --git a/static/js/jquery-tags-input/jquery.tagsinput.min.css b/app/static/js/jquery-tags-input/jquery.tagsinput.min.css similarity index 100% rename from static/js/jquery-tags-input/jquery.tagsinput.min.css rename to app/static/js/jquery-tags-input/jquery.tagsinput.min.css diff --git a/static/js/jquery-tags-input/jquery.tagsinput.min.js b/app/static/js/jquery-tags-input/jquery.tagsinput.min.js similarity index 100% rename from static/js/jquery-tags-input/jquery.tagsinput.min.js rename to app/static/js/jquery-tags-input/jquery.tagsinput.min.js diff --git a/static/js/jquery.bootstrap.wizard.min.js b/app/static/js/jquery.bootstrap.wizard.min.js similarity index 100% rename from static/js/jquery.bootstrap.wizard.min.js rename to app/static/js/jquery.bootstrap.wizard.min.js diff --git a/static/js/jquery.min.js b/app/static/js/jquery.min.js similarity index 100% rename from static/js/jquery.min.js rename to app/static/js/jquery.min.js diff --git a/static/js/lightyear.js b/app/static/js/lightyear.js similarity index 100% rename from static/js/lightyear.js rename to app/static/js/lightyear.js diff --git a/static/js/main.min.js b/app/static/js/main.min.js similarity index 100% rename from static/js/main.min.js rename to app/static/js/main.min.js diff --git a/static/js/perfect-scrollbar.min.js b/app/static/js/perfect-scrollbar.min.js similarity index 100% rename from static/js/perfect-scrollbar.min.js rename to app/static/js/perfect-scrollbar.min.js diff --git a/templates/admin/base_admin.html b/app/templates/admin/base_admin.html similarity index 100% rename from templates/admin/base_admin.html rename to app/templates/admin/base_admin.html diff --git a/templates/admin/content_add.html b/app/templates/admin/content_add.html similarity index 100% rename from templates/admin/content_add.html rename to app/templates/admin/content_add.html diff --git a/templates/admin/content_analysis.html b/app/templates/admin/content_analysis.html similarity index 100% rename from templates/admin/content_analysis.html rename to app/templates/admin/content_analysis.html diff --git a/templates/admin/content_detail.html b/app/templates/admin/content_detail.html similarity index 100% rename from templates/admin/content_detail.html rename to app/templates/admin/content_detail.html diff --git a/templates/admin/department_detail.html b/app/templates/admin/department_detail.html similarity index 100% rename from templates/admin/department_detail.html rename to app/templates/admin/department_detail.html diff --git a/templates/admin/department_edit.html b/app/templates/admin/department_edit.html similarity index 100% rename from templates/admin/department_edit.html rename to app/templates/admin/department_edit.html diff --git a/templates/admin/document_detail.html b/app/templates/admin/document_detail.html similarity index 100% rename from templates/admin/document_detail.html rename to app/templates/admin/document_detail.html diff --git a/templates/admin/document_edit.html b/app/templates/admin/document_edit.html similarity index 100% rename from templates/admin/document_edit.html rename to app/templates/admin/document_edit.html diff --git a/templates/admin/index_admin.html b/app/templates/admin/index_admin.html similarity index 100% rename from templates/admin/index_admin.html rename to app/templates/admin/index_admin.html diff --git a/templates/admin/profile_admin.html b/app/templates/admin/profile_admin.html similarity index 100% rename from templates/admin/profile_admin.html rename to app/templates/admin/profile_admin.html diff --git a/templates/login/login.html b/app/templates/login/login.html similarity index 100% rename from templates/login/login.html rename to app/templates/login/login.html diff --git a/templates/macro.html b/app/templates/macro.html similarity index 100% rename from templates/macro.html rename to app/templates/macro.html diff --git a/templates/user/base.html b/app/templates/user/base.html similarity index 100% rename from templates/user/base.html rename to app/templates/user/base.html diff --git a/templates/user/case.html b/app/templates/user/case.html similarity index 82% rename from templates/user/case.html rename to app/templates/user/case.html index 5608e90..6d647a9 100644 --- a/templates/user/case.html +++ b/app/templates/user/case.html @@ -30,15 +30,17 @@ - - {% for doc in documents %} + {% for doc in documents %} + {{ loop.index }} {{ doc.filename }} - 下载文件 + 下载文件 - {% endfor %} - + + {% endfor %} diff --git a/templates/user/index.html b/app/templates/user/index.html similarity index 100% rename from templates/user/index.html rename to app/templates/user/index.html diff --git a/templates/user/inform.html b/app/templates/user/inform.html similarity index 91% rename from templates/user/inform.html rename to app/templates/user/inform.html index 67389b8..7f81a61 100644 --- a/templates/user/inform.html +++ b/app/templates/user/inform.html @@ -30,15 +30,15 @@ - - {% for doc in documents %} + {% for doc in documents %} + {{ loop.index }} {{ doc.filename }} 下载文件 - {% endfor %} - + + {% endfor %} diff --git a/templates/user/policy.html b/app/templates/user/policy.html similarity index 82% rename from templates/user/policy.html rename to app/templates/user/policy.html index 7ead475..58b5ca2 100644 --- a/templates/user/policy.html +++ b/app/templates/user/policy.html @@ -30,15 +30,17 @@ - - {% for doc in documents %} + {% for doc in documents %} + {{ loop.index }} {{ doc.filename }} - 下载文件 + 下载文件 - {% endfor %} - + + {% endfor %} diff --git a/templates/user/profile.html b/app/templates/user/profile.html similarity index 100% rename from templates/user/profile.html rename to app/templates/user/profile.html diff --git a/templates/user/video.html b/app/templates/user/video.html similarity index 67% rename from templates/user/video.html rename to app/templates/user/video.html index 70e2c57..805bd90 100644 --- a/templates/user/video.html +++ b/app/templates/user/video.html @@ -30,16 +30,20 @@ - - {% for doc in documents %} + {% for doc in documents %} + {{ loop.index }} {{ doc.filename }} - 下载文件 - 在线观看 + 下载文件 + 在线观看 - {% endfor %} - + + {% endfor %} @@ -52,13 +56,13 @@ {% endblock %} {% block js_ext %} - + {% endblock %} \ No newline at end of file diff --git a/templates/user/video_watch.html b/app/templates/user/video_watch.html similarity index 100% rename from templates/user/video_watch.html rename to app/templates/user/video_watch.html diff --git a/app/user/__init__.py b/app/user/__init__.py new file mode 100644 index 0000000..4658238 --- /dev/null +++ b/app/user/__init__.py @@ -0,0 +1,5 @@ +from flask import Blueprint + +user = Blueprint('user', __name__, url_prefix='/user/') + +from .views import * diff --git a/user/views.py b/app/user/views.py similarity index 98% rename from user/views.py rename to app/user/views.py index 54f6e34..5f0e9a8 100644 --- a/user/views.py +++ b/app/user/views.py @@ -3,10 +3,9 @@ from flask.views import MethodView import os -from admin.models import * -from settings import UPLOAD_FOLDER - -user = Blueprint('user', __name__, url_prefix='/user/') +from app.admin.models import * +from config import UPLOAD_FOLDER +from . import user # 用户页面主页 diff --git a/bulletin_board.py b/bulletin_board.py deleted file mode 100644 index 0009c76..0000000 --- a/bulletin_board.py +++ /dev/null @@ -1,40 +0,0 @@ -from flask import Flask, redirect, url_for -from flask_login import LoginManager -from flask_migrate import Migrate # ORM迁移,修改ORM对应的模型,然后再把模型映射到数据库中 -from department.models import db, Department -import login.views -import admin.views -import user.views -import department.views -import settings - -app = Flask(__name__, static_url_path='') -app.config.from_object(settings) # 导入参数设置 -app.register_blueprint(login.views.bp) # 注册登录页面视图 -app.register_blueprint(admin.views.admin) # 注册管理员页面视图 -app.register_blueprint(user.views.user) # 注册用户页面视图 -app.register_blueprint(department.views.department) -db.init_app(app) # 初始化绑定app对象 -login_manager = LoginManager(app) -login_manager.login_view = 'login.login' -login_manager.login_message = '访问页面需要登录' -migrate = Migrate(app, db) - - -@login_manager.user_loader -def load_user(user_id): - from department.models import Department - dep = Department.query.get(int(user_id)) - return dep - - -@app.route('/') -def hello_world(): - return redirect(url_for('login.login')) - - -import commands - - -if __name__ == '__main__': - app.run() diff --git a/config.py b/config.py new file mode 100644 index 0000000..2b85a3e --- /dev/null +++ b/config.py @@ -0,0 +1,49 @@ +import os + +basedir = os.path.abspath(os.path.dirname(__file__)) +HOST = os.environ.get('HOST') +PORT = os.environ.get('PORT') +USER = os.environ.get('USER') +PASSWORD = os.environ.get('PASSWORD') +CHARSET = os.environ.get('CHARSET') + +# 上传配置 +UPLOAD_FOLDER = os.environ.get('UPLOAD_FOLDER') +MAX_CONTENT_LENGTH = 128 * 1024 * 1024 # 128MB + + +class BaseConfig: + # SQLALCHEMY配置 + SQLALCHEMY_TRACK_MODIFICATIONS = False + SQLALCHEMY_ECHO = False + + +class DevelopmentConfig(BaseConfig): + SECRET_KEY = 'dev' + DEBUG = True + DATABASE = 'cyk_flask' + DB_URI = 'mysql+pymysql://{}:{}@{}:{}/{}?{}'.format(USER, PASSWORD, HOST, PORT, DATABASE, CHARSET) + SQLALCHEMY_DATABASE_URI = DB_URI + + +class TestingConfig(BaseConfig): + SECRET_KEY = 'test' + DATABASE = 'cyk_flask_test' + DB_URI = 'mysql+pymysql://{}:{}@{}:{}/{}?{}'.format(USER, PASSWORD, HOST, PORT, DATABASE, CHARSET) + SQLALCHEMY_DATABASE_URI = DB_URI + + +class ProductionConfig(BaseConfig): + SECRET_KEY = os.environ.get('SECRET_KEY') + DATABASE = 'cyk_flask' + DB_URI = 'mysql+pymysql://{}:{}@{}:{}/{}?{}'.format(USER, PASSWORD, HOST, PORT, DATABASE, CHARSET) + SQLALCHEMY_DATABASE_URI = DB_URI + + +config = { + 'development': DevelopmentConfig, + 'testing': TestingConfig, + 'production': ProductionConfig, + 'default': DevelopmentConfig +} + diff --git a/department/__init__.py b/department/__init__.py deleted file mode 100644 index e69de29..0000000 diff --git a/login/__init__.py b/login/__init__.py deleted file mode 100644 index e69de29..0000000 diff --git a/settings.py b/settings.py deleted file mode 100644 index fb764cf..0000000 --- a/settings.py +++ /dev/null @@ -1,21 +0,0 @@ -# 数据库的配置变量 -HOSTNAME = '127.0.0.1' -PORT = '3306' -DATABASE = 'cyk_flask' -USERNAME = 'root' -PASSWORD = 'root' -CHARSET = 'charset=utf8mb4' -DB_URI = 'mysql+pymysql://{}:{}@{}:{}/{}?{}'.format(USERNAME, PASSWORD, HOSTNAME, PORT, DATABASE, CHARSET) - -# SQLALCHEMY配置 -SQLALCHEMY_DATABASE_URI = DB_URI -SQLALCHEMY_TRACK_MODIFICATIONS = False -SQLALCHEMY_ECHO = False - -# 项目配置 -DEBUG = True -SECRET_KEY = "sdfadan13!@fjflo0#2!" - -# 上传配置 -UPLOAD_FOLDER = r'C:\Users\Chengyikang\PycharmProjects\bulletin_board\uploads' -MAX_CONTENT_LENGTH = 128 * 1024 * 1024 # 128MB diff --git a/user/__init__.py b/user/__init__.py deleted file mode 100644 index e69de29..0000000 diff --git a/wsgi.py b/wsgi.py index 5bc8627..cc77a27 100644 --- a/wsgi.py +++ b/wsgi.py @@ -5,4 +5,4 @@ if os.path.exists(dotenv_path): load_dotenv(dotenv_path) -from bulletin_board import app \ No newline at end of file +from app import create_app \ No newline at end of file