Jelajahi Sumber

Merge pull request #919 from 2du/master

버그 수정
잉여개발기 (SPDV) 6 tahun lalu
induk
melakukan
dcf812f2b7
5 mengubah file dengan 20 tambahan dan 15 penghapusan
  1. 1 2
      route/edit.py
  2. 1 1
      route/tool/func.py
  3. 4 1
      route/view_diff_data.py
  4. 2 2
      version.json
  5. 12 9
      views/main_css/js/do_stop_exit.js

+ 1 - 2
route/edit.py

@@ -185,7 +185,6 @@ def edit_2(conn, name):
             imp = [name, wiki_set(), custom(), other2([' (' + sub + ')', 0])],
             data =  get_name + '''
                 <form method="post">
-                    <script>do_stop_exit();</script>
                     ''' + edit_button() + '''
                     <textarea id="content" placeholder="''' + p_text + '''" name="content">''' + html.escape(data) + '''</textarea>
                     <textarea id="origin" name="o_content">''' + html.escape(data_old) + '''</textarea>
@@ -193,7 +192,7 @@ def edit_2(conn, name):
                     <input placeholder="''' + load_lang('why') + '''" name="send" type="text">
                     <hr class=\"main_hr\">
                     ''' + captcha_get() + ip_warring() + cccb_text + '''
-                    <button id="save" type="submit" onclick="go_save_zone = 1;">''' + save_button + '''</button>
+                    <button id="save" type="submit" onclick="save_stop_exit();">''' + save_button + '''</button>
                     <button id="preview" type="button" onclick="load_preview(\'''' + url_pas(name) + '\')">' + load_lang('preview') + '''</button>
                 </form>
                 ''' + b_text + '''

+ 1 - 1
route/tool/func.py

@@ -499,7 +499,7 @@ def other2(data):
         data += ['']
 
     req_list = ''
-    main_css_ver = 29
+    main_css_ver = 30
 
     if not 'main_css_load' in flask.session or not 'main_css_ver' in flask.session or flask.session['main_css_ver'] != main_css_ver:
         for i_data in os.listdir(os.path.join("views", "main_css", "css")):

+ 4 - 1
route/view_diff_data.py

@@ -36,9 +36,12 @@ def view_diff_data_2(conn, name):
                 re_data = re.findall('(?:(?:(?:(?!&para;<br>).)*)(?:&para;<br>)|(?:(?:(?!&para;<br>).)+)$)', diff_data)
                 for re_in_data in re_data:
                     re_in_data = re.sub('&para;<br>$', '', re_in_data)
-                    if re.search('(<ins |<del )', re_in_data) and re.search('(<\/ins>|<\/del>)', re_in_data):
+                    if re.search('<ins (((?!<\/ins>).)+)<\/ins>', re_in_data):
                         end_data += str(i) + ' : ' + re_in_data + '\n'
                         include_ins = 0
+                    elif re.search('(<ins |<del )', re_in_data) and re.search('(<\/ins>|<\/del>)', re_in_data):
+                        end_data += str(i) + ' : ' + re_in_data + '\n'
+                        include_ins = 1
                     elif re.search('(<\/ins>|<\/del>)', re_in_data):
                         end_data += str(i) + ' : ' + re_in_data + '\n'
                         include_ins = 0

+ 2 - 2
version.json

@@ -1,10 +1,10 @@
 {
     "master" : {
-        "r_ver" : "v3.1.7-stable-03",
+        "r_ver" : "v3.1.7-stable-04",
         "c_ver" : "3180200",
         "s_ver" : "8"
     }, "stable" : {
-        "r_ver" : "v3.1.7-stable-03",
+        "r_ver" : "v3.1.7-stable-04",
         "c_ver" : "3180200",
         "s_ver" : "8"
     }

+ 12 - 9
views/main_css/js/do_stop_exit.js

@@ -1,12 +1,15 @@
-var go_save_zone = 0;
-
-function do_stop_exit() {
-    window.onbeforeunload = function() {
-        console.log(go_save_zone);
-        data = document.getElementById('content').value;
-        origin = document.getElementById('origin').value;
-        if(data !== origin && go_save_zone != 1) {
-            return '';
+window.addEventListener('DOMContentLoaded', function() {
+    if(window.location.pathname.match(/^\/edit\//i)) {
+        window.onbeforeunload = function() {
+            data = document.getElementById('content').value;
+            origin = document.getElementById('origin').value;
+            if(data !== origin) {
+                return '';
+            }
         }
     }
+});
+
+function save_stop_exit() {
+    window.onbeforeunload = function () { }
 }