Пример #1
0
def listurl(_request):
    res=Response()
    rsslist=Rssurl.select()
    t=SimpleTemplate(file_path=relativepath('urllist.html'))
    body=t.render({'rsslist': rsslist})
    res.set_body(body)
    return res
Пример #2
0
def logout(_request):
    body = base_body % ('<p>Logged out</p>')
    res = Response()
    c = SimpleCookie()
    c['authhash'] = ''
    res.set_header(*c.output().split(': '))
    res.set_body(body)
    return res
Пример #3
0
def index(_request, foo='', d={'counter': 0}):
    body = base_body % ('<p>Logged in!</p>')
    res = Response()
    t = SimpleTemplate(body)
    body = t.render(d)
    d['counter'] += 1
    res.set_body(body)
    return res
Пример #4
0
def login_form(_request, values={}, errors={}):
    body = base_body % ('${form.display(values, errors)}')
    res = Response()
    t = SimpleTemplate(body)
    values['password'] = ''
    body = t.render({'form': loginform, 'values': values, 'errors': errors})
    res.set_body(body)
    return res
Пример #5
0
def logout(_request):
    body = base_body % ("<p>Logged out</p>")
    res = Response()
    c = SimpleCookie()
    c["authhash"] = ""
    res.set_header(*c.output().split(': '))
    res.set_body(body)
    return res
Пример #6
0
def index(_request, d={'counter': '0'}):
    body = """<html><body><p>${counter}</p></body></html>"""
    res = Response()
    t = SimpleTemplate(body)
    body = t.render(d)
    d['counter'] = '1'
    res.set_body(body)
    return res
Пример #7
0
def index(_request, d={"counter": 0}):
    body = """<html><body><p>${counter}</p></body></html>"""
    res = Response()
    t = SimpleTemplate(body)
    body = t.render(d)
    d["counter"] += 1
    res.set_body(body)
    return res
Пример #8
0
def login_form(_request, values={}, errors={}):
    body = base_body % ("${form.display(values, errors)}")
    res = Response()
    t = SimpleTemplate(body)
    values["password"] = ""
    body = t.render({"form": loginform, "values": values, "errors": errors})
    res.set_body(body)
    return res
Пример #9
0
def index(_request, foo="", d={"counter": 0}):
    body = base_body % ("<p>Logged in!</p>")
    res = Response()
    t = SimpleTemplate(body)
    body = t.render(d)
    d["counter"] += 1
    res.set_body(body)
    return res
Пример #10
0
def get_add_form(values={}, errors={}):
    res=Response()
    t=SimpleTemplate(file_path=relativepath('form.html'))
    body=t.render({'message': u'RSS巡回用URLの追加',
                   'form':addform,
                   'values':values, 'errors':errors})
    res.set_body(body)
    return res
Пример #11
0
 def wrapper(_request, *args, **kws):
     if self.checkfunc(_request):
         return func(_request=_request, *args, **kws)
     else:
         res = Response()
         res.status = 302
         res.set_header('Location', self.loginpath)
         res.set_body('')
         return res
Пример #12
0
def get_add_form(values={}, errors={}):
    res = Response()
    t = SimpleTemplate(file_path=relativepath("form.html"))
    body = t.render({
        "message": u"RSS巡回用URLの追加",
        "form": addform,
        "values": values,
        "errors": errors
    })
    res.set_body(body)
    return res
Пример #13
0
def add(_request, title="", url=""):
    res = Response()
    values, errors = addform.validate({"title": title, "url": url})
    if [x for x in Rssurl.select(url=url)]:
        errors["url"] = u"このURLは登録済みです"
    if errors:
        return get_add_form(values, errors)
    Rssurl(title=title, url=url)
    t = SimpleTemplate(file_path=relativepath("posted.html"))
    body = t.render({"message": u"巡回用URLを追加しました"})
    res.set_body(body)
    return res
Пример #14
0
def login_form(_request, values={}, errors={}):
    res = Response()
    t = SimpleTemplate(file_path=relativepath("form.html"))
    values["password"] = ""
    body = t.render({
        "form": loginform,
        "values": values,
        "errors": errors,
        "message": u"ログイン"
    })
    res.set_body(body)
    return res
Пример #15
0
def login_form(_request, values={}, errors={}):
    res = Response()
    t = SimpleTemplate(file_path=relativepath('form.html'))
    values['password'] = ''
    body = t.render({
        'form': loginform,
        'values': values,
        'errors': errors,
        'message': u'ログイン'
    })
    res.set_body(body)
    return res
Пример #16
0
def get_edit_form(item_id, values={}, errors={}):
    res=Response()
    t=SimpleTemplate(file_path=relativepath('form.html'))
    if not values:
        for item in Rssurl.select(id=item_id):
            pass
        values={'item_id':item_id, 'title':item.title, 'url':item.url}
    body=t.render({'message': u'RSS巡回用URLの編集',
                   'form':editform,
                   'values':values, 'errors':errors})
    res.set_body(body)
    return res
