Skip to content
This repository has been archived by the owner on Oct 16, 2020. It is now read-only.

Commit

Permalink
Merge a4c0deb into 42780dd
Browse files Browse the repository at this point in the history
  • Loading branch information
JPrevost committed Feb 19, 2016
2 parents 42780dd + a4c0deb commit 15217d3
Show file tree
Hide file tree
Showing 8 changed files with 88 additions and 3 deletions.
13 changes: 12 additions & 1 deletion app/controllers/submissions_controller.rb
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ class SubmissionsController < ApplicationController

def index
@submissions = if current_user.admin?
Submission.all.order(created_at: :desc)
filtered_submissions
else
current_user.submissions.order(created_at: :desc)
end
Expand Down Expand Up @@ -62,8 +62,19 @@ def resubmit
redirect_to submissions_path
end

def show
end

private

def filtered_submissions
if params[:filter]
Submission.where(status: params[:filter])
else
Submission.all.order(created_at: :desc)
end
end

def set_s3_direct_post
@s3_direct_post = S3_BUCKET.presigned_post(
key: "uploads/#{SecureRandom.uuid}/${filename}",
Expand Down
2 changes: 1 addition & 1 deletion app/views/layouts/application.html.erb
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@

<footer>
<hr />
<p>&copy; MIT Libraries 2015</p>
<p>&copy; <%= link_to('MIT Libraries', 'https://libraries.mit.edu', style: 'color: white;') %> <%= Time.new.year %></p>
</footer>

</div> <!-- /container -->
Expand Down
13 changes: 13 additions & 0 deletions app/views/submissions/index.html.erb
Original file line number Diff line number Diff line change
@@ -1,5 +1,13 @@
<h1>MIT DSpace Quick Submit Submissions</h1>

View:
<%= link_to('All', submissions_path, class: 'btn btn-default') %>
<%= link_to('Failed', submissions_path(filter: 'failed'), class: 'btn btn-default') %>
<%= link_to('In Review Queue', submissions_path(filter: 'in review queue'), class: 'btn btn-default') %>
<%= link_to('Deposited', submissions_path(filter: 'deposited'), class: 'btn btn-default') %>

<hr />

<% if @submissions %>
<% @submissions.each do |sub| %>
Expand All @@ -16,13 +24,18 @@
<%= sub.title %>
</div>
<div class="panel-body">
<% if current_user.admin? %>
Submitter: <%= sub.user.email %><br />
<% end %>
Submitted: <%= time_ago_in_words(sub.created_at) %> ago<br />
Status: <%= sub.status || 'unknown' %><br />
Permanent URL: <%= sub.handle || 'pending submission processing' %>
<br />
</div>
<% if current_user.admin? %>
<div class="panel-footer">
<%= link_to('View Details', submission_path(sub)) %>
--
<%= link_to('View Sword Package', submission_package_path(sub)) %>
--
<%= link_to('Resubmit Package', resubmit_path(sub), method: :post) %>
Expand Down
14 changes: 14 additions & 0 deletions app/views/submissions/show.html.erb
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
<ul>
<li>Email: <%= mail_to(@submission.user.email) %></li>
<li>Submitted: <%= @submission.created_at %></li>
<li>Status: <%= @submission.status %></li>
<li>Title: <%= @submission.title %></li>
<li>Funder(s): </li>
<li>File(s):
<ul>
<% @submission.documents.each do |doc| %>
<li><%= link_to(@submission.document_uri(doc)) %></li>
<% end %>
</ul>
</li>
</ul>
2 changes: 1 addition & 1 deletion config/routes.rb
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
Rails.application.routes.draw do
resources :submissions, only: [:new, :create, :index]
resources :submissions, only: [:new, :create, :index, :show]
get 'submissions/package/:id', to: 'submissions#package', as: :submission_package
post 'submissions/resubmit/:id', to: 'submissions#resubmit', as: :resubmit
post 'callbacks/status/:uuid', to: 'callbacks#status', as: :callback_submission_status
Expand Down
26 changes: 26 additions & 0 deletions test/controllers/submissions_controller_test.rb
Original file line number Diff line number Diff line change
Expand Up @@ -109,4 +109,30 @@ class SubmissionsControllerTest < ActionController::TestCase
post :resubmit, id: submissions(:sub_one)
assert_redirected_to submissions_path
end

test 'non-authenticated users cannot show submission' do
get :show, id: submissions(:sub_one)
assert_redirected_to root_path
end

test 'non-admin users can view own submission' do
sign_in users(:one)
get :show, id: submissions(:sub_one)
assert_response :success
end

test 'non-admin users cannot view other user submission' do
sign_in users(:one)
s = submissions(:sub_one)
s.user = users(:admin)
s.save
get :show, id: submissions(:sub_one)
assert_redirected_to root_path
end

test 'admin users can show submission' do
sign_in users(:admin)
get :show, id: submissions(:sub_one)
assert_response :success
end
end
13 changes: 13 additions & 0 deletions test/features/submission_index_pages_test.rb
Original file line number Diff line number Diff line change
Expand Up @@ -46,4 +46,17 @@ def teardown
visit submissions_path
assert_link('Sword Package')
end

test 'admin index with filter only shows appropriate submissions' do
user = users(:admin)
mock_auth(user)
visit submissions_path
assert_text('popcorn soup')

click_link('Deposited')
assert_text('popcorn soup')

click_link('Failed')
refute_text('popcorn soup')
end
end
8 changes: 8 additions & 0 deletions test/fixtures/submissions.yml
Original file line number Diff line number Diff line change
Expand Up @@ -39,3 +39,11 @@ sub_two:
agreed_to_license: true
documents: "[\"//s3.amazonaws.com/mitquicksubmitdev/uploads/ea656123-f24f-4b12-9c78-17399338a6d6/b_pdf.pdf\"]"
uuid: a481170a-8337-4adc-b5b6-289b1037bd76

sub_deposited:
title: 'popcorn soup'
agreed_to_license: true
documents: "[\"//s3.amazonaws.com/mitquicksubmitdev/uploads/ea656123-f24f-4b12-9c78-17399338a6d6/b_pdf.pdf\", \"//s3.amazonaws.com/mitquicksubmitdev/uploads/89ce4e35-8573-4def-8114-8767365c954e/a_pdf.pdf\"]"
user: one
uuid: 7648b505-af79-4a2b-abcb-2727f716100c
status: 'deposited'

0 comments on commit 15217d3

Please sign in to comment.