Mercurial > dive4elements > website
changeset 43:5541d758f62a
Remove PSP, Added SSI, Added newsfeed.py for include
author | Mathias Gebbe <mgebbe@intevation.de> |
---|---|
date | Mon, 10 Mar 2014 17:47:07 +0100 |
parents | 3fe0a15a02d0 |
children | 8cc0036041cf |
files | .htaccess feed.html newsfeed.py |
diffstat | 3 files changed, 77 insertions(+), 12 deletions(-) [+] |
line wrap: on
line diff
--- a/.htaccess Mon Mar 10 16:31:19 2014 +0100 +++ b/.htaccess Mon Mar 10 17:47:07 2014 +0100 @@ -1,14 +1,4 @@ # Activate serversite includes. -AddOutputFilter INCLUDES .shtml +Options +Includes +ExecCGI XBitHack on - -# Activate "Python Server Pages" -AddHandler mod_python .psp -PythonHandler mod_python.psp - AddDefaultCharset UTF-8 -DirectoryIndex index.psp - -# Nobody should see the index.html -RewriteEngine On -RewriteRule ^index\.html$ $1/index.psp [R]
--- a/feed.html Mon Mar 10 16:31:19 2014 +0100 +++ b/feed.html Mon Mar 10 17:47:07 2014 +0100 @@ -1,6 +1,6 @@ <div class="col-xs-6 col-md-4 sidebar-dive4elements"> <div class="news feed"> <p>News Feed</p> - {newsfeed} + <!--#exec cgi="/newsfeed.py" --> </div><!-- /news feed --> </div><!-- /col-xs-6 -->
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/newsfeed.py Mon Mar 10 17:47:07 2014 +0100 @@ -0,0 +1,75 @@ +#!/usr/bin/env python + +import urllib2 +import simplejson +import time +import sys + +# SETTINGS + +url = "http://goldenrod.rgb/api/user/dive4elements/feed/public" +verb = "share" # post or share +max_posts = 5 +max_length = 350 +opacity75 = 20 +ocacity50 = 10 + +# END SETTINGS + +output = [] + +postcount = 1 + +output.append( + '<ul style="list-style-type: square; margin-left:-25px;line-height: 23px;">' +) + +response = urllib2.urlopen(url) +data = simplejson.load(response,'utf8') + +for item in data["items"]: + + # only shares or posts are interesting + if item["verb"] != verb: continue + + # max_posts + if postcount > max_posts: break + + try: + content = item["object"]["content"] + except KeyError: + continue + postcount+=1 + + content = content.encode('utf8') + output.append("<li>") + + if len(content) >= max_length: + output.append(content[:(max_length-opacity75)]) + output.append("<a href="+item["actor"]["url"]+">") + #output.append("<a href="+item["object"]["url"]+">") + output.append('<span style="opacity: 0.75;filter:Alpha(opacity=75)">' + content[(max_length-opacity75):(max_length-ocacity50)] + '</span>' + '<span style="opacity: 0.50;filter:Alpha(opacity=50)">' + content[(max_length-ocacity50):(max_length)] + '...</span></a>') + else: + output.append(content) + + output.append('<br>') + #output.append("<a href="+item["object"]["links"]["self"]["href"]+">more...</a>") + output.append('<span style="font-size:smaller">') + output.append('<a href="'+item["actor"]["url"]+'">'+item["actor"]["displayName"]+'</a>') + #output.append(item["content"]) + if verb == "share": output.append(' via <a href="'+item["object"]["url"]+'">'+item["object"]["author"]["displayName"]+'</a>') + #if verb == "share": output.append(' via <a href="'+item["object"]["author"]["url"]+'">'+item["object"]["author"]["displayName"]+'</a>') + # 2014-01-03T10:30:02Z + date=time.strptime(item["updated"],"%Y-%m-%dT%H:%M:%SZ") + output.append(" "+(time.strftime("%d.%m.%Y um %H:%M:%S", date))) + output.append('</span>') + output.append("</li>") + +output.append("</ul>") +#output.append('<a href="'+data["author"]["url"]+'">mehr von '+data["author"]["displayName"]+'</a>' ) +s = ''.join(output) + +print "Content-Type: text/html;charset=utf-8" +print +print s +