Add support for team blogs
authorMagnus Hagander <magnus@hagander.net>
Mon, 18 May 2009 20:42:57 +0000 (16:42 -0400)
committerMagnus Hagander <magnus@hagander.net>
Mon, 18 May 2009 20:42:57 +0000 (16:42 -0400)
generator.py
hamnadmin/register/models.py
planethtml.py
template/index.tmpl

index 0c902f7d2d1eec90a376fcf84110b64329c79b75..6a1f91eb2bc0d901df7ffbf9cf036d51994c7011 100755 (executable)
@@ -59,7 +59,7 @@ class Generator:
                self.db.set_client_encoding('UTF8')
                c = self.db.cursor()
                c.execute("SET TIMEZONE=GMT")
-               c.execute("SELECT guid,link,dat,title,txt,name,blogurl,guidisperma FROM planet.posts INNER JOIN planet.feeds ON planet.feeds.id=planet.posts.feed WHERE planet.feeds.approved AND NOT planet.posts.hidden ORDER BY dat DESC LIMIT 30")
+               c.execute("SELECT guid,link,dat,title,txt,planet.feeds.name,blogurl,guidisperma,planet.teams.name,planet.teams.teamurl FROM planet.posts INNER JOIN planet.feeds ON planet.feeds.id=planet.posts.feed LEFT JOIN planet.teams ON planet.feeds.team = planet.teams.id WHERE planet.feeds.approved AND NOT planet.posts.hidden ORDER BY dat DESC LIMIT 30")
                for post in c.fetchall():
                        desc = self.TruncateAndCleanDescription(post[4])
                        rss.items.append(PyRSS2Gen.RSSItem(
@@ -74,7 +74,7 @@ class Generator:
                                guid=PyRSS2Gen.Guid(post[0],post[7]),
                                pubDate=post[2],
                                description=desc))
-                       self.items.append(PlanetPost(post[0], post[1], post[2], post[3], post[5], post[6], desc))
+                       self.items.append(PlanetPost(post[0], post[1], post[2], post[3], post[5], post[6], desc, post[8], post[9]))
 
                c.execute("SELECT name,blogurl,feedurl FROM planet.feeds WHERE approved ORDER BY name")
                for feed in c.fetchall():
index 283c033da456f818f1ffa2b67cdee06b9e3cf6df..c138da2f109509f400294180099e75e7eea10a1e 100644 (file)
@@ -19,10 +19,10 @@ class Blog(models.Model):
        feedurl = models.CharField(max_length=255, blank=False)
        name = models.CharField(max_length=255, blank=False)
        blogurl = models.CharField(max_length=255, blank=False)
-       lastget = models.DateTimeField(default='2000-01-01')
+       lastget = models.DateTimeField(default=datetime(2000,1,1))
        userid = models.CharField(max_length=255, blank=False)
        approved = models.BooleanField()
-       authorfilter = models.CharField(max_length=255,default='')
+       authorfilter = models.CharField(max_length=255,default='',blank=True)
        team = models.ForeignKey(Team,db_column='team', blank=True, null=True)
 
        def __str__(self):
index 9dfb55831e2e6b652e6e573db2e7f7838aa50c29..3bbeefa5f52b760ea132e46e039dd22ca10a5457 100644 (file)
@@ -17,7 +17,7 @@ def quoteurl(str):
        return str.replace('&','&amp;')
 
 class PlanetPost:
-       def __init__(self, guid,link,dat,title,author,blogurl,txt):
+       def __init__(self, guid,link,dat,title,author,blogurl,txt,teamname,teamurl):
                self.guid = guid
                self.link = link
                self.dat = dat
@@ -25,12 +25,18 @@ class PlanetPost:
                self.author = author
                self._blogurl = blogurl
                self.txt = txt
+               self.teamname = teamname
+               self._teamurl = teamurl
 
 
        def _get_blogurl(self):
                return quoteurl(self._blogurl)
        blogurl = property(_get_blogurl)
 
+       def _get_teamurl(self):
+               return quoteurl(self._teamurl)
+       teamurl = property(_get_teamurl)
+
        def _get_datetime(self):
                return self.dat.strftime("%Y-%m-%d at %H:%M:%S")
        datetime = property(_get_datetime)
index 02ff52ac1cafce808b198004162b21f0fef2d59e..9a2f226369eb3586f4ff5959a26019f067f03f96 100644 (file)
@@ -31,7 +31,7 @@
         <div class="planetPostTitle"><a href="{{post.link}}">{{post.title}}</a></div>
         <b class="blf"></b><b class="b2f"></b><b class="b3f"></b><b class="b4f"></b>
         <div class="planetPostAuthor">
-         Posted by {%if post.blogurl%}<a href="{{post.blogurl}}">{{post.author}}</a>{%else%}{{post.author}}{%endif%} on <span class="date">{{post.datetime}}</span>
+         Posted by {%if post.blogurl%}<a href="{{post.blogurl}}">{{post.author}}</a>{%else%}{{post.author}}{%endif%} {%if post.teamurl%} in <a href="{{post.teamurl}}">{{post.teamname}}</a>{%endif%} on <span class="date">{{post.datetime}}</span>
         </div><!-- end planetPostHeader -->
         <b class="b4f"></b><b class="b3f"></b><b class="b2f"></b><b class="b1f"></b>
         <div class="cl"></div>