Browse Source

업데이트 선택 기능

ect (or 2du) 8 years ago
parent
commit
dd6f3cd61c
3 changed files with 131 additions and 114 deletions
  1. 24 9
      app.py
  2. 1 0
      language/en-US.json
  3. 106 105
      language/ko-KR.json

+ 24 - 9
app.py

@@ -1041,40 +1041,55 @@ def indexing():
     
     
     return redirect('/')        
     return redirect('/')        
 
 
-@app.route('/re_start')
+@app.route('/re_start', methods=['POST', 'GET'])
 def re_start():
 def re_start():
     if admin_check(None, 're_start') != 1:
     if admin_check(None, 're_start') != 1:
         return re_error('/error/3')
         return re_error('/error/3')
 
 
-    print('Re Start')
+    if flask.request.method == 'POST':
+        os.execl(sys.executable, sys.executable, *sys.argv)
+    else:
+        print('Re Start')
 
 
-    os.execl(sys.executable, sys.executable, *sys.argv)
+        return css_html_js_minify.html_minify(flask.render_template(skin_check(), 
+            imp = [load_lang('server') + ' ' + load_lang('restart'), wiki_set(), custom(), other2([0, 0])],
+            data = '<form method="post"><button type="submit">' + load_lang('restart') + '</button></form>',
+            menu = [['manager', load_lang('admin')]]
+        ))       
 
 
 @app.route('/update')
 @app.route('/update')
 def update():
 def update():
     if admin_check(None, 'update') != 1:
     if admin_check(None, 'update') != 1:
        return re_error('/error/3')
        return re_error('/error/3')
 
 
+    curs.execute('select data from other where name = "update"')
+    up_data = curs.fetchall()
+    if up_data:
+        up_data = up_data[0][0]
+    else:
+        up_data = 'stable'
+
     if platform.system() == 'Linux':
     if platform.system() == 'Linux':
         print('Update')
         print('Update')
 
 
-        ok = os.system('git pull')
+        os.system('git remote add origin https://github.com/2DU/openNAMU.git')
+        ok = os.system('git pull origin ' + up_data)
         if ok == 0:
         if ok == 0:
             return redirect('/re_start')
             return redirect('/re_start')
     else:
     else:
         if platform.system() == 'Windows':
         if platform.system() == 'Windows':
             print('Download')
             print('Download')
 
 
-            urllib.request.urlretrieve('https://github.com/2DU/openNAMU/archive/stable.zip', 'update.zip')
+            urllib.request.urlretrieve('https://github.com/2DU/openNAMU/archive/' + up_data + '.zip', 'update.zip')
 
 
             print('Zip Extract')
             print('Zip Extract')
             zipfile.ZipFile('update.zip').extractall('')
             zipfile.ZipFile('update.zip').extractall('')
 
 
             print('Move')
             print('Move')
-            ok = os.system('xcopy /y /r openNAMU-stable .')
+            ok = os.system('xcopy /y /r openNAMU-' + up_data + ' .')
             if ok == 0:
             if ok == 0:
                 print('Remove')
                 print('Remove')
-                os.system('rd /s /q openNAMU-stable')
+                os.system('rd /s /q openNAMU-' + up_data)
                 os.system('del update.zip')
                 os.system('del update.zip')
 
 
                 return redirect('/re_start')
                 return redirect('/re_start')
@@ -1994,7 +2009,7 @@ def manager(num = 1):
                         <li><a href="/indexing">Indexing (''' + load_lang('create') + ' or ' + load_lang('delete') + ''')</a></li>
                         <li><a href="/indexing">Indexing (''' + load_lang('create') + ' or ' + load_lang('delete') + ''')</a></li>
                         <li><a href="/manager/8">''' + load_lang('admin_group') + ' ' + load_lang('create') + '''</a></li>
                         <li><a href="/manager/8">''' + load_lang('admin_group') + ' ' + load_lang('create') + '''</a></li>
                         <li><a href="/edit_set">''' + load_lang('setting') + ' ' + load_lang('edit') + '''</a></li>
                         <li><a href="/edit_set">''' + load_lang('setting') + ' ' + load_lang('edit') + '''</a></li>
-                        <li><a href="/re_start">Server Restart</a></li>
+                        <li><a href="/re_start">''' + load_lang('server') + ' ' + load_lang('restart') + '''</a></li>
                         <li><a href="/update">''' + load_lang('update') + '''</a></li>
                         <li><a href="/update">''' + load_lang('update') + '''</a></li>
                         <li><a href="/inter_wiki">''' + load_lang('interwiki') + '''</a></li>
                         <li><a href="/inter_wiki">''' + load_lang('interwiki') + '''</a></li>
                     </ul>
                     </ul>
@@ -2743,7 +2758,7 @@ def register():
                         <input placeholder="Email (Option)" name="email" type="text">
                         <input placeholder="Email (Option)" name="email" type="text">
                         <hr>
                         <hr>
                         ''' + captcha_get() + '''
                         ''' + captcha_get() + '''
