Sha256: e33229d0dcc9da99f0557e2a510c5d622721e7c9e93dabb175da3504734a63b0

Contents?: true

Size: 1.04 KB

Versions: 7

Compression:

Stored size: 1.04 KB

Contents

class NdlBooksController < ApplicationController
  before_filter :authenticate_user!
  before_filter :check_librarian

  def index
    if params[:page].to_i == 0
      page = 1
    else
      page = params[:page]
    end
    @query = params[:query].to_s.strip
    books = NdlBook.search(params[:query], page)
    @books = WillPaginate::Collection.create(page, NdlBook.per_page, books[:total_entries]) do |pager|
      pager.replace books[:items]
    end
  end

  def create
    if params[:book]
      @manifestation = NdlBook.import_from_sru_response(params[:book][:nbn])
      if @manifestation.try(:save)
        flash[:notice] = t('controller.successfully_created', :model => t('activerecord.models.manifestation'))
        flash[:porta_import] == true
        redirect_to manifestation_items_url(@manifestation)
      else
        flash[:notice] = t('enju_ndl.record_not_found')
        redirect_to ndl_books_url
      end
    end
  end

  private
  def check_librarian
    unless current_user.try(:has_role?, 'Librarian')
      access_denied
    end
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
enju_ndl-0.0.19 app/controllers/ndl_books_controller.rb
enju_ndl-0.0.18 app/controllers/ndl_books_controller.rb
enju_ndl-0.0.17 app/controllers/ndl_books_controller.rb
enju_ndl-0.0.16 app/controllers/ndl_books_controller.rb
enju_ndl-0.0.15 app/controllers/ndl_books_controller.rb
enju_ndl-0.0.14 app/controllers/ndl_books_controller.rb
enju_ndl-0.0.13 app/controllers/ndl_books_controller.rb