浏览代码

Cookies to store state of collapsable box.

pull/24/head
Ben Kurtovic 12 年前
父节点
当前提交
79a938f3b9
共有 5 个文件被更改,包括 57 次插入7 次删除
  1. +12
    -3
      pages/copyvios.mako
  2. +0
    -2
      pages/extensions.mako
  3. +0
    -1
      pages/index.mako
  4. +38
    -1
      static/js/copyvios.js
  5. +7
    -0
      toolserver/misc.py

+ 12
- 3
pages/copyvios.mako 查看文件

@@ -1,7 +1,8 @@
<%include file="/support/header.mako" args="environ=environ, title='Copyvio Detector', add_css=('copyvios.css',), add_js=('copyvios.js',)"/>\
<%namespace module="toolserver.copyvios" import="main, highlight_delta"/>\
<%namespace module="toolserver.misc" import="urlstrip"/>\
<%namespace module="toolserver.misc" import="parse_cookies, urlstrip"/>\
<% query, bot, all_langs, all_projects, page, result = main(environ) %>
<% cookies = parse_cookies(environ) %>
<h1>Copyvio Detector</h1>
<p>This tool attempts to detect <a href="//en.wikipedia.org/wiki/WP:COPYVIO">copyright violations</a> in articles. Simply give the title of the page you want to check and hit Submit. The tool will then search for its content elsewhere on the web and display a report if a similar webpage is found. If you also provide a URL, it will not query any search engines and instead display a report comparing the article to that particular webpage, like the <a href="//toolserver.org/~dcoetzee/duplicationdetector/">Duplication Detector</a>. Check out the <a href="//en.wikipedia.org/wiki/User:EarwigBot/Copyvios/FAQ">FAQ</a> for more information and technical details.</p>
<form action="${environ['PATH_INFO']}" method="get">
@@ -94,9 +95,17 @@
% else:
<li>Results generated in <tt>${round(result.tdiff, 3)}</tt> seconds using <tt>${result.queries}</tt> queries.</li>
% endif
<li><a id="cv-result-detail-link" href="#cv-result-detail" onclick="copyvio_toggle_details()">Show details:</a></li>
% if "EarwigCVShowDetails" cookies and cookies["EarwigCVShowDetails"] == "True":
<li><a id="cv-result-detail-link" href="#cv-result-detail" onclick="copyvio_toggle_details()">Hide details:</a></li>
% else:
<li><a id="cv-result-detail-link" href="#cv-result-detail" onclick="copyvio_toggle_details()">Show details:</a></li>
% endif
</ul>
<div id="cv-result-detail" style="display: none;">
% if "EarwigCVShowDetails" cookies and cookies["EarwigCVShowDetails"] == "True":
<div id="cv-result-detail" style="display: block;">
% else:
<div id="cv-result-detail" style="display: none;">
% endif
<ul id="cv-result-detail-list">
<li>Trigrams: <i>Article:</i> <tt>${result.article_chain.size()}</tt> / <i>Source:</i> <tt>${result.source_chain.size()}</tt> / <i>Delta:</i> <tt>${result.delta_chain.size()}</tt></li>
% if result.cached:


+ 0
- 2
pages/extensions.mako 查看文件

@@ -1,2 +0,0 @@
<%include file="/support/header.mako" args="environ=environ, title='File Extension Checker'"/>
<%include file="/support/footer.mako" args="environ=environ"/>

+ 0
- 1
pages/index.mako 查看文件

@@ -5,7 +5,6 @@
("Home", "home", "index", True, None),
("Copyvio Detector", "copyvios", "copyvios", True, "Blah"),
("EarwigBot Status", "earwigbot", "earwigbot", True, "Blah"),
("File Extension Checker", "extensions", "extensions", False, "Blah"),
("Contribution Surveyor", "surveyor", "surveyor", False, "Blah"),
("SWMT Helper", "swmt", "swmt", False, "Blah"),
]


+ 38
- 1
static/js/copyvios.js 查看文件

@@ -1,12 +1,49 @@
// Thanks to http://www.quirksmode.org/js/cookies.html for the cookie code.

function get_cookie(name) {
var nameEQ = name + "=";
var ca = document.cookie.split(";");
for (var i = 0; i < ca.length; i++) {
var c = ca[i];
while (c.charAt(0) == " ") {
c = c.substring(1, c.length);
}
if (c.indexOf(nameEQ) == 0) {
return c.substring(nameEQ.length, c.length);
}
}
return null;
}

function set_cookie(name, value, days) {
if (days) {
var date = new Date();
date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
var expires = "; expires=" + date.toGMTString();
}
else {
var expires = "";
}
document.cookie = name + "=" + value + expires + "; path=/~earwig";
}

function delete_cookie(name) {
set_cookie(name, "", -1);
}

function copyvio_toggle_details(details) {
link = document.getElementById("cv-result-detail-link");
details = document.getElementById("cv-result-detail");
if (link.innerHTML == "Show details:") {
details.style.display = "block";
link.innerHTML = "Hide details:";
set_cookie("EarwigCVShowDetails", "True", 180);
} else {
details.style.display = "none";
link.innerHTML = "Show details:";
if (get_cookie("EarwigCVShowDetails")) {
delete_cookie("EarwigCVShowDetails");
}
}
}

+ 7
- 0
toolserver/misc.py 查看文件

@@ -1,5 +1,6 @@
# -*- coding: utf-8 -*-

from Cookie import CookieError, SimpleCookie
from os.path import expanduser
from urlparse import parse_qs

@@ -45,3 +46,9 @@ def urlstrip(context, url):
if url.endswith("/"):
url = url[:-1]
return url

def parse_cookies(context, environ):
try:
return SimpleCookie(environ["HTTP_COOKIE"])
except CookieError:
return SimpleCookie()

正在加载...
取消
保存