mirror of
https://github.com/EDeev/yandex_lyceum.git
synced 2026-06-15 19:11:03 +03:00
less 2
This commit is contained in:
parent
dccd2389b6
commit
8e18361f1b
14 changed files with 211 additions and 0 deletions
12
WEB. HTML flask-wtf/loginform.py
Normal file
12
WEB. HTML flask-wtf/loginform.py
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
from flask_wtf import FlaskForm
|
||||
from wtforms import StringField, PasswordField, BooleanField, SubmitField
|
||||
from wtforms.validators import DataRequired
|
||||
|
||||
|
||||
class LoginForm(FlaskForm):
|
||||
username = StringField('Логин', validators=[DataRequired()])
|
||||
password = PasswordField('Пароль', validators=[DataRequired()])
|
||||
remember_me = BooleanField('Запомнить меня')
|
||||
submit = SubmitField('Войти')
|
||||
|
||||
|
||||
16
WEB. HTML flask-wtf/news.json
Normal file
16
WEB. HTML flask-wtf/news.json
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
{
|
||||
"news": [
|
||||
{
|
||||
"title": "Сегодня хорошая погода",
|
||||
"content": "Невероятно, сегодня хорошая погода"
|
||||
},
|
||||
{
|
||||
"title": "Завтра хорошая погода",
|
||||
"content": "С ума сойти, и завтра хорошая погода"
|
||||
},
|
||||
{
|
||||
"title": "Послезавтра дождь",
|
||||
"content": "Все вошло в норму"
|
||||
}
|
||||
]
|
||||
}
|
||||
42
WEB. HTML flask-wtf/server.py
Normal file
42
WEB. HTML flask-wtf/server.py
Normal file
|
|
@ -0,0 +1,42 @@
|
|||
from flask import Flask, render_template, redirect
|
||||
|
||||
|
||||
app = Flask(__name__)
|
||||
app.config['SECRET_KEY'] = 'yandexlyceum_secret_key'
|
||||
|
||||
|
||||
@app.route('/<label>')
|
||||
@app.route('/index/<label>')
|
||||
def index(label):
|
||||
param = {'label': 'И на Марсе будут яблони цвести!', 'title': label}
|
||||
return render_template('index.html', **param)
|
||||
|
||||
|
||||
@app.route('/training/<prof>')
|
||||
def training(prof):
|
||||
param = {'title': "Тренировки в полёте", "spec": prof}
|
||||
return render_template('training.html', **param)
|
||||
|
||||
|
||||
@app.route('/list_prof/<var>')
|
||||
def list_prof(var):
|
||||
param = {'title': "Список профессий", "var": var}
|
||||
return render_template('list_prof.html', **param)
|
||||
|
||||
|
||||
@app.route('/answer')
|
||||
@app.route('/auto_answer')
|
||||
def answer():
|
||||
param = {'title': "Анкета", 'surname': "Фёдоров", 'name': "Марк", 'education': "Среднее", 'profession': " Писатель",
|
||||
'sex': "Male", 'motivation': "Распространить хип-хоп в космос!", 'ready': "True"}
|
||||
return render_template('auto_answer.html', **param)
|
||||
|
||||
|
||||
@app.route('/login')
|
||||
def login():
|
||||
param = {'title': "Аварийный доступ"}
|
||||
return render_template('login.html', **param)
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
app.run(port=8080, host='127.0.0.1')
|
||||
7
WEB. HTML flask-wtf/static/css/style.css
Normal file
7
WEB. HTML flask-wtf/static/css/style.css
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
h4.color_edit {
|
||||
color: "black";
|
||||
}
|
||||
|
||||
p.padmarging {
|
||||
margin-left: 20px;
|
||||
}
|
||||
BIN
WEB. HTML flask-wtf/static/img/kb1.jpg
Normal file
BIN
WEB. HTML flask-wtf/static/img/kb1.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 268 KiB |
BIN
WEB. HTML flask-wtf/static/img/kb2.jpg
Normal file
BIN
WEB. HTML flask-wtf/static/img/kb2.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 267 KiB |
BIN
WEB. HTML flask-wtf/static/img/mars_ico.png
Normal file
BIN
WEB. HTML flask-wtf/static/img/mars_ico.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 16 KiB |
15
WEB. HTML flask-wtf/templates/auto_answer.html
Normal file
15
WEB. HTML flask-wtf/templates/auto_answer.html
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
{% extends "base_two.html" %}
|
||||
|
||||
{% block content1 %}
|
||||
<div class="alert alert-light" role="alert">
|
||||
<h4><font color="#DCDCDC">И на Марсе будут яблони цвести!</font></h4>
|
||||
</div>
|
||||
|
||||
<h4 class="color_edit"><p style="padding-left: 60px">Фамилия: {{surname}}</p></h4>
|
||||
<h4 class="color_edit"><p style="padding-left: 60px">Имя: {{name}}</p></h4>
|
||||
<h4 class="color_edit"><p style="padding-left: 60px">Образование: {{education}}</p></h4>
|
||||
<h4 class="color_edit"><p style="padding-left: 60px">Профессия: {{profession}}</p></h4>
|
||||
<h4 class="color_edit"><p style="padding-left: 60px">Пол: {{sex}}</p></h4>
|
||||
<h4 class="color_edit"><p style="padding-left: 60px">Мотивация: {{motivation}}</p></h4>
|
||||
<h4 class="color_edit"><p style="padding-left: 60px">Готовы остаться на Марсе? {{ready}}</p></h4>
|
||||
{% endblock %}
|
||||
32
WEB. HTML flask-wtf/templates/base.html
Normal file
32
WEB. HTML flask-wtf/templates/base.html
Normal file
|
|
@ -0,0 +1,32 @@
|
|||
<!doctype html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<!-- Required meta tags -->
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
|
||||
<!-- Bootstrap CSS -->
|
||||
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/css/bootstrap.min.css"
|
||||
rel="stylesheet" integrity="sha384-1BmE4kWBq78iYhFldvKuhfTAU6auU8tT94WrHftjDbrCEXSU1oBoqyl2QvZ6jIW3"
|
||||
crossorigin="anonymous">
|
||||
|
||||
<!-- <link rel="stylesheet" type="text/css" href="static/css/style.css" /> -->
|
||||
<title>{{title}}</title>
|
||||
</head>
|
||||
<body>
|
||||
<header>
|
||||
<nav class="navbar navbar-light bg-light">
|
||||
<div class="container-fluid">
|
||||
<a class="navbar-brand mb-0" href="#"><h1>Миссия Колонизация Марса</h1></a>
|
||||
<div class="navbar-text mb-0 h5">
|
||||
Mars One
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
</header>
|
||||
<!-- Begin page content -->
|
||||
<main role="main" class="container-fluid">
|
||||
{% block content1 %}{% endblock %}
|
||||
</main>
|
||||
</body>
|
||||
</html>
|
||||
10
WEB. HTML flask-wtf/templates/base_two.html
Normal file
10
WEB. HTML flask-wtf/templates/base_two.html
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
{% extends "base.html" %}
|
||||
|
||||
{% block content1 %}
|
||||
<div class="alert alert-light" role="alert">
|
||||
<h4><font color="#DCDCDC">И на Марсе будут яблони цвести!</font></h4>
|
||||
</div>
|
||||
<div class="container">
|
||||
{% block content2 %}{% endblock %}
|
||||
</div>
|
||||
{% endblock %}
|
||||
5
WEB. HTML flask-wtf/templates/index.html
Normal file
5
WEB. HTML flask-wtf/templates/index.html
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
{% extends "base.html" %}
|
||||
|
||||
{% block content1 %}
|
||||
<h4>{{label}}</h4>
|
||||
{% endblock %}
|
||||
27
WEB. HTML flask-wtf/templates/list_prof.html
Normal file
27
WEB. HTML flask-wtf/templates/list_prof.html
Normal file
|
|
@ -0,0 +1,27 @@
|
|||
{% extends "base_two.html" %}
|
||||
|
||||
{% block content2 %}
|
||||
{% set all_prof = ['врач', "экзобиолог", "климатолог", "астрогеолог", "гляциолог", "метеоролог",
|
||||
'инженер-исследователь', "пилот", "строитель", "инженер по терраформированию",
|
||||
"специалист по радиационной защите", "инженер жизнеобеспечения", "оператор марсохода",
|
||||
"киберинженер", "штурман", "пилот дронов"] %}
|
||||
{% if var == "ol" %}
|
||||
<p class="h1">Список профессий</p>
|
||||
<div class="container">
|
||||
<ol>
|
||||
{% for p in all_prof %}
|
||||
<li class="h5">{{p}}</li>
|
||||
{% endfor %}
|
||||
</ol>
|
||||
</div>
|
||||
{% elif var == "ul" %}
|
||||
<p class="h1">Список профессий</p>
|
||||
<div class="container">
|
||||
{% for p in all_prof %}
|
||||
<li class="h5">{{p}}</li>
|
||||
{% endfor %}
|
||||
</div>
|
||||
{% else %}
|
||||
<p class="h1">Индекс указан неправильно!</p>
|
||||
{% endif %}
|
||||
{% endblock %}
|
||||
28
WEB. HTML flask-wtf/templates/login.html
Normal file
28
WEB. HTML flask-wtf/templates/login.html
Normal file
|
|
@ -0,0 +1,28 @@
|
|||
{% extends "base_two.html" %}
|
||||
|
||||
{% block content2 %}
|
||||
<h1>Авторизация</h1>
|
||||
<form action="" method="post" novalidate>
|
||||
{{ form.hidden_tag() }}
|
||||
<p>
|
||||
{{ form.username.label }}<br>
|
||||
{{ form.username(class="form-control") }}<br>
|
||||
{% for error in form.username.errors %}
|
||||
<div class="alert alert-danger" role="alert">
|
||||
{{ error }}
|
||||
</div>
|
||||
{% endfor %}
|
||||
</p>
|
||||
<p>
|
||||
{{ form.password.label }}<br>
|
||||
{{ form.password(class="form-control", type="password") }}<br>
|
||||
{% for error in form.password.errors %}
|
||||
<div class="alert alert-danger" role="alert">
|
||||
{{ error }}
|
||||
</div>
|
||||
{% endfor %}
|
||||
</p>
|
||||
<p>{{ form.remember_me() }} {{ form.remember_me.label }}</p>
|
||||
<p>{{ form.submit(type="submit", class="btn btn-primary") }}</p>
|
||||
</form>
|
||||
{% endblock %}
|
||||
17
WEB. HTML flask-wtf/templates/training.html
Normal file
17
WEB. HTML flask-wtf/templates/training.html
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
{% extends "base_two.html" %}
|
||||
|
||||
{% block content2 %}
|
||||
{% set sin = ['врач', "экзобиолог", "климатолог", "астрогеолог", "гляциолог", "метеоролог"] %}
|
||||
{% set inj = ['инженер-исследователь', "пилот", "строитель", "инженер по терраформированию",
|
||||
"специалист по радиационной защите", "инженер жизнеобеспечения", "оператор марсохода",
|
||||
"киберинженер", "штурман", "пилот дронов"] %}
|
||||
{% if spec.lower() in sin %}
|
||||
<p class="text-center h2">Научные симуляторы</p>
|
||||
<p class="text-center"><img src="/static/img/kb1.jpg" class="img-fluid"></p>
|
||||
{% elif spec.lower() in inj %}
|
||||
<p class="text-center h2">Инженерные тренажеры</p>
|
||||
<p class="text-center"><img src="/static/img/kb2.jpg" class="img-fluid"></p>
|
||||
{% else %}
|
||||
<p class="text-center h1">В наших списках ваша профессия отсутствует!</p>
|
||||
{% endif %}
|
||||
{% endblock %}
|
||||
Loading…
Add table
Reference in a new issue