Hi,
I am making a site where User A can create "Projects" (custom CCK content types) and users B, C and D can apply to work on those projects i.e. flag themselves as working on those projects.
However it is up to the creator of the project, User A, as to whether he would let (approve or deny) each user that applies.
It seems like as though this is very similar to saying you would be able to add a Project i.e. a content node, as a "friend" and having the creator of that node approve or disapprove this "friend" request.
Am I right?
If so can you tell me how easy it would be to implement this and possibly give me some pointers of where to start (I am quite new to this wonderful world!)
And if not would I be better off starting from Flags? Or am I on completely the wrong track?
Many thanks,
B
Comments
Comment #1
sirkitree commentedThis is definitely outside the scope of this project - but it is interesting, I'll give you that! ;)
My first thought on reading this was, "Well that's pretty much what Flag module is for...", but then I read on and realized you wanted an approval process.
While this is basically the idea of what Flag friend does, it operates solely upon users.
So then I thought, well, what would happen if you just changed the flag's content type to 'node' instead of 'user'? But then quickly realized that Flag friend really depends on that UID, doing user_loads() and whatnot.
So all-in-all, while the concept is similar, the mechanism by which Flag friend operates on the default flag it provides does not allow this, and -I think- would take quite a bit of work.
So my initial statement still stands, it's definitely outside the scope of this project. I will append that statement by saying that if you can figure out how Flag friend could be made to work with nodes, and have the node's author be the one who is alerted and have to reciprocate that flagging, I would be open to including it in the next version branch.
Comment #2
sirkitree commentedSince this is outside of the scope, marking as won't fix.
However, as a followup, you might want to check out the 2.x branch of Flag which has $flag->access() now which would probably be used to do something like this.