Tiger kills Acrobat Distiller 5 (Classic)

Since upgrading to Tiger, Jaq obviously hadn’t done any creating PDFs in Distiller. It still uses Classic, and Tiger upgrades stop it from actually producing the PDF files. However, there is a solution: open up Distiller, and change the Job Options... settings for all of the profiles, so that _Fast Web Vie_w, and Embed Thumbnails are both unchecked. Bingo, works again.

Pigsy says:

Better bury a priest alive than stop him getting his fill.

Strangest Spam

I received the strangest Spam today. Gmail didn’t flag it as Spam, but that’s because there isn’t much to it:

X-Gmail-Received: 207621b91521d8580702cc6b8f5dc303db882c71
Delivered-To: xxx@gmail.com
Received: by 10.70.73.14 with SMTP id v14cs27376wxa;
        Sun, 16 Oct 2005 21:21:02 -0700 (PDT)
Received: by 10.36.105.16 with SMTP id d16mr2452237nzc;
        Sun, 16 Oct 2005 21:21:02 -0700 (PDT)
Return-Path: <onisimvfdi@aucklandnz.com>
Received: from m1.dnsix.com (m1.dnsix.com [63.251.171.164])
        by mx.gmail.com with ESMTP id e1si1376069nzd.2005.10.16.21.21.02;
        Sun, 16 Oct 2005 21:21:02 -0700 (PDT)
Received-SPF: neutral (gmail.com: 63.251.171.164 is neither permitted nor denied by best guess record for domain of onisimvfdi@aucklandnz.com)
Date: Sun, 16 Oct 2005 21:21:02 -0700 (PDT)
Message-Id: <435326ae.1e47a7b1.2e3f.ffffea7aSMTPIN_ADDED@mx.gmail.com>
Received: from [221.169.78.40] (helo=aucklandnz.com)
	by m1.dnsix.com with smtp (Exim 4.44)
	id 1ERF09-0008R3-2k
	for xxx@xxx.com; Sun, 16 Oct 2005 13:21:01 -0700

<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<HTML><HEAD>
<TITLE>404 Not Found</TITLE>
</HEAD><BODY>
<H1>Not Found</H1>
The requested URL was not found on this server.<P>
<HR>
<ADDRESS>Apache/1.3.31</ADDRESS>
</BODY></HTML>

No web addresses, one email. I think maybe this Spammer had a problem… The two IP addresses listed as the first sources, those Received: headers that appear first, are both Private Range IP addresses, but the m1.dnsix.com one seems like the service provider. Oh well, no biggie.

(kind of) Fix for XMLRPC bug.

I’ve been playing around with the version of the WP-mu source that’s used on Blogsome’s servers, trying to find the exact point where the bug is that escapes apostrophes and quotes.

Basically, the XMLRPC client contacts the server, and sends the data in. According to the console, the content of the post is actually in a field called description.

Searching through the XMLRPC file I find only five references to the word description. Two of these are in functions to do with posting. Both are basically the same, one is for blogger, the other metaweblog type connections:

1
    $post_content = apply_filters('content_save_pre', $content_struct['description']);

Now, a bit of research showed up that apply_filters is a function that allows plugins and their ilk to access the data before it gets saved to the database. Now, I’m fairly sure it is not a plugin doing this.

I also discovered that it is likely that the update to XMLRPC.php that happened was accompanied by a change to another file, that calls stripslashes(), another WP function. The XMLRPC update was, after all, a fix that removed the ability for XMLRPC calls to run unescaped code. So it makes sense that it escapes stuff.

In the short term, I discovered ecto has the ability to automatically run a script as you post: in the New Post window, make sure Options are showing, and choose the Formatting tab. (Incidentally, if you are only using double-quotes, it seems the Smarten Quotes will help, but it may mess with code).

I use a script that is like this to fix everything up:

1
2
3
4
5
6
7
import sys
data = open(sys.argv[1]).read()

data = data.replace(“'”,“'”)
data = data.replace('“',”“”)

open(sys.argv[1],'w').write(data)

This on its own is not enough - I seemed to have to go into the HTML editing mode before it would work. I think ecto does its own conversion of certain HTML entities to real characters.

