Просмотр исходного кода

Merge pull request #909 from 2du/master

버그 수정
잉여개발기 (SPDV) 6 лет назад
Родитель
Сommit
3d665b3f93

+ 4 - 94
emergency_tool.py

@@ -118,99 +118,6 @@ else:
 
 
 load_conn(conn)
 load_conn(conn)
 
 
-create_data = {}
-create_data['all_data'] = [
-    'data',
-    'cache_data',
-    'history',
-    'rd',
-    'user',
-    'user_set',
-    'ban',
-    'topic',
-    'rb',
-    'back',
-    'custom',
-    'other',
-    'alist',
-    're_admin',
-    'alarm',
-    'ua_d',
-    'filter',
-    'scan',
-    'acl',
-    'inter',
-    'html_filter',
-    'oauth_conn',
-    'user_application'
-]
-for i in create_data['all_data']:
-    try:
-        curs.execute(db_change('select test from ' + i + ' limit 1'))
-    except:
-        try:
-            curs.execute(db_change('create table ' + i + '(test longtext)'))
-        except:
-            curs.execute(db_change("alter table " + i + " add test longtext default ''"))
-
-setup_tool = 0
-try:
-    curs.execute(db_change('select data from other where name = "ver"'))
-    ver_set_data = curs.fetchall()
-    if not ver_set_data:
-        setup_tool = 2
-    else:
-        if int(version_list['master']['c_ver']) > int(ver_set_data[0][0]):
-            setup_tool = 1
-except:
-    setup_tool = 2
-
-if setup_tool != 0:
-    create_data['data'] = ['title', 'data']
-    create_data['cache_data'] = ['title', 'data', 'id']
-    create_data['history'] = ['id', 'title', 'data', 'date', 'ip', 'send', 'leng', 'hide', 'type']
-    create_data['rd'] = ['title', 'sub', 'code', 'date', 'band', 'stop', 'agree', 'acl']
-    create_data['user'] = ['id', 'pw', 'acl', 'date', 'encode']
-    create_data['user_set'] = ['name', 'id', 'data']
-    create_data['user_application'] = ['id', 'pw', 'date', 'encode', 'question', 'answer', 'ip', 'ua', 'token', 'email']
-    create_data['ban'] = ['block', 'end', 'why', 'band', 'login']
-    create_data['topic'] = ['id', 'data', 'date', 'ip', 'block', 'top', 'code']
-    create_data['rb'] = ['block', 'end', 'today', 'blocker', 'why', 'band']
-    create_data['back'] = ['title', 'link', 'type']
-    create_data['custom'] = ['user', 'css']
-    create_data['other'] = ['name', 'data', 'coverage']
-    create_data['alist'] = ['name', 'acl']
-    create_data['re_admin'] = ['who', 'what', 'time']
-    create_data['alarm'] = ['name', 'data', 'date']
-    create_data['ua_d'] = ['name', 'ip', 'ua', 'today', 'sub']
-    create_data['filter'] = ['name', 'regex', 'sub']
-    create_data['scan'] = ['user', 'title']
-    create_data['acl'] = ['title', 'decu', 'dis', 'view', 'why']
-    create_data['inter'] = ['title', 'link', 'icon']
-    create_data['html_filter'] = ['html', 'kind', 'plus']
-    create_data['oauth_conn'] = ['provider', 'wiki_id', 'sns_id', 'name', 'picture']
-
-    for create_table in create_data['all_data']:
-        for create in create_data[create_table]:
-            try:
-                curs.execute(db_change('select ' + create + ' from ' + create_table + ' limit 1'))
-            except:
-                curs.execute(db_change("alter table " + create_table + " add " + create + " longtext default ''"))
-
-            try:
-                curs.execute(db_change('create index index_' + create_table + '_' + create + ' on ' + create_table + '(' + create + ')'))
-            except:
-                pass
-
-    if setup_tool == 1:
-        update(int(ver_set_data[0][0]), set_data)
-    else:
-        set_init()
-
-curs.execute(db_change('delete from other where name = "ver"'))
-curs.execute(db_change('insert into other (name, data) values ("ver", ?)'), [version_list['master']['c_ver']])
-conn.commit()
-
 # Main
 # Main
 print('----')
 print('----')
 print('1. Backlink reset')
 print('1. Backlink reset')