-                        <button type="submit">' + load_lang('register') + '</button>
+                        <button type="submit">''' + load_lang('register') + '''</button>
                         <hr>
                         <hr>
                         <span>''' + load_lang('http_warring') + '''</span>
                         <span>''' + load_lang('http_warring') + '''</span>
                     </form>
                     </form>

+ 1 - 0
language/en-US.json

@@ -2,6 +2,7 @@
     "edit" : "Edit",
     "edit" : "Edit",
     "history" : "History",
     "history" : "History",
     "delete" : "Delete",
     "delete" : "Delete",
+    "server" : "Server",
     "bulk_delete" : "Bulk Delete",
     "bulk_delete" : "Bulk Delete",
     "edit_filter" : "Edit Filtering",
     "edit_filter" : "Edit Filtering",
     "template" : "Template",
     "template" : "Template",

+ 106 - 105
language/ko-KR.json

@@ -1,107 +1,108 @@
 {
 {
-    "edit": "편집",
-    "history": "역사",
-    "delete": "삭제",
-    "bulk_delete": "대량 삭제",
-    "edit_filter": "편집 필터",
-    "move": "이동",
-    "hide": "숨김",
-    "list": "목록",
-    "revert": "되돌리기",
-    "version": "판",
-    "normal_version": "버전",
-    "document": "문서",
-    "all": "모든",
-    "ban": "차단",
-    "release": "해제",
-    "save": "저장",
-    "other": "기타",
-    "tool": "도구",
-    "plus": "추가",
-    "open": "열린",
-    "search": "검색",
-    "user": "사용자",
-    "alarm": "알림",
-    "watchlist": "주시 문서",
-    "my_info": "내 정보",
-    "recent": "최근",
-    "recent_changes": "최근 변경",
-    "discussion": "토론",
-    "login": "로그인",
-    "logout": "로그아웃",
-    "register": "회원가입",
-    "no_alarm": " 알림이 없습니다.",
-    "able": "가능",
-    "year": "년",
-    "month": "월",
-    "day": "일",
-    "normal": "일반",
-    "subscriber": "가입자",
-    "admin": "관리자",
-    "owner": "소유자",
-    "admin_group": "관리 그룹",
-    "user_css_warring": "비 로그인의 경우에는 사용자 CSS가 로그인하거나 브라우저 닫으면 날아갑니다.",
-    "http_warring": "주의 : 만약 HTTPS 연결이 아닌 경우 데이터가 유출될 가능성이 있습니다. 이에 대해 책임지지 않습니다.",
-    "new": "새",
-    "need": "필요한",
-    "upload": "파일 올리기",
-    "record": "기록",
-    "name": "이름",
-    "license": "라이선스",
-    "interwiki": "인터위키",
-    "update": "업데이트",
-    "setting": "설정",
-    "create": "생성",
-    "editor": "수정자",
-    "hour": "시간",
-    "time": "시각",
-    "close": "닫기",
-    "stop": "정지",
-    "restart": "재시작",
-    "agreement": "합의",
-    "backlink": "역링크",
-    "why": "사유",
-    "random": "무작위",
-    "authority": "권한",
-    "file": "파일",
-    "change": "변경",
-    "compare": "비교",
-    "count": "횟수",
-    "check": "검사",
-    "preview": "미리보기",
-    "next": "다음",
-    "previous": "이전",
-    "no_login_warring": "비 로그인 상태로 진행 시 IP가 기록될 수 있습니다.",
-    "state": "상태",
-    "limitless": "무기한",
-    "period": "기간",
-    "now": "현재",
-    "blocked": "차단자",
-    "band": "대역",
-    "notice": "공지",
-    "writer": "작성자",
-    "upper": "상위",
-    "under": "하위",
-    "pass": "통과",
-    "category": "분류",
-    "authority_error": "권한이 부족합니다.",
-    "no_login_error": "비 로그인 상태 입니다.",
-    "no_exist_user_error": "계정이 없습니다.",
-    "no_admin_block_error": "관리자는 차단, 검사 할 수 없습니다.",
-    "same_id_exist_error": "동일한 아이디의 사용자가 있습니다.",
-    "long_id_error": "아이디는 20글자보다 짧아야 합니다.",
-    "id_char_error": "아이디에는 한글과 알파벳과 공백만 허용 됩니다.",
-    "file_exist_error": "파일이 없습니다.",
-    "password_error": "비밀번호가 다릅니다.",
-    "recaptcha_error": "리캡차를 통과하세요.",
-    "file_extension_error": "jpg, gif, jpeg, png, webp만 가능 합니다.",
-    "edit_record_error": "편집 기록은 500자를 넘을 수 없습니다.",
-    "same_file_error": "동일한 이름의 파일이 있습니다.",
-    "file_capacity_error": "파일 최대 용량 (MB) :",
-    "decument_exist_error": "내용이 원래 문서와 동일 합니다.",
-    "password_diffrent_error": "재 확인 비밀번호와 입력 비밀번호가 다릅니다.",
-    "edit_filter_error": "편집 필터에 의해 검열 되었습니다.",
-    "file_name_error": "파일 이름은 알파벳, 한글, 띄어쓰기, 언더바, 빼기표만 허용 됩니다.",
-    "template": "틀",
-    "out": "외부"
+    "edit" : "편집",
+    "history" : "역사",
+    "delete" : "삭제",
+    "server" : "서버",
+    "bulk_delete" : "대량 삭제",
+    "edit_filter" : "편집 필터",
+    "move" : "이동",
+    "hide" : "숨김",
+    "list" : "목록",
+    "revert" : "되돌리기",
+    "version" : "판",
+    "normal_version" : "버전",
+    "document" : "문서",
+    "all" : "모든",
+    "ban" : "차단",
+    "release" : "해제",
+    "save" : "저장",
+    "other" : "기타",
+    "tool" : "도구",
+    "plus" : "추가",
+    "open" : "열린",
+    "search" : "검색",
+    "user" : "사용자",
+    "alarm" : "알림",
+    "watchlist" : "주시 문서",
+    "my_info" : "내 정보",
+    "recent" : "최근",
+    "recent_changes" : "최근 변경",
+    "discussion" : "토론",
+    "login" : "로그인",
+    "logout" : "로그아웃",
+    "register" : "회원가입",
+    "no_alarm" : " 알림이 없습니다.",
+    "able" : "가능",
+    "year" : "년",
+    "month" : "월",
+    "day" : "일",
+    "normal" : "일반",
+    "subscriber" : "가입자",
+    "admin" : "관리자",
+    "owner" : "소유자",
+    "admin_group" : "관리 그룹",
+    "user_css_warring" : "비 로그인의 경우에는 사용자 CSS가 로그인하거나 브라우저 닫으면 날아갑니다.",
+    "http_warring" : "주의 : 만약 HTTPS 연결이 아닌 경우 데이터가 유출될 가능성이 있습니다. 이에 대해 책임지지 않습니다.",
+    "new" : "새",
+    "need" : "필요한",
+    "upload" : "파일 올리기",
+    "record" : "기록",
+    "name" : "이름",
+    "license" : "라이선스",
+    "interwiki" : "인터위키",
+    "update" : "업데이트",
+    "setting" : "설정",
+    "create" : "생성",
+    "editor" : "수정자",
+    "hour" : "시간",
+    "time" : "시각",
+    "close" : "닫기",
+    "stop" : "정지",
+    "restart" : "재시작",
+    "agreement" : "합의",
+    "backlink" : "역링크",
+    "why" : "사유",
+    "random" : "무작위",
+    "authority" : "권한",
+    "file" : "파일",
+    "change" : "변경",
+    "compare" : "비교",
+    "count" : "횟수",
+    "check" : "검사",
+    "preview" : "미리보기",
+    "next" : "다음",
+    "previous" : "이전",
+    "no_login_warring" : "비 로그인 상태로 진행 시 IP가 기록될 수 있습니다.",
+    "state" : "상태",
+    "limitless" : "무기한",
+    "period" : "기간",
+    "now" : "현재",
+    "blocked" : "차단자",
+    "band" : "대역",
+    "notice" : "공지",
+    "writer" : "작성자",
+    "upper" : "상위",
+    "under" : "하위",
+    "pass" : "통과",
+    "category" : "분류",
+    "authority_error" : "권한이 부족합니다.",
+    "no_login_error" : "비 로그인 상태 입니다.",
+    "no_exist_user_error" : "계정이 없습니다.",
+    "no_admin_block_error" : "관리자는 차단, 검사 할 수 없습니다.",
+    "same_id_exist_error" : "동일한 아이디의 사용자가 있습니다.",
+    "long_id_error" : "아이디는 20글자보다 짧아야 합니다.",
+    "id_char_error" : "아이디에는 한글과 알파벳과 공백만 허용 됩니다.",
+    "file_exist_error" : "파일이 없습니다.",
+    "password_error" : "비밀번호가 다릅니다.",
+    "recaptcha_error" : "리캡차를 통과하세요.",
+    "file_extension_error" : "jpg, gif, jpeg, png, webp만 가능 합니다.",
+    "edit_record_error" : "편집 기록은 500자를 넘을 수 없습니다.",
+    "same_file_error" : "동일한 이름의 파일이 있습니다.",
+    "file_capacity_error" : "파일 최대 용량 (MB) :",
+    "decument_exist_error" : "내용이 원래 문서와 동일 합니다.",
+    "password_diffrent_error" : "재 확인 비밀번호와 입력 비밀번호가 다릅니다.",
+    "edit_filter_error" : "편집 필터에 의해 검열 되었습니다.",
+    "file_name_error" : "파일 이름은 알파벳, 한글, 띄어쓰기, 언더바, 빼기표만 허용 됩니다.",
+    "template" : "틀",
+    "out" : "외부"
 }
 }