Normal are checked for standard CRUD operations, lifecycle available_to on transitions/lifecycle create actions and never do the two meet (AFAIK).
On Feb 24, 11:55 am, Mikkel WF <[email protected]> wrote: > Iøm trying to figure out how to properly set the permissions of a rich > has_many relationship that contains a hobo lifecycle. > > It should function like this. I have an event which has a number of > attendees (event_attendees).. There attendees can have different > lifecycle states (:available, :volunteer, :manager). > > The users also have a state assigned to them. Throughout the whole > application its ment administrators (User.administrator? and users > with a :manager state should be allowed to create and change things.. > > So i need to set up permissions to allow for some users to create and > update the lifecycles. Only administrators and users already assigned > to an event as manager should be able to create and control the > lifecycles. > > Here are the important parts of the models: > > class Event < ActiveRecord::Base > has_many :event_attendees, :dependent => :destroy > has_many :attendees, :through => :event_attendees, :accessible => > true, :source => :user, :scope => :activated > end > > class EventAttendee < ActiveRecord::Base > belongs_to :event > belongs_to :user > > lifecycle do > > state :available > state :volunteer > state :manager > > create :add_available, :available_to => > "acting_user.administrator", :params => [:event, :user], :become > => :available > create :add_volunteer, :available_to => > "User.administrator", :params => [:event, :user], :become > => :volunteer > create :add_manager, :available_to => > "User.administrator", :params => [:event, :user], :become => :manager > > transition :available, { [:volunteer, :manager] > => :available }, :available_to => "acting_user.administrator?" > transition :volunteer, { [:available, :manager] > => :volunteer }, :available_to => "acting_user.administrator?" > transition :manage, { [:available, :volunteer] > => :manager }, :available_to => "acting_user.administrator?" > > end > end > > Can i "just" set the normal permissions for the EventAttendee so that > only administrators or users already assigned as managers can create > and update (does these permissions effect the lifecycle permissions at > all) (and how do i search out if the acting_user is actually has an > event_attendee with :manager state assigned to it?) > > Or do i have to set the permissions in the :available_to in the > transision itself..? > > Sorry for all the questions mixed together, but its kind of confusing > that the "normal" and lifecycle permissions are not declared in the > same way (and the use of acting_user in lifecycle permissions its not > quite clear also). > > Looking forward to a bunch of helpfull info.. :) -- You received this message because you are subscribed to the Google Groups "Hobo Users" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/hobousers?hl=en.