@@ -226,6 +133,7 @@ print('10. Change name')
 print('11. Delete mysql.json')
 print('11. Delete mysql.json')
 print('12. All title count reset')
 print('12. All title count reset')
 print('13. Cache data reset')
 print('13. Cache data reset')
+print('14. Delete Main <HEAD>')
 
 
 print('----')
 print('----')
 print('Select : ', end = '')
 print('Select : ', end = '')
@@ -375,8 +283,10 @@ elif what_i_do == '12':
 
 
     curs.execute(db_change('delete from other where name = "count_all_title"'))
     curs.execute(db_change('delete from other where name = "count_all_title"'))
     curs.execute(db_change('insert into other (name, data) values ("count_all_title", ?)'), [str(count_data)])
     curs.execute(db_change('insert into other (name, data) values ("count_all_title", ?)'), [str(count_data)])
-else:
+elif what_i_do == '13':
     curs.execute(db_change('delete from cache_data'))
     curs.execute(db_change('delete from cache_data'))
+else:
+    curs.execute(db_change('delete from other where name = "head"'))
 
 
 conn.commit()
 conn.commit()
 
 

+ 0 - 1
route/recent_changes.py

@@ -128,7 +128,6 @@ def recent_changes_2(conn, name, tool):
             style = ['', '']
             style = ['', '']
             date = data[2]
             date = data[2]
 
 
-            print(data)
             if data[6] == 'O':
             if data[6] == 'O':
                 if admin_check(6) == 1:
                 if admin_check(6) == 1:
                     style[0] = 'id="toron_color_grey"'
                     style[0] = 'id="toron_color_grey"'

+ 15 - 19
route/tool/func.py

@@ -187,9 +187,6 @@ def update(ver_num, set_data):
             curs.execute(db_change("update topic set code = ? where title = ? and sub = ?"), [i[2], i[0], i[1]])
             curs.execute(db_change("update topic set code = ? where title = ? and sub = ?"), [i[2], i[0], i[1]])
             curs.execute(db_change("update rd set code = ? where title = ? and sub = ?"), [i[2], i[0], i[1]])
             curs.execute(db_change("update rd set code = ? where title = ? and sub = ?"), [i[2], i[0], i[1]])
 
 
-    if ver_num < 3171600:
-        curs.execute(db_change('delete from cache_data'))
-
     if ver_num < 3171800:
     if ver_num < 3171800:
         curs.execute(db_change("select data from other where name = 'recaptcha'"))
         curs.execute(db_change("select data from other where name = 'recaptcha'"))
         change_rec = curs.fetchall()
         change_rec = curs.fetchall()
@@ -206,6 +203,9 @@ def update(ver_num, set_data):
         
         
         with open('data/mysql.json', 'w') as f:
         with open('data/mysql.json', 'w') as f:
             f.write('{ "user" : "' + get_data_mysql['user'] + '", "password" : "' + get_data_mysql['password'] + '", "host" : "localhost" }')
             f.write('{ "user" : "' + get_data_mysql['user'] + '", "password" : "' + get_data_mysql['password'] + '", "host" : "localhost" }')
+            
+    if ver_num < 3180200:
+        curs.execute(db_change('delete from cache_data'))
 
 
     conn.commit()
     conn.commit()
     print('Update pass')
     print('Update pass')
@@ -298,7 +298,7 @@ def captcha_get():
             if sec_re and sec_re[0][0] != '':
             if sec_re and sec_re[0][0] != '':
                 curs.execute(db_change('select data from other where name = "recaptcha_ver"'))
                 curs.execute(db_change('select data from other where name = "recaptcha_ver"'))
                 rec_ver = curs.fetchall()
                 rec_ver = curs.fetchall()
-                if not rec_ver or rec_ver == '':
+                if not rec_ver or rec_ver[0][0] == '':
                     data += '' + \
                     data += '' + \
                         '<script src="https://www.google.com/recaptcha/api.js" async defer></script>' + \
                         '<script src="https://www.google.com/recaptcha/api.js" async defer></script>' + \
                         '<div class="g-recaptcha" data-sitekey="' + recaptcha[0][0] + '"></div>' + \
                         '<div class="g-recaptcha" data-sitekey="' + recaptcha[0][0] + '"></div>' + \
@@ -499,7 +499,7 @@ def other2(data):
         data += ['']
         data += ['']
 
 
     req_list = ''
     req_list = ''
