sufia 0.0.1 → 0.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (50) hide show
  1. data/Gemfile +1 -1
  2. data/app/assets/javascripts/sufia.js +6 -5
  3. data/app/assets/javascripts/terms_of_service.js +28 -0
  4. data/app/controllers/batch_edits_controller.rb +2 -2
  5. data/app/controllers/generic_files_controller.rb +2 -2
  6. data/app/models/datastreams/fits_datastream.rb +1 -1
  7. data/app/views/batch/edit.html.erb +6 -6
  8. data/app/views/batch_edits/edit.html.erb +10 -6
  9. data/app/views/catalog/_search_form.html.erb +2 -2
  10. data/app/views/dashboard/index.html.erb +7 -7
  11. data/app/views/generic_files/_asset_updated_flash.html.erb +1 -1
  12. data/app/views/generic_files/_descriptions.html.erb +1 -1
  13. data/app/views/generic_files/_versioning.html.erb +1 -1
  14. data/app/views/generic_files/edit.html.erb +10 -10
  15. data/app/views/generic_files/new.html.erb +3 -3
  16. data/app/views/generic_files/show.html.erb +1 -1
  17. data/app/views/users/edit.html.erb +3 -3
  18. data/config/locales/sufia.en.yml +10 -3
  19. data/features/step_definitions/scholarsphere.rb +3 -1
  20. data/features/support/paths.rb +1 -1
  21. data/lib/sufia/generic_file.rb +2 -3
  22. data/lib/sufia/generic_file/characterization.rb +1 -1
  23. data/lib/sufia/jobs/batch_update_job.rb +2 -2
  24. data/lib/sufia/version.rb +1 -1
  25. data/lib/tasks/resque.rake +27 -1
  26. data/spec/models/file_content_datastream_spec.rb +2 -2
  27. data/spec/models/generic_file_spec.rb +7 -4
  28. data/sufia.gemspec +3 -5
  29. data/vendor/assets/javascripts/fileupload.js +1 -3
  30. data/vendor/assets/javascripts/fileupload/application.js +0 -25
  31. data/vendor/assets/javascripts/fileupload/tmpl.js +86 -0
  32. data/vendor/assets/javascripts/jquery-ui-1.9.2/jquery.ui.autocomplete.js +602 -0
  33. data/vendor/assets/javascripts/jquery-ui-1.9.2/jquery.ui.core.js +356 -0
  34. data/vendor/assets/javascripts/jquery-ui-1.9.2/jquery.ui.menu.js +610 -0
  35. data/vendor/assets/javascripts/jquery-ui-1.9.2/jquery.ui.widget.js +528 -0
  36. data/vendor/assets/javascripts/swfobject.js +4 -0
  37. metadata +15 -37
  38. data/app/assets/javascripts/generic_files.js +0 -17
  39. data/tasks/resque.rake +0 -27
  40. data/vendor/assets/javascripts/blacklight.js +0 -513
  41. data/vendor/assets/javascripts/bootstrap-collapse.js +0 -157
  42. data/vendor/assets/javascripts/bootstrap-popover.js +0 -98
  43. data/vendor/assets/javascripts/bootstrap-tooltip.js +0 -275
  44. data/vendor/assets/javascripts/fileupload/tmpl.min.js +0 -1
  45. data/vendor/assets/javascripts/jquery-1.7.2.min.js +0 -4
  46. data/vendor/assets/javascripts/jquery-1.8.2.js +0 -9440
  47. data/vendor/assets/javascripts/jquery-1.8.2.min.js +0 -2
  48. data/vendor/assets/javascripts/jquery-ui-1.8.16.custom.min.js +0 -791
  49. data/vendor/assets/javascripts/jquery-ui-1.8.23.custom.min.js +0 -125
  50. data/vendor/assets/javascripts/jquery_ujs.js +0 -377
