I have been trying for weeks to get blogapi.module to post correct HTML and special characters via w.blogger. The problem is that ' becomes '' and then gets converted to its entity equivalent when editing and reposting through the desktop client. HTML does not get posted but shows as raw entity values like   and >br<. From their it gets worse because ampersands an colons get converted with each repost also. I have look at both the blogapi.module and the xmlrpc.inc and cannot find anything wrong in the way they work and no errors are produced. I have tried setting and removing all filters for different users and setting permissions higher and lower for different users with no luck. I have tried different protocols mt and others with no change in the way blogapi.module handles HTML and special characters.
Comments
I did have to give the
What settings are you using? Are they okay to use for a multiple user site? This is something that I have been trying to figure out also. If it is the filter.module that is causing the problem then why is it doing it? How much HTML does the blogapi.module need to let through? or is it something that happens in conversion and posting? Is it a security risk to let Full HTML through?
---------------------------
www.hivemindz.com (running PHP5)
www.fireorb.org (documentation and hacks)
__________________________
Carl McDade
Information Technology Consult
Team Macromedia
well here's what I did.
I started with this http://drupal.org/node/6315
In my account properties I have
Blog Tool: Movable Type
Account Alias: My account name
Ping in NOT checked
API server isL www.mysite.org
Path: ./xmlrpc.php
Port: 80
Timeout: 30 seconds
On my site, I have blogapi checked and blogs.
I have Adminsiter own blog rights checked.
My account also has Adminsiter filters.
On the client, in the category box, it sees the categories that are tied to my blogs (I didn't have any, made some to test it).
Under the More tab advanced button, it actually picks up what input formats are available. Norally what I post is short, so I configured this to see if I'd want to have a client use it. Turn's out, she'd rather just log onto the web site.
-sp
---------
Test site...always start with a test site.
-Steven Peck
---------
Test site, always start with a test site.
Drupal Best Practices Guide
Hmm, The first user
Hmm,
The first user posts without a problem but the filters are in the way of anyone else posting via the desktop client. Even those given full administration rights don't post correctly because of the filters. I never liked the way that filtering is implemented and now I like it even less.
I think I am going to remove any use of the filter.modules functions and write seperate ones just for the blogapi.module and see what happens.
---------------------------
www.hivemindz.com (running PHP5)
www.fireorb.org (documentation and hacks)
__________________________
Carl McDade
Information Technology Consult
Team Macromedia
Perhaps I should mention
Perhaps I should mention that I do not use the first user account on my sites much. I regard it as a 'root' type of account and setup my account as an admin function account. It can manage users and set up custom blocks and a few other things, but it is not used for site changes.
The accounts I just tested from are the 2nd, 3rd, 5th and 10th user accounts and work just fine. In w.blogger, you can select which filter you are posting under in the More tab.
I will add that being unfamilier with blogging client tools intially, I spent several frustrating weeks experimenting. After it clicked, it seemed rather easy.
-sp
---------
Test site...always start with a test site.
-Steven Peck
---------
Test site, always start with a test site.
Drupal Best Practices Guide
The filter.module sucks. If
The filter.module sucks. If you don't allow anonymous user to post to the site the filter.module should just remove it from its configuration. It does not and it forces anonymous user to default with the other users.
But none of this really matter s because in the blogapi.module there is no user granularity and there is a place that even chooses the first user as a default.
It is also so tied into xmlrpc.inc that changes that would be necessary to make it work correctly would have to be made in xmlrpc.inc which kills other functions that use that file.
This goes back to my arguement that modules should not be dependant on other modules. And even though xmlrpc.inc is desguised as a system include, it is in fact a module.
---------------------------
www.hivemindz.com (running PHP5)
www.fireorb.org (documentation and hacks)
__________________________
Carl McDade
Information Technology Consult
Team Macromedia
I can post succesfully from
I can post succesfully from multiple accounts, websites, and posting tools (Mac & Windows) since Drupal 4.4.
Many posting tools do entity conversion on the client side -- this is an *option*, so make sure it is turned off in your particular tool.
The filter that is used is the default for your account, exactly as it should be. It sounds like you are having trouble with settings on the w.blogger side.
It does not take any form of
It does not take any form of HTML or specialcharacters and not convert them even HTML which is allowed on the account is converted and things like apostrophes are doubled and then converted. I see in xmlrpc.inc several places where htmlspecialchar() is used on strings coming in. Removing this does not help and i don't see anything in blogapi.modle that is similar.
The option to convert to ascii is turned off in w::blogger and in Zempt.
---------------------------
www.hivemindz.com (running PHP5)
www.fireorb.org (documentation and hacks)
__________________________
Carl McDade
Information Technology Consult
Team Macromedia
This is definately a Drupal
This is definately a Drupal problem and not a client problem. If a post is listed from Drupal where the HTML is correct then it shows correctly and posts correctly. It is when it is placed into the DB that the HTML becomes garbled.
Here's a code mistake that shows in w::blogger. The Title does not show because on line 648:
should be :
I have found the problem with the HTML is related to when the post is retrieved from the API via a desktop client the post does not get decoded. There is also something terribly wrong with the logic in the module. It does not test for the existence of item that the client provides and doubles them as a result. An example is the title being an excerpt and coming from the occurances of the title tags.
---------------------------
www.hivemindz.com (running PHP5)
www.fireorb.org (documentation and hacks)
__________________________
Carl McDade
Information Technology Consult
Team Macromedia
I think I have finally
I think I have finally gotten the bugs out. I have opted to go with w::blogger in this module. Each desktop client should have it's own module with it's own buitl in xmlrpc API. this keeps them from having to share the code and messing up Drupals xmlrpc with their individual peculiarities. Seperate modules also sllows for the development of new functionality by the client to be added without having to touch other clients. this is in keeping also with the fact that although each client may support some functionality of mt or another protocol none of them support them all and they are not cross compatible. there is also the fact that only one xmlrpc engine type is running at a time so there is no need to have a generic blogapi.module, if the engine is switched then the module should be switched also.
---------------------------
www.hivemindz.com (running PHP5)
www.fireorb.org (documentation and hacks)
__________________________
Carl McDade
Information Technology Consult
Team Macromedia
A tutorial on how to get
A tutorial on how to get this working. After hours of trial and error and not getting any help on this through docs or from users i thought it was needed. Both the Drupal docs and the docs of the clients used are lacking. Unedited so there are typos and mistakes in the text.
http://www.hivemindz.com/hm/?q=node/55
---------------------------
www.hivemindz.com (running PHP5)
www.fireorb.org (documentation and hacks)
__________________________
Carl McDade
Information Technology Consult
Team Macromedia
blogapi.api tips
Very helpful, Carl. Your tips would have saved me much experimenting.
I wonder though, if it might not be correct for the Drupal documentation to continue to suggest blogger.api for clients as the mt.api does not seem to be fully implemented. Or, perhaps, I haven't found the other tricks involved.
I would really like to know how your image (and other mime types) uploads are working from the client, and whether or not you see all the applicable content types (story, page, blogs) in your client and can post to each of them.
Refer to these two discussions:
http://drupal.org/node/17143
http://drupal.org/node/6195
Thanks for your help.
Supposedly all node types
Supposedly all node types will be open to the api in Drupals next full release. I have not tested any of the cvs HEAD yet to find out.
I am using FTP upload (located under blog properties) and absolute paths. I have set up a seperate FTP account and directory for bloggers to upload files.
What would be nice is if Drupal created an xml file that could be downloaded by the user imported to w.blogger with all the settings for the user. Make it part of the profile or something.
The mt api is implemented as far it can go for now. The problem is that theblogapi.module does not map everything to the proper parts (modules) of Drupal I am working on this but it gets very difficult as there is no real documentation from MT on this either. I am trying to get some insight from reading the Perl version but it is slow going.
---------------------------
www.hivemindz.com (running PHP5)
www.fireorb.org (documentation and hacks)
__________________________
Carl McDade
Information Technology Consult
Team Macromedia
How are your instructions
How are your instructions different from what I supplied to you? http://drupal.org/node/16997#comment-28160
I have now tested my instructions on 5 sites with an unmodified drupal code base. My instructions pretty much match what is here: http://drupal.org/node/6315 with the exception of noting that the blogapi module must be activated on the site in question.
Also, your instructions seem to be confusing in one area... is it the w.blogger client's instructions are wrong or Drupal's instructions are wrong? Perhaps we should submit a bug fix to w.blogger regarding there instructions on Drupal.
-sp
---------
No, I am not running php5.
Test site...always start with a test site.
-Steven Peck
---------
Test site, always start with a test site.
Drupal Best Practices Guide
I did not see that your
I did not see that your instructions were that extensive before. I lit out trying other options. Probably did not see what you had before you finished posting everything. Sorry.
But there was one thing missing that caused me no end of frustration. The api engine choice has to movabletype which was not clear.
I never found any documentation about Drupal at w.blogger but the version previous to version 4 did not use movabletype advanced options and some other items. This made my situation even more confusing and frustrating.
The drupal documentation (help text) became wrong at the time of the release of the new er version of w.blogger and was wrong for 8 of 10 of all the desktop clients available. It was just old. Probably happened because up until now using a desktop client was not a big deal. But know with people blogging at multiple sites and blogrolling it is bcoming more popular.
The biggest difference in my tutorial is that it is visual and I attempt to explain some points that would frustate the typical user. This is apparent by the response to the instructions in the handbook.
---------------------------
www.hivemindz.com (running PHP5)
www.fireorb.org (documentation and hacks)
__________________________
Carl McDade
Information Technology Consult
Team Macromedia
Trying to get $node->teaser
Trying to get $node->teaser to appear in w.blogger as a excerpt and trying to get the publish to front page marker to remain after setting it. As it is now the marker is removed when the desktop client is used to edit a post.
Using a desktop client also activates xmlrpcs.inc which threw a bunch of PHP5 erros as a result. Those are now fixed and added to the Drupal for PHP5 archive. http://www.hivemindz.com/hm/?q=node/39
---------------------------
www.hivemindz.com (running PHP5)
www.fireorb.org (documentation and hacks)
__________________________
Carl McDade
Information Technology Consult
Team Macromedia
I have gotten $node->teaser
I have gotten $node->teaser to fill with excerpt from w.blogger but now I cna't get w.blogger to fill it's own excerpt field the way it does title.
---------------------------
www.hivemindz.com (running PHP5)
www.fireorb.org (documentation and hacks)
__________________________
Carl McDade
Information Technology Consult
Team Macromedia
Now excerpt works both ways
Now excerpt works both ways in posting and getting to w.blogger . I had to make changes in the SQL and some other items to get this correct. Time to do some clean up and more testing, But it looks good so far. Next item is to find the frontpage publish boolean and make it persist through the desktop client transaction.
I am wondering what parts of a node would map to the mt extensions "extended text" and "keywords" and will implement them if I or anyone else comes up with a good idea for their content.
---------------------------
www.hivemindz.com (running PHP5)
www.fireorb.org (documentation and hacks)
__________________________
Carl McDade
Information Technology Consult
Team Macromedia
Since I don't plan to update
Since I don't plan to update to 4.6 on this site I went ahead and merged HEAD blogapi.module with my changes. As a result I found one or two bugs that had not been taken care of and so fixed them. The HTML and apostrophes now work as they should. I also removed the WATCHDOG_NOTICE constant so that this does not appear when using the module with 4.5.2 The 4.6 changes are nice and work seemlessly.
Next I will put in support for the keywords.module and map the extended_text of w.blogger to revisions in Drupal.
---------------------------
www.hivemindz.com (running PHP5)
www.fireorb.org (documentation and hacks)
__________________________
Carl McDade
Information Technology Consult
Team Macromedia
Carl -- unless you are
Carl -- unless you are actually going to contribute patches -- what is the point of all this?
You talk about "bugs" but never actually submit them back to the community. So, are you going to maintain your own distribution?
I'm frustrated that someone like you obviously spends a lot of time mucking with code, but can't be bothered to figure out CVS or contribute patches.
BTW -- extended_text more properly maps to the full body of a node, NOT revisions.
If anyone wants to give me a
If anyone wants to give me a cvs sandbox account (has to be PHP5) to upload to then I will upload any files. But after playing with diff patch, I have come to the conclusion that I don't like it. It is not intuitive and it takes away from my thought cycle when I have to think about using it. This is one of the downfalls of being a freelancer. Working within some parameters goes against the reasons that I freelance instead of working at a code factory somewhere.
The files are made available also through the archive for Drupal for PHP5 (since I test everything on this site) or as individual files on the fireorb.org repository.
Otherwise I can only apologize for not being the best of joiners. Sorry.
---------------------------
www.hivemindz.com (running PHP5)
www.fireorb.org (documentation and hacks)
__________________________
Carl McDade
Information Technology Consult
Team Macromedia
Yet you constantly complain
Yet you constantly complain on the forums and refuse to contribute back in the documented method of the project. This project has coding standards and a quality that obviously brought you to it, yet you refuse to use them because it is 'inconvienient'.
This project has an open patch and submission queue, yet you refuse to participate. Instead you open rant after rant on the forums in an attempt to drive traffic to your site and fork the community. Though this does seem consistent with some of your earlier stated aims in making the drupal dev community more like the decentralized nightmare of the nuke dev community.
I don't use a blogging client, but I took the time to configure it and retest it for you. I took the time to post how I did it to which you responded to me. I am not running php5, perhaps that is part of the issue (don't know). I can see all my blog entries and using the posts/edit by ID and I can even pull down and edit Page nodes as well.
CVS is a code repository and does not in itself care if you use php4 or 5.
-sp
---------
Test site...always start with a test site.
-Steven Peck
---------
Test site, always start with a test site.
Drupal Best Practices Guide
Nope, what brought me to
Nope, what brought me to Drupal was seeing it used on Spreadfirefox.com. What caught my attention and keeps me here is the code. Nothing else. Drupal is great but it is only code. I learn from it build other items from the ideas and techniques. I try to help others when I can because this also helps me learn and understand.
As I understood it Drupal team members have webserver sandboxes with cvs accounts networked into the backend of each. At least it looks that way when looking at JonBobs scratchpad site.
I pretty much post out of frustration when working on something. I thought that by posting those frustrations here I may be helping someone else in the same position. But if you prefer that I keep to myself and post only on my own site, I am okay with that.
---------------------------
www.hivemindz.com (running PHP5)
www.fireorb.org (documentation and hacks)
__________________________
Carl McDade
Information Technology Consult
Team Macromedia
"Drupal team members" are
"Drupal team members" are anyone that contributes code, patches, documentation, or helps out in the forums.
Everyone takes care of their own development areas (usually with their own servers at home).
You can apply for a CVS account, for which you can get a "sandbox" to put test code in for other people to try out (not to run it live, you take care of that yourself).
Drupal is not PHP5 native yet. You can help by submitting reports on core and contributed modules, and supplying patches.
If you are only going to complain and NOT contribute code...well, that doesn't really help, does it? I think you'll find it a lot less frustrating if you participate in the community.
My stuff (theme's) I test at
My stuff (theme's) I test at home. I don't code but I do run IIS servers. I test the stuff I am interested in and if necessary submit bug reports and test what I can. The 'server' is sitting in the closet down the hall. It is an old cobbled together pentium 500 with 256MB of ram and works rather well for my web and email needs.
If I recall, Drupaldev is hosted, paid for and supported by one of the developers in his spare time. People do not develop on it, but put up their code as a test board for others to see and comment on. This is a free service one dev decided to do fo rothers. As I am probably one of the few active members that use IIS, I have loaded modules on my test site for people at times kali.blkmtn.org Currently I am testing the last image module I have from walkah. It don't work. I gave feedback and when he gets his next version ready for release, I will test it on an IIS platform. At my own time and expense. In return I end up with a better CMS product to play with and implement the sites I use it for (personal, small business and non-profit).
It just drives me nuts that you want to complain and not actually participate in solving the problems you claim to point out. No one is preventing you from participating except your unwilingness to. You post that it is ok to run Drupal on php5, when the lead developers say it is not. Others have found problems that occur over time depending on your site configuration. The poor neophyte that you encourage to run php5 is then left holding the bag when some weird problem occurs through following your advice. Now, he has to decide to rebuild his system/site or wait. Any hacks they do to code will probably break on upgrade to 4.6 as the path will probably not be a clean one.
Drupal's code is great because of the documented standards and the open bug/fix process. Those standards were developed by the community. The community is those that take the time and effort to work together and debate the merits of a given approach over another. The code keeps you here, but you do not respect the people or the community that helped build the code. I would rather you were a participant as every viewpoint can make this a better CMS, but that really depends on you now doesn't it.
-sp
---------
Test site...always start with a test site.
-Steven Peck
---------
Test site, always start with a test site.
Drupal Best Practices Guide
I do contribute. You just
I do contribute. You just don't see it right away. I don't go around trying to make it obvious but the contributions are there. People should check before they make accusations like this.
---------------------------
www.hivemindz.com (running PHP5)
www.fireorb.org (documentation and hacks)
__________________________
Carl McDade
Information Technology Consult
Team Macromedia
I looked at tracker, but
I looked at tracker, but that's all right. You continue to participate in your own unique way. I'll try not to weigh in on your w.blogger issues and only point out otherwise to folks when you claim that drupal runs with no problems on php5.
-sp
---------
Test site...always start with a test site.
-Steven Peck
---------
Test site, always start with a test site.
Drupal Best Practices Guide
I don't claim that Drupal
I don't claim that Drupal runs without any problems on PHP5 I just run Drupal on PHP5 with a minimal of problems. There are problems with running Drupal in any environment PHP4 , IIS , SunOne server ... pick one. There are any number of bugs involving PHP4 which is claimed to be supported. Bugs happen they exist. Saying that something can't be done because of bugs is stupid. If that were the end all then Drupal would not exist because development would have to stop whenever a newer version of PHP4 was released and caused bugs.
One thing I am tired of is the fact that all who say that Drupal does not run on PHP5 seem to think that I don't know what I am doing. I have a economics degree, have been programming in VB, Perl , javascript ASP, PHP, C++ and other languages since 1996. I have several (useless) Microsoft and Novell certifications in database and networking technologies. My tested I.Q. is 127 so I am not a brainiac but I am no dummy either. I have been working with PHP5 since it's first release and have read and understood a great number of articles on how the Zend engine works. I have even dabbled in creating dll and so files for PHP.
I think I am fully qualified to say what works without having to give any caveats on the what is being used. Just because I don't follow some pre-conceived development scheme or join a group does not mean that I don't have the credentials necessary to develop trusted quality software. The type of accusations made and attitudes shown is usually what leads to people "forking" a project to prove that they can do better.
---------------------------
www.hivemindz.com (running PHP5)
www.fireorb.org (documentation and hacks)
__________________________
Carl McDade
Information Technology Consult
Team Macromedia
sigh. I never said you
sigh. I never said you weren't smart, I never said you couldn't perform in your profession. I never said YOU couldn't run php5. I am personally offended by you insinuation that I called you names or implied in any way a slur on your intelligence or capabilities. I posted a detailed list of what drives me nuts. No name calling, no personal attacks. You persist in misinterpreting and taking everything as a personal attack.
You tell people it runs on php5. You do NOT tell them that there will be problems. You do not tell the poor neophyte non-developer that he will be unsupported by the forums. I am not a coder and I have trouble figuring out the BASIC errors if a leave a trailing space when doing something with an inc file while testing a module. Think of the poor guy who is not an uber skilled coder like you. You are posting these UNQUALIFIED statements in the SUPPORT forum, NOT to developer in a development forum, but to site admin end users who may or may not be coders. Who are new to Drupal. Who would like to use stuff that is SUPPORTED by a majority of the community and developers. What will happen to their upgrade path with your hacks? Will you supply it? Will you mention that you will test and support these folks for running upgrade.php when the time comes?
You are NOT HELPING people by doing this, you are confusing them. You are fully qualified to load and experiment on your stuff. You are fully qualified (more then me) to find the source of these errors and perhaps even solve them. It would be fantastic if you would then SUPPORT the community that brought you this great product by respecting them and submitting these bugs and patches back. Your obvious contempt for the developers that brought you Drupal is diametrically in opposition to your claimed respect of the code itself.
Maybe the notice on the download page should be changed to Drupal 4.5 is not supported on php5. Would that make you happy? Would that keep you from taunting the new people in the support forums by claiming something the core developers say is a problem?
I will try to be done Sir. I tried to help, I took time out of my life to answer your questions on w.blogger and some other stuff but you obviously think I am engaging in personal attacks on you. Enjoy yourself.
-sp
---------
Test site...always start with a test site.
-Steven Peck
---------
Test site, always start with a test site.
Drupal Best Practices Guide
There are more of "me" out
There are more of "me" out there just waiting to be able to help others. As this forum is implied support as with all open source. I am free to give PHP5 tips and have it propogate just as support for PHP4 or MySQL or anything will do when one person is given knowledge and is nice enough to impart it on to another.
Knowledge should be given to others regardless of the persons skill level, " Give a man a fish....teach a man to fish" . Just because the "majority" is using something does not mean that the minority groups that use other technologies should be frowned upon, scourned for not being a part of the majority or forced to change because they may not want ot or be able to change what they have been given. What is to be said of those that want to use Oracle, Sybase or Perl with Drupal? That it should not be talked about, tried or even mentioned because there is no support for it?
Others can go ahead giving boxed answers to things and I wil go ahead giving answers that lay outside of the box. Giving people a choice is what this whole thing is about.
---------------------------
www.hivemindz.com (running PHP5)
www.fireorb.org (documentation and hacks)
__________________________
Carl McDade
Information Technology Consult
Team Macromedia
Tautology.
Tautology.
-sp
---------
Test site...always start with a test site.
-Steven Peck
---------
Test site, always start with a test site.
Drupal Best Practices Guide
On the extended_text thing.
On the extended_text thing. Do peole really compliment the body with this or do they just rewrite. I am a bit conflicted on this because I tend to do rewrites but I like to know what the previous version looked like. If complimenting the text is more popular though then I will go with that. I would need more "average user" input on this I guess.
---------------------------
www.hivemindz.com (running PHP5)
www.fireorb.org (documentation and hacks)
__________________________
Carl McDade
Information Technology Consult
Team Macromedia