-    main_css_ver = 22
+    main_css_ver = 25
 
 
     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:
     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")):
         for i_data in os.listdir(os.path.join("views", "main_css", "css")):
@@ -570,23 +570,19 @@ def wiki_set(num = 1):
         else:
         else:
             data_list += [data_list[0]]
             data_list += [data_list[0]]
 
 
+        head_data = ''
+
+        curs.execute(db_change("select data from other where name = 'head' and coverage = ''"))
+        db_data = curs.fetchall()
+        if db_data and db_data[0][0] != '':
+            head_data += db_data[0][0]
+
         curs.execute(db_change("select data from other where name = 'head' and coverage = ?"), [skin_check(1)])
         curs.execute(db_change("select data from other where name = 'head' and coverage = ?"), [skin_check(1)])
         db_data = curs.fetchall()
         db_data = curs.fetchall()
         if db_data and db_data[0][0] != '':
         if db_data and db_data[0][0] != '':
-            if len(re.findall('<', db_data[0][0])) % 2 != 1:
-                data_list += [db_data[0][0]]
-            else:
-                data_list += ['']
-        else:
-            curs.execute(db_change("select data from other where name = 'head' and coverage = ''"))
-            db_data = curs.fetchall()
-            if db_data and db_data[0][0] != '':
-                if len(re.findall('<', db_data[0][0])) % 2 != 1:
-                    data_list += [db_data[0][0]]
-                else:
-                    data_list += ['']
-            else:
-                data_list += ['']
+            head_data += db_data[0][0]
+            
+        data_list += [head_data]
 
 
         return data_list
         return data_list
 
 

+ 16 - 8
route/tool/set_mark/namumark.py

@@ -5,7 +5,15 @@ import html
 import re
 import re
 
 
 def nowiki_js(data):
 def nowiki_js(data):
-    return re.sub('^\n', '', data.replace('\\', '\\\\').replace('"', '\\"').replace('\r', '')).replace('\n', '<br>')
+    data = data.replace('\\', '\\\\')
+    data = data.replace('"', '\\"')
+    data = data.replace('\r', '')
+    
+    data = re.sub('^\n', '', data)
+
+    data = data.replace('\n', '<br>')
+
+    return data
 
 
 def link_fix(main_link):
 def link_fix(main_link):
     global end_data
     global end_data
@@ -354,7 +362,7 @@ def middle_parser(data, include_num):
                                 str(folding_data[0]) + ' ' + \
                                 str(folding_data[0]) + ' ' + \
                                 '<div style="display: inline-block;">' + \
                                 '<div style="display: inline-block;">' + \
                                     '<a href="javascript:void(0);" onclick="do_open_folding(\'' + include_num + 'folding_' + str(folding_num) + '\', this);">' + \
                                     '<a href="javascript:void(0);" onclick="do_open_folding(\'' + include_num + 'folding_' + str(folding_num) + '\', this);">' + \
-                                        '[+]' + \
+                                        '(+)' + \
                                     '</a>' + \
                                     '</a>' + \
                                 '</div_2>' + \
                                 '</div_2>' + \
                                 '<div id="' + include_num + 'folding_' + str(folding_num) + '" style="display: none;">' + \
                                 '<div id="' + include_num + 'folding_' + str(folding_num) + '" style="display: none;">' + \
@@ -713,7 +721,7 @@ def namumark(conn, data, title, main_num, include_num):
                         '<a href="/edit/' + tool.url_pas(title) + '?section=' + str(edit_number) + '">(Edit)</a>' + \
                         '<a href="/edit/' + tool.url_pas(title) + '?section=' + str(edit_number) + '">(Edit)</a>' + \
                         ' ' + \
                         ' ' + \
                         '<a href="javascript:void(0);" onclick="do_open_folding(\'in_data_' + all_stack + '\', this);">' + \
                         '<a href="javascript:void(0);" onclick="do_open_folding(\'in_data_' + all_stack + '\', this);">' + \
-                            '[' + fol_head + ']' + \
+                            '(' + fol_head + ')' + \
                         '</a>' + \
                         '</a>' + \
                     '</span>' + \
                     '</span>' + \
                 '</h' + toc_number + '>' + \
                 '</h' + toc_number + '>' + \
@@ -1021,16 +1029,16 @@ def namumark(conn, data, title, main_num, include_num):
                     category += '<div id="cate_all"><hr><div id="cate">Category : '
                     category += '<div id="cate_all"><hr><div id="cate">Category : '
 
 
                 main_link = category_re.sub('category:', main_link)
                 main_link = category_re.sub('category:', main_link)
