var org = {p3k: ({url:"http://community.livejournal.com/pantheoncomics/data/rss", xml:"<?xml version='1.0' encoding='utf-8' ?>\n<!--  If you are running a bot please visit this policy page outlining rules you must respect. http://www.livejournal.com/bots/  -->\n<rss version='2.0' xmlns:lj='http://www.livejournal.org/rss/lj/1.0/' xmlns:media='http://search.yahoo.com/mrss/' xmlns:atom10='http://www.w3.org/2005/Atom'>\n<channel>\n  <title>Pantheon and Dark Lord&apos;s Garden comics forum</title>\n  <link>http://community.livejournal.com/pantheoncomics/</link>\n  <description>Pantheon and Dark Lord&apos;s Garden comics forum - LiveJournal.com</description>\n  <lastBuildDate>Tue, 05 Jan 2010 11:03:28 GMT</lastBuildDate>\n  <generator>LiveJournal / LiveJournal.com</generator>\n  <lj:journal>pantheoncomics</lj:journal>\n  <lj:journalid>20839016</lj:journalid>\n  <lj:journaltype>community</lj:journaltype>\n  <atom10:link rel='hub' href='http://pubsubhubbub.appspot.com/' />\n  <image>\n    <url>http://l-userpic.livejournal.com/90306204/20839016</url>\n    <title>Pantheon and Dark Lord&apos;s Garden comics forum</title>\n    <link>http://community.livejournal.com/pantheoncomics/</link>\n    <width>97</width>\n    <height>100</height>\n  </image>\n\n<item>\n  <guid isPermaLink='true'>http://community.livejournal.com/pantheoncomics/6056.html</guid>\n  <pubDate>Tue, 05 Jan 2010 11:03:28 GMT</pubDate>\n  <title>Dark Lord&apos;s Garden has moved</title>\n  <link>http://community.livejournal.com/pantheoncomics/6056.html</link>\n  <description>Hey, all, after repeated trouble with baddies on Comicgenesis, I&apos;ve relocated Dark Lord&apos;s Garden on to a &lt;a href=&quot;http://dark-lords-garden.dreamwidth.org/&quot;&gt;Dreamwidth journal community&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Subscribe to the RSS feed, or pop in every now and then to see if there&apos;s anything new. Nothing at present, but there &lt;i&gt;is&lt;/i&gt; another page of &lt;a href=&quot;http://pantheon.comicgenesis.com&quot;&gt;Pantheon&lt;/a&gt; as of a couple of weeks ago...</description>\n  <comments>http://community.livejournal.com/pantheoncomics/6056.html</comments>\n  <lj:security>public</lj:security>\n  <lj:poster>rahball</lj:poster>\n  <lj:posterid>2881799</lj:posterid>\n  <lj:reply-count>1</lj:reply-count>\n</item>\n<item>\n  <guid isPermaLink='true'>http://community.livejournal.com/pantheoncomics/5818.html</guid>\n  <pubDate>Sat, 03 Oct 2009 05:31:45 GMT</pubDate>\n  <title>Dark Lord&apos;s Garden silliness</title>\n  <link>http://community.livejournal.com/pantheoncomics/5818.html</link>\n  <description>3rd October&lt;br /&gt;&lt;br /&gt;Seems like a dodgy banner ad has snuck into the Comicgenesis rotation again, as Google/Firefox is yelling blue murder about Dark Lord&apos;s Garden being an &quot;attack site&quot;. It had this problem with Pantheon back in June, but has been ok since.&lt;br /&gt;&lt;br /&gt;Annoying.&lt;br /&gt;&lt;br /&gt;But it&apos;s not me trying to infect anyone&apos;s pooters, promise!&lt;br /&gt;&lt;br /&gt;Also, I will update my comics again one day, yes indeedy!</description>\n  <comments>http://community.livejournal.com/pantheoncomics/5818.html</comments>\n  <lj:security>public</lj:security>\n  <lj:poster>rahball</lj:poster>\n  <lj:posterid>2881799</lj:posterid>\n  <lj:reply-count>0</lj:reply-count>\n</item>\n<item>\n  <guid isPermaLink='true'>http://community.livejournal.com/pantheoncomics/5577.html</guid>\n  <pubDate>Sat, 12 Sep 2009 07:17:00 GMT</pubDate>\n  <link>http://community.livejournal.com/pantheoncomics/5577.html</link>\n  <description>12th Sept.&lt;br /&gt;&lt;br /&gt;Hey, people, I think the international patterpillar packages are travelling at parcel speed (no doubt being checked as they pass through Customs), so they may take up to 10 working days to arrive. Plus a potential couple of days between the time you send in your order and my next trip to the post office.&lt;br /&gt;&lt;br /&gt;So allow a couple of weeks, then give me a yell if they haven&apos;t turned up.</description>\n  <comments>http://community.livejournal.com/pantheoncomics/5577.html</comments>\n  <lj:security>public</lj:security>\n  <lj:poster>rahball</lj:poster>\n  <lj:posterid>2881799</lj:posterid>\n  <lj:reply-count>0</lj:reply-count>\n</item>\n<item>\n  <guid isPermaLink='true'>http://community.livejournal.com/pantheoncomics/5222.html</guid>\n  <pubDate>Thu, 10 Sep 2009 07:12:05 GMT</pubDate>\n  <title>Update!</title>\n  <link>http://community.livejournal.com/pantheoncomics/5222.html</link>\n  <description>If you ordered patterpillars in the last week, they&apos;re on their way. :)&lt;br /&gt;&lt;br /&gt;I&apos;ve just updated the patterpillar dropdown and the list on the &lt;a href=&quot;http://community.livejournal.com/pantheoncomics/2021.html&quot;&gt;patterpillar stock page&lt;/a&gt;. I&apos;ve only got one grey and one buff brown left now, and no more orange, but there are several fun new colours like the slime green, the feather-textured white and the swirly tie-dye pink. I also got hold of a nifty camouflage-patterned fur last week, which I&apos;ll make some patterpillars of and photograph on the weekend.&lt;br /&gt;&lt;br /&gt;Speaking of the weekend, if you visit &lt;a href=&quot;http://www.patterpillarshop.com&quot;&gt;www.patterpillarshop.com&lt;/a&gt;, you&apos;ll see I&apos;ve turned it into a proper CRE&apos;ATURES site, with a story of patterpillar origins for the kids, a page on my airbrushed tattoos, and a listing of fairs and whatnots I&apos;ll be attending. The vast majority of these will, of course, be school fetes in and around Sydney, with the odd science fiction or furry convention in other cities.&lt;br /&gt;&lt;br /&gt;If you&apos;ve got a school fete or similar where you live, that you&apos;d like to sell patterpillars at, let me know! &lt;u&gt;pantheoncomics{at}gmail.com&lt;/u&gt;</description>\n  <comments>http://community.livejournal.com/pantheoncomics/5222.html</comments>\n  <lj:security>public</lj:security>\n  <lj:poster>rahball</lj:poster>\n  <lj:posterid>2881799</lj:posterid>\n  <lj:reply-count>0</lj:reply-count>\n</item>\n<item>\n  <guid isPermaLink='true'>http://community.livejournal.com/pantheoncomics/4928.html</guid>\n  <pubDate>Sun, 30 Aug 2009 02:37:53 GMT</pubDate>\n  <title>Sorry, it&apos;s the weekend again!</title>\n  <link>http://community.livejournal.com/pantheoncomics/4928.html</link>\n  <description>If you ordered patterpillars in the last few days, I&apos;ll probably be posting them on Tuesday. I missed the Saturday morning opening of the post office this week, unfortunately, and now it&apos;s silly Sunday.&lt;br /&gt;&lt;br /&gt;Again, thank you for your interest in those silly fuzzy worms. :D&lt;br /&gt;&lt;br /&gt;Oh, also, if anyone wants an easy link, the URL &lt;a href=&quot;http://users.tpg.com.au/fuzznrah&quot;&gt;www.patterpillarshop.com&lt;/a&gt; links to the kid-safe page.</description>\n  <comments>http://community.livejournal.com/pantheoncomics/4928.html</comments>\n  <lj:security>public</lj:security>\n  <lj:poster>rahball</lj:poster>\n  <lj:posterid>2881799</lj:posterid>\n  <lj:reply-count>0</lj:reply-count>\n</item>\n<item>\n  <guid isPermaLink='true'>http://community.livejournal.com/pantheoncomics/4668.html</guid>\n  <pubDate>Sat, 29 Aug 2009 06:56:29 GMT</pubDate>\n  <title>Oops!</title>\n  <link>http://community.livejournal.com/pantheoncomics/4668.html</link>\n  <description>Hey, everyone, I just realised (after more than a week) that I failed to close a strikeout tag somewhere on the &lt;a href=&quot;http://community.livejournal.com/pantheoncomics/2021.html&quot;&gt;patterpillar photos page&lt;/a&gt; last time I updated it. This may have given people the impression that I&apos;d run out of nearly everything! This was not the case, and the page is fixed now, with new photos.</description>\n  <comments>http://community.livejournal.com/pantheoncomics/4668.html</comments>\n  <lj:security>public</lj:security>\n  <lj:poster>rahball</lj:poster>\n  <lj:posterid>2881799</lj:posterid>\n  <lj:reply-count>0</lj:reply-count>\n</item>\n<item>\n  <guid isPermaLink='true'>http://community.livejournal.com/pantheoncomics/4495.html</guid>\n  <pubDate>Sat, 29 Aug 2009 01:22:14 GMT</pubDate>\n  <title>Have you paid?</title>\n  <link>http://community.livejournal.com/pantheoncomics/4495.html</link>\n  <description>Hi, people, thanks for all your orders, I hope your patterpillars are arriving in a safe and timely fashion. :)&lt;br /&gt;&lt;br /&gt;I have a few orders that have come through marked for payment with Paypal for which I haven&apos;t actually received the money. If you&apos;re wondering where your patterpillars have got to, check whether your payment has gone through!</description>\n  <comments>http://community.livejournal.com/pantheoncomics/4495.html</comments>\n  <lj:security>public</lj:security>\n  <lj:poster>rahball</lj:poster>\n  <lj:posterid>2881799</lj:posterid>\n  <lj:reply-count>0</lj:reply-count>\n</item>\n<item>\n  <guid isPermaLink='true'>http://community.livejournal.com/pantheoncomics/4168.html</guid>\n  <pubDate>Sat, 15 Aug 2009 13:55:57 GMT</pubDate>\n  <title>Market</title>\n  <link>http://community.livejournal.com/pantheoncomics/4168.html</link>\n  <description>Hey, people, I have a market festival thingy tomorrow (Sun 16th), so a lot of the interestingly-coloured patterpillars are going to get sold. Stock page will be updated after the kids have finished their pillaging.</description>\n  <comments>http://community.livejournal.com/pantheoncomics/4168.html</comments>\n  <lj:security>public</lj:security>\n  <lj:poster>rahball</lj:poster>\n  <lj:posterid>2881799</lj:posterid>\n  <lj:reply-count>0</lj:reply-count>\n</item>\n<item>\n  <guid isPermaLink='true'>http://community.livejournal.com/pantheoncomics/3992.html</guid>\n  <pubDate>Mon, 10 Aug 2009 07:23:12 GMT</pubDate>\n  <title>Attention, international customers!</title>\n  <link>http://community.livejournal.com/pantheoncomics/3992.html</link>\n  <description>Good news!&lt;br /&gt;&lt;br /&gt;I just posted a single patterpillar to the US, and instead of the parcel rate of $9.30, I was charged only the letter rate of $2.10!&lt;br /&gt;&lt;br /&gt;I want to send a few more to be sure before I go adjusting the shopping cart, but rest assured, if it only costs me $2.10 or $4.20 to send your patterpillars, I&apos;ll refund the difference right away. :)</description>\n  <comments>http://community.livejournal.com/pantheoncomics/3992.html</comments>\n  <lj:security>public</lj:security>\n  <lj:poster>rahball</lj:poster>\n  <lj:posterid>2881799</lj:posterid>\n  <lj:reply-count>0</lj:reply-count>\n</item>\n<item>\n  <guid isPermaLink='true'>http://community.livejournal.com/pantheoncomics/3598.html</guid>\n  <pubDate>Mon, 03 Aug 2009 02:46:28 GMT</pubDate>\n  <title>Photos!</title>\n  <link>http://community.livejournal.com/pantheoncomics/3598.html</link>\n  <description>&lt;a href=&quot;http://community.livejournal.com/pantheoncomics/2021.html&quot;&gt;Patterpillar entry now has photos, so you can see what the little buggers look like.&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;A whole lot more colours are coming soon.</description>\n  <comments>http://community.livejournal.com/pantheoncomics/3598.html</comments>\n  <lj:security>public</lj:security>\n  <lj:poster>rahball</lj:poster>\n  <lj:posterid>2881799</lj:posterid>\n  <lj:reply-count>0</lj:reply-count>\n</item>\n<item>\n  <guid isPermaLink='true'>http://community.livejournal.com/pantheoncomics/3331.html</guid>\n  <pubDate>Sun, 02 Aug 2009 05:29:38 GMT</pubDate>\n  <title>Link fix</title>\n  <link>http://community.livejournal.com/pantheoncomics/3331.html</link>\n  <description>I realised the kids-only version of the patterpillar site on Furtopia was playing up, so I&apos;ve moved it &lt;a href=&quot;http://users.tpg.com.au/fuzznrah&quot;&gt;here&lt;/a&gt;.</description>\n  <comments>http://community.livejournal.com/pantheoncomics/3331.html</comments>\n  <lj:security>public</lj:security>\n  <lj:poster>rahball</lj:poster>\n  <lj:posterid>2881799</lj:posterid>\n  <lj:reply-count>0</lj:reply-count>\n</item>\n<item>\n  <guid isPermaLink='true'>http://community.livejournal.com/pantheoncomics/3173.html</guid>\n  <pubDate>Thu, 30 Jul 2009 10:40:27 GMT</pubDate>\n  <title>Welcome</title>\n  <link>http://community.livejournal.com/pantheoncomics/3173.html</link>\n  <description>Hello, new visitors to my sites! :)&lt;br /&gt;&lt;br /&gt;Feel free to post comments and questions on here or email me at pantheoncomics @ gmail.com</description>\n  <comments>http://community.livejournal.com/pantheoncomics/3173.html</comments>\n  <lj:security>public</lj:security>\n  <lj:poster>rahball</lj:poster>\n  <lj:posterid>2881799</lj:posterid>\n  <lj:reply-count>0</lj:reply-count>\n</item>\n<item>\n  <guid isPermaLink='true'>http://community.livejournal.com/pantheoncomics/2964.html</guid>\n  <pubDate>Mon, 27 Jul 2009 02:20:26 GMT</pubDate>\n  <title>See, I told you!</title>\n  <link>http://community.livejournal.com/pantheoncomics/2964.html</link>\n  <description>Behold, &lt;a href=&quot;http://darklord.comicgenesis.com/&quot;&gt;Dark Lord&apos;s Garden update!&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;With two pages instead of one. :)</description>\n  <comments>http://community.livejournal.com/pantheoncomics/2964.html</comments>\n  <lj:security>public</lj:security>\n  <lj:poster>rahball</lj:poster>\n  <lj:posterid>2881799</lj:posterid>\n  <lj:reply-count>0</lj:reply-count>\n</item>\n<item>\n  <guid isPermaLink='true'>http://community.livejournal.com/pantheoncomics/2787.html</guid>\n  <pubDate>Fri, 24 Jul 2009 23:54:29 GMT</pubDate>\n  <title>Not dead</title>\n  <link>http://community.livejournal.com/pantheoncomics/2787.html</link>\n  <description>Hey peoples, sorry I haven&apos;t updated the comics for a while, there&apos;s been work and journeys to the doctor and patterpillar shenanigans (and patterpillar shenanigans *at* the doctor&apos;s, because he bought three).&lt;br /&gt;&lt;br /&gt;Shopping cart is now on the shop page, and working as it should. Yay! :D&lt;br /&gt;&lt;br /&gt;Also, the supermarket made me buy tomato, bacon and chilli noodle soup. It is tasty. It will be tastier when it cools down a bit.</description>\n  <comments>http://community.livejournal.com/pantheoncomics/2787.html</comments>\n  <lj:security>public</lj:security>\n  <lj:poster>rahball</lj:poster>\n  <lj:posterid>2881799</lj:posterid>\n  <lj:reply-count>0</lj:reply-count>\n</item>\n<item>\n  <guid isPermaLink='true'>http://community.livejournal.com/pantheoncomics/2420.html</guid>\n  <pubDate>Thu, 16 Jul 2009 11:16:11 GMT</pubDate>\n  <title>T-Shirts</title>\n  <link>http://community.livejournal.com/pantheoncomics/2420.html</link>\n  <description>&lt;a name=&quot;cutid1&quot;&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Evil Uniform:&lt;br /&gt;&lt;br /&gt;S  13&lt;br /&gt;M  15&lt;br /&gt;L  15&lt;br /&gt;XL  1&lt;br /&gt;&lt;br /&gt;Pan Mooning God:&lt;br /&gt;&lt;br /&gt;S  6&lt;br /&gt;M  7&lt;br /&gt;L  7&lt;br /&gt;XL 3&lt;br /&gt;&lt;br /&gt;</description>\n  <comments>http://community.livejournal.com/pantheoncomics/2420.html</comments>\n  <lj:security>public</lj:security>\n  <lj:poster>rahball</lj:poster>\n  <lj:posterid>2881799</lj:posterid>\n  <lj:reply-count>3</lj:reply-count>\n</item>\n<item>\n  <guid isPermaLink='true'>http://community.livejournal.com/pantheoncomics/2051.html</guid>\n  <pubDate>Sun, 12 Jul 2009 08:48:08 GMT</pubDate>\n  <title>And lo, there was a Pantheon!</title>\n  <link>http://community.livejournal.com/pantheoncomics/2051.html</link>\n  <description>Behold, gentlepersons! &lt;a href=&quot;http://pantheon.comicgenesis.com&quot;&gt;Pantheon has updated!&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;If you go back into the archives, you&apos;ll see I&apos;ve removed everything but the one-offs and guest strips that came after Daughters of God and &lt;a href=&quot;http://pantheon.comicgenesis.com/d/20090706.html&quot;&gt;restarted Adamantine Sickle&lt;/a&gt; without all the extra characters.&lt;br /&gt;&lt;br /&gt;The dropdown nav box seems not to have registered my changes to it, for whatever silly reason, but the calendar is working properly.&lt;br /&gt;&lt;br /&gt;Eventually, the aborted pages of Adamantine Sickle, along with The Beast in the Dungeon and the fuzzball comics, will be on the Extras page.</description>\n  <comments>http://community.livejournal.com/pantheoncomics/2051.html</comments>\n  <lj:security>public</lj:security>\n  <lj:poster>rahball</lj:poster>\n  <lj:posterid>2881799</lj:posterid>\n  <lj:reply-count>0</lj:reply-count>\n</item>\n<item>\n  <guid isPermaLink='true'>http://community.livejournal.com/pantheoncomics/2021.html</guid>\n  <pubDate>Fri, 10 Jul 2009 03:18:03 GMT</pubDate>\n  <title>Patterpillars</title>\n  <link>http://community.livejournal.com/pantheoncomics/2021.html</link>\n  <description>&lt;a href=&quot;http://www.facebook.com/album.php?aid=175719&amp;amp;id=258185464975&quot;&gt;I moved this info on to Facebook&lt;/a&gt;</description>\n  <comments>http://community.livejournal.com/pantheoncomics/2021.html</comments>\n  <category>patterpillars</category>\n  <lj:security>public</lj:security>\n  <lj:poster>rahball</lj:poster>\n  <lj:posterid>2881799</lj:posterid>\n  <lj:reply-count>5</lj:reply-count>\n</item>\n<item>\n  <guid isPermaLink='true'>http://community.livejournal.com/pantheoncomics/1769.html</guid>\n  <pubDate>Thu, 09 Jul 2009 08:08:58 GMT</pubDate>\n  <title>Pantheon tidying</title>\n  <link>http://community.livejournal.com/pantheoncomics/1769.html</link>\n  <description>I moved the &lt;a href=&quot;http://pantheon.comicgenesis.com/shop.html&quot;&gt;shop&lt;/a&gt; on to Pantheon&apos;s page, which means it&apos;s now yellow instead of black, and has ads on it. It still hasn&apos;t got the actual means of buying the stuff that&apos;s on it, but that&apos;s a minor detail!&lt;br /&gt;&lt;br /&gt;Not entirely satisfied with the position of the newsbox on Pantheon&apos;s front page, but I don&apos;t really want to delete any more of the &quot;about the comic&quot; text either.&lt;br /&gt;&lt;br /&gt;I&apos;m going to pull some of the more random content out of the main Pantheon archive and put it on the new &quot;Extras&quot; page...&lt;br /&gt;&lt;br /&gt;Working on the &quot;About&quot; and &quot;Links&quot; pages on Dark Lord&apos;s Garden.&lt;br /&gt;&lt;br /&gt;Added Dark Lord&apos;s Garden to &lt;a href=&quot;http://www.thewebcomiclist.com/&quot;&gt;The Webcomic List&lt;/a&gt;, we&apos;ll see if people start to come through from there like they do from &lt;a href=&quot;&amp;lt;http://belfrycomics.net/&amp;quot;&quot;&gt;Belfry&lt;/a&gt;.</description>\n  <comments>http://community.livejournal.com/pantheoncomics/1769.html</comments>\n  <lj:security>public</lj:security>\n  <lj:poster>rahball</lj:poster>\n  <lj:posterid>2881799</lj:posterid>\n  <lj:reply-count>0</lj:reply-count>\n</item>\n<item>\n  <guid isPermaLink='true'>http://community.livejournal.com/pantheoncomics/1422.html</guid>\n  <pubDate>Sun, 05 Jul 2009 00:45:39 GMT</pubDate>\n  <title>rollin&apos; rollin&apos; rollin&apos;</title>\n  <link>http://community.livejournal.com/pantheoncomics/1422.html</link>\n  <description>I am totally going to make a tshirt that says &quot;Never underestimate the power of the Pink Side&quot;. It will be popular with little girls as well as queers. :D&lt;br /&gt;&lt;br /&gt;In more pertinent news, I have acquired a lovely Javascript shopping cart whatsie that has been hammered into shape such that it can add up the weight of people&apos;s purchases and calculate postage based on the total. Because *Paypal couldn&apos;t be bothered*! Also, I have learned that &lt;a href=&quot;http://checkout.google.com&quot;&gt;Our Benevolent Overlords&lt;/a&gt; have started up a payment system and the fees are cheaper than Paypal&apos;s.&lt;br /&gt;&lt;br /&gt;Still working on the whole shop page thing.&lt;br /&gt;&lt;br /&gt;There was something else, but I forget what.</description>\n  <comments>http://community.livejournal.com/pantheoncomics/1422.html</comments>\n  <category>news</category>\n  <category>merchandise</category>\n  <lj:security>public</lj:security>\n  <lj:poster>rahball</lj:poster>\n  <lj:posterid>2881799</lj:posterid>\n  <lj:reply-count>0</lj:reply-count>\n</item>\n<item>\n  <guid isPermaLink='true'>http://community.livejournal.com/pantheoncomics/1037.html</guid>\n  <pubDate>Fri, 03 Jul 2009 04:44:47 GMT</pubDate>\n  <title>Yes, this is a newsbox</title>\n  <link>http://community.livejournal.com/pantheoncomics/1037.html</link>\n  <description>Hello, Dark Lord&apos;s Garden readers! Do you like my rss feed thingummy?&lt;br /&gt;&lt;br /&gt;There is an update coming, but Keenspace seems to think it isn&apos;t the 3rd of the month yet.</description>\n  <comments>http://community.livejournal.com/pantheoncomics/1037.html</comments>\n  <lj:security>public</lj:security>\n  <lj:poster>rahball</lj:poster>\n  <lj:posterid>2881799</lj:posterid>\n  <lj:reply-count>0</lj:reply-count>\n</item>\n<item>\n  <guid isPermaLink='true'>http://community.livejournal.com/pantheoncomics/837.html</guid>\n  <pubDate>Mon, 29 Jun 2009 12:13:46 GMT</pubDate>\n  <title>Supanova Photos</title>\n  <link>http://community.livejournal.com/pantheoncomics/837.html</link>\n  <description>The table:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;http://pics.livejournal.com/rahball/pic/0001hrph/&quot;&gt;&lt;img src=&quot;http://pics.livejournal.com/rahball/pic/0001hrph/s320x240&quot; width=&quot;294&quot; height=&quot;240&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Pantheon books on the table:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;http://pics.livejournal.com/rahball/pic/0001kk8c/&quot;&gt;&lt;img src=&quot;http://pics.livejournal.com/rahball/pic/0001kk8c/s320x240&quot; width=&quot;320&quot; height=&quot;239&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Patterpillars!&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;http://pics.livejournal.com/rahball/pic/0001pgxy/&quot;&gt;&lt;img src=&quot;http://pics.livejournal.com/rahball/pic/0001pgxy/s320x240&quot; width=&quot;320&quot; height=&quot;239&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Aaand, we saw Artoo waiting for his ride home afterwards:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;http://pics.livejournal.com/rahball/pic/0001gba6/&quot;&gt;&lt;img src=&quot;http://pics.livejournal.com/rahball/pic/0001gba6/s320x240&quot; width=&quot;320&quot; height=&quot;240&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Ugh, got to go to work now. Stupid work.</description>\n  <comments>http://community.livejournal.com/pantheoncomics/837.html</comments>\n  <lj:security>public</lj:security>\n  <lj:poster>rahball</lj:poster>\n  <lj:posterid>2881799</lj:posterid>\n  <lj:reply-count>0</lj:reply-count>\n</item>\n<item>\n  <guid isPermaLink='true'>http://community.livejournal.com/pantheoncomics/756.html</guid>\n  <pubDate>Thu, 25 Jun 2009 09:51:03 GMT</pubDate>\n  <title>Yay!</title>\n  <link>http://community.livejournal.com/pantheoncomics/756.html</link>\n  <description>Hello friends! :D&lt;br /&gt;&lt;br /&gt;I don&apos;t suppose any of you know how I can make the community&apos;s icons available for people to actually use? It&apos;s annoying to have made them, yet not have them show up anywhere.</description>\n  <comments>http://community.livejournal.com/pantheoncomics/756.html</comments>\n  <lj:security>public</lj:security>\n  <lj:poster>rahball</lj:poster>\n  <lj:posterid>2881799</lj:posterid>\n  <lj:reply-count>0</lj:reply-count>\n</item>\n<item>\n  <guid isPermaLink='true'>http://community.livejournal.com/pantheoncomics/439.html</guid>\n  <pubDate>Wed, 24 Jun 2009 17:17:48 GMT</pubDate>\n  <title>&quot;Where the bluddy &apos;ell &apos;ave *you* been?&quot;</title>\n  <link>http://community.livejournal.com/pantheoncomics/439.html</link>\n  <description>For those who lost track of me back in 2006:&lt;br /&gt;&lt;br /&gt;1) Comic muse wandered off.&lt;br /&gt;2) Custom soft toy animal and market stall muse came to stay for a couple of years. See &lt;a href=&quot;http://timmerryn.deviantart.com&quot;&gt;DeviantART&lt;/a&gt; gallery for examples of work.&lt;br /&gt;3) Custom soft toy animal muse got sick of sewing.&lt;br /&gt;4) Internet got Too Much Like Hard Work.&lt;br /&gt;5) Market stalls got unprofitable.&lt;br /&gt;6) Had to move house again. Stupid car hassles. Part time job got annoying. Nearly went broke.&lt;br /&gt;7) Comic muse came back!&lt;br /&gt;8) New part time job in petrol station vastly more profitable than old job. Got rich (by my standards).&lt;br /&gt;9) Back on the art and webcomic bandwagon, hoping to make it pay properly this time so as not to have to have silly part time job at all. Also (slowly) doing correspondence course in editing and proofreading on the offchance that there&apos;s money in that.&lt;br /&gt;&lt;br /&gt;And now...&lt;br /&gt;&lt;br /&gt;It&apos;s June again and Sydney &lt;a href=&quot;http://www.supanova.com.au&quot;&gt;Supanova&lt;/a&gt; this weekend. I&apos;ll be there with my friends Noemz (of &lt;a href=&quot;http://zeera.comicgenesis.com&amp;quot;&quot;&gt;Zeera the Space Pirate&lt;/a&gt;) and Stephen (&lt;a href=&quot;http://www.graphicsmash.com/comics/magellan.php&quot;&gt;Magellan&lt;/a&gt;). Might manage to take photos this year.&lt;br /&gt;&lt;br /&gt;I will have Pantheon comic books, patterpillars (furry toys that wriggle when you stroke them), t-shirts (photos when I actually get hold of them) and whatever else I can rustle up to sell (there are still some ORLY owl necklaces somewhere, I know it...)&lt;br /&gt;&lt;br /&gt;You can also now get Pantheon comic books from &lt;a href=&quot;http://thebookshop.com.au&quot;&gt;The Bookshop&lt;/a&gt; in Darlinghurst, but they haven&apos;t had a chance to put them on the website yet, so you&apos;ll have to contact them to ask. Or, if you&apos;re in Sydney, go there in person. Which you should anyway, because it&apos;s a &lt;i&gt;whole bookshop full of queer books&lt;/i&gt;. Yes?&lt;br /&gt;&lt;br /&gt;Other news and upcoming stuff:&lt;br /&gt;&lt;br /&gt;* I&apos;m now unofficially being &quot;Pantheon Comics&quot; (not to be confused with &lt;a href=&quot;http://en.wikipedia.org/wiki/Pantheon_Books&quot;&gt;Pantheon Books&lt;/a&gt;, which is an imprint of Random House in the US). My official business name is still CRE&apos;ATURES, so don&apos;t be surprised if you see it floating around on Paypal and such.&lt;br /&gt;&lt;br /&gt;* CafePress shop with lots of t-shirt designs is in the works. It will be more convenient to order from if you&apos;re in America or Europe, because international postage from Oz has gotten annoyingly more expensive since I last looked.&lt;br /&gt;&lt;br /&gt;* Dark Lord&apos;s Garden only needs one more page to be eligible for Project Wonderful ads! After which I might go round the interwebs and try to find it some more fans.&lt;br /&gt;&lt;br /&gt;* Art commissions. I&apos;ll do pretty drawings for money again, if anyone wants them.&lt;br /&gt;&lt;br /&gt;* I have this vague idea of making a series of cute figurines of gods and monsters called &quot;Pantheon Heroes&quot;, but I&apos;m on a getting-things-made-in-Australia binge at the moment, so I don&apos;t know how successful or profitable it could be.</description>\n  <comments>http://community.livejournal.com/pantheoncomics/439.html</comments>\n  <category>conventions</category>\n  <category>news</category>\n  <category>merchandise</category>\n  <category>friends</category>\n  <lj:security>public</lj:security>\n  <lj:poster>rahball</lj:poster>\n  <lj:posterid>2881799</lj:posterid>\n  <lj:reply-count>0</lj:reply-count>\n</item>\n</channel>\n</rss>\n", message:undefined, modified:(new Date(1265732073035)), baseUri:"http://p3k.org/rss/", query:"frameColor=white&textColor=white&_=1246588818538&titleBarColor=lightyellow&compact=&fontFace=arial&align=center&showXmlButton=true&maxItems=3&boxFillColor=black&titleBarTextColor=#330066&width=200&url=http://community.livejournal.com/pantheoncomics/data/rss&", param:{textColor:"white", width:"200", align:"center", fontFace:"arial", url:"http://community.livejournal.com/pantheoncomics/data/rss", compact:"", frameColor:"white", showXmlButton:"true", boxFillColor:"black", _:"1246588818538", titleBarColor:"lightyellow", maxItems:"3", titleBarTextColor:"#330066"}, box:"<table class=\"rssBox\" width=\"${width}\" bgcolor=\"${frameColor}\" \n      style=\"table-layout: fixed; overflow: hidden; font-family: ${fontFace};\" \n      align=\"${align}\" cellspacing=\"1\" cellpadding=\"7\" border=\"0\">\n<tr bgcolor=\"${titleBarColor}\">\n<td>\n   ${xmlButton}\n   <strong>${title}</strong>\n   <div>\n      <small style=\"color: ${titleBarTextColor};\">${date}</small>\n   </div>\n</td>\n</tr>\n<tr bgcolor=\"${boxFillColor}\">\n<td class=\"rssBoxContent\" style=\"color: ${textColor};\">\n   ${image}\n   ${items}\n   ${input}\n   <div class=\"rssBoxPromo\" style=\"margin-top: 0px; text-align: left; \n         font: 9px verdana, sans-serif\">\n      RSS box by <a href=\"http://p3k.org/rss\">p3k.org</a>.\n   </div>\n</td>\n</tr>\n</table>\n\n", image:"<a href=\"${link}\"><img src=\"${source}\" width=\"${width}\" height=\"${height}\" \nalt=\"${title}\" title=\"${title}\" align=\"${align}\" valign=\"${valign}\" \nhspace=\"${hspace}\" vspace=\"${vspace}\" border=\"0\" /></a>\n\n", input:"<form method=\"get\" action=\"${link}\">\n${description}\n<input type=\"text\" name=\"${name}\" size=\"15\" /> <input type=\"submit\" \nvalue=\"${title}\" />\n</form>\n\n", item:"<div class=\"rssBoxItemContent\">\n${title}\n${break}\n${description}\n${buttons}\n</div><br />\n\n", date:"${year}-${month}-${day}, ${hours}:${minutes}h\n\n", link:"<a class=\"${class}\" href=\"${link}\" style=\"${style}\">${text}</a>\n", error:"<?xml version=\"1.0\"?>\n<rss version=\"error\">\n   <channel>\n      <title>RSS Box Error</title>\n      <link>${link}</link>\n      <description>This output was automatically generated to report an error \n      that occurred during a request to the JavaScript RSS Box Viewer.</description>\n      <item>\n         <title>Oops, something went wrong...</title>\n         <description>An error occurred while processing the request to the \n         JavaScript RSS Box Viewer.</description>\n      </item>\n      <item>\n         <title>An error message was returned by the server.</title>\n         <description>${message}</description>\n      </item>\n      <item>\n         <description>Most likely, this might have happened because of a \n         non-existent or invalid RSS feed URL. Please check and possibly correct \n         your input, then try again.</description>\n      </item>\n   </channel>\n</rss>\n\n"})};
function debug(str) {
   return document.write('<p><span style="background-color: yellow;">', 
         str, '</span><p>');
}