This post is a test post to see how it all goes with <pre> tags and the like.

Interactionless Catchpa

Over on this site, I read about a system that seems to be a bit like mine (only perhaps more complicated). It did give me one idea though: I could automatically populate the value into the box. Or even more simply, have the JavaScript simply fix up the action="" attribute. Then the user just needs to set the action attribute to a whitespace string, and then the JavaScript will make it possible for the reader to submit comments. I’m not sure if this would really be all is needed to prevent Spam comments. Requiring JavaScript to be on… • And trackbacking it gave me another idea: setting the action on a trackback URI to copy the URI to the clipboard. That would be cool. Or making the ‘LinkThis’ bookmarklet get the trackback URI from the page. Should be able to look for a link with rel="trackback", and use the href from this. Okay, this bit works, but again I’ve run into the problem that I’m trying access an ‘off-site’ document. And I cannot do that with JavaScript.

1
2
3
4
5
    var a = document.getElementsByTagName('a');
    var tb = '';
    for (var i=0;i<a.length;i++){
        if (a[i].rel=="trackback") 
            tb=a[i].href;};

That code fragment will get the trackback URI. But there’s no argument I can pass to the bookmarklet.php file that will insert this automatically. Something to add to the Blogsome wishlist, I guess.

Additions to Blogsome

Things I’d like to see in Blogsome:

  • The XMLRPC bug fixed. I want to be able to post from ecto again.
  • More quicktags. I’ve written some code to enable <abbr> and <acronym> tags, as well as < and > signs.
  • The ability to have md5() as a Smarty filter.
  • An _RSS _feed from the forums. Not strictly Blogsome, but would be cool. Done!
  • Preview in Editing window uses template (or part of template?)
  • The GMT Offset bug fixed.

A lot of this stuff should be able to be merged back into the WP/WPµ tree - the XMLRPC bug has been already, for instance. But I understand that the Blogsome team aren’t keen on upgrading the software if it is going to break something.

Cross Browser Script Up

My script is now up and running, and cross-browser. I’ll leave the Catchpa slightly disabled for the time being so I can test it a bit more on different machines. You’ll also notice a nice little floating toolbar - this is only supposed to appear on the site when a user is logged in, but it seems to be there all of the time at the moment. The script is about 56k, which I think is too big, however I’ve had some issues with the compression utility I was using, so I’ll roll my own solution. It is all in one file again, (easier to manage updating it), and I think the browser caches it, so it should only be slow on the first load. Things I need to do:

  • Set it up so the true.gif and false.gif images are preloaded, so there is no delay on the first time a user clicks on a checkbox.
  • Have a tag in the template for enabling/disabling checkbox replacement.
  • Fix up admin toolbar.

I’m sure there’s probably other stuff I need to do…

DOMContentLoaded and Safari

Often, you will want some scripts to run when the page has loaded, even if the images on it haven’t. I wrote up some stuff about this under Best pre-onload. My full onDOMReady script looks like:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
    //Main Startup Code
    
    function checkDOM(){
        if (document.getElementById("footer")
         || document.getElementById("credit")) 
            Startup();
        else
            setTimeout("checkDOM();",100);
    }
    
    if (document.addEventListener)
        document.addEventListener("DOMContentLoaded", Startup, null);
    else 
        setTimeout("checkDOM();",100);

However, Safari will not load pages that use this, since it has document.addEventListener, but does not create DOMContentLoaded events. So, I had to create a nasty little browser check rule:

1
    if (document.addEventListener && (navigator.vendor != "Apple Computer, Inc."))

I’d rather not have to do things like this. Why not?

Latest WebKit Build.

I’ve just downloaded the latest WebKit build of Safari, from the Surfin’ Safari weblog, and great news! Finally, Safari/WebKit supports finding the selection in a TextArea. I can now use Safari in the WordPress Dash, and use the quicktags. I don’t need to code my JavaScript for comments to ignore Safari… Yay! This post posted using Safari, and all tags put in by the Quicktags.

Review: Bombshells.

Caroline O’Connor is magnificent in Bombshells, playing at the Adelaide Festival Centre this week. It helps that she has been given a fairly solid play to work with, but her brilliance at bringing the various characters to life is stunning.

