Bug: ?q= added to feed enclosure URI
| Project: | FileField Podcaster |
| Version: | 6.x-1.x-dev |
| Component: | Code |
| Category: | bug report |
| Priority: | normal |
| Assigned: | Unassigned |
| Status: | needs work |
1. creating podcast using the proper proceedure.
2. the cck works fine, I can view the podcast node in drupal.
3. got SWFTools working with the node, using 1pixelout player.
4. create the view according to the proper method.
5. go to the feed's url (?q=rss.xml) everything appears fine.
6. check the link for the enclosure: link is broken! It has a ?q= in the middle, like it's a drupal internal link, but it should be the URI to the mp3.
-I'm not sure it is even an issue with this module. There are many dependancies here, so it's hard to tell.
-fwiw, the views template is using $channel to hold the title, body, and enclosure. The $channel array contains a variable for the mp3's URI (called $file_url or something). The variable has the same name as in the node (cck) page, but the contents are slightly different (noted above).
Any help or clues would be appreciated. I'm one bug away from having an awesome podcast going!
btw, contrary to other advice, I've used the latest versions of all the dependent modules. If necessary, I can go back and install the older versions that are suggested over at mustardseedmedia.com.

#1
Clean URLs must be enabled for the ffpc module to work.
-updated to ffpc 6.x-1.x-dev, did not solve problem.
-updated to cck 6.x-2.1, still nothing.
-enabled Clean URLs, this worked!
I'm closing this because its really not a bug.
Maybe the developers can include a note in the site requirements about it?
#2
It seems to me that clean URLs shouldn't be required. The only thing really required is that your webserver can serve up your audio files given an absolute path to them, which any web server should be able to do. Really, this is a bug with the url() function, which is inaccurately handing out internal Drupal paths (example.org/?q=sites/default/files/audio/123.mp3) for files which can be given absolute paths (example.org/sites/default/files/audio/123.mp3). Or maybe we should be able to send url() a flag when we're asking for a path to a file on the server, so that it can short-circuit clean urls.
In any case, I've created a patch to allow the enclosure to use the correct URL if clean URLs are off. If url() changes in Drupal 7, we can probably eliminate this patch.
#3
see file_create_url()
#4
Perfect, thanks! I knew there had to be a function like that somewhere. Here's an updated patch.