main_sys_restart.py 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. from .tool.func import *
  2. def main_sys_restart():
  3. with get_db_connect() as conn:
  4. if admin_check() != 1:
  5. return re_error('/error/3')
  6. if flask.request.method == 'POST':
  7. admin_check(None, 'restart')
  8. print('Restart')
  9. python_ver = ''
  10. python_ver = str(sys.version_info.major) + '.' + str(sys.version_info.minor)
  11. run_list = [sys.executable, 'python' + python_ver, 'python3', 'python', 'py -' + python_ver]
  12. for exe_name in run_list:
  13. try:
  14. os.execl(exe_name, sys.executable, *sys.argv)
  15. except:
  16. pass
  17. try:
  18. os.execl(exe_name, '"' + sys.executable + '"', *sys.argv)
  19. except:
  20. pass
  21. try:
  22. os.execl(exe_name, os.path.abspath(__file__), *sys.argv)
  23. except:
  24. pass
  25. else:
  26. return re_error('/error/33')
  27. else:
  28. return easy_minify(flask.render_template(skin_check(),
  29. imp = [load_lang('wiki_restart'), wiki_set(), wiki_custom(), wiki_css([0, 0])],
  30. data = '''
  31. <form method="post">
  32. <button type="submit">''' + load_lang('restart') + '''</button>
  33. </form>
  34. ''',
  35. menu = [['manager', load_lang('return')]]
  36. ))