 
       next = i + 1
       if values[next] == 'contribute'
+        if !vm.event.summary # not ready
+          return vm.on.menuView(next, peek) # skip
         if vm.acl.isParticipant() == false
           return vm.on.menuView(next, peek) # skip
         if vm.event.summary.myParticipation.isFullyParticipating


  vm.acl = {
    isVisitor: ()->
      return true if !$rootScope.user
      return !vm.acl.isParticipant()
    
    isParticipant: ()->
      return false if !$rootScope.user
      participantIds = _.pluck vm.lookup['Participations'], 'participantId'
      return true if ~participantIds.indexOf($rootScope.user.id)
      return true if vm.acl.isOwner()
      return false

    isContributor: ()->
      return false if !$rootScope.user
      return true if _.pluck(vm.lookup['Contributions'],'contributorId')
      .indexOf($rootScope.user.id) > -1
      # return vm.event?.contributorIds?.indexOf($rootScope.user.id) > -1
      return false

    isOwner: ()->
      return false if !$rootScope.user
      return vm.event?.ownerId == $rootScope.user.id
  }


    .compact().value()

  vm.lookupByClass = (event, className, idOrArray)->
    if !(event?.id?) || !idOrArray
      return if _.isArray idOrArray then [] else false
    if _.isArray idOrArray
      check = _.chain( idOrArray )
