Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
31 changes: 31 additions & 0 deletions ReadWriteFile.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
__author__ = 'Acedia'

def readfile():
f = open('date/text.txt', 'r')
str = ""
dict = [
]
while(str.find('end') < 0):
name = f.readline()[:-1]
comp = f.readline()[:-1]
tema = f.readline()[:-1]
text = ""
str = ""
while(str.find('--') < 0 and str.find('end') < 0):
str = f.readline()
if (str.find('--') < 0 and str.find('end') < 0):
str = str[:-1]
text += str
dict.append([name , comp, tema, text])
return dict

def writefile(list):
f = open('date/text.txt', 'w')
for i in range(0, len(list)):
for j in range(0, len(list[i])):
f.writelines(list[i][j] +' \n')
if i == len(list) - 1:
f.writelines('end')
else:
f.writelines('-- \n')
return 0
95 changes: 76 additions & 19 deletions main.py
Original file line number Diff line number Diff line change
@@ -1,28 +1,85 @@
from wsgiref.simple_server import make_server
from flask import Flask, jsonify, render_template, request
import datetime
import zapis
app = Flask(__name__)

__author__ = 'pahaz'
@app.template_filter()
def datetimefilter(value, format='%Y/%m/%d %H:%M'):
"""convert a datetime to a different format."""
return value.strftime(format)
id = 0
app.jinja_env.filters['datetimefilter'] = datetimefilter
list = zapis.readfile()
@app.route("/")

def template_test():
num = 0
return render_template('template.html', num = num,
my_list=list, title="Index", current_time=datetime.datetime.now())

def application(environ, start_response):
assert environ.get('PATH_INFO') is not None, "environ['PATH_INFO'] is None"
@app.route('/', methods = ['POST'])
def contact():
if request.form['submit'] == 'Add':
return '''
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Шаблоны же :)

<form method='POST'>

status = "200 OK"
headers = [('Content-type', 'text/html; charset=utf-8')]
body = """<!DOCTYPE html>
<h1>Example-mini-application</h1>
"""
<p><strong>Как вас зовут?</strong></p>
<p><input name='name' maxlength="25" type="text" size="40" value="Вася"></p>

start_response(status, headers)
return [body.encode('utf-8')]
<p><strong>Кто вас обидел?</strong></p>
<p><input name='comp' maxlength="25" type="text" size="40" value="Евросеть"></p>

<p><strong>Чем вас обидел?</strong></p>
<p><input name='tema' maxlength="25" type="text" size="40" value="Телефон отжали"></p>

def run(host='', port=31338):
print("It's work! Visit http://{host}:{port}/".format(
host=host or 'localhost',
port=port))
httpd = make_server(host, port, application)
httpd.serve_forever()
<p><b>Оставте коментарий</b></p>
<p><textarea name="comment" type="text">Я очень зол!!!!!!</textarea></p>

<input type="submit" name="submit" value="Ok">
<input type="submit" name="submit" value="Close">

if __name__ == "__main__":
run()
</form>
'''
if request.form['submit'] == 'Ok':
text = [request.form['name'], request.form['comp'], request.form['tema'], request.form['comment']]
list.append(text)
zapis.writefile(list)
return template_test()
if request.form['submit'] == 'Delete':
global id
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

зарезервированное имя

id = int(request.form['index'])
list.pop(id - 1)
return template_test()
if request.form['submit'] == 'Refactor':
global id
id = int(request.form['index'])
form = ""
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ад! шаблоны!

form += "<form method='POST'>"
form += "<p><strong>Как вас зовут?</strong></p>"
form += "<p><input name='name' maxlength='35' type='text' size='40' value=" + list[id-1][0] + "></p>"

form += "<p><strong>Кто вас обидел?</strong></p>"
form += "<p><input name='comp' maxlength='35' type='text' size='40' value=" + list[id-1][1] + "></p>"

form += "<p><strong>Чем вас обидел?</strong></p>"
form += "<p><input name='tema' maxlength='35' type='text' size='40' value=" + list[id-1][2] + "></p>"

form += "<p><b>Оставте коментарий</b></p>"
form += "<p><textarea name='comment' type='text'>" + list[id-1][3] + "</textarea></p>"

form += "<input type='submit' name='submit' value='Refresh'>"
form += "<input type='submit' name='submit' value='Censel'>"

form += "</form>"
return form
if request.form['submit'] == 'Refresh':
list[id - 1][0] = request.form['name']
list[id - 1][1] = request.form['comp']
list[id - 1][2] = request.form['tema']
list[id - 1][3] = request.form['comment']
zapis.writefile(list)
return template_test()
if request.form['submit'] == 'Censel':
return template_test()
if __name__ == '__main__':
app.run(debug=True)
30 changes: 30 additions & 0 deletions template.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
<style>
.ID{
visibility: hidden;
}
</style>
<h3>Здесь вы можите оставить свой отрицательный отзыв</h3>
<br>
<form method="post">
<ul>
{% for n in my_list %}
<form method="post">
<li>
{% set num = num + 1 %}
{{n[0]}}<br>
{{n[1]}}<br>
{{n[2]}}<br>
{{n[3]}}<br>
</li>
<input type="submit" name="submit" value="Refactor">
<input type="submit" name="submit" value="Delete">
<input class = 'ID' name='index' maxlength="5" type="text" size="40" value={{num}}>
</form>
{% endfor %}
</ul>
</form>
<br>
<form method="POST">
<input type="submit" name="submit" value="Add">
</form>
<br>