Пример #17
0
def add(_request, title='', url=''):
    res=Response()
    values, errors=addform.validate({'title':title, 'url':url})
    if [ x for x in Rssurl.select(url=url)]:
        errors['url']=u'このURLは登録済みです'
    if errors:
        return get_add_form(values, errors)
    Rssurl(title=title, url=url)
    t=SimpleTemplate(file_path=relativepath('posted.html'))
    body=t.render({'message': u'巡回用URLを追加しました'})
    res.set_body(body)
    return res
Пример #18
0
def edit(_request, item_id, title='', url=''):
    res=Response()
    values, errors=editform.validate({'item_id':item_id,
                            'title':title, 'url':url})
    if errors:
        return get_edit_form(item_id, values, errors)
    for item in Rssurl.select(id=item_id):
        item.title=title
        item.url=url
    t=SimpleTemplate(file_path=relativepath('posted.html'))
    body=t.render({'message': u'巡回用URLを編集しました'})
    res.set_body(body)
    return res
Пример #19
0
def index(_request):
    rsslist=[]
    try:
        for rss in Rssurl.select(order_by='id'):
            rsslist.extend(parse_rss(rss.url))
    except:
        pass
    
    res=Response()
    p=path.join(path.dirname(__file__), 'rsslist.html')
    t=SimpleTemplate(file_path=p)
    body=t.render({'rsslist':rsslist[:20]})
    res.set_body(body)
    return res
Пример #20
0
def edit_form(_request, item_id, values={}, errors={}):
    res = Response()
    t = SimpleTemplate(file_path=relativepath("form.html"))
    if not values:
        for item in Rssurl.select(id=item_id):
            pass
        values = {"item_id": item_id, "title": item.title, "url": item.url}
    body = t.render({
        "message": u"RSS巡回用URLの編集",
        "form": editform,
        "values": values,
        "errors": errors
    })
    res.set_body(body)
    return res
Пример #21
0
def edit(_request, item_id, title="", url=""):
    res = Response()
    values, errors = editform.validate({
        "item_id": item_id,
        "title": title,
        "url": url
    })
    if errors:
        return edit_form(item_id, values, errors)
    for item in Rssurl.select(id=item_id):
        item.title = title
        item.url = url
        item.update()
    t = SimpleTemplate(file_path=relativepath("posted.html"))
    body = t.render({"message": u"巡回用URLを編集しました"})
    res.set_body(body)
    return res
Пример #22
0
def login(_request, username="", password=""):
    res = Response()
    values, errors = loginform.validate({
        "username": username,
        "password": password
    })
    if errors or fixeduser != username or fixedpass != password:
        return login_form(_request, values, errors)

    c = SimpleCookie()
    m = md5.md5(username + ":" + password)
    c["authhash"] = m.hexdigest()
    c["authhash"]["expires"] = "Thu, 1-Jan-3000 00:00:00 GMT"
    res.set_header(*c.output().split(": "))
    res.status = 302
    res.set_header("Location", "/")
    res.set_body("")
    return res
Пример #23
0
def login(_request, username='', password=''):
    res = Response()
    values, errors = loginform.validate({
        'username': username,
        'password': password
    })
    if errors or fixeduser != username or fixedpass != password:
        return login_form(_request, values, errors)

    c = SimpleCookie()
    m = md5.md5(username + ':' + password)
    c['authhash'] = m.hexdigest()
    c['authhash']['expires'] = 'Thu, 1-Jan-2030 00:00:00 GMT'
    res.set_header(*c.output().split(': '))
    res.status = 302
    res.set_header('Location', '/')
    res.set_body('')
    return res
Пример #24
0
cgitb.enable()

form_body = u"""
    <form method="post" action="/cgi-bin/rssreader1.py">
        RSSのURL:
        <input type="text" size="40" name="url" value="%s" />
        <input type="submit" />
    </form>"""

rss_parts = u"""
<h3><a href="%(link)s">%(title)s</a></h1>
<p>%(description)s</p>
"""

content = u"URLを入力してください"
req = Request()
if req.form.has_key('url'):
    try:
        rss_list = parse_rss(req.form['url'].value)
        content = ''
        for d in rss_list:
            content += rss_parts % d
    except:
        pass

res = Response()
body = form_body % req.form.getvalue('url', '')
body += content
res.set_body(get_htmltemplate() % body)
print res
Пример #25
0
def index(_request, name='', body='', submit=''):
    res = Response()
    t = SimpleTemplate(htmlbody)
    body = t.render({'name': name, 'body': body})
    res.set_body(body)
    return res