The play is a series of apparently seperate stories, but in reality they are all linked, in some way, and we see shades of Six Degrees of Kevin Bacon in finding the links between them.

The story starts with Meryl Davenport, a busy mother - a bad mother, perhaps, who is more worried about what other people will think of her than anything else. Her day is full, and she never gets time to do everything she needs to do.

Jaq assures me that this is what life is like.

This first act is frenetic, and seemed to me like it went on forever. It was my least favourite part of the play, but it was still alright. We see a fleeting glimpse of a neighbour, who grows cactii. And who’s husband has just left her…

…and she is the star of the second act. Tiggy Entwhistle: a disgruntled wife who has found solace in her succulents, and wishes her husband loved her half as much as the cactii do.

The contrast between these two characters is strong. The busy, yuppie mum who doesn’t have time to have a coffee, to the brooding, emotional cactus-lover. Who even looks like a cactus with her furry green outfit. We learn a lot more about this character than the shallow yuppie mother. We learn how her husband has been flirting it up with a floozy. And we taste the bitterness as she finds out about it, via the ‘door-opening’ episode as a Mary O’Donnell was putting up posters for the talent show…

…who we get to know very well in the next act. This character is a bouncy, vibrant (primary school?) girl, who is about to perform in said talent show. We are treated to a lovely performance of Shaugnessy the Cat as Mary prepares her entry. Again, we learn about this character, and her arch-nemesis, who has ‘huge boobs’, and is performing just before her. Of course, said rival does the same song, and our new hero has to find a new song to perform on the spot. Nothing beats Shaft, especially as the cat’s tail becomes a long, black penis. Fun stuff indeed.

We didn’t get out of the seats during the interval. Already we were discussing the play, although I don’t think I had cottoned onto the fact all of the characters were related, as yet. That was all to change in the fourth act, as the bride preparing for her wedding was none other than the sister of the arch-rival from the previous act, Theresa McTerry.

A bride who is more interested in wearing the dress - apparently it’s all about wearing the dress - than marrying the man she is. As it turns out, she prefers the best man, and has shagged him in the past. If only he weren’t so tall…

I missed the connection to the next character, but this one was my favourite. A widow, all she does is hang around with “the widows”. O’Connors characterisation is truly magnificent, and you really believe it is a sixty-something woman up on stage. The sadness, the depth of feeling, and the excitement as something interesting finally happens to Winsome Webster, other than just going out with “the widows”…

…who happened to go to a show at “Star City” and see a washed-up American singer Zoë Struthers making a comeback. O’Connor slides easily into this character, and we again get a glimpse at another life, as she staggers about on stage - a ‘reformed’ alcoholic who can’t get her legs to do what she wants. Still talented as a singer, and even moving down into the audience, where a conveniently empty chair is the prop for a spectacular fall.

The finale was excellent.

As I say, I only missed the one connection. Meryl → (neighbour of) Tiggy → (husband seen by) Mary → (hates sister of) Theresa → (?) Winsome →(went to see) Zoë.

If anyone knows what it is, I’d love to know. None of the reviews I’ve found on the internet seem to have any mention of the connections. They were to me a key part of the cleverness of the play.

So, was there anything I didn’t like about Bombshells? I loved the connection between the characters, but I disliked the need to pretend it was all happening in Adelaide. From the half-dozen mentions of Golden Grove by Tiggy, to the Star City reference by Winsome, each of them implied - or in some cases stated outright - that these events were happening in the local town. With Zoë, part of the mention of Adelaide was a joke (“Nice to be here in… [looks at hand] …Adelaide again.”) But there were a couple of flaws.

Winsome went to read for a blind man, who lived in the inner city suburbs near the University. To put it blunty, there’s nowhere in Adelaide like that. The closest thing would be North Adelaide. But you wouldn’t call North Adelaide the inner city suburbs, you’d just call it North Adelaide. The parklands mean there’s no other suburbs really near the university. Maybe I’m just being pedantic, but I would rather they just didn’t mention any place names, and don’t try hard to make the audience feel warm and fuzzy that all of this stuff is going on in their home town.