app/controllers/manifestations_controller.rb in enju_biblio-0.1.0.pre36 vs app/controllers/manifestations_controller.rb in enju_biblio-0.1.0.pre37
- old
+ new
@@ -123,11 +123,10 @@
unless mode == 'add'
search.build do
with(:creator_ids).equal_to patron[:creator].id if patron[:creator]
with(:contributor_ids).equal_to patron[:contributor].id if patron[:contributor]
with(:publisher_ids).equal_to patron[:publisher].id if patron[:publisher]
- with(:original_manifestation_ids).equal_to manifestation.id if manifestation
with(:series_statement_ids).equal_to series_statement.id if series_statement
with(:parent_ids).equal_to parent.id if parent
end
end
@@ -151,11 +150,11 @@
#else
# with(:periodical).equal_to false
#end
else
if mode != 'add'
- with(:periodical).equal_to false
+ with(:resource_master).equal_to true
end
end
end
order_by sort[:sort_by], sort[:order] unless oai_search
facet :reservable if defined?(EnjuCirculation)
@@ -180,11 +179,12 @@
:volume_number,
:issue_number_string,
:issue_number,
:serial_number,
:edition_string,
- :edition
+ :edition,
+ :periodical
] if params[:format] == 'html' or params[:format].nil?
all_result = search.execute
@count[:query_result] = all_result.total
@reservable_facet = all_result.facet(:reservable).rows if defined?(EnjuCirculation)
@@ -445,11 +445,10 @@
if parent
@manifestation.parent_id = parent.id
@manifestation.original_title = parent.original_title
@manifestation.title_transcription = parent.title_transcription
@manifestation.periodical = true if parent.periodical
- @manifestation.series_statements.new(:original_title => parent.root_series_statement.original_title)
end
respond_to do |format|
format.html # new.html.erb
format.json { render :json => @manifestation }
@@ -461,13 +460,10 @@
unless current_user.has_role?('Librarian')
unless params[:mode] == 'tag_edit'
access_denied; return
end
end
- if defined?(EnjuSubject)
- @classification_types = ClassificationType.select(:display_name)
- end
if defined?(EnjuBookmark)
if params[:mode] == 'tag_edit'
@bookmark = current_user.bookmarks.where(:manifestation_id => @manifestation.id).first if @manifestation rescue nil
render :partial => 'manifestations/tag_edit', :locals => {:manifestation => @manifestation}
end
@@ -483,13 +479,16 @@
unless @manifestation.original_title?
@manifestation.original_title = @manifestation.attachment_file_name
end
respond_to do |format|
- set_patrons
if @manifestation.save
- parent.derived_manifestations << @manifestation if parent
+ if parent
+ parent.derived_manifestations << @manifestation
+ parent.index
+ @manifestation.index
+ end
Sunspot.commit
format.html { redirect_to @manifestation, :notice => t('controller.successfully_created', :model => t('activerecord.models.manifestation')) }
format.json { render :json => @manifestation, :status => :created, :location => @manifestation }
else
@@ -503,11 +502,10 @@
# PUT /manifestations/1
# PUT /manifestations/1.json
def update
respond_to do |format|
if @manifestation.update_attributes(params[:manifestation])
- set_patrons
Sunspot.commit
format.html { redirect_to @manifestation, :notice => t('controller.successfully_updated', :model => t('activerecord.models.manifestation')) }
format.json { head :no_content }
else
prepare_options
@@ -674,16 +672,20 @@
false
end
end
def prepare_options
- @carrier_types = CarrierType.all
- @content_types = ContentType.all
- @roles = Role.all
- @languages = Language.all_cache
- @frequencies = Frequency.all
- @nii_types = NiiType.all if defined?(EnjuNii)
+ @carrier_types = CarrierType.select([:id, :display_name, :position])
+ @content_types = ContentType.select([:id, :display_name, :position])
+ @roles = Role.select([:id, :display_name, :position])
+ @languages = Language.select([:id, :display_name, :position])
+ @frequencies = Frequency.select([:id, :display_name, :position])
+ @nii_types = NiiType.select([:id, :display_name, :position]) if defined?(EnjuNii)
+ if defined?(EnjuSubject)
+ @subject_types = SubjectType.select([:id, :display_name, :position])
+ @classification_types = ClassificationType.select([:id, :display_name, :position])
+ end
end
def get_index_patron
patron = {}
case
@@ -766,13 +768,7 @@
end
end
query = "#{query} acquired_at_d:[#{acquisition_date[:from]} TO #{acquisition_date[:to]}]"
end
query
- end
-
- def set_patrons
- @manifestation.set_creators(@manifestation.creators)
- @manifestation.set_contributors(@manifestation.contributors)
- @manifestation.set_publishers(@manifestation.publishers)
end
end