I was just wondering what the rationale was behind not having nodequeue be a proper node? I mean, I understand that a nodequeue is sort of a behind-the-scenes data structure, but sometimes it is useful to have interaction with other modules. For me, it was wanting to reference a nodequeue from the cck nodereference field type..

In any case, here's what I added to nodequeue.module to at least allow for that. It's not a patch cause it's just the implementation of node_info:

function nodequeue_node_info() {
  return array('nodequeue' => array('name' => t('nodequeue'), 'base' => 'nodequeue'));
}

Comments

merlinofchaos’s picture

At the time I wrote it, it really didn't feel like a queue was really necessarily a node. I suppose at the point you turn a node queue into a node, you suddenly get node containers, which is something I've kind of wanted for awhile. Hadn't really thought about it all that much, to be honest.

I think in some applications, you don't want the queues to be nodes. Though in some, you might. It could lead to an interesting next generation.

oliver soell’s picture

gotcha. well just adding the bit above of course didn't work.. as I got further in I realized that since a node object is never really created for a nodequeue it won't work with cck without much wrangling. hmm..

On the subject of future versions, I suppose if it were decided that a nodequeue would be a node, it could simply require the views module and have a default view as the node's display. Then the permissions could be more in line with the default perms system - i.e. adding to/deleting from the queue could be "edit", etc.

Anyway thanks this is a great module!
-o

oliver soell’s picture

Well to scratch my own itch I decided not to touch nodequeue and just create a nodequeuereference cck field type: http://drupal.org/node/63094

merlinofchaos’s picture

FYI, I've been thinking about a spec for updates to nodequeue and it will likely include nodequeue nodes.

merlinofchaos’s picture

Status: Active » Closed (won't fix)

And I changed my mind about this. Though a smartqueue could do this, if someone wants to write one.