linuxrouter/docker/routlin-dash/app/action_clear_ddns_log.py

28 lines
822 B
Python
Raw Normal View History

2026-05-24 03:47:34 -04:00
import os
from flask import Blueprint, redirect, flash, send_file, abort
2026-05-17 03:26:01 -04:00
from auth import require_level
2026-05-24 00:47:43 -04:00
from config_utils import CONFIGS_DIR
2026-05-17 03:26:01 -04:00
bp = Blueprint('action_clear_ddns_log', __name__)
2026-05-24 00:47:43 -04:00
LOG_FILE = f'{CONFIGS_DIR}/ddns.log'
2026-05-17 03:26:01 -04:00
@bp.route('/action/clear_ddns_log', methods=['POST'])
@require_level('administrator')
def clear_ddns_log():
try:
open(LOG_FILE, 'w').close()
flash('DDNS log cleared.', 'success')
except Exception as ex:
flash(f'Could not clear log: {ex}', 'error')
return redirect('/view/view_ddns')
2026-05-24 03:47:34 -04:00
@bp.route('/action/download_ddns_log', methods=['GET'])
@require_level('administrator')
def download_ddns_log():
if not os.path.isfile(LOG_FILE):
abort(404)
return send_file(LOG_FILE, as_attachment=True, download_name='ddns.log', mimetype='text/plain')