+                link_id = ''
 
 
                 curs.execute(tool.db_change("select title from data where title = ?"), [main_link])
                 curs.execute(tool.db_change("select title from data where title = ?"), [main_link])
                 if re.search('#blur', main_link):
                 if re.search('#blur', main_link):
-                    see_link = 'Hidden'
-                    link_id = 'id="inside"'
-
-                    main_link = re.sub('#blur', '', main_link)
+                    link_id = ' hidden_link'
+                    main_link = main_link.replace('#blur', '')
+                    see_link = see_link.replace('#blur', '')
 
 
                 backlink += [[title, main_link, 'cat']]
                 backlink += [[title, main_link, 'cat']]
-                category += '<a class="' + include_num + 'link_finder" href="/w/' + tool.url_pas(main_link) + '">' + category_re.sub('', see_link) + '</a> | '
+                category += '<a class="' + include_num + 'link_finder' + link_id + '" href="/w/' + tool.url_pas(main_link) + '">' + category_re.sub('', see_link) + '</a> | '
 
 
                 data = re.sub('\[\[((?:(?!\[\[|\]\]|<\/td>).)+)\]\]', '', data, 1)
                 data = re.sub('\[\[((?:(?!\[\[|\]\]|<\/td>).)+)\]\]', '', data, 1)
             elif re.search('^wiki:', main_link):
             elif re.search('^wiki:', main_link):

+ 1 - 1
route/topic_delete.py

@@ -13,7 +13,7 @@ def topic_delete_2(conn, topic_num):
         curs.execute(db_change("delete from rd where code = ?"), [topic_num])
         curs.execute(db_change("delete from rd where code = ?"), [topic_num])
         conn.commit()
         conn.commit()
 
 