data/Gemfile CHANGED
@@ -13,7 +13,7 @@ group :development, :test do
13
13
  # gem "rails_indexes", :git => "git://github.com/warpc/rails_indexes.git", :ref => '4a550270'
14
14
  gem 'selenium-webdriver'
15
15
  gem 'headless'
16
- gem 'rspec-rails', '>= 2.11.0'
16
+ gem 'rspec-rails', '~> 2.12.0'
17
17
  gem 'ruby-prof'
18
18
  gem 'cucumber-rails', '~> 1.0', :require => false
19
19
  gem 'database_cleaner'
@@ -14,15 +14,16 @@ See the License for the specific language governing permissions and
14
14
  limitations under the License.
15
15
  */
16
16
 
17
- // require jquery-1.8.2.min
18
- // require jquery_ujs.js
19
- // require jquery-ui-1.8.23.custom.min
20
- // require blacklight
17
+ //= require jquery-ui-1.9.2/jquery.ui.core
18
+ //= require jquery-ui-1.9.2/jquery.ui.widget
19
+ //= require jquery-ui-1.9.2/jquery.ui.menu
20
+ //= require jquery-ui-1.9.2/jquery.ui.autocomplete
21
21
  //= require bootstrap-dropdown
22
22
  //= require bootstrap-button
23
23
  //= require bootstrap-collapse
24
24
  //= require batch_edit
25
- //= require generic_files
25
+ //= require terms_of_service
26
+ //= require fileupload
26
27
 
27
28
  //over ride the blacklight default to submit
28
29
  //form when sort by or show per page change
@@ -0,0 +1,28 @@
1
+ $(function () {
2
+ $('#main_upload_start').attr('disabled', true);
3
+ $("#upload_tooltip").hide();
4
+ $("#main_upload_start_span").mousemove(function(e){
5
+ if ( !$('#terms_of_service').is(':checked') ){
6
+ $('#main_upload_start').attr('disabled', true);
7
+ $("#upload_tooltip").show();
8
+ $("#upload_tooltip").css({
9
+ top: (e.clientY+5)+ "px",
10
+ left: (e.clientX+5) + "px"
11
+ });
12
+ } else {
13
+ if (filestoupload > 0) $('#main_upload_start').attr('disabled', false);
14
+ $("#upload_tooltip").hide();
15
+ }
16
+ });
17
+ $("#main_upload_start_span").mouseout(function(e){
18
+ $("#upload_tooltip").hide();
19
+ });
20
+ $("#main_upload_start_span").mouseleave(function(e){
21
+ $("#upload_tooltip").hide();
22
+ });
23
+ $('#terms_of_service').click(function () {
24
+ $('#main_upload_start').attr('disabled', !((this.checked) && (filestoupload > 0)));
25
+ $("#upload_tooltip").hide();
26
+ });
27
+ });
28
+
@@ -36,7 +36,7 @@ class BatchEditsController < ApplicationController
36
36
  end
37
37
 
38
38
  def after_update
39
- redirect_to dashboard_index_path unless request.xhr?
39
+ redirect_to sufia.dashboard_index_path unless request.xhr?
40
40
  end
41
41
 
42
42
  def update_document(obj)
@@ -48,7 +48,7 @@ class BatchEditsController < ApplicationController
48
48
  def update
49
49
  # keep the batch around if we are doing ajax calls
50
50
  batch_sav = batch.dup if request.xhr?
51
- catalog_index_path = dashboard_index_path
51
+ catalog_index_path = sufia.dashboard_index_path
52
52
  type = params["update_type"]
53
53
  if (type == "update")
54
54
  #params["generic_file"].reject! {|k,v| (v.blank? || (v.respond_to?(:length) && v.length==1 && v.first.blank?))}
@@ -154,10 +154,10 @@ class GenericFilesController < ApplicationController
154
154
  version_event = true
155
155
  Sufia.queue.push(ContentNewVersionEventJob.new(@generic_file.pid, current_user.user_key))
