Here's OpenID Comments for Movable Type 1.4. This version fixes:
- The schema reupgrading bug. This bug also put a bunch of spurious entries in the OpenIDIdentity database table; upgrading will remove them.
- Dynamic publishing support. Thanks loads to Brad Choate for his help, advice, and source code. I had to put my own SQL in the script at one point, so this may only work with MySQL; I'd appreciate a note if you find it doesn't work with dynamic publishing with sqlite or Postgres.
In the grand tradition of version number inflation, I skipped 1.3 final to go to 1.4. If you didn't get 1.3 beta, this version also has:
- MySQL and Postgres database support for static publishers.
- The screens show OpenID identities correctly (you need BigPAPI to see this).
- Fixed error with client posting (Blogger and Atom API).
- Better error handling when trying to sign into a blog that requires email addresses.
- Special LiveJournal support for
/~username/identities. - Some HTML fixes.
Hopefully I can knock out a few more fixes and have 1.5 sooner than I did 1.4. Meanwhile, have at it!
Comments
comment
Alright, I’m pretty sure I installed everything correctly. I hope this isn’t some esoteric problem with my fairly plain-vanilla Movable Type installation. The error is thus:
Can’t use string (“317”) as a HASH ref while “strict refs” in use at ~/movable/lib/MT/ObjectDriver/DBI.pm line 84. at signon.cgi line 170
…which is weird. If I comment out the
use strict;in DBI.pm (stupid, but I thought I’d give it a go) it passes incomplete information to LiveJournal, which understandably says, “Hey, you’re not who you say you are, so forget about it.”I understand if you don’t have time to provide support for individual users, but maybe something is glaringly obvious to somebody who knows what they’re doing — somebody not me. :-/
comment
I’m very not sure why that would happen! The error seems like it’s getting more than one entry ID, so the DBI code ends up with the entry ID as the set of special arguments for the database search.
What type of database do you use? It doesn’t seem like a database thing, though, more something about your web server configuration that might make it double-decode the
GETparameters and find the otherentry_idin the return URL parameter.comment
I use MySQL — nothing special about it as far as I know, And I haven’t really had any other problems with the MT installation so far. TypeKey seems to work fine. I’ll talk to my hosting people and see if they can help me out. Thanks for taking the time to respond, though! I’ll get it to work eventually. :-)
comment
Im using this on my site, and it logs in, but when it sends them back to my page, it still shows the box and doesnt acknowledge they are logged in. Is there any way (javascript or else) to get it to change on a nondynamic page?
comment
How do I get the log-in box like here?
comment
Chris: if you’re using the commenting code from the regular 3.2 templates, using this code should work:
<MTOpenIDSignOnThunk><script type="text/javascript">
if(commenter_name) hideDocumentElement("signon-openid");
</script>
comment
Joe: the template code I use for the tabs is:
<MTIfSignedIn><MTElse>
<div id="postCommentTabs">
<a class="postCommentTab selected" href="#" onclick="showDocumentElement('comments-form'); hideDocumentElement('postCommentOpenID'); hideDocumentElement('postCommentLiveJournal'); return false">Anonymous</a>
<a class="postCommentTab" href="<MTRemoteSignInLink static="1">"><img src="/weblog/nav-commenters.gif" width="22" height="15" alt="" /> TypeKey</a>
<a class="postCommentTab" href="#" onclick="hideDocumentElement('comments-form'); showDocumentElement('postCommentLiveJournal'); hideDocumentElement('postCommentOpenID'); return false"><img src="<MTStaticWebPath>/openid-comment/livejournal.gif" width="17" height="17" alt="" /> LiveJournal</a>
<a class="postCommentTab" href="#" onclick="hideDocumentElement('comments-form'); hideDocumentElement('postCommentLiveJournal'); showDocumentElement('postCommentOpenID'); return false"><img src="<MTStaticWebPath>/openid-comment/openid.gif" width="16" height="16" alt="" /> OpenID</a>
</div>
<div id="postCommentLiveJournal">
<MTLiveJournalSignOnThunk>
</div>
<div id="postCommentOpenID">
<MTOpenIDSignOnThunk>
</div>
</MTElse></MTIfSignedIn>
<form method="post" action="<$MTCGIPath$><$MTCommentScript$>" id="comments-form" name="comments_form" onsubmit="if (this.bakecookie.checked) rememberMe(this)">
The
MTIfSignedIntag is from the TypeKISS plugin.comment
I was wondering if anyone else was having this problem.
I’m using OpenID Comments 1.4 with movable type 3.2. I can log in and post on my site with my livejournal account as long as I’m viewing the page in Mozilla.
However if I use Internet Explorer; it doesn’t remember the info, and just shows up as anonymous. I’m getting the same error on this site too. I don’t have another computer to test it on; so I don’t know if it a problem with the plugin or if it’s just something I’m missing on my side.
comment
I’m writing this in IE 6, having signed in with LiveJournal, so it doesn’t seem like a plugin bug to me. What are your cookie settings? There may be an issue with leashed cookies if your site is on a different subdomain from your MT application, but that isn’t the case here on my site. Can you sign in here or on your site with TypeKey?
comment
It was a pretty stupid error on my part, it was just the cookies.
One more thing to bug you with though. How do you get the livejournal and open id image to appear to the left of the username as opposed to the right?
Thanks. :)
comment
Cool, good to know!
In your individual entry archive template, where it lists the comment info, there should be the template code:
<$MTCommentAuthorLink default_name="Anonymous"$> <$MTCommentAuthorIdentity$>Change that to:
<$MTCommentAuthorIdentity$> <$MTCommentAuthorLink default_name="Anonymous"$>comment
I have no idea how difficult something of this nature would be; but are there plans on adding the ability to display the userpics for livejournal commenters?
comment
Now that I’ve started to look at using profile data to pull better names, it might be possible to do something like that!