ontologies_controller.rb revision c39fda5715a22fd5aca1f8aa0daa508c25a229c2
2670cd577aa57eb9f915a4f4220ae48c9b4fc5fbTimo Sirainen# Controller for ontologies
2670cd577aa57eb9f915a4f4220ae48c9b4fc5fbTimo Sirainenclass OntologiesController < InheritedResources::Base
2670cd577aa57eb9f915a4f4220ae48c9b4fc5fbTimo Sirainen belongs_to :repository, finder: :find_by_path!
2670cd577aa57eb9f915a4f4220ae48c9b4fc5fbTimo Sirainen before_filter :check_write_permission, :except => [:index, :show, :oops_state]
2670cd577aa57eb9f915a4f4220ae48c9b4fc5fbTimo Sirainen @ontology_version = build_resource.versions.build
2670cd577aa57eb9f915a4f4220ae48c9b4fc5fbTimo Sirainen resource.category_ids = user_selected_categories
e2a88d59c0d47d63ce1ad5b1fd95e487124a3fd4Timo Sirainen resource.category_ids = user_selected_categories
8b16d3b00f051401c97568697ccdbba48663759aTimo Sirainen # redirect for legacy routing
8b16d3b00f051401c97568697ccdbba48663759aTimo Sirainen redirect_to repository_ontology_entities_path(parent, resource,
8b16d3b00f051401c97568697ccdbba48663759aTimo Sirainen :kind => resource.entities.groups_by_kind.first.kind)
8b16d3b00f051401c97568697ccdbba48663759aTimo Sirainen redirect_to repository_ontology_children_path(parent, resource)
e2a88d59c0d47d63ce1ad5b1fd95e487124a3fd4Timo Sirainen respond_with resource.versions.current.try(:request)
ad404d294fedf792619aed432ed8de5174e9ce7cTimo Sirainen type = (params[:ontology] || {}).delete(:type)
ad404d294fedf792619aed432ed8de5174e9ce7cTimo Sirainen clazz = type=='DistributedOntology' ? DistributedOntology : SingleOntology
ad404d294fedf792619aed432ed8de5174e9ce7cTimo Sirainen vertex.children.each { |child| build_categories_tree(child) unless child.children.empty?; @a << child }
ad404d294fedf792619aed432ed8de5174e9ce7cTimo Sirainen def user_selected_categories
ad404d294fedf792619aed432ed8de5174e9ce7cTimo Sirainen params[:category_ids].keys unless params[:category_ids].nil?