156
156
  end
157
- @generic_file.update_attributes(params[:generic_file].reject { |k,v| %w{ Filedata Filename revision part_of date_modified date_uploaded format }.include? k})
157
+ @generic_file.attributes = params[:generic_file].reject { |k,v| %w{ Filedata Filename revision part_of date_modified date_uploaded format }.include? k}
158
158
  @generic_file.set_visibility(params[:visibility])
159
159
  @generic_file.date_modified = Time.now.ctime
160
- @generic_file.save
160
+ @generic_file.save!
161
161
  # do not trigger an update event if a version event has already been triggered
162
162
  Sufia.queue.push(ContentUpdateEventJob.new(@generic_file.pid, current_user.user_key)) unless version_event
163
163
  record_version_committer(@generic_file, current_user)
@@ -22,7 +22,7 @@ class FitsDatastream < ActiveFedora::NokogiriDatastream
22
22
  t.identification {
23
23
  t.identity {
24
24
  t.format_label(:path=>{:attribute=>"format"})
25
- t.mime_type(:path=>{:attribute=>"mimetype"})
25
+ t.mime_type(:path=>{:attribute=>"mimetype"}, index_as: [:searchable])
26
26
  }
27
27
  }
28
28
  t.fileinfo {
@@ -16,14 +16,14 @@ limitations under the License.
16
16
 
17
17
 
18
18
 
19
- <% content_for :head do %>
20
- <% javascript_include_tag 'bootstrap-tooltip.js'%>
21
- <% javascript_include_tag 'bootstrap-popover.js'%>
22
- <% javascript_include_tag 'bootstrap-modal.js'%>
19
+ <% content_for :js_head do %>
20
+ <%= javascript_include_tag 'bootstrap-tooltip.js'%>
21
+ <%= javascript_include_tag 'bootstrap-popover.js'%>
22
+ <%= javascript_include_tag 'bootstrap-modal.js'%>
23
23
 
24
- <% javascript_include_tag 'batch.js' %>
24
+ <%= javascript_include_tag 'batch.js' %>
25
25
 
26
- <% javascript_include_tag 'jquery.validate.js' %>
26
+ <%= javascript_include_tag 'jquery.validate.js' %>
27
27
  <style type="text/css">
28
28
  label.error { float: left; color: red; padding-left: .5em; vertical-align: top; }
29
29
 
@@ -1,8 +1,10 @@
1
- <% javascript 'bootstrap-modal.js'%>
2
- <% javascript 'bootstrap-tooltip.js'%>
3
- <% javascript 'bootstrap-popover.js'%>
1
+ <% content_for :js_head do %>
2
+ <%= javascript_include_tag 'bootstrap-modal.js'%>
3
+ <%= javascript_include_tag 'bootstrap-tooltip.js'%>
4
+ <%= javascript_include_tag 'bootstrap-popover.js'%>
5
+ <% end %>
4
6
 
5
- <% stylesheet "jquery-ui-1.8.23.custom.css" %>
7
+ <% stylesheet_link_tag "jquery-ui-1.8.23.custom.css" %>
6
8
 
7
9
  <% content_for :local_js do %>
8
10
 
@@ -34,9 +36,10 @@ $("a[rel=popover]").popover();
34
36
  function after_ajax(form_id){
35
37
  var key = form_id.replace("form_","");
36
38
  var save_button = "#"+key+"_save";
39
+ var outer_div = "#collapse_"+key;
37
40
  $("#status_"+key).html("Changes Saved");
38
41
  $(save_button).removeAttr("disabled");
39
- $('#'+form_id).removeClass("loading");
42
+ $(outer_div).removeClass("loading");
40
43
  $('#'+form_id).children([".control-group"]).removeClass('hidden')
41
44
  }
42
45
 
@@ -46,8 +49,9 @@ $("a[rel=popover]").popover();
46
49
  function before_ajax(form_id){
47
50
  var key = form_id.replace("form_","");
48
51
  var save_button = "#"+key+"_save";
52
+ var outer_div = "#collapse_"+key;
49
53
  $(save_button).attr("disabled", "disabled");
50
- $('#'+form_id).addClass("loading");
54
+ $(outer_div).addClass("loading");
51
55
  $('#'+form_id).children([".control-group"]).addClass('hidden')
52
56
  }
53
57
 
@@ -5,8 +5,8 @@
5
5
  <%= search_as_hidden_fields(:omit_keys => [:q, :search_field, :qt, :page]).html_safe %>
6
6
  <div class="controls">
7
7
  <div class="input-append">
8
- <label class="accessible-hidden">Search Scholarsphere</label>
9
- <%= text_field_tag :q, q, :class => "q span50", :id => "search-field-header", :placeholder => "Type keywords in here" %><button type="submit" class="btn btn-info" id="search-submit-header"><i class="icon-search"></i> Go</button>
8
+ <label class="accessible-hidden"><%= t('sufia.search.form.q.label') %></label>
9
+ <%= text_field_tag :q, q, :class => "q span50", :id => "search-field-header", :placeholder => t('sufia.search.form.q.placeholder') %><button type="submit" class="btn btn-info" id="search-submit-header"><i class="icon-search"></i> Go</button>
10
10
  <!-- <input type="submit" class="btn btn-info" id="search-submit-header" value="GO"><i class="icon-search"></i></input>
11
11
  &nbsp; -->
12
12
  <%# link_to 'more options', params.merge(:controller=>"advanced", :action=>"index") , :class=>"advanced_search" if ! current_page?(advanced_path)%>
@@ -14,13 +14,12 @@ See the License for the specific language governing permissions and
14
14
  limitations under the License.
15
15
  %>
16
16
 
17
- <% content_for :head do %>
18
- <% javascript_include_tag 'video.js' %>
19
- <% javascript_include_tag 'audio.min.js' %>
20
- <% stylesheet_link_tag 'video-js.css' %>
21
- <% javascript_include_tag 'dashboard.js' %>
22
- <% javascript_include_tag 'swfobject.js' %>
23
- <% javascript_include_tag 'jquery.clippy.js' %>
17
+ <% content_for :js_head do %>
18
+ <%= javascript_include_tag 'video.js' %>
19
+ <%= javascript_include_tag 'audio.min.js' %>
20
+ <%= stylesheet_link_tag 'video-js.css' %>
21
+ <%= javascript_include_tag 'dashboard.js' %>
22
+ <%= javascript_include_tag 'swfobject.js' %>
24
23
 
25
24
  <script type = "text/javascript">
26
25
 
@@ -101,6 +100,7 @@ limitations under the License.
101
100
  toggleButtons();
102
101
  });
