From f306c6587d72585c70083f6e26c7a5891b9363ad Mon Sep 17 00:00:00 2001 From: KF7EEL Date: Sat, 9 Oct 2021 13:56:13 -0700 Subject: [PATCH] add manage mail, start tiny pages --- web/app.py | 66 +++++++++++++++++++++++++++- web/templates/flask_user_layout.html | 2 + 2 files changed, 66 insertions(+), 2 deletions(-) diff --git a/web/app.py b/web/app.py index 7aae46f..2d2bf39 100644 --- a/web/app.py +++ b/web/app.py @@ -495,6 +495,14 @@ def hbnet_web_service(): message = db.Column(db.String(150), nullable=False, server_default='') time = db.Column(db.DateTime()) dmr_id = db.Column(db.Integer(), primary_key=False) + + class TinyPage(db.Model): + __tablename__ = 'tiny_pages' + id = db.Column(db.Integer(), primary_key=True) + author = db.Column(db.String(100), nullable=False, server_default='') + content = db.Column(db.String(150), nullable=False, server_default='') + query = db.Column(db.String(100), nullable=False, server_default='') + time = db.Column(db.DateTime()) class Misc(db.Model): __tablename__ = 'misc' @@ -2512,6 +2520,48 @@ TG #: ''' + str(tg_d.tg) + ''' all_post = '' return render_template('ss.html', markup_content = Markup(content), all_post = Markup(post_content), user_id = dmr_id) + @app.route('/all_mail/', methods=['GET', 'POST']) + @roles_required('Admin') + @login_required + def get_all_mail(user): + show_mailbox = False + if request.args.get('delete_mail'): + mailbox_del(int(request.args.get('delete_mail'))) + content = '''

Deleted message.

+

Redirecting in 1 seconds.

+ ''' + + elif request.args.get('send_mail'): + if request.form.get('username').upper() == '*ALL': + all_users = User.query.all() + for i in all_users: + mailbox_add(str(i.username), user, '

Sent via portal:

' + request.form.get('message'), 0, 0, '', '') + elif ',' in request.form.get('username').upper(): + splt_usr = str(request.form.get('username')).split(',') + for i in splt_usr: + mailbox_add(i, user, '

Sent via portal:

' + request.form.get('message'), 0, 0, '', '') + + else: + mailbox_add(user, request.form.get('username').upper(), '

Sent via portal:

' + request.form.get('message'), 0, 0, '', '') + content = '''

Message sent.

+

Redirecting in 1 seconds.

+ ''' + + else: + show_mailbox = True + mail_all_users = MailBox.query.order_by(MailBox.time.desc()).all() + content = '' + for i in mail_all_users: + content = content + ''' + + To: ''' + i.snd_callsign + ''' - ''' + str(i.snd_id) + '''
From: ''' + i.rcv_callsign + ''' - ''' + str(i.rcv_id) + ''' + ''' + i.message + ''' + ''' + str(i.time.strftime(time_format)) + ''' + + ''' + return render_template('all_mail.html', markup_content = Markup(content), show_mail = show_mailbox) + + @app.route('/mail/', methods=['GET', 'POST']) @login_required def get_mail(user): @@ -2524,8 +2574,6 @@ TG #: ''' + str(tg_d.tg) + ''' ''' elif request.args.get('send_mail'): - print(request.form.get('username')) - print(request.form.get('message')) mailbox_add(user, request.form.get('username').upper(), '

Sent via portal:

' + request.form.get('message'), 0, 0, '', '') content = '''

Message sent.

Redirecting in 1 seconds.

@@ -2806,6 +2854,15 @@ Name: ''' + p.name + '''  -  Port: ''' + str( db.session.add(add_loc) db.session.commit() + def tp_add(_callsign, _bulletin, _dmr_id, _server, _system_name): + add_tp = BulletinBoard( + author = _author, + query = _query, + content = _content + ) + db.session.add(add_tp) + db.session.commit() + def bb_add(_callsign, _bulletin, _dmr_id, _server, _system_name): add_bb = BulletinBoard( callsign = _callsign, @@ -2844,6 +2901,11 @@ Name: ''' + p.name + '''  -  Port: ''' + str( db.session.add(add_ss) db.session.commit() + def tp_del(_id): + tpd = TinyPage.query.filter_by(id=_id).first() + db.session.delete(tpd) + db.session.commit() + def sms_log_add(_snd_call, _rcv_call, _msg, _snd_id, _rcv_id, _server, _system_name): add_sms = SMSLog( snd_callsign = _snd_call, diff --git a/web/templates/flask_user_layout.html b/web/templates/flask_user_layout.html index 9b06028..33b793b 100644 --- a/web/templates/flask_user_layout.html +++ b/web/templates/flask_user_layout.html @@ -104,6 +104,8 @@
  • Manage News
  • Misc Options
  • Authorization Log
  • + Manage Mail +