template_updates.rb 722 B

1234567891011121314151617181920
  1. # Copyright (C) 2012-2024 Zammad Foundation, https://zammad-foundation.org/
  2. module Gql::Subscriptions
  3. class Checklist::TemplateUpdates < BaseSubscription
  4. description 'Subscription for checklist template changes.'
  5. argument :only_active, Boolean, required: false, default_value: false, description: 'Fetch only active templates'
  6. field :checklist_templates, [Gql::Types::Checklist::TemplateType, { null: false }], description: 'Checklist templates'
  7. def authorized?(only_active:)
  8. context.current_user.permissions?('ticket.agent')
  9. end
  10. def update(only_active:)
  11. { checklist_templates: only_active ? ::ChecklistTemplate.where(active: true) : ::ChecklistTemplate.all }
  12. end
  13. end
  14. end