org.p3k.RssBox = function() {
   var ref;
   var ISOPATTERN = /([0-9]{4})-([0-9]{2})-([0-9]{2})T([0-9:]+).*$/;
   
   var data = org.p3k;
   data.defaults = {
      url: "http://blog.p3k.org/rss",
      maxItems: 7,
      width: 200,
      align: "",
      frameColor: "black",
      titleBarColor: "lightblue",
      titleBarTextColor: "black",
      boxFillColor: "white",
      textColor: "black",
      showXmlButton: "",
      compact: ""
   };
   
   var baseUri = data.baseUri;
    
   var getColor = function(str) {
      if (str.length === 6 && parseInt(str, 16) && str.indexOf("#") !== 0) {
         str = "#" + str;
      }
      return str.toLowerCase();
   }

   var value;
   for (var i in data.defaults) {
      value = data.param[i];
      if (!value || value.length === 0) {
         data.param[i] = data.defaults[i];
      } else if (i.indexOf("Color") > 0) {
         data.param[i] = getColor(value);
      }
   }

   // FIXME: Ugly work-around for many boxes using too small width 
   // values because the former version did not show the exact output.
   if (data.param.javascript && data.param.width < 200) {
      data.param.width = 200;
   }
   // Remove obsolete parameters from param and query
   delete data.param.javascript;
   data.query = data.query.replace("javascript=true", "");   

   var NAMESPACES = {
      dc: "http://purl.org/dc/elements/1.1/",
      rdf: "http://www.w3.org/1999/02/22-rdf-syntax-ns#"
   };

   var getUrl = function(url) {
      url = baseUri + "proxy.r?" + encodeURIComponent(url);
   
      var HttpRequest = function() {
         return (typeof XMLHttpRequest !== "undefined") ?
            new XMLHttpRequest() : new ActiveXObject("Msxml2.XMLHTTP");
      }
   
      var request = new HttpRequest();
      request.open("GET", url, false);
      request.send(null);   
      if (!request.getResponseHeader("Date")) {
         var cached = request;
         var ifModifiedSince = cached.getResponseHeader("Last-Modified") || 
               new Date(0); // January 1, 1970
         request = new HttpRequest();
         request.open("GET", url, false);
         request.setRequestHeader("If-Modified-Since", ifModifiedSince);
         request.send("");
         if (request.status === 304) {
            request = cached; 
         }
      }
      return request;
   }
   
   var getDocument = function(source) {
      if (source) {
         if (document.implementation.createDocument) {
            var parser = new DOMParser();
            var doc = parser.parseFromString(source, "text/xml");
            return doc;
         } else if (window.ActiveXObject) {
            var doc = new ActiveXObject("Microsoft.XMLDOM");
            doc.async = "false";
            doc.loadXML(source);
            return doc;
         }
      }
      return null;
   }
   
   var getError = function() {
      var msg = null, root;
      if (!xml || data.message) {
         msg = data.message || "Unknown error.";
      } else if (xml.parseError && xml.parseError.errorCode) {
         msg = xml.parseError.reason; // IExplore
      } else if (root = xml.documentElement) {
         var errorNode;
         if (root.nodeName === "parsererror") {
            msg = xml.documentElement.textContent; // Mozilla
         } else if ((errorNode = root.childNodes[0]) && 
               errorNode.nodeName === "parsererror") {
            msg = errorNode.textContent; // Safari
         } else if (!/rss|rdf|scriptingNews/i.test(xml.documentElement.nodeName)) {
            msg = "Incompatible data format. Are you sure this is an RSS feed?";
         }
      }
      return msg;
   }
   
   var getNode = function(parent, name, namespace) {
      if (namespace) {
         if (typeof parent.getElementsByTagNameNS === "undefined") {
            var elements = parent.getElementsByTagName(namespace + ":" + name);
         } else {
            var elements = parent.getElementsByTagNameNS(NAMESPACES[namespace], name);
         }
      } else {
         var elements = parent.getElementsByTagName(name);
      }
      if (elements && elements[0]) {
         return elements[0];
      }
      return null;
   }
   
   var getText = function(node) {
      if (node && node.childNodes && node.childNodes.length > 0) {
         return node.childNodes[0].nodeValue || "";
      }
      return "";
   }
   
   var trim = function(str) {
      if (str) {
         return str.replace(/^\s*(\S*)\s*$/, "$1");
      }
      return "";
   }
   
   var padZero = function(n) {
      if (n < 10) {
         return "0" + n
      }
      return n;
   }

   var encodeXml = function(str) {
      if (!str) {
         return "";
      }
      return str.replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/&/g, "&amp;");
   }
      
   var render = function(template, param) {
      if (!template || !param) {
         return template;
      }
      template = template.replace(/\$\{([^}]+)\}/g, function() {
         var key = arguments[1];
         return param[key] || "";
      });
      return template;
   }
   
   var renderDate = function(date) {
      if (date.constructor !== Date) {
         var str = String(date);
         var millis = Date.parse(str.replace(ISOPATTERN, "$1/$2/$3 $4"));
         if (millis) {
            date = new Date(millis);
         } else {
            date = new Date;
         }
      }

      return render(data.date, {
         year: date.getFullYear(),
         month: padZero(date.getMonth() + 1),
         day: padZero(date.getDate()),
         hours: padZero(date.getHours()),
         minutes: padZero(date.getMinutes()),
         seconds: padZero(date.getSeconds()),
         timeZone: "" // date.getTimezoneOffset()
      });
   }
   
   var renderButtons = function(enclosure, source) {
      var result = "";
      if (enclosure && enclosure.link) {
         result += render(data.image, {
            source: baseUri + "enclosure.gif",
            title: enclosure.type,
            link: encodeURI(enclosure.link),
            width: 13,
            height: 16
         });
      }
      if (source && source.link) {
         result += render(data.image, {
            source: baseUri + "source.gif",
            title: source.title,
            link: encodeURI(source.link),
            width: 15,
            height: 15
         });
      }
      return result;         
   }
   
   var param = data.param;
   var rss = data.rss = {items: []};
   var xml = getDocument(data.xml);

   rss.error = getError();
   if (rss.error !== null) {
      xml = getDocument(render(data.error, {
         link: baseUri + "?" + encodeXml(data.query),
         message: encodeXml(rss.error)
      }));
      param.compact = 0;
      param.showXmlButton = 1;
   }

   var root = xml.documentElement;
   var type = root.nodeName;

   if (type === "scriptingNews") {
      var channel = getNode(xml, "header");
      rss.format = "Scripting News";
      rss.version = getText(getNode(channel, "scriptingNewsVersion"));
      rss.title = getText(getNode(channel, "channelTitle"));
      rss.description = getText(getNode(channel, "channelDescription"));
      rss.link = getText(getNode(channel, "channelLink"));
      if (ref = getText(getNode(channel, "imageUrl"))) {
         ref = rss.image = {source: ref};
         ref.title = getText(getNode(channel, "imageTitle"));
         ref.link = getText(getNode(channel, "imageLink"));
         ref.width = getText(getNode(channel, "imageWidth"));
         ref.height = getText(getNode(channel, "imageHeight"));
         ref.description = getText(getNode(channel, "imageCaption"));
      }
   } else {
      var channel = getNode(xml, "channel");
      rss.format = "RSS";
      rss.version = (type === "rdf:RDF") ? "1.0" : 
            root.getAttribute("version");
      rss.title = getText(getNode(channel, "title"));
      rss.description = getText(getNode(channel, "description"));
      rss.link = getText(getNode(channel, "link"));
      var image = getNode(xml, "image");
      if (image) {
         ref = rss.image = {};
         ref.source = getText(getNode(image, "url"));
         ref.title = getText(getNode(image, "title"));
         ref.link = getText(getNode(image, "link"));
         ref.width = getText(getNode(image, "width"));
         ref.height = getText(getNode(image, "height"));
         ref.description = getText(getNode(image, "description"));
      }
   }
   
   if (type === "rdf:RDF") {
      rss.date = renderDate(getText(getNode(channel, "date", "dc")) || data.modified);
      rss.rights = getText(getNode(channel, "creator", "dc"));
      var input = getNode(root, "textinput");
      if (input && !getNode(input, "link")) {
         input = root.getElementsByTagName("textinput")[1];
      }
      if (input) {
         ref = rss.input = {};
         ref.link = getText(getNode(input, "link"));
         ref.description = getText(getNode(input, "description"));
         ref.name = getText(getNode(input, "name"));
         ref.title = getText(getNode(input, "title"));
      }
   } else {
      rss.date = renderDate(getText(getNode(channel, "lastBuildDate") || getText(getNode(channel, "pubDate"))) || data.modified);
      rss.rights = getText(getNode(channel, "copyright"));
   }
   
   var item, text, node;
   var items = xml.getElementsByTagName("item");

   for (var i=0; i<Math.min(items.length, param.maxItems); i+=1) {
      item = items[i];

      if (type === "scriptingNews") {
         ref = {title: ""};
         ref.description = getText(getNode(item, "text")).replace(/\n/g, " ");
         ref.link = getText(getNode(item, "link"));
         if (text = trim(getText(getNode(item, "linetext")).replace(/\n/g, " "))) {
            ref.description = ref.description.replace(new RegExp(text), 
                  '<a href="' + getText(getNode(item, "url")) + '">' + text + '</a>');
         }
      } else {
         ref = {
            title: getText(getNode(item, "title")),
            description: getText(getNode(item, "description")),
            link: getText(getNode(item, "link") || getNode(item, "guid"))
         };
     }

     if (node = getNode(item, "source")) {
        ref.source = {
           link: node.getAttribute("url"),
           title: getText(node)
        }
     }
     
     if (node = getNode(item, "enclosure")) {
        ref.enclosure = {
           link: node.getAttribute("url"),
           length: node.getAttribute("length"),
           type: node.getAttribute("type")
        }
     }
     
     if (node = getNode(item, "category")) {
        ref.category = {
           domain: node.getAttribute("domain") || "",
           content: getText(node)
        }
     }
     
     rss.items.push(ref);
   }
   
   var item, items = "";
   for (var i=0; i<rss.items.length; i+=1) {
      item = rss.items[i];
      items += render(data.item, {
         title: new function() {
            var title = (!param.compact ? "<strong>" : "");
            if (item.link) {
               title += render(data.link, {
                  link: encodeURI(item.link),
                  text: item.title,
                  'class': "rssBoxItemTitle"
               });
            } else {
               title += item.title;
            }
            !param.compact && (title += "</strong>");
            return new String(title); // FIXME: Funny, title alone will be rendered as [object]
         }(),
         'break': item.title && item.description ? "<br />" : "",
         description: (!param.compact || !item.title) && item.description,
         buttons: renderButtons(item.enclosure, item.source)
      });
   }
   
   var box = render(data.box, {
      title: rss.link ? render(data.link, {
         link: encodeURI(rss.link),
         text: rss.title,
         'class': "rssBoxTitle",
         style: "color: " + param.titleBarTextColor
      }) : rss.title,
      description: rss.description,
      items: items,

      xmlButton: param.showXmlButton && render(data.image, {
         link: param.url,
         source: baseUri + "rss.png",
         title: rss.format + " " + rss.version,
         width: 16,
         height: 16,
         align: "right",
         hspace: 3
      }),
      
      image: !param.compact && rss.image && render(data.image, {
         link: encodeURI(rss.image.link),
         source: rss.image.source,
         width: rss.image.width,
         height: rss.image.height,
         title: rss.image.title,
         align: "right",
         valign: "baseline",
         hspace: 5,
         vspace: 5
      }),
      
      input: !param.compact && rss.input && render(data.input, {
         link: encodeURI(rss.input.link),
         description: rss.input.description,
         name: rss.input.name,
         title: rss.input.title
      }),
      
      date: rss.date,
      width: param.width,
      frameColor: param.frameColor,
      fontFace: param.fontFace,
      align: param.align,
      titleBarColor: param.titleBarColor,
      titleBarTextColor: param.titleBarTextColor,
      boxFillColor: param.boxFillColor,
      textColor: param.textColor
   });

   if (!window.rssBoxSetup) {
      document.write(box);
   }
   
   return box;
};

org.p3k.RssBox();

