katello 3.5.0.rc1 → 3.5.0.rc2

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of katello might be problematic. Click here for more details.

Files changed (218) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/javascripts/katello/containers/container.js +6 -6
  3. data/app/assets/javascripts/katello/hosts/host_and_hostgroup_edit.js +2 -1
  4. data/app/assets/javascripts/katello/sync_management/sync_management.js +8 -6
  5. data/app/controllers/katello/api/v2/activation_keys_controller.rb +23 -16
  6. data/app/controllers/katello/api/v2/api_controller.rb +7 -2
  7. data/app/controllers/katello/api/v2/capsule_content_controller.rb +10 -2
  8. data/app/controllers/katello/api/v2/content_uploads_controller.rb +5 -5
  9. data/app/controllers/katello/api/v2/content_view_components_controller.rb +9 -9
  10. data/app/controllers/katello/api/v2/content_view_filter_rules_controller.rb +14 -16
  11. data/app/controllers/katello/api/v2/content_view_filters_controller.rb +8 -8
  12. data/app/controllers/katello/api/v2/content_view_puppet_modules_controller.rb +7 -7
  13. data/app/controllers/katello/api/v2/content_view_versions_controller.rb +12 -12
  14. data/app/controllers/katello/api/v2/content_views_controller.rb +5 -5
  15. data/app/controllers/katello/api/v2/errata_controller.rb +2 -2
  16. data/app/controllers/katello/api/v2/gpg_keys_controller.rb +2 -2
  17. data/app/controllers/katello/api/v2/host_collections_controller.rb +7 -7
  18. data/app/controllers/katello/api/v2/host_errata_controller.rb +4 -4
  19. data/app/controllers/katello/api/v2/host_packages_controller.rb +5 -5
  20. data/app/controllers/katello/api/v2/host_subscriptions_controller.rb +9 -4
  21. data/app/controllers/katello/api/v2/host_tracer_controller.rb +1 -1
  22. data/app/controllers/katello/api/v2/hosts_bulk_actions_controller.rb +9 -1
  23. data/app/controllers/katello/api/v2/organizations_controller.rb +17 -3
  24. data/app/controllers/katello/api/v2/packages_controller.rb +2 -2
  25. data/app/controllers/katello/api/v2/products_controller.rb +3 -3
  26. data/app/controllers/katello/api/v2/repositories_controller.rb +11 -11
  27. data/app/controllers/katello/api/v2/repository_sets_controller.rb +1 -10
  28. data/app/controllers/katello/concerns/api/v2/hosts_controller_extensions.rb +1 -1
  29. data/app/controllers/katello/concerns/api/v2/repository_content_controller.rb +3 -3
  30. data/app/helpers/katello/providers_helper.rb +4 -1
  31. data/app/lib/actions/candlepin/abstract.rb +1 -0
  32. data/app/lib/actions/katello/host/hypervisors_update.rb +1 -0
  33. data/app/lib/actions/katello/host/update_release_version.rb +29 -0
  34. data/app/lib/actions/katello/product/create.rb +3 -6
  35. data/app/lib/actions/katello/product/reindex_subscriptions.rb +1 -1
  36. data/app/lib/actions/katello/repository/scheduled_sync.rb +15 -0
  37. data/app/lib/actions/katello/repository/upload_files.rb +4 -0
  38. data/app/lib/actions/middleware/keep_session_id.rb +29 -0
  39. data/app/lib/katello/resources/candlepin.rb +22 -5
  40. data/app/lib/katello/validators/hostgroup_kickstart_repository_validator.rb +30 -0
  41. data/app/models/katello/activation_key.rb +3 -33
  42. data/app/models/katello/candlepin/product_content.rb +1 -14
  43. data/app/models/katello/concerns/content_facet_host_extensions.rb +5 -1
  44. data/app/models/katello/concerns/content_view_filter_rule_common.rb +13 -0
  45. data/app/models/katello/concerns/hostgroup_extensions.rb +1 -0
  46. data/app/models/katello/concerns/subscription_facet_host_extensions.rb +2 -1
  47. data/app/models/katello/content_view_docker_filter_rule.rb +2 -1
  48. data/app/models/katello/content_view_erratum_filter_rule.rb +2 -1
  49. data/app/models/katello/content_view_package_filter_rule.rb +2 -1
  50. data/app/models/katello/content_view_package_group_filter_rule.rb +2 -1
  51. data/app/models/katello/erratum.rb +4 -5
  52. data/app/models/katello/glue/candlepin/owner.rb +32 -0
  53. data/app/models/katello/glue/pulp/repos.rb +1 -1
  54. data/app/models/katello/host/subscription_facet.rb +16 -0
  55. data/app/models/katello/repository.rb +2 -2
  56. data/app/models/katello/subscription.rb +4 -1
  57. data/app/models/katello/subscription_status.rb +8 -4
  58. data/app/presenters/katello/product_content_presenter.rb +7 -2
  59. data/app/services/katello/candlepin/consumer.rb +0 -28
  60. data/app/services/katello/product_content_finder.rb +37 -0
  61. data/app/views/foreman/smart_proxies/_content_sync.html.erb +0 -2
  62. data/app/views/katello/api/v2/activation_keys/base.json.rabl +34 -0
  63. data/app/views/katello/api/v2/activation_keys/index.json.rabl +4 -1
  64. data/app/views/katello/api/v2/activation_keys/product_content.json.rabl +3 -3
  65. data/app/views/katello/api/v2/activation_keys/show.json.rabl +2 -38
  66. data/app/views/katello/api/v2/common/releases.json.rabl +7 -0
  67. data/config/routes/api/v2.rb +1 -0
  68. data/config/routes/overrides.rb +1 -0
  69. data/db/migrate/20171010170443_add_index_to_katello_content_facet_errata.rb +5 -0
  70. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/activation-key.factory.js +1 -1
  71. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/details/activation-key-add-host-collections.controller.js +8 -8
  72. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/details/activation-key-add-subscriptions.controller.js +5 -4
  73. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/details/activation-key-copy.controller.js +3 -6
  74. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/details/activation-key-details.controller.js +7 -10
  75. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/details/activation-key-host-collections.controller.js +7 -6
  76. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/details/activation-key-repository-sets.controller.js +5 -5
  77. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/details/activation-key-subscriptions.controller.js +5 -4
  78. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/details/views/activation-key-host-collections-table.html +1 -3
  79. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/capsule-content/capsule-content.controller.js +7 -5
  80. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/capsule-content/capsule-content.factory.js +1 -1
  81. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/capsules/capsule.factory.js +1 -1
  82. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/common/api-error-handler.service.js +6 -16
  83. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/content-hosts-bulk-environment-modal.controller.js +4 -4
  84. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/content-hosts-bulk-errata-modal.controller.js +5 -5
  85. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/content-hosts-bulk-host-collections-modal.controller.js +5 -5
  86. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/content-hosts-bulk-packages-modal.controller.js +5 -5
  87. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/content-hosts-bulk-release-version-modal.controller.js +62 -0
  88. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/content-hosts-bulk-repository-sets-modal.controller.js +4 -4
  89. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/content-hosts-bulk-subscriptions-modal.controller.js +4 -4
  90. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/views/content-hosts-bulk-release-version-modal.html +56 -0
  91. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/views/content-hosts-bulk-subscriptions-modal.html +1 -1
  92. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/content-host-modal-helper.service.js +11 -0
  93. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/content-hosts.controller.js +10 -9
  94. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/content/content-host-packages.controller.js +6 -4
  95. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/content/content-host-traces.controller.js +0 -2
  96. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/content-host-add-host-collections.controller.js +3 -6
  97. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/content-host-add-subscriptions.controller.js +5 -4
  98. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/content-host-base-subscriptions.controller.js +5 -4
  99. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/content-host-details-info.controller.js +0 -3
  100. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/content-host-details.controller.js +8 -9
  101. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/content-host-host-collections.controller.js +10 -8
  102. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/content-host-repository-sets.controller.js +5 -5
  103. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/content-host-subscriptions.controller.js +5 -4
  104. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/views/content-host-repository-sets.html +0 -2
  105. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/views/content-hosts.html +6 -0
  106. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/content-view.factory.js +1 -1
  107. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/deletion/content-view-deletion.controller.js +3 -3
  108. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/deletion/content-view-version-deletion-confirm.controller.js +5 -5
  109. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/components/content-view-component.factory.js +3 -3
  110. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/content-view-details.controller.js +6 -6
  111. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/content-view-promotion.controller.js +5 -5
  112. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/content-view-publish.controller.js +3 -3
  113. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/content-view-versions.controller.js +6 -6
  114. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/available-errata-filter.controller.js +5 -5
  115. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/available-package-group-filter.controller.js +5 -5
  116. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/date-type-errata-filter.controller.js +11 -5
  117. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/docker-tag-filter.controller.js +6 -6
  118. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/edit-filter.controller.js +4 -4
  119. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/errata-filter-list.controller.js +5 -5
  120. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/filter-repositories.controller.js +6 -6
  121. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/filter.factory.js +1 -1
  122. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/filters.controller.js +4 -4
  123. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/new-filter.controller.js +3 -3
  124. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/package-filter.controller.js +6 -6
  125. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/package-group-list-filter.controller.js +5 -5
  126. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/rule.factory.js +1 -1
  127. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/histories/content-view-history.factory.js +1 -1
  128. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/puppet-modules/content-view-puppet-module-versions.controller.js +5 -5
  129. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/puppet-modules/content-view-puppet-module.factory.js +1 -1
  130. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/puppet-modules/content-view-puppet-modules.controller.js +5 -5
  131. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/versions/content-view-version.factory.js +1 -1
  132. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/docker-manifests/docker-manifest.factory.js +1 -1
  133. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/docker-tags/details/docker-tag-details.controller.js +0 -3
  134. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/docker-tags/details/views/docker-tag-details.html +0 -2
  135. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/docker-tags/docker-tags.factory.js +1 -1
  136. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/environments/details/environment.controller.js +5 -7
  137. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/environments/environment.factory.js +1 -1
  138. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/environments/new-environment.controller.js +3 -6
  139. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/environments/views/new-environment.html +0 -2
  140. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/apply-errata.controller.js +9 -4
  141. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/details/erratum-content-hosts.controller.js +0 -3
  142. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/erratum.factory.js +1 -1
  143. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/views/apply-errata-confirm.html +0 -2
  144. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/files/details/file.controller.js +0 -3
  145. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/files/file.factory.js +1 -1
  146. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/gpg-keys/details/gpg-key-details-info.controller.js +6 -5
  147. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/gpg-keys/details/gpg-key-details.controller.js +4 -6
  148. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/gpg-keys/gpg-key.factory.js +1 -1
  149. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/gpg-keys/new/new-gpg-key.controller.js +6 -9
  150. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/host-collections/details/host-collection-add-hosts.controller.js +3 -3
  151. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/host-collections/details/host-collection-copy.controller.js +3 -6
  152. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/host-collections/details/host-collection-details.controller.js +13 -22
  153. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/host-collections/details/host-collection-hosts.controller.js +6 -5
  154. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/host-collections/details/views/host-collection-info.html +3 -3
  155. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/host-collections/host-collection.factory.js +1 -1
  156. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/hosts/host-bulk-action.factory.js +2 -1
  157. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/hosts/host-erratum.factory.js +1 -1
  158. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/hosts/host-package.factory.js +1 -1
  159. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/hosts/host-subscription.factory.js +1 -1
  160. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/hosts/host-traces.factory.js +1 -1
  161. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/hosts/host.factory.js +1 -1
  162. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/organizations/organization.factory.js +7 -5
  163. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/ostree-branches/ostree-branch.factory.js +1 -1
  164. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/package-groups/package-group.factory.js +1 -1
  165. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/packages/package.factory.js +1 -1
  166. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/bulk/product-bulk-action.factory.js +1 -1
  167. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/bulk/products-bulk-advanced-sync-modal.controller.js +5 -5
  168. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/bulk/products-bulk-sync-plan-modal.controller.js +6 -6
  169. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/product-details-info.controller.js +5 -8
  170. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/product-details.controller.js +6 -6
  171. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/product-repositories.controller.js +15 -14
  172. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/details/repository-details-advanced-sync.controller.js +6 -3
  173. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/details/repository-details-info.controller.js +9 -9
  174. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/details/repository-details-manage-content.controller.js +5 -4
  175. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/details/repository-details.controller.js +7 -7
  176. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/details/views/repository-advanced-sync.html +0 -2
  177. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/details/views/repository-info.html +0 -2
  178. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/details/views/repository-manage-docker-manifests.html +0 -2
  179. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/details/views/repository-manage-files.html +0 -2
  180. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/details/views/repository-manage-ostree-branches.html +0 -2
  181. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/details/views/repository-manage-packages.html +0 -2
  182. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/details/views/repository-manage-puppet-modules.html +0 -2
  183. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/new/new-repository.controller.js +5 -8
  184. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/new/views/new-repository.html +0 -2
  185. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/repository.factory.js +2 -2
  186. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/views/product-repositories.html +0 -20
  187. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/views/product-info.html +0 -1
  188. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/discovery/discovery-create.controller.js +4 -6
  189. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/discovery/discovery.controller.js +5 -8
  190. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/discovery/views/discovery-base.html +0 -2
  191. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/new/product-form.controller.js +3 -3
  192. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/product.factory.js +1 -1
  193. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/products.controller.js +7 -7
  194. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/puppet-modules/details/puppet-module.controller.js +0 -3
  195. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/puppet-modules/puppet-module.factory.js +1 -1
  196. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/repository-sets/repository-set.factory.js +1 -1
  197. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/settings/setting.factory.js +1 -1
  198. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/subscriptions/details/subscription-details.controller.js +0 -3
  199. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/subscriptions/details/views/subscription-details.html +0 -2
  200. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/subscriptions/manifest/manifest-import.controller.js +9 -9
  201. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/subscriptions/manifest/views/manifest-import.html +0 -2
  202. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/subscriptions/subscriptions.factory.js +4 -4
  203. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/sync-plans/details/sync-plan-add-products.controller.js +6 -8
  204. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/sync-plans/details/sync-plan-details-info.controller.js +5 -6
  205. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/sync-plans/details/sync-plan-details.controller.js +5 -5
  206. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/sync-plans/details/sync-plan-products.controller.js +8 -8
  207. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/sync-plans/details/views/sync-plan-info.html +0 -2
  208. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/sync-plans/details/views/sync-plan-products.html +0 -2
  209. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/sync-plans/new/new-sync-plan.controller.js +4 -4
  210. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/sync-plans/sync-plan.factory.js +1 -1
  211. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/tasks/task.factory.js +2 -2
  212. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/tasks/tasks.module.js +3 -3
  213. data/lib/katello/permission_creator.rb +3 -2
  214. data/lib/katello/permissions/host_permissions.rb +1 -0
  215. data/lib/katello/permissions/organization_permissions.rb +1 -0
  216. data/lib/katello/tasks/clean_installed_packages.rake +20 -3
  217. data/lib/katello/version.rb +1 -1
  218. metadata +17 -6
