2
0
Эх сурвалжийг харах

버그 수정 및 update.py로 분리

2DU 9 жил өмнө
parent
commit
15cfa6580b
3 өөрчлөгдсөн 72 нэмэгдсэн , 52 устгасан
  1. 1 52
      app.py
  2. 2 0
      mark.py
  3. 69 0
      update.py

+ 1 - 52
app.py

@@ -126,58 +126,7 @@ def setup():
                 curs.execute("create table alist(name text, acl text)")
             except:
                 pass
-        
-            curs.execute('select data from other where name = "version"')
-            version = curs.fetchall()
-            if(version):
-                t_ver = re.sub('\.', '', version[0]['data'])
-                t_ver = re.sub('[a-z]$', '', t_ver)
-                r_t_ver = re.sub('\.', '', r_ver)
-                r_t_ver = re.sub('[a-z]$', '', r_t_ver)
-                if(int(t_ver) <= int(r_t_ver)):
-                    curs.execute("update other set data = '" + db_pas(r_ver) + "' where name = 'version'")
-            else:
-                curs.execute("insert into other (name, data) value ('version', '" + db_pas(r_ver) + "')")
-                t_ver = 0
-                
-            curs.execute('select name from alist limit 1')
-            getalist = curs.fetchall()
-            if(getalist and int(t_ver) < 204):
-                curs.execute("delete from alist where name = 'owner'")
-                curs.execute("delete from alist where name = 'admin'")
-
-            if(int(t_ver) < 202 or not getalist):
-                curs.execute("insert into alist (name, acl) value ('owner', 'owner')")
-                curs.execute("insert into alist (name, acl) value ('admin', 'ban')")
-                curs.execute("insert into alist (name, acl) value ('admin', 'mdel')")
-                curs.execute("insert into alist (name, acl) value ('admin', 'toron')")
-                curs.execute("insert into alist (name, acl) value ('admin', 'check')")
-                curs.execute("insert into alist (name, acl) value ('admin', 'acl')")
-                
-            if(int(t_ver) < 203):
-                curs.execute('select title from topic limit 1')
-                top_yes = curs.fetchall()
-                if(top_yes):
-                    curs.execute('rename table topic to old_topic')
-                    curs.execute('rename table distop to old_distop')
-                    
-                    curs.execute('create table topic(id text, title text, sub text, data longtext, date text, ip text, block text, top text)')
-                    
-                    curs.execute('select * from old_topic')
-                    topic_old = curs.fetchall()
-                    if(topic_old):
-                        i = 0
-                        for move_topic in topic_old:
-                            curs.execute("select id from distop where id = '" + db_pas(move_topic['id']) + "' and title = '" + db_pas(move_topic['title']) + "' and sub = '" + db_pas(move_topic['sub']) + "'")
-                            distop = curs.fetchall()
-                            if(distop):
-                                top = 'O'
-                            else:
-                                top = ''
-                                
-                            curs.execute("insert into topic (id, title, sub, data, date, ip, block, top) value ('" + db_pas(move_topic['id']) + "', '" + db_pas(move_topic['title']) + "', '" + db_pas(move_topic['sub']) + "', '" + db_pas(move_topic['data']) + "', '" + db_pas(move_topic['date']) + "', '" + db_pas(move_topic['ip']) + "', '" + db_pas(move_topic['block']) + "', '" + db_pas(top) + "')")
-                
-            conn.commit()
+
             conn.close()
             return(redirect('/'))
     else:

+ 2 - 0
mark.py

@@ -749,6 +749,8 @@ def namumark(title, data):
                 
                 tou += "<span class='footnote-list'><a href=\"#rfn-" + str(a) + "\" id=\"fn-" + str(a) + "\">[" + str(a) + "]</a> " + results[1] + "</span><br>"
                 data = re.sub("\[\*([^\s]*)(?:\s(((?!\]).)*))?\]", '<sup><a class="footnotes" title="' + c + '" id="rfn-' + str(a) + '" href="#fn-' + str(a) + '">[' + str(a) + ']</a></sup>', data, 1)
+
+                a += 1
         else:
             tou += '</div>'
 

+ 69 - 0
update.py

@@ -0,0 +1,69 @@
+import pymysql
+import json
+import re
+
+json_data = open('set.json').read()
+set_data = json.loads(json_data)
+
+conn = pymysql.connect(user = set_data['user'], password = set_data['pw'], charset = 'utf8mb4', db = set_data['db'])
+curs = conn.cursor(pymysql.cursors.DictCursor)   
+
+db_pas = pymysql.escape_string
+
+r_ver = '2.1.1'
+
+curs.execute('select data from other where name = "version"')
+version = curs.fetchall()
+if(version):
+    t_ver = re.sub('\.', '', version[0]['data'])
+    t_ver = re.sub('[a-z]$', '', t_ver)
+    r_t_ver = re.sub('\.', '', r_ver)
+    r_t_ver = re.sub('[a-z]$', '', r_t_ver)
+    if(int(t_ver) <= int(r_t_ver)):
+        curs.execute("update other set data = '" + db_pas(r_ver) + "' where name = 'version'")
+else:
+    curs.execute("insert into other (name, data) value ('version', '" + db_pas(r_ver) + "')")
+    t_ver = 0
+    
+curs.execute('select name from alist limit 1')
+getalist = curs.fetchall()
+if(getalist and int(t_ver) < 204):
+    curs.execute("delete from alist where name = 'owner'")
+    curs.execute("delete from alist where name = 'admin'")
+
+if(int(t_ver) < 202 or not getalist):
+    curs.execute("insert into alist (name, acl) value ('owner', 'owner')")
+    curs.execute("insert into alist (name, acl) value ('admin', 'ban')")
+    curs.execute("insert into alist (name, acl) value ('admin', 'mdel')")
+    curs.execute("insert into alist (name, acl) value ('admin', 'toron')")
+    curs.execute("insert into alist (name, acl) value ('admin', 'check')")
+    curs.execute("insert into alist (name, acl) value ('admin', 'acl')")
+    
+if(int(t_ver) < 203):
+    curs.execute('select title from topic limit 1')
+    top_yes = curs.fetchall()
+    if(top_yes):
+        curs.execute('rename table topic to old_topic')
+        curs.execute('rename table distop to old_distop')
+        
+        curs.execute('create table topic(id text, title text, sub text, data longtext, date text, ip text, block text, top text)')
+        
+        curs.execute('select * from old_topic')
+        topic_old = curs.fetchall()
+        if(topic_old):
+            i = 0
+            for move_topic in topic_old:
+                curs.execute("select id from distop where id = '" + db_pas(move_topic['id']) + "' and title = '" + db_pas(move_topic['title']) + "' and sub = '" + db_pas(move_topic['sub']) + "'")
+                distop = curs.fetchall()
+                if(distop):
+                    top = 'O'
+                else:
+                    top = ''
+                    
+                curs.execute("insert into topic (id, title, sub, data, date, ip, block, top) value ('" + db_pas(move_topic['id']) + "', '" + db_pas(move_topic['title']) + "', '" + db_pas(move_topic['sub']) + "', '" + db_pas(move_topic['data']) + "', '" + db_pas(move_topic['date']) + "', '" + db_pas(move_topic['ip']) + "', '" + db_pas(move_topic['block']) + "', '" + db_pas(top) + "')")
+    
+conn.commit()
+conn.close()
+
+print('종료 하려면 아무 키나 누르시오.')
+a = input()