103
102
 
103
+ $('#documents').batchEdit();
104
104
 
105
105
  /*$('a.copypaste').zclip({
106
106
  path: "/assets/ZeroClipboard.swf",
@@ -14,4 +14,4 @@ See the License for the specific language governing permissions and
14
14
  limitations under the License.
15
15
  %>
16
16
 
17
- The file <%= link_to(display_title(generic_file), generic_file_url(generic_file.noid)) %> has been updated.
17
+ The file <%= link_to(display_title(generic_file), sufia.generic_file_url(generic_file.noid)) %> has been updated.
@@ -14,7 +14,7 @@ See the License for the specific language governing permissions and
14
14
  limitations under the License.
15
15
  %>
16
16
 
17
- <%= form_for @generic_file, :url => sufia.generic_file_path, :html => {:multipart => true, :class => 'form-horizontal', :id => 'fileupload'} do |f| %>
17
+ <%= form_for @generic_file, :url => sufia.generic_file_path, :html => {:multipart => true, :class => 'form-horizontal'} do |f| %>
18
18
  <%= hidden_field_tag('generic_file[terms_of_service]', '1') %>
19
19
  <%= hidden_field_tag('redirect_tab', 'descriptions') %>
20
20
  <div id="descriptions_display">
@@ -17,7 +17,7 @@ limitations under the License.
17
17
  <div id="versioning_display">
18
18
  <h2 class="non lower">Versions</h2>
19
19
  <div class="well">
20
- <%= form_for @generic_file, :url => sufia.generic_file_path, :html => {:multipart => true, :class => 'form-horizontal', :id => 'fileupload'} do |f| %>
20
+ <%= form_for @generic_file, :url => sufia.generic_file_path, :html => {:multipart => true, :class => 'form-horizontal'} do |f| %>
21
21
  <%= hidden_field_tag('generic_file[terms_of_service]', '1') %>
22
22
  <%= hidden_field_tag('redirect_tab', 'versions') %>
23
23
  <h3>Upload New Version</h3>
@@ -14,17 +14,17 @@ See the License for the specific language governing permissions and
14
14
  limitations under the License.
15
15
  %>
16
16
 
17
- <% content_for :head do %>
18
- <% javascript_include_tag 'video.js' %>
19
- <% javascript_include_tag 'audio.min.js' %>
20
- <% stylesheet_link_tag 'video-js.css' %>
17
+ <% content_for :js_head do %>
18
+ <%= javascript_include_tag 'video.js' %>
19
+ <%= javascript_include_tag 'audio.min.js' %>
20
+ <%= stylesheet_link_tag 'video-js.css' %>
21
21
 
22
- <% javascript_include_tag 'bootstrap-tooltip.js'%>
23
- <% javascript_include_tag 'bootstrap-popover.js'%>
24
- <% javascript_include_tag 'bootstrap-modal.js'%>
22
+ <%= javascript_include_tag 'bootstrap-tooltip.js'%>
23
+ <%= javascript_include_tag 'bootstrap-popover.js'%>
24
+ <%= javascript_include_tag 'bootstrap-modal.js'%>
25
25
 
26
26
 
27
- <% javascript_include_tag 'jquery.validate.js' %>
27
+ <%= javascript_include_tag 'jquery.validate.js' %>
28
28
 
29
29
  <style type="text/css">
30
30
  label.error { float: left; color: red; padding-left: .5em; vertical-align: top; }
@@ -35,7 +35,7 @@ label.error { float: left; color: red; padding-left: .5em; vertical-align: top;
35
35
 
36
36
  <% content_for :local_js do %>
37
37
  if (navigator.userAgent.match("MSIE")){
38
- $("#fileupload").validate();
38
+ $("form").validate();
39
39
  }
40
40
  initialize_audio();
41
41
 
@@ -92,7 +92,7 @@ $("a[rel=popover]").popover();
92
92
  </ul>
93
93
  <%= render :partial => "descriptions", :locals => { :generic_file => @generic_file } %>
94
94
 
95
- <%= form_for @generic_file, :url => sufia.generic_file_path, :html => {:multipart => true, :class => 'form-horizontal', :id => 'fileupload'} do |f| %>
95
+ <%= form_for @generic_file, :url => sufia.generic_file_path, :html => {:multipart => true, :class => 'form-horizontal', :id => 'permission'} do |f| %>
96
96
  <%= hidden_field_tag('redirect_tab', 'permissions') %>
97
97
  <%= render :partial => "permission", :locals => { :gf => @generic_file, :f=> f } %>
98
98
  <% end %>
@@ -17,14 +17,14 @@ limitations under the License.
17
17
  <h2>Upload</h2>
18
18
 
19
19
  <div class="alert">
20
- <strong>Note:</strong> You must agree to <a href='/agreement/' target="_blank">ScholarSphere's Deposit Agreement</a> before starting your upload.
20
+ <strong>Note:</strong> You must agree to <a href='/agreement/' target="_blank"><%= t('sufia.deposit_agreement') %></a> before starting your upload.
21
21
  </div>
22
22
 
23
23
  <div class="alert alert-info hide" id="redirect-loc" type="text/x-jquery-tmpl">
24
24
  <%=sufia.batch_edit_path(@batch_noid)%>
25
25
  </div>
26
26
 
27
- <div id="upload_tooltip">Please accept Deposit Agreement before you can upload.</div>
27
+ <div id="upload_tooltip"><%= t('sufia.upload_tooltip') %></div>
28
28
 
29
29
  <div class="alert alert-info hide" id="success">
30
30
  You have successfully uploaded some of your files. Either continue to upload or edit use the links below to abandon the rest of your added files.
@@ -51,7 +51,7 @@ limitations under the License.
51
51
  <%= hidden_field_tag(:batch_id, @batch_noid) %>
52
52
  <label class="checkbox">
53
53
  <%= check_box_tag 'terms_of_service' %> I have read and do agree
54
- to <%= link_to "ScholarSphere's Deposit Agreement",
54
+ to <%= link_to t('sufia.deposit_agreement'),
55
55
  '/agreement/', :target => "_blank" %>.
56
56
  </label>
57
57
  <!-- The fileupload-buttonbar contains buttons to add/delete files and start/cancel the upload -->
@@ -238,7 +238,7 @@ var addthis_config = {"data_track_addressbar":true};
238
238
  <th>Related Files</th>
239
239
  <td>
240
240
  <% @generic_file.related_files.each do |f| %>
241
- <dd><%= link_to(f.label, generic_file_url(f.noid)) %></dd>
241
+ <dd><%= link_to(f.label, sufia.generic_file_url(f.noid)) %></dd>
242
242
  <% end %>
243
243
  </td>
244
244
  </tr>
@@ -14,10 +14,10 @@ See the License for the specific language governing permissions and
14
14
  limitations under the License.
15
15
  %>
16
16
 
17
- <% content_for :head do %>
17
+ <% content_for :js_head do %>
18
18
 
19
- <% javascript_include_tag 'bootstrap-tooltip.js'%>
20
- <% javascript_include_tag 'bootstrap-popover.js'%>
19
+ <%= javascript_include_tag 'bootstrap-tooltip.js'%>
20
+ <%= javascript_include_tag 'bootstrap-popover.js'%>
21
21
  <% end %>
22
22
 
23
23
  <% content_for :local_js do %>
@@ -1,6 +1,13 @@
1
1
  en:
2
2
  sufia:
3
- product_name: "ScholarSphere"
4
- account_name: "Penn State Access Account Id"
5
- institution_name: "Penn State"
3
+ product_name: "ScholarSphere"
4
+ account_name: "Penn State Access Account Id"
5
+ institution_name: "Penn State"
6
+ deposit_agreement: "ScholarSphere's Deposit Agreement"
7
+ upload_tooltip: "Please accept Deposit Agreement before you can upload."
8
+ search:
9
+ form:
10
+ q:
11
+ label: "Search Scholarsphere"
12
+ placeholder: "Type keywords in here"
6
13
 
@@ -11,6 +11,8 @@
11
11
  # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
12
  # See the License for the specific language governing permissions and
13
13
  # limitations under the License.
14
+ require "cucumber/rspec/doubles"
15
+
14
16
  When /^I attach a file "([^"]*)" to the dynamically created "([^"]*)"$/ do |path, field|
15
17
  find(field).native.send_keys(File.expand_path(path, Rails.root))
16
18
  end
@@ -25,7 +27,7 @@ Given /^And I click within the anchor "(.*?)"$/ do |selector|
25
27
  end
26
28
 
27
29
  Given /^I have a mail server$/ do
28
- ContactForm.any_instance.stubs(:deliver).returns(true)
30
+ ContactForm.any_instance.stub(:deliver).and_return(true)
29
31
  end
30
32
 
31
33
  Then /^I reset the mail server$/ do
@@ -47,7 +47,7 @@ module NavigationHelpers
47
47
  # when /^(.*)'s profile page$/i
48
48
  # user_profile_path(User.find_by_login($1))
49
49
  when /dashboard/
50
- sufia.dashboard_path
50
+ sufia.dashboard_index_path
51
51
 
52
52
  when /the edit document page for (.*)$/i
53
53
  sufia.edit_catalog_path($1)
@@ -19,7 +19,6 @@ module Sufia
19
19
  include Sufia::GenericFile::Audit
20
20
  include Sufia::GenericFile::Permissions
21
21
 
22
- @@FIELD_LABEL_MAP = {"based_near"=>"Location", 'description'=>"Abstract or Summary", 'tag'=>"Keyword", 'date_created'=>"Date Created", 'related_url'=>"Related URL"}
23
22
 
24
23
  included do
25
24
  has_metadata :name => "descMetadata", :type => GenericFileRdfDatastream
@@ -38,8 +37,6 @@ module Sufia
38
37
  around_save :characterize_if_changed, :retry_warming
39
38
 
40
39
  #make sure the terms of service is present and set to 1 before saving
41
- # note GenericFile.create will no longer save a GenericFile as the terms_of_service will not be set
42
- terms_of_service = nil
43
40
  validates_acceptance_of :terms_of_service, :allow_nil => false
44
41
  end
45
42
 
@@ -177,6 +174,8 @@ module Sufia
177
174
  end
178
175
 
179
176
  module ClassMethods
177
+ @@FIELD_LABEL_MAP = {"based_near"=>"Location", 'description'=>"Abstract or Summary", 'tag'=>"Keyword", 'date_created'=>"Date Created", 'related_url'=>"Related URL"}
178
+
180
179
  def get_label(key)
181
180
  label = @@FIELD_LABEL_MAP[key]
182
181
  label = key.gsub('_',' ').titleize if label.blank?
@@ -34,7 +34,7 @@ module Sufia
34
34
 
35
35
  ## Extract the metadata from the content datastream and record it in the characterization datastream
36
36
  def characterize
37
- self.characterization.content = self.content.extract_metadata
37
+ self.characterization.ng_xml = self.content.extract_metadata
38
38
  self.append_metadata
39
39
  self.filename = self.label
40
40
  self.terms_of_service = '1'
@@ -60,12 +60,12 @@ class BatchUpdateJob
60
60
  return
61
61
  end
62
62
  gf.title = title[gf.pid] if title[gf.pid] rescue gf.label
63
- gf.update_attributes(file_attributes)
63
+ gf.attributes=file_attributes
64
64
  gf.set_visibility(visibility)
65
65
 
66
66
  save_tries = 0
67
67
  begin
68
- gf.save
68
+ gf.save!
69
69
  rescue RSolr::Error::Http => error
70
70
  save_tries += 1
71
71
  logger.warn "BatchUpdateJob caught RSOLR error on #{gf.pid}: #{error.inspect}"
data/lib/sufia/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Sufia
2
- VERSION = "0.0.1"
2
+ VERSION = "0.0.2"
3
3
  end
@@ -1 +1,27 @@
1
- require 'resque/tasks'
1
+ # Copyright © 2012 The Pennsylvania State University
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+ require 'resque/pool/tasks'
16
+
17
+ # This provides access to the Rails env within all Resque workers
18
+ task 'resque:setup' => :environment
19
+
20
+ # Set up resque-pool
21
+ task 'resque:pool:setup' do
22
+ ActiveRecord::Base.connection.disconnect!
23
+ Resque::Pool.after_prefork do |job|
24
+ ActiveRecord::Base.establish_connection
25
+ Resque.redis.client.reconnect
26
+ end
27
+ end