@@ -1,5 +1,4 @@
1
1
  <span page-title ng-model="product">{{ 'Product information for:' | translate }} {{ product.name }}</span>
2
- <div bst-alerts success-messages="successMessages" error-messages="errorMessages"></div>
3
2
 
4
3
  <div data-extend-template="layouts/two-column-details.html">
5
4
  <div data-block="left-column">
@@ -4,6 +4,7 @@
4
4
  *
5
5
  * @requires $scope
6
6
  * @requires $q
7
+ * @requires Notification
7
8
  * @requires CurrentOrganization
8
9
  * @requires Product
9
10
  * @requires Repository
@@ -17,11 +18,8 @@
17
18
  * repository discovery.
18
19
  */
19
20
  angular.module('Bastion.products').controller('DiscoveryCreateController',
20
- ['$scope', '$q', 'CurrentOrganization', 'Product', 'Repository', 'GPGKey', 'FormUtils', 'DiscoveryRepositories', 'translate', 'ApiErrorHandler',
21
- function ($scope, $q, CurrentOrganization, Product, Repository, GPGKey, FormUtils, DiscoveryRepositories, translate, ApiErrorHandler) {
22
-
23
- $scope.errorMessages = [];
24
- $scope.successMessages = [];
21
+ ['$scope', '$q', 'Notification', 'CurrentOrganization', 'Product', 'Repository', 'GPGKey', 'FormUtils', 'DiscoveryRepositories', 'translate', 'ApiErrorHandler',
22
+ function ($scope, $q, Notification, CurrentOrganization, Product, Repository, GPGKey, FormUtils, DiscoveryRepositories, translate, ApiErrorHandler) {
25
23
 
26
24
  $scope.table = {
27
25
  rows: DiscoveryRepositories.getRows(),
@@ -100,7 +98,7 @@ angular.module('Bastion.products').controller('DiscoveryCreateController',
100
98
  function productCreateError(response) {
101
99
  $scope.createRepoChoices.creating = false;
102
100
  angular.forEach(response.data.errors, function (errors, field) {
103
- $scope.errorMessages.push(translate('An error occurred while creating the Product: %s').replace('%s', field + ' ' + errors));
101
+ Notification.setErrorMessage(translate('An error occurred while creating the Product: %s').replace('%s', field + ' ' + errors));
104
102
  if (!angular.isUndefined($scope.productForm[field])) {
105
103
  $scope.productForm[field].$error.messages = errors;
106
104
  }
@@ -6,6 +6,7 @@
6
6
  * @requires $q
7
7
  * @requires $timeout
8
8
  * @requires $http
9
+ * @requires Notification
9
10
  * @requires Task
10
11
  * @requires Organization
11
12
  * @requires CurrentOrganization
@@ -16,13 +17,10 @@
16
17
  * Provides the functionality for the repo discovery action pane.
17
18
  */
18
19
  angular.module('Bastion.products').controller('DiscoveryController',
19
- ['$scope', '$q', '$timeout', '$http', 'Task', 'Organization', 'CurrentOrganization', 'DiscoveryRepositories', 'translate',
20
- function ($scope, $q, $timeout, $http, Task, Organization, CurrentOrganization, DiscoveryRepositories, translate) {
20
+ ['$scope', '$q', '$timeout', '$http', 'Notification', 'Task', 'Organization', 'CurrentOrganization', 'DiscoveryRepositories', 'translate',
21
+ function ($scope, $q, $timeout, $http, Notification, Task, Organization, CurrentOrganization, DiscoveryRepositories, translate) {
21
22
  var transformRows, setDiscoveryDetails;
22
23
 
23
- $scope.successMessages = [];
24
- $scope.errorMessages = [];
25
-
26
24
  $scope.discovery = {
27
25
  url: '',
28
26
  contentType: 'yum'
@@ -119,7 +117,7 @@ angular.module('Bastion.products').controller('DiscoveryController',
119
117
  $scope.discovery.working = false;
120
118
  Task.unregisterSearch($scope.taskSearchId);
121
119
  if (task.result === "error") {
122
- $scope.errorMessages = [translate("Discovery failed. Error: %s").replace('%s', task.humanized.errors[0])];
120
+ Notification.setErrorMessage(translate("Discovery failed. Error: %s").replace('%s', task.humanized.errors[0]));
123
121
  }
124
122
  }
125
123
  }
@@ -137,8 +135,7 @@ angular.module('Bastion.products').controller('DiscoveryController',
137
135
  'upstream_username': $scope.discovery.upstreamUsername,
138
136
  'upstream_password': $scope.discovery.upstreamPassword
139
137
  };
140
- $scope.successMessages = [];
141
- $scope.errorMessages = [];
138
+
142
139
  Organization.repoDiscover(params, function (task) {
143
140
  $scope.taskSearchId = Task.registerSearch({ 'type': 'task', 'task_id': task.id }, $scope.updateTask);
144
141
  });
@@ -1,6 +1,4 @@
1
1
  <div data-extend-template="layouts/details-page-with-breadcrumbs.html">
2
- <div ng-show="page.error" bst-alerts success-messages="successMessages" error-messages="errorMessages"></div>
3
-
4
2
  <header data-block="header">
5
3
  <h2 translate>Repository Discovery</h2>
6
4
  </header>
@@ -17,8 +17,8 @@
17
17
  * within the table.
18
18
  */
19
19
  angular.module('Bastion.products').controller('ProductFormController',
20
- ['$scope', '$q', '$uibModal', 'Product', 'GPGKey', 'SyncPlan', 'FormUtils', 'GlobalNotification',
21
- function ($scope, $q, $uibModal, Product, GPGKey, SyncPlan, FormUtils, GlobalNotification) {
20
+ ['$scope', '$q', '$uibModal', 'Product', 'GPGKey', 'SyncPlan', 'FormUtils', 'Notification',
21
+ function ($scope, $q, $uibModal, Product, GPGKey, SyncPlan, FormUtils, Notification) {
22
22
 
23
23
  function fetchGpgKeys() {
24
24
  return GPGKey.queryUnpaged(function (gpgKeys) {
@@ -43,7 +43,7 @@ angular.module('Bastion.products').controller('ProductFormController',
43
43
  $scope.productForm[field].$setValidity('server', false);
44
44
  $scope.productForm[field].$error.messages = errors;
45
45
  } else {
46
- GlobalNotification.setErrorMessage("An error occurred while saving the Product: " + field + " " + errors);
46
+ Notification.setErrorMessage("An error occurred while saving the Product: " + field + " " + errors);
47
47
  }
48
48
  });
49
49
  }
@@ -10,7 +10,7 @@
10
10
  angular.module('Bastion.products').factory('Product',
11
11
  ['BastionResource', function (BastionResource) {
12
12
 
13
- return BastionResource('/katello/api/v2/products/:id/:action', {id: '@id'}, {
13
+ return BastionResource('katello/api/v2/products/:id/:action', {id: '@id'}, {
14
14
  update: { method: 'PUT'},
15
15
  sync: { method: 'POST', params: { action: 'sync' }},
16
16
  updateSyncPlan: { method: 'POST', params: { action: 'sync_plan' }},
@@ -19,8 +19,8 @@
19
19
  * within the table.
20
20
  */
21
21
  angular.module('Bastion.products').controller('ProductsController',
22
- ['$scope', '$state', '$sce', '$location', '$uibModal', 'translate', 'Nutupane', 'Product', 'ProductBulkAction', 'CurrentOrganization', 'GlobalNotification',
23
- function ($scope, $state, $sce, $location, $uibModal, translate, Nutupane, Product, ProductBulkAction, CurrentOrganization, GlobalNotification) {
22
+ ['$scope', '$state', '$sce', '$location', '$uibModal', 'translate', 'Nutupane', 'Product', 'ProductBulkAction', 'CurrentOrganization', 'Notification',
23
+ function ($scope, $state, $sce, $location, $uibModal, translate, Nutupane, Product, ProductBulkAction, CurrentOrganization, Notification) {
24
24
  var nutupane, taskUrl, taskLink, getBulkParams, bulkError, params;
25
25
 
26
26
  getBulkParams = function () {
@@ -32,7 +32,7 @@ angular.module('Bastion.products').controller('ProductsController',
32
32
 
33
33
  bulkError = function (response) {
34
34
  angular.forEach(response.data.errors, function(message) {
35
- GlobalNotification.setErrorMessage(translate("An error occurred: ") + message);
35
+ Notification.setErrorMessage(translate("An error occurred: ") + message);
36
36
  });
37
37
 
38
38
  nutupane.refresh();
@@ -58,7 +58,7 @@ angular.module('Bastion.products').controller('ProductsController',
58
58
  taskUrl = $scope.taskUrl(taskId);
59
59
  taskLink = $sce.trustAsHtml("<a href=" + taskUrl + ">here</a>");
60
60
  message = translate("Product delete operation has been initiated in the background. Click %s to monitor the progress.");
61
- GlobalNotification.setRenderedSuccessMessage(message.replace("%", taskLink));
61
+ Notification.setRenderedSuccessMessage(message.replace("%", taskLink));
62
62
  });
63
63
 
64
64
  $scope.unsetProductDeletionTaskId = function () {
@@ -89,7 +89,7 @@ angular.module('Bastion.products').controller('ProductsController',
89
89
  message = translate("Product sync has been initiated in the background. " +
90
90
  "Click %s to monitor the progress.");
91
91
 
92
- GlobalNotification.setRenderedSuccessMessage(message.replace('%s', taskLink));
92
+ Notification.setRenderedSuccessMessage(message.replace('%s', taskLink));
93
93
  };
94
94
 
95
95
  ProductBulkAction.syncProducts(getBulkParams(), success, bulkError);
@@ -130,11 +130,11 @@ angular.module('Bastion.products').controller('ProductsController',
130
130
 
131
131
  success = function (response) {
132
132
  angular.forEach(response.displayMessages.success, function(message) {
133
- GlobalNotification.setSuccessMessage(message);
133
+ Notification.setSuccessMessage(message);
134
134
  });
135
135
 
136
136
  angular.forEach(response.displayMessages.error, function(message) {
137
- GlobalNotification.setErrorMessage(message);
137
+ Notification.setErrorMessage(message);
138
138
  });
139
139
 
140
140
  nutupane.refresh();
@@ -8,9 +8,6 @@
8
8
  * Provides the functionality for the puppet modules details action pane.
9
9
  */
10
10
  function PuppetModuleController($scope, PuppetModule, ApiErrorHandler) {
11
- $scope.successMessages = [];
12
- $scope.errorMessages = [];
13
-
14
11
  $scope.panel = {
15
12
  error: false,
16
13
  loading: true
@@ -10,7 +10,7 @@
10
10
  */
11
11
  function PuppetModule(BastionResource) {
12
12
 
13
- return BastionResource('/katello/api/v2/puppet_modules/:id',
13
+ return BastionResource('katello/api/v2/puppet_modules/:id',
14
14
  {'id': '@id'},
15
15
  {
16
16
  autocomplete: {method: 'GET', isArray: true, params: {id: 'auto_complete_search'}}
@@ -9,7 +9,7 @@
9
9
  */
10
10
  angular.module('Bastion.repository-sets').factory('RepositorySet',
11
11
  ['BastionResource', function (BastionResource) {
12
- return BastionResource('/katello/api/v2/repository_sets/:id/:action', {id: '@id'}, {
12
+ return BastionResource('katello/api/v2/repository_sets/:id/:action', {id: '@id'}, {
13
13
  });
14
14
 
15
15
  }]
@@ -9,7 +9,7 @@
9
9
  */
10
10
  angular.module('Bastion.settings').factory('Setting',
11
11
  ['BastionResource', function (BastionResource) {
12
- var resource = BastionResource('/api/v2/settings/');
12
+ var resource = BastionResource('api/v2/settings/');
13
13
  return resource;
14
14
  }]
15
15
  );
@@ -13,9 +13,6 @@
13
13
  angular.module('Bastion.subscriptions').controller('SubscriptionDetailsController',
14
14
  ['$scope', 'translate', 'Subscription', 'ApiErrorHandler',
15
15
  function ($scope, translate, Subscription, ApiErrorHandler) {
16
- $scope.successMessages = [];
17
- $scope.errorMessages = [];
18
-
19
16
  $scope.panel = {
20
17
  error: false,
21
18
  loading: true
@@ -1,6 +1,4 @@
1
1
  <div data-extend-template="layouts/details-page-with-breadcrumbs.html">
2
- <div bst-alerts success-messages="successMessages" error-messages="errorMessages"></div>
3
-
4
2
  <header data-block="header">
5
3
  <h2>{{ subscription.name }}</h2>
6
4
  </header>
@@ -14,8 +14,8 @@
14
14
  * Controls the import of a manifest.
15
15
  */
16
16
  angular.module('Bastion.subscriptions').controller('ManifestImportController',
17
- ['$scope', '$q', 'translate', 'CurrentOrganization', 'Organization', 'Task', 'Subscription', 'GlobalNotification',
18
- function ($scope, $q, translate, CurrentOrganization, Organization, Task, Subscription, GlobalNotification) {
17
+ ['$scope', '$q', 'translate', 'CurrentOrganization', 'Organization', 'Task', 'Subscription', 'Notification',
18
+ function ($scope, $q, translate, CurrentOrganization, Organization, Task, Subscription, Notification) {
19
19
 
20
20
  function buildManifestLink(upstream) {
21
21
  var url = upstream.webUrl,
@@ -50,7 +50,7 @@ angular.module('Bastion.subscriptions').controller('ManifestImportController',
50
50
 
51
51
  $scope.uploadErrorMessages = [];
52
52
  $scope.progress = {uploading: false};
53
- $scope.uploadURL = '/katello/api/v2/organizations/' + CurrentOrganization + '/subscriptions/upload';
53
+ $scope.uploadURL = 'katello/api/v2/organizations/' + CurrentOrganization + '/subscriptions/upload';
54
54
  $scope.organization = Organization.get({id: CurrentOrganization});
55
55
 
56
56
  $q.all([$scope.organization.$promise]).then(function () {
@@ -80,7 +80,7 @@ angular.module('Bastion.subscriptions').controller('ManifestImportController',
80
80
  if (task.humanized.errors.length > 0) {
81
81
  errorMessageWithDetails += ' ' + task.humanized.errors.join(' ');
82
82
  }
83
- GlobalNotification.setErrorMessage(errorMessageWithDetails);
83
+ Notification.setErrorMessage(errorMessageWithDetails);
84
84
  $scope.histories = Subscription.manifestHistory();
85
85
  }
86
86
  };
@@ -92,7 +92,7 @@ angular.module('Bastion.subscriptions').controller('ManifestImportController',
92
92
  $scope.unregisterSearch();
93
93
  if ($scope.task.result === 'success') {
94
94
  $scope.refreshOrganizationInfo();
95
- GlobalNotification.setSuccessMessage(translate("Manifest successfully imported."));
95
+ Notification.setSuccessMessage(translate("Manifest successfully imported."));
96
96
  } else {
97
97
  $scope.handleTaskErrors(task, translate("Error importing manifest."));
98
98
  }
@@ -117,7 +117,7 @@ angular.module('Bastion.subscriptions').controller('ManifestImportController',
117
117
  $scope.unregisterSearch();
118
118
  if ($scope.task.result === 'success') {
119
119
  $scope.saveSuccess = true;
120
- GlobalNotification.setSuccessMessage(translate("Manifest successfully deleted."));
120
+ Notification.setSuccessMessage(translate("Manifest successfully deleted."));
121
121
  $scope.refreshOrganizationInfo();
122
122
  } else {
123
123
  $scope.handleTaskErrors(task, translate("Error deleting manifest."));
@@ -151,7 +151,7 @@ angular.module('Bastion.subscriptions').controller('ManifestImportController',
151
151
  $scope.unregisterSearch();
152
152
  if ($scope.task.result === 'success') {
153
153
  $scope.saveSuccess = true;
154
- GlobalNotification.setSuccessMessage(translate("Manifest successfully refreshed."));
154
+ Notification.setSuccessMessage(translate("Manifest successfully refreshed."));
155
155
  $scope.refreshOrganizationInfo();
156
156
  } else {
157
157
  $scope.handleTaskErrors(task, translate("Error refreshing manifest."));
@@ -175,11 +175,11 @@ angular.module('Bastion.subscriptions').controller('ManifestImportController',
175
175
  });
176
176
 
177
177
  deferred = Organization.update(whitelistedOrganizationObject, function () {
178
- GlobalNotification.setSuccessMessage(translate('Repository URL updated'));
178
+ Notification.setSuccessMessage(translate('Repository URL updated'));
179
179
  $scope.refreshOrganizationInfo();
180
180
  }, function (response) {
181
181
  angular.forEach(response.data.error['full_messages'], function (message) {
182
- GlobalNotification.setErrorMessage(translate("An error occurred saving the URL: ") + message);
182
+ Notification.setErrorMessage(translate("An error occurred saving the URL: ") + message);
183
183
  });
184
184
  });
185
185
 
@@ -55,8 +55,6 @@
55
55
  </section>
56
56
 
57
57
  <section>
58
- <div bst-alerts error-messages="uploadErrorMessages"></div>
59
-
60
58
  <form role="form"
61
59
  action="{{ uploadURL }}"
62
60
  ng-upload="uploadManifest(content, completed)"
@@ -11,25 +11,25 @@
11
11
  angular.module('Bastion.subscriptions').factory('Subscription', ['BastionResource', 'CurrentOrganization',
12
12
 
13
13
  function (BastionResource, CurrentOrganization) {
14
- return BastionResource('/katello/api/v2/organizations/:org/subscriptions/:id/:action',
14
+ return BastionResource('katello/api/v2/organizations/:org/subscriptions/:id/:action',
15
15
  {org: CurrentOrganization, id: '@id'},
16
16
  {
17
17
  autocomplete: {method: 'GET', isArray: true, params: {id: 'auto_complete_search'}},
18
18
  deleteManifest: {
19
19
  method: 'POST',
20
- url: '/katello/api/v2/organizations/:org/subscriptions/delete_manifest',
20
+ url: 'katello/api/v2/organizations/:org/subscriptions/delete_manifest',
21
21
  params: {'org': CurrentOrganization}
22
22
  },
23
23
 
24
24
  refreshManifest: {
25
25
  method: 'PUT',
26
- url: '/katello/api/v2/organizations/:org/subscriptions/refresh_manifest',
26
+ url: 'katello/api/v2/organizations/:org/subscriptions/refresh_manifest',
27
27
  params: {'org': CurrentOrganization}
28
28
  },
29
29
 
30
30
  manifestHistory: {
31
31
  method: 'GET',
32
- url: '/katello/api/v2/organizations/:org/subscriptions/:action',
32
+ url: 'katello/api/v2/organizations/:org/subscriptions/:action',
33
33
  params: {action: 'manifest_history'},
34
34
  isArray: true
35
35
  }
@@ -10,18 +10,16 @@
10
10
  * @requires Product
11
11
  * @requires CurrentOrganization
12
12
  * @requires Nutupane
13
+ * @requires Notification
13
14
  *
14
15
  * @description
15
16
  * Provides the functionality for adding products to a sync plan.
16
17
  */
17
18
  angular.module('Bastion.sync-plans').controller('SyncPlanAddProductsController',
18
- ['$scope', '$q', '$location', 'translate', 'SyncPlan', 'Product', 'CurrentOrganization', 'Nutupane',
19
- function ($scope, $q, $location, translate, SyncPlan, Product, CurrentOrganization, Nutupane) {
19
+ ['$scope', '$q', '$location', 'translate', 'SyncPlan', 'Product', 'CurrentOrganization', 'Nutupane', 'Notification',
20
+ function ($scope, $q, $location, translate, SyncPlan, Product, CurrentOrganization, Nutupane, Notification) {
20
21
  var productsNutupane, params;
21
22
 
22
- $scope.successMessages = [];
23
- $scope.errorMessages = [];
24
-
25
23
  params = {
26
24
  'search': $location.search().search || "",
27
25
  'sort_by': 'name',
@@ -48,8 +46,8 @@ angular.module('Bastion.sync-plans').controller('SyncPlanAddProductsController',
48
46
  };
49
47
 
50
48
  success = function (response) {
51
- $scope.successMessages = [translate('Added %x products to sync plan "%y".')
52
- .replace('%x', $scope.table.numSelected).replace('%y', $scope.syncPlan.name)];
49
+ Notification.setSuccessMessage(translate('Added %x products to sync plan "%y".')
50
+ .replace('%x', $scope.table.numSelected).replace('%y', $scope.syncPlan.name));
53
51
  $scope.table.working = false;
54
52
  $scope.table.selectAll(false);
55
53
  productsNutupane.refresh();
@@ -59,7 +57,7 @@ angular.module('Bastion.sync-plans').controller('SyncPlanAddProductsController',
59
57
 
60
58
  error = function (response) {
61
59
  deferred.reject(response.data.errors);
62
- $scope.errorMessages = response.data.errors.base;
60
+ Notification.setErrorMessage(response.data.errors.base);
63
61
  $scope.table.working = false;
64
62
  };
65
63
 
@@ -7,15 +7,14 @@
7
7
  * @requires translate
8
8
  * @requires SyncPlan
9
9
  * @requires MenuExpander
10
+ * @requires Notification
10
11
  *
11
12
  * @description
12
13
  * Provides the functionality for the sync plan details action pane.
13
14
  */
14
15
  angular.module('Bastion.sync-plans').controller('SyncPlanDetailsInfoController',
15
- ['$scope', '$q', 'translate', 'SyncPlan', 'MenuExpander',
16
- function ($scope, $q, translate, SyncPlan, MenuExpander) {
17
- $scope.successMessages = [];
18
- $scope.errorMessages = [];
16
+ ['$scope', '$q', 'translate', 'SyncPlan', 'MenuExpander', 'Notification',
17
+ function ($scope, $q, translate, SyncPlan, MenuExpander, Notification) {
19
18
  $scope.intervals = [
20
19
  {id: 'hourly', value: translate('hourly')},
21
20
  {id: 'daily', value: translate('daily')},
@@ -49,14 +48,14 @@ angular.module('Bastion.sync-plans').controller('SyncPlanDetailsInfoController',
49
48
  syncPlan.$update(function (response) {
50
49
  updateSyncPlan(syncPlan);
51
50
  deferred.resolve(response);
52
- $scope.successMessages.push(translate('Sync Plan Saved'));
51
+ Notification.setSuccessMessage(translate('Sync Plan Saved'));
53
52
  }, function (response) {
54
53
  deferred.reject(response);
55
54
  angular.forEach(response.data.errors, function (errorMessage, key) {
56
55
  if (angular.isString(key)) {
57
56
  errorMessage = [key, errorMessage].join(' ');
58
57
  }
59
- $scope.errorMessages.push(translate("An error occurred saving the Sync Plan: ") + errorMessage);
58
+ Notification.setErrorMessage(translate("An error occurred saving the Sync Plan: ") + errorMessage);
60
59
  });
61
60
  });
62
61
 
@@ -7,14 +7,14 @@
7
7
  * @requires translate
8
8
  * @requires SyncPlan
9
9
  * @requires ApiErrorHandler
10
- * @requires GlobalNotification
10
+ * @requires Notification
11
11
  *
12
12
  * @description
13
13
  * Provides the functionality for the sync plan details action pane.
14
14
  */
15
15
  angular.module('Bastion.sync-plans').controller('SyncPlanDetailsController',
16
- ['$scope', '$state', 'translate', 'SyncPlan', 'ApiErrorHandler', 'GlobalNotification',
17
- function ($scope, $state, translate, SyncPlan, ApiErrorHandler, GlobalNotification) {
16
+ ['$scope', '$state', 'translate', 'SyncPlan', 'ApiErrorHandler', 'Notification',
17
+ function ($scope, $state, translate, SyncPlan, ApiErrorHandler, Notification) {
18
18
  $scope.panel = {
19
19
  error: false,
20
20
  loading: true
@@ -35,13 +35,13 @@ angular.module('Bastion.sync-plans').controller('SyncPlanDetailsController',
35
35
  SyncPlan.sync({id: $scope.$stateParams.syncPlanId}, function (task) {
36
36
  $scope.task = task;
37
37
  }, function (response) {
38
- GlobalNotification.setErrorMessage(response.data.errors[0]);
38
+ Notification.setErrorMessage(response.data.errors[0]);
39
39
  });
40
40
  };
41
41
 
42
42
  $scope.removeSyncPlan = function (syncPlan) {
43
43
  syncPlan.$remove(function () {
44
- GlobalNotification.setSuccessMessage(translate('Sync Plan %s has been deleted.').replace('%s', syncPlan.name));
44
+ Notification.setSuccessMessage(translate('Sync Plan %s has been deleted.').replace('%s', syncPlan.name));
45
45
  $scope.transitionTo('sync-plans');
46
46
  });
47
47
  };