-        return redirect('/topic/' + url_pas(name))
+        return redirect('/')
     else:
     else:
         return easy_minify(flask.render_template(skin_check(),
         return easy_minify(flask.render_template(skin_check(),
             imp = [load_lang('topic_delete'), wiki_set(), custom(), other2([0, 0])],
             imp = [load_lang('topic_delete'), wiki_set(), custom(), other2([0, 0])],

+ 2 - 2
route/user_info.py

@@ -7,8 +7,8 @@ def user_info_2(conn):
 
 
     curs.execute(db_change("select count(name) from alarm where name = ?"), [ip])
     curs.execute(db_change("select count(name) from alarm where name = ?"), [ip])
     count = curs.fetchall()
     count = curs.fetchall()
-    if count:
-        plus2 = '<li><a href="/alarm">' + load_lang('alarm') + ' (' + str(count[0][0]) + ')</a></li>'
+    if count and count[0][0] != 0:
+        plus2 = '<li><a id="not_thing" href="/alarm">' + load_lang('alarm') + ' (' + str(count[0][0]) + ')</a></li>'
     else:
     else:
         plus2 = '<li><a href="/alarm">' + load_lang('alarm') + ' (0)</a></li>'
         plus2 = '<li><a href="/alarm">' + load_lang('alarm') + ' (0)</a></li>'
 
 

+ 4 - 4
version.json

@@ -1,11 +1,11 @@
 {
 {
     "master" : {
     "master" : {
-        "r_ver" : "v3.1.7-stable-01",
-        "c_ver" : "3172800",
+        "r_ver" : "v3.1.7-stable-02",
+        "c_ver" : "3180200",
         "s_ver" : "8"
         "s_ver" : "8"
     }, "stable" : {
     }, "stable" : {
-        "r_ver" : "v3.1.7-stable-01",
-        "c_ver" : "3172800",
+        "r_ver" : "v3.1.7-stable-02",
+        "c_ver" : "3180200",
         "s_ver" : "8"
         "s_ver" : "8"
     }
     }
 }
 }

+ 4 - 2
views/main_css/css/main.css

@@ -38,7 +38,7 @@ hr.main_hr { border: none; margin-top: 8px; margin-bottom: 8px; }
 #toc_title { font-size: 18px; }
 #toc_title { font-size: 18px; }
 blockquote { background-image: url(/views/acme/img/quote.png); background-position: calc(100% - 10px) 10px; background-repeat: no-repeat; background-size: 25px; }
 blockquote { background-image: url(/views/acme/img/quote.png); background-position: calc(100% - 10px) 10px; background-repeat: no-repeat; background-size: 25px; }
 #admin_log_search { width: 100px; }
 #admin_log_search { width: 100px; }
-@media (max-width: 768px) { table { min-width: 100%; }}
+@media (max-width: 768px) { table { min-width: 100%; } .table_safe { min-width: 100%; }}
 @media (max-width: 400px) { .foot_plus { width: 80%; right: calc(100% - 92%); }}
 @media (max-width: 400px) { .foot_plus { width: 80%; right: calc(100% - 92%); }}
 @media (max-height: 400px) { .foot_plus { height: 80%; top: calc(100% - 92%); }}
 @media (max-height: 400px) { .foot_plus { height: 80%; top: calc(100% - 92%); }}
 .foot_in { overflow-y: scroll; height: calc(100% - 20px); }
 .foot_in { overflow-y: scroll; height: calc(100% - 20px); }
@@ -47,4 +47,6 @@ blockquote { background-image: url(/views/acme/img/quote.png); background-positi
 .table_safe { max-width: 100%; }
 .table_safe { max-width: 100%; }
 .change_space { white-space: pre-line; }
 .change_space { white-space: pre-line; }
 div#topic_scroll { max-height: 500px; overflow: scroll; -ms-overflow-style: none; scrollbar-width: none; }
 div#topic_scroll { max-height: 500px; overflow: scroll; -ms-overflow-style: none; scrollbar-width: none; }
-div#topic_scroll::-webkit-scrollbar { display: none; }
+div#topic_scroll::-webkit-scrollbar { display: none; }
+.hidden_link { filter: blur(3px); }
+.hidden_link:hover { filter: none; }

+ 2 - 2
views/main_css/js/do_open_folding.js

@@ -2,9 +2,9 @@ function do_open_folding(data, element) {
     var fol = document.getElementById(data);
     var fol = document.getElementById(data);
     if(fol.style.display === '' || (fol.style.display === 'inline-block' || fol.style.display === 'block')) {
     if(fol.style.display === '' || (fol.style.display === 'inline-block' || fol.style.display === 'block')) {
         document.getElementById(data).style.display = 'none';
         document.getElementById(data).style.display = 'none';
-        element.innerHTML = '[+]'
+        element.innerHTML = '(+)'
     } else {
     } else {
         document.getElementById(data).style.display = 'block';
         document.getElementById(data).style.display = 'block';
-        element.innerHTML = '[-]'
+        element.innerHTML = '(-)'
     }
     }
 }
 }

+ 9 - 0
views/marisa/css/dark.css

@@ -50,4 +50,13 @@ pre#syntax {
 
 
 a#titlt_a {
 a#titlt_a {
     color: white;
     color: white;
+}
+
+button#save {
+    background: #083808;
+}
+
+blockquote {
+    background: black;
+    border-left: 5px solid #eee;
 }
 }

+ 6 - 11
views/marisa/css/main.css

@@ -25,7 +25,6 @@ button {
     border: 2px solid gainsboro;
     border: 2px solid gainsboro;
     background: white;
     background: white;
     cursor: pointer;
     cursor: pointer;
-    border-radius: 10px;
 }
 }
 
 
 td {
 td {
@@ -207,7 +206,7 @@ h6 {
 #top_tool {
 #top_tool {
     float: right;
     float: right;
     color: white;
     color: white;
-    margin-top: -5px;
+    margin-top: -8px;
 }
 }
 
 
 .cel_in_cel {
 .cel_in_cel {
@@ -216,7 +215,6 @@ h6 {
     position: absolute;
     position: absolute;
     background: white;
     background: white;
     margin-top: 10px;
     margin-top: 10px;
-    border-radius: 10px;
 }
 }
 
 
 #top_tool_cel {
 #top_tool_cel {
@@ -235,7 +233,6 @@ h6 {
 #search_input {
 #search_input {
     width: 220px;
     width: 220px;
     height: 35px;
     height: 35px;
-    border-radius: 17.5px;
     padding-left: 10px;
     padding-left: 10px;
     background-color: gray;
     background-color: gray;
     border: solid 1px gray;
     border: solid 1px gray;
@@ -263,7 +260,6 @@ div#pre_search {
     color: black;
     color: black;
     margin-top: 5px;
     margin-top: 5px;
     background: white;
     background: white;
-    border-radius: 10px;
     position: absolute;
     position: absolute;
 }
 }
 
 
@@ -307,21 +303,17 @@ a {
 #syntax {
 #syntax {
     background: #f0f0f0;
     background: #f0f0f0;
     padding: 5px;
     padding: 5px;
-    border-radius: 10px;
 }
 }
 
 
 pre, #toc, #cate, #redirect {
 pre, #toc, #cate, #redirect {
     border: 2px solid gainsboro;
     border: 2px solid gainsboro;
