Here's a list of stuff I think might be nice for the RSS feeds, along with some implementation ideas. It'd be cool if people could discuss them, and then at the outcome I'll probably have a stab at implementing some of them.
- When a user adds a feed, automatically configure the jounal name and website URL to be the one in the RSS data. This one's pretty easy, and would just be a feature of whatever API function is responsible for adding the feed and doing the initial population.
- Retrieve the image referenced in the RSS data and, assuming it's appropriately sized, make it the journal default userpic. This'll be useful for when it's on a friends page. When it's too large, perhaps scale it down appropriately. Not sure what to do if the image has acceptable dimensions yet the filesize is >40k.
- Alter the output from userinfo a bit more when it's displaying a syndication journal. Firstly, restore the ‘website’ URL to displaying the real website from the account (which would be, after item 1 is implemented, the main site URL) and display one of those silly little orange ‘XML’ icons next to it which links to the RSS feed. This is apparently “what users expect”.
- Disable the RSS output form syndicated journals, and replace it with a simple redirect to the URL stored in the syndicated table. This is more useful than LJ's half-mangled RSS output (RSS feed of data from an RSS feed seems a bit silly) and on the off-chance that someone does try to syndicate from LJ, they'll find they are kicked to the real feed.
- Integrate the syndicated journals into the system a little more. Make the “Add a Comment” link (not the ideal choice, but all that's available) go to the original post rather than including the URL in the body text. This is a simple bit of logic in ljviews.pl which just puts a different URL into the appropriate variables in the style system. The URL itself can be stored in a logprop rather than in the entry and the code can retrieve it. In the case of slashdot, where there's nothing else to put into the body, something will have to be inserted to populate logtext, but I don't know what. For extra niceness, we could also make talkread and talkpost redirect when they find one of these entries but that's not really necessary since it'll never be linked to. For the future: S2 is able to handle entries which only have “read comments” links and no “add a comment” link, and also ones where a comment count isn't available, so S2 can make this nicer when it comes around.
- There needs to be some way to edit RSS accounts later, whether it be to update the feed URL or to update the name, userpic and so forth. I can't see a good way of letting the public do this, as allowing people to ‘own’ syndication accounts is just going to cause bother, so some person/people is/are probably going to need a synd_edit priv which enables them to flag a feed as needing its userpic/url/name updated at the next time it hits the feed, and also change the feed URL, both from the admin console.
- Entries in syndication journals should probably be deleted after a certain time. They aren't real journals, and the data is archived elsewhere, so it seems a waste of LJ's disk space to duplicate this data which is primarily there to be syndicated onto friends pages and thus isn't going to be needed again.
- Actually use the reserved namespace
/.*_s$/
rather than wasting the general namespace with these things.
That's enough for now! ;)