If you try to issue a "mt.getCategoryList" or "metaweblog.getCategories" call via the blog module, you'll receive a cryptic error:

"Blog API module is not configured to support the blog content type, or you don't have sufficient permissions to post this type of content."

What's happening is the blogapi_metaweblog_get_category_list method is running the "must be authorized for content type" test, but not running the user login test first. It seems that it just fails to authenticate in this scenario.

If you add the user content test first, then it works. Patch attached.

Comments

Daniel Jalkut’s picture

FileSize
546 bytes

I messed up the original patch. Fixing.

gdevlugt’s picture

Hi,

I ran into the same thing and came up with the same fix as your patch provides before finding this issue. Since I was able to test and work with the fix a few days, and it does seem to work for most blogging clients i tried without breaking something else, I'll say the patch works.

Note. It doesn't seem to work though with the Textmate blogging bundle, still looking into that. However, that doesn't change the fact that the patch is needed because right now it doesn't work for any client. It *does* work with Ecto (latest version) and MarsEdit (also latest version).

cloakable’s picture

Version: 6.0 » 6.1

Just to say that this bug remains in 6.1. Tested with Drivel on Debian, and WordPy on Maemo.

Does the patch apply cleanly on 6.1? Then can someone get this thing tested and into drupal? :( Having to blog using the web interface on the N800's tiny screen is horribly frustrating - enough so that I'm actually thinking of switching to Wordpress and losing all the great features Drupal offers over it.

add1sun’s picture

Ran into this same problem and the patch fixed it for me in MarsEdit. I have not done any testing beyond confirming it works for my needs atm. Core patches should be made from the Drupal root so I rerolled the patch. It is against 6.1.

duckpuppy’s picture

This patch worked for me to fix Performancing and w.bloggar, but Windows Live Writer still has issues - I've re-added the blog and still each time I try to update the category list I get the permission denied problem.

kylehase’s picture

I posted a workaround for WLW here. It's not a patch but a slight WLW registry hack.

duckpuppy’s picture

That workaround doesn't fix anything for me - I still have an error getting categories even setting it up that way. I'll try uninstalling WLW and reinstalling.

Equ’s picture

keathmilligan’s picture

Version: 6.1 » 6.3

6.3 is still broken. This patch still works.

olberto’s picture

To where am I supposed to copy this code?
Thanks!

ocdude’s picture

This page has the instructions. Make a backup of the blogapi.module file first, though, in case something screws up.

Apparently running updates screw this patch up, so you have to re-patch if you update your drupal installation, as I just found out.

Gábor Hojtsy’s picture

Version: 6.3 » 7.x-dev
Status: Needs review » Reviewed & tested by the community

Verified this was broken both via code and a quick MarsEdit test drive setup. Looks great with the patch applied in MarsEdit and makes sense, since we need the $user logged in to check node_access('create ...') on it. Thanks! Committed to 6.x-dev and will get out with the next Drupal release (6.4).

Should also go in 7.x.

webchick’s picture

Status: Reviewed & tested by the community » Fixed

Fixed in HEAD. Thanks!

Anonymous’s picture

Status: Fixed » Closed (fixed)

Automatically closed -- issue fixed for two weeks with no activity.

Hackadelic’s picture

Version: 7.x-dev » 6.4

I just had to apply the above patch to drupal 6.4's blogapi. I thought it was fixed in 6.4?!?

Gábor Hojtsy’s picture

It will be out in 6.5. My comment above had an error with the version number. By the time I wrote 6.4 above, it was out already. This fix will be out with 6.5.