-    border-radius: 10px;
 }
 }
 
 
 textarea, input {
 textarea, input {
     border: 2px solid gainsboro;
     border: 2px solid gainsboro;
     font-family: '나눔고딕', 'Nanum Gothic', 'Noto Sans KR', 'Malgun Gothic', '맑은 고딕', sans-serif;
     font-family: '나눔고딕', 'Nanum Gothic', 'Noto Sans KR', 'Malgun Gothic', '맑은 고딕', sans-serif;
-    border-radius: inherit;
     padding: 5px;
     padding: 5px;
     margin-left: -5px;
     margin-left: -5px;
-    border-radius: 10px;
 }
 }
 
 
 #syntax code {
 #syntax code {
@@ -348,6 +340,7 @@ textarea, input {
 }
 }
 
 
 #nav_bar {
 #nav_bar {
+    z-index: 100;
     font-size: 24px;
     font-size: 24px;
     position: fixed;
     position: fixed;
     bottom: 0;
     bottom: 0;
@@ -355,7 +348,6 @@ textarea, input {
     border: 2px solid #4a4a4a;
     border: 2px solid #4a4a4a;
     background: #4a4a4a;
     background: #4a4a4a;
     text-align: center;
     text-align: center;
-    border-radius: 10px 0px 0px 0px;
 }
 }
 
 
 #nav_bar a {
 #nav_bar a {
@@ -398,7 +390,6 @@ div#last_edit {
 }
 }
 
 
 #mobile_search_input {
 #mobile_search_input {
-    border-radius: 10px;
 }
 }
 
 
 #top_menu_groups {
 #top_menu_groups {
@@ -427,4 +418,8 @@ div#last_edit {
 
 
 #titlt_a {
 #titlt_a {
     color: initial;
     color: initial;
+}
+
+button#save {
+    background: #c6ffc6;
 }
 }

+ 2 - 2
views/marisa/index.html

@@ -8,8 +8,8 @@
             <title>{{imp[0]}} - {{imp[1][0]}}</title>
             <title>{{imp[0]}} - {{imp[1][0]}}</title>
         {% endif %}
         {% endif %}
         {{imp[3][3]|safe}}
         {{imp[3][3]|safe}}
-        <link rel="stylesheet" href="/views/marisa/css/main.css?ver=7">
-        <script src="/views/marisa/js/skin_set.js?ver=3"></script>
+        <link rel="stylesheet" href="/views/marisa/css/main.css?ver=8">
+        <script src="/views/marisa/js/skin_set.js?ver=4"></script>
         <script src="/views/marisa/js/main.js?ver=3"></script>
         <script src="/views/marisa/js/main.js?ver=3"></script>
         <script>main_load(); window.onload = function () { skin_set(); }</script>
         <script>main_load(); window.onload = function () { skin_set(); }</script>
         <script src="https://code.iconify.design/1/1.0.3/iconify.min.js"></script>
         <script src="https://code.iconify.design/1/1.0.3/iconify.min.js"></script>

+ 1 - 1
views/marisa/info.json

@@ -1,5 +1,5 @@
 {
 {
     "name" : "Marisa",
     "name" : "Marisa",
-    "skin_ver" : "v1.1.9",
+    "skin_ver" : "v1.2.0",
     "require_ver" : "8"
     "require_ver" : "8"
 }
 }

+ 1 - 1
views/marisa/js/skin_set.js

@@ -15,7 +15,7 @@ function main_load() {
         cookies.match(regex_data('invert')) &&
         cookies.match(regex_data('invert')) &&
         cookies.match(regex_data('invert'))[1] === '1'
         cookies.match(regex_data('invert'))[1] === '1'
     ) {
     ) {
-        head_data.innerHTML += '<link rel="stylesheet" href="/views/marisa/css/dark.css?ver=5">';
+        head_data.innerHTML += '<link rel="stylesheet" href="/views/marisa/css/dark.css?ver=6">';
     }
     }
 }
 }