sufia 3.6.1 → 3.7.0
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.
- checksums.yaml +4 -4
 - data/.travis.yml +1 -4
 - data/Gemfile +0 -3
 - data/History.md +29 -0
 - data/README.md +2 -4
 - data/SUFIA_VERSION +1 -1
 - data/app/assets/javascripts/sufia.js +2 -20
 - data/app/assets/javascripts/sufia/audio.js +28 -0
 - data/app/assets/javascripts/sufia/single_use_link.js +35 -0
 - data/app/assets/stylesheets/sufia-audio-overrides.css +9 -0
 - data/app/assets/stylesheets/sufia.css.scss +1 -1
 - data/app/assets/stylesheets/video-js.css +700 -433
 - data/app/controllers/concerns/sufia/dashboard_controller_behavior.rb +0 -12
 - data/app/controllers/concerns/sufia/users_controller_behavior.rb +12 -18
 - data/app/controllers/dashboard_controller.rb +1 -2
 - data/app/helpers/sufia_helper.rb +6 -5
 - data/app/helpers/trophy_helper.rb +1 -1
 - data/app/views/catalog/_index_partials/_default_group.html.erb +1 -2
 - data/app/views/catalog/_results_pagination.html.erb +3 -3
 - data/app/views/catalog/index.html.erb +0 -3
 - data/app/views/dashboard/_index_partials/_thumbnail_display.html.erb +2 -2
 - data/app/views/dashboard/_results_pagination.html.erb +5 -21
 - data/app/views/dashboard/facet.html.erb +1 -1
 - data/app/views/dashboard/index.html.erb +5 -35
 - data/app/views/generic_files/_media_display.html.erb +4 -4
 - data/app/views/layouts/sufia-two-column.html.erb +0 -16
 - data/app/views/users/_contributions.html.erb +20 -28
 - data/app/views/users/_profile_actions.html.erb +8 -9
 - data/config/routes.rb +7 -8
 - data/lib/sufia/version.rb +1 -1
 - data/spec/controllers/users_controller_spec.rb +51 -13
 - data/spec/features/browse_files_spec.rb +14 -12
 - data/spec/helpers/sufia_helper_spec.rb +21 -0
 - data/spec/models/generic_file_spec.rb +24 -66
 - data/spec/models/user_spec.rb +16 -4
 - data/sufia-models/app/models/checksum_audit_log.rb +0 -1
 - data/sufia-models/app/models/concerns/sufia/user.rb +6 -13
 - data/sufia-models/app/models/domain_term.rb +1 -6
 - data/sufia-models/app/models/local_authority.rb +2 -10
 - data/sufia-models/app/models/local_authority_entry.rb +0 -1
 - data/sufia-models/app/models/single_use_link.rb +1 -3
 - data/sufia-models/app/models/trophy.rb +0 -2
 - data/sufia-models/app/models/version_committer.rb +0 -1
 - data/sufia-models/lib/sufia/models/engine.rb +0 -2
 - data/sufia-models/lib/sufia/models/generic_file.rb +7 -0
 - data/sufia-models/sufia-models.gemspec +3 -1
 - data/sufia.gemspec +1 -1
 - data/tasks/sufia-dev.rake +0 -1
 - data/vendor/assets/javascripts/video.js +129 -4569
 - metadata +22 -23
 - data/sufia-models/lib/sufia/models/active_record/deprecated_attr_accessible.rb +0 -16
 - data/sufia-models/lib/sufia/models/active_support/core_ext/marshal.rb +0 -22
 - data/tasks/sufia.rake +0 -173
 
    
        metadata
    CHANGED
    
    | 
         @@ -1,14 +1,14 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            --- !ruby/object:Gem::Specification
         
     | 
| 
       2 
2 
     | 
    
         
             
            name: sufia
         
     | 
| 
       3 
3 
     | 
    
         
             
            version: !ruby/object:Gem::Version
         
     | 
| 
       4 
     | 
    
         
            -
              version: 3. 
     | 
| 
      
 4 
     | 
    
         
            +
              version: 3.7.0
         
     | 
| 
       5 
5 
     | 
    
         
             
            platform: ruby
         
     | 
| 
       6 
6 
     | 
    
         
             
            authors:
         
     | 
| 
       7 
7 
     | 
    
         
             
            - Justin Coyne
         
     | 
| 
       8 
8 
     | 
    
         
             
            autorequire: 
         
     | 
| 
       9 
9 
     | 
    
         
             
            bindir: bin
         
     | 
| 
       10 
10 
     | 
    
         
             
            cert_chain: []
         
     | 
| 
       11 
     | 
    
         
            -
            date:  
     | 
| 
      
 11 
     | 
    
         
            +
            date: 2014-02-07 00:00:00.000000000 Z
         
     | 
| 
       12 
12 
     | 
    
         
             
            dependencies:
         
     | 
| 
       13 
13 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       14 
14 
     | 
    
         
             
              name: sufia-models
         
     | 
| 
         @@ -16,14 +16,14 @@ dependencies: 
     | 
|
| 
       16 
16 
     | 
    
         
             
                requirements:
         
     | 
| 
       17 
17 
     | 
    
         
             
                - - '='
         
     | 
| 
       18 
18 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       19 
     | 
    
         
            -
                    version: 3. 
     | 
| 
      
 19 
     | 
    
         
            +
                    version: 3.7.0
         
     | 
| 
       20 
20 
     | 
    
         
             
              type: :runtime
         
     | 
| 
       21 
21 
     | 
    
         
             
              prerelease: false
         
     | 
| 
       22 
22 
     | 
    
         
             
              version_requirements: !ruby/object:Gem::Requirement
         
     | 
| 
       23 
23 
     | 
    
         
             
                requirements:
         
     | 
| 
       24 
24 
     | 
    
         
             
                - - '='
         
     | 
| 
       25 
25 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       26 
     | 
    
         
            -
                    version: 3. 
     | 
| 
      
 26 
     | 
    
         
            +
                    version: 3.7.0
         
     | 
| 
       27 
27 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       28 
28 
     | 
    
         
             
              name: blacklight_advanced_search
         
     | 
| 
       29 
29 
     | 
    
         
             
              requirement: !ruby/object:Gem::Requirement
         
     | 
| 
         @@ -38,6 +38,20 @@ dependencies: 
     | 
|
| 
       38 
38 
     | 
    
         
             
                - - ~>
         
     | 
| 
       39 
39 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       40 
40 
     | 
    
         
             
                    version: 2.1.0
         
     | 
| 
      
 41 
     | 
    
         
            +
            - !ruby/object:Gem::Dependency
         
     | 
| 
      
 42 
     | 
    
         
            +
              name: blacklight
         
     | 
| 
      
 43 
     | 
    
         
            +
              requirement: !ruby/object:Gem::Requirement
         
     | 
| 
      
 44 
     | 
    
         
            +
                requirements:
         
     | 
| 
      
 45 
     | 
    
         
            +
                - - '>='
         
     | 
| 
      
 46 
     | 
    
         
            +
                  - !ruby/object:Gem::Version
         
     | 
| 
      
 47 
     | 
    
         
            +
                    version: '4.5'
         
     | 
| 
      
 48 
     | 
    
         
            +
              type: :runtime
         
     | 
| 
      
 49 
     | 
    
         
            +
              prerelease: false
         
     | 
| 
      
 50 
     | 
    
         
            +
              version_requirements: !ruby/object:Gem::Requirement
         
     | 
| 
      
 51 
     | 
    
         
            +
                requirements:
         
     | 
| 
      
 52 
     | 
    
         
            +
                - - '>='
         
     | 
| 
      
 53 
     | 
    
         
            +
                  - !ruby/object:Gem::Version
         
     | 
| 
      
 54 
     | 
    
         
            +
                    version: '4.5'
         
     | 
| 
       41 
55 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       42 
56 
     | 
    
         
             
              name: hydra-batch-edit
         
     | 
| 
       43 
57 
     | 
    
         
             
              requirement: !ruby/object:Gem::Requirement
         
     | 
| 
         @@ -114,20 +128,6 @@ dependencies: 
     | 
|
| 
       114 
128 
     | 
    
         
             
                - - '='
         
     | 
| 
       115 
129 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       116 
130 
     | 
    
         
             
                    version: 0.2.3
         
     | 
| 
       117 
     | 
    
         
            -
            - !ruby/object:Gem::Dependency
         
     | 
| 
       118 
     | 
    
         
            -
              name: rainbow
         
     | 
| 
       119 
     | 
    
         
            -
              requirement: !ruby/object:Gem::Requirement
         
     | 
| 
       120 
     | 
    
         
            -
                requirements:
         
     | 
| 
       121 
     | 
    
         
            -
                - - '='
         
     | 
| 
       122 
     | 
    
         
            -
                  - !ruby/object:Gem::Version
         
     | 
| 
       123 
     | 
    
         
            -
                    version: 1.1.4
         
     | 
| 
       124 
     | 
    
         
            -
              type: :runtime
         
     | 
| 
       125 
     | 
    
         
            -
              prerelease: false
         
     | 
| 
       126 
     | 
    
         
            -
              version_requirements: !ruby/object:Gem::Requirement
         
     | 
| 
       127 
     | 
    
         
            -
                requirements:
         
     | 
| 
       128 
     | 
    
         
            -
                - - '='
         
     | 
| 
       129 
     | 
    
         
            -
                  - !ruby/object:Gem::Version
         
     | 
| 
       130 
     | 
    
         
            -
                    version: 1.1.4
         
     | 
| 
       131 
131 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       132 
132 
     | 
    
         
             
              name: font-awesome-sass-rails
         
     | 
| 
       133 
133 
     | 
    
         
             
              requirement: !ruby/object:Gem::Requirement
         
     | 
| 
         @@ -222,11 +222,13 @@ files: 
     | 
|
| 
       222 
222 
     | 
    
         
             
            - app/assets/images/ui-icons_ffffff_256x240.png
         
     | 
| 
       223 
223 
     | 
    
         
             
            - app/assets/javascripts/contact_form.js
         
     | 
| 
       224 
224 
     | 
    
         
             
            - app/assets/javascripts/sufia.js
         
     | 
| 
      
 225 
     | 
    
         
            +
            - app/assets/javascripts/sufia/audio.js
         
     | 
| 
       225 
226 
     | 
    
         
             
            - app/assets/javascripts/sufia/batch_select_all.js
         
     | 
| 
       226 
227 
     | 
    
         
             
            - app/assets/javascripts/sufia/edit_metadata.js
         
     | 
| 
       227 
228 
     | 
    
         
             
            - app/assets/javascripts/sufia/fileupload.js
         
     | 
| 
       228 
229 
     | 
    
         
             
            - app/assets/javascripts/sufia/multiForm.js
         
     | 
| 
       229 
230 
     | 
    
         
             
            - app/assets/javascripts/sufia/permissions.js
         
     | 
| 
      
 231 
     | 
    
         
            +
            - app/assets/javascripts/sufia/single_use_link.js
         
     | 
| 
       230 
232 
     | 
    
         
             
            - app/assets/javascripts/sufia/trophy.js
         
     | 
| 
       231 
233 
     | 
    
         
             
            - app/assets/javascripts/sufia/uploader.js
         
     | 
| 
       232 
234 
     | 
    
         
             
            - app/assets/javascripts/terms_of_service.js
         
     | 
| 
         @@ -244,6 +246,7 @@ files: 
     | 
|
| 
       244 
246 
     | 
    
         
             
            - app/assets/stylesheets/generic_files.css
         
     | 
| 
       245 
247 
     | 
    
         
             
            - app/assets/stylesheets/jquery-ui.css
         
     | 
| 
       246 
248 
     | 
    
         
             
            - app/assets/stylesheets/reset_body.css
         
     | 
| 
      
 249 
     | 
    
         
            +
            - app/assets/stylesheets/sufia-audio-overrides.css
         
     | 
| 
       247 
250 
     | 
    
         
             
            - app/assets/stylesheets/sufia.css.scss
         
     | 
| 
       248 
251 
     | 
    
         
             
            - app/assets/stylesheets/trophy.css
         
     | 
| 
       249 
252 
     | 
    
         
             
            - app/assets/stylesheets/video-js.css
         
     | 
| 
         @@ -640,9 +643,7 @@ files: 
     | 
|
| 
       640 
643 
     | 
    
         
             
            - sufia-models/lib/generators/sufia/models/templates/migrations/create_version_committers.rb
         
     | 
| 
       641 
644 
     | 
    
         
             
            - sufia-models/lib/sufia/models.rb
         
     | 
| 
       642 
645 
     | 
    
         
             
            - sufia-models/lib/sufia/models/active_fedora/redis.rb
         
     | 
| 
       643 
     | 
    
         
            -
            - sufia-models/lib/sufia/models/active_record/deprecated_attr_accessible.rb
         
     | 
| 
       644 
646 
     | 
    
         
             
            - sufia-models/lib/sufia/models/active_record/redis.rb
         
     | 
| 
       645 
     | 
    
         
            -
            - sufia-models/lib/sufia/models/active_support/core_ext/marshal.rb
         
     | 
| 
       646 
647 
     | 
    
         
             
            - sufia-models/lib/sufia/models/engine.rb
         
     | 
| 
       647 
648 
     | 
    
         
             
            - sufia-models/lib/sufia/models/file_content.rb
         
     | 
| 
       648 
649 
     | 
    
         
             
            - sufia-models/lib/sufia/models/file_content/versions.rb
         
     | 
| 
         @@ -685,7 +686,6 @@ files: 
     | 
|
| 
       685 
686 
     | 
    
         
             
            - tasks/release.rake
         
     | 
| 
       686 
687 
     | 
    
         
             
            - tasks/sufia-db.rake
         
     | 
| 
       687 
688 
     | 
    
         
             
            - tasks/sufia-dev.rake
         
     | 
| 
       688 
     | 
    
         
            -
            - tasks/sufia.rake
         
     | 
| 
       689 
689 
     | 
    
         
             
            - vendor/assets/fonts/Lato-Light.eot
         
     | 
| 
       690 
690 
     | 
    
         
             
            - vendor/assets/fonts/Lato-Light.ttf
         
     | 
| 
       691 
691 
     | 
    
         
             
            - vendor/assets/fonts/fontawesome-webfont.svg
         
     | 
| 
         @@ -734,7 +734,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement 
     | 
|
| 
       734 
734 
     | 
    
         
             
                  version: '0'
         
     | 
| 
       735 
735 
     | 
    
         
             
            requirements: []
         
     | 
| 
       736 
736 
     | 
    
         
             
            rubyforge_project: 
         
     | 
| 
       737 
     | 
    
         
            -
            rubygems_version: 2.1 
     | 
| 
      
 737 
     | 
    
         
            +
            rubygems_version: 2.2.1
         
     | 
| 
       738 
738 
     | 
    
         
             
            signing_key: 
         
     | 
| 
       739 
739 
     | 
    
         
             
            specification_version: 4
         
     | 
| 
       740 
740 
     | 
    
         
             
            summary: Sufia was extracted from ScholarSphere developed by Penn State University
         
     | 
| 
         @@ -832,4 +832,3 @@ test_files: 
     | 
|
| 
       832 
832 
     | 
    
         
             
            - spec/views/dashboard/index_partials/_thumbnail_display.html.erb_spec.rb
         
     | 
| 
       833 
833 
     | 
    
         
             
            - spec/views/generic_file/edit.html.erb_spec.rb
         
     | 
| 
       834 
834 
     | 
    
         
             
            - spec/views/users/show.html.erb_spec.rb
         
     | 
| 
       835 
     | 
    
         
            -
            has_rdoc: 
         
     | 
| 
         @@ -1,16 +0,0 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            module ActiveRecord
         
     | 
| 
       2 
     | 
    
         
            -
              module DeprecatedAttrAccessible
         
     | 
| 
       3 
     | 
    
         
            -
                extend ActiveSupport::Concern
         
     | 
| 
       4 
     | 
    
         
            -
                module ClassMethods
         
     | 
| 
       5 
     | 
    
         
            -
                  def deprecated_attr_accessible(*args)
         
     | 
| 
       6 
     | 
    
         
            -
                    if Rails::VERSION::MAJOR < 4 || defined?(ProtectedAttributes)
         
     | 
| 
       7 
     | 
    
         
            -
                      ActiveSupport::Deprecation.warn("deprecated_attr_accessible  is, wait for it, deprecated. It will be removed when Sufia stops support Rails 3.")
         
     | 
| 
       8 
     | 
    
         
            -
                      attr_accessible(*args)
         
     | 
| 
       9 
     | 
    
         
            -
                    end
         
     | 
| 
       10 
     | 
    
         
            -
                  end
         
     | 
| 
       11 
     | 
    
         
            -
                end
         
     | 
| 
       12 
     | 
    
         
            -
              end
         
     | 
| 
       13 
     | 
    
         
            -
            end
         
     | 
| 
       14 
     | 
    
         
            -
            ActiveRecord::Base.class_eval do
         
     | 
| 
       15 
     | 
    
         
            -
              include ActiveRecord::DeprecatedAttrAccessible
         
     | 
| 
       16 
     | 
    
         
            -
            end
         
     | 
| 
         @@ -1,22 +0,0 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            ### This patch is going into active-support (rails 4). https://github.com/rails/rails/pull/8246
         
     | 
| 
       2 
     | 
    
         
            -
            module Marshal
         
     | 
| 
       3 
     | 
    
         
            -
              class << self
         
     | 
| 
       4 
     | 
    
         
            -
                def load_with_autoloading(source)
         
     | 
| 
       5 
     | 
    
         
            -
                  begin
         
     | 
| 
       6 
     | 
    
         
            -
                    load_without_autoloading(source)
         
     | 
| 
       7 
     | 
    
         
            -
                  rescue ArgumentError, NameError => exc
         
     | 
| 
       8 
     | 
    
         
            -
                    if exc.message.match(%r|undefined class/module (.+)|)
         
     | 
| 
       9 
     | 
    
         
            -
                      # try loading the class/module
         
     | 
| 
       10 
     | 
    
         
            -
                      $1.constantize
         
     | 
| 
       11 
     | 
    
         
            -
                      # if it is a IO we need to go back to read the object
         
     | 
| 
       12 
     | 
    
         
            -
                      source.rewind if source.respond_to?(:rewind)
         
     | 
| 
       13 
     | 
    
         
            -
                      retry
         
     | 
| 
       14 
     | 
    
         
            -
                    else
         
     | 
| 
       15 
     | 
    
         
            -
                      raise exc
         
     | 
| 
       16 
     | 
    
         
            -
                    end
         
     | 
| 
       17 
     | 
    
         
            -
                  end
         
     | 
| 
       18 
     | 
    
         
            -
                end
         
     | 
| 
       19 
     | 
    
         
            -
             
     | 
| 
       20 
     | 
    
         
            -
                alias_method_chain :load, :autoloading
         
     | 
| 
       21 
     | 
    
         
            -
              end
         
     | 
| 
       22 
     | 
    
         
            -
            end
         
     | 
    
        data/tasks/sufia.rake
    DELETED
    
    | 
         @@ -1,173 +0,0 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            require 'rdf'
         
     | 
| 
       2 
     | 
    
         
            -
            require 'rdf/rdfxml'
         
     | 
| 
       3 
     | 
    
         
            -
            require 'rubygems'
         
     | 
| 
       4 
     | 
    
         
            -
            require 'action_view'
         
     | 
| 
       5 
     | 
    
         
            -
            require 'rainbow'
         
     | 
| 
       6 
     | 
    
         
            -
            include ActionView::Helpers::NumberHelper
         
     | 
| 
       7 
     | 
    
         
            -
             
     | 
| 
       8 
     | 
    
         
            -
            namespace :sufia do
         
     | 
| 
       9 
     | 
    
         
            -
              desc "Restore missing user accounts"
         
     | 
| 
       10 
     | 
    
         
            -
              task :restore_users => :environment do
         
     | 
| 
       11 
     | 
    
         
            -
                # Query Solr for unique depositors
         
     | 
| 
       12 
     | 
    
         
            -
                terms_url = "#{ActiveFedora.solr_config[:url]}/terms?terms.fl=depositor_t&terms.sort=index&terms.limit=5000&wt=json&omitHeader=true"
         
     | 
| 
       13 
     | 
    
         
            -
                # Parse JSON response (looks like {"terms":{"depositor_t":["mjg36",3]}})
         
     | 
| 
       14 
     | 
    
         
            -
                terms_json = open(terms_url).read
         
     | 
| 
       15 
     | 
    
         
            -
                depositor_logins = JSON.parse(terms_json)['terms']['depositor_t'] rescue []
         
     | 
| 
       16 
     | 
    
         
            -
                # Filter out doc counts, and leave logins
         
     | 
| 
       17 
     | 
    
         
            -
                depositor_logins.select! { |item| item.is_a? String }
         
     | 
| 
       18 
     | 
    
         
            -
                # Check for depositor User accounts & restore/populate if missing
         
     | 
| 
       19 
     | 
    
         
            -
                depositor_logins.each { |l| User.create(login: l).populate_attributes if User.find_by_login(l).nil? }
         
     | 
| 
       20 
     | 
    
         
            -
                # Then iterate over other User accounts and populate their attributes just in case
         
     | 
| 
       21 
     | 
    
         
            -
                User.all.each do |u|
         
     | 
| 
       22 
     | 
    
         
            -
                  # Skip user if already populated earlier
         
     | 
| 
       23 
     | 
    
         
            -
                  next if depositor_logins.include? u.login
         
     | 
| 
       24 
     | 
    
         
            -
                  u.populate_attributes
         
     | 
| 
       25 
     | 
    
         
            -
                end
         
     | 
| 
       26 
     | 
    
         
            -
              end
         
     | 
| 
       27 
     | 
    
         
            -
             
     | 
| 
       28 
     | 
    
         
            -
              desc "Report users quota in SS"
         
     | 
| 
       29 
     | 
    
         
            -
              task :quota_report => :environment do
         
     | 
| 
       30 
     | 
    
         
            -
                caution_sz = 3000000000   # 3GB
         
     | 
| 
       31 
     | 
    
         
            -
                warning_sz = 5000000000   # 5GB
         
     | 
| 
       32 
     | 
    
         
            -
                problem_sz = 10000000000  # 10GB
         
     | 
| 
       33 
     | 
    
         
            -
                # loop over users in active record 
         
     | 
| 
       34 
     | 
    
         
            -
                users = {}
         
     | 
| 
       35 
     | 
    
         
            -
                User.all.each do |u|
         
     | 
| 
       36 
     | 
    
         
            -
                  # for each user query get list of documents 
         
     | 
| 
       37 
     | 
    
         
            -
                  user_files = GenericFile.find( :depositor_t => u.login )
         
     | 
| 
       38 
     | 
    
         
            -
                  # sum the size of the users docs
         
     | 
| 
       39 
     | 
    
         
            -
                  sz = 0
         
     | 
| 
       40 
     | 
    
         
            -
                  user_files.each do |f| 
         
     | 
| 
       41 
     | 
    
         
            -
                    #puts number_to_human_size(f.file_size.first.to_i)
         
     | 
| 
       42 
     | 
    
         
            -
                    sz += f.file_size.first.to_i
         
     | 
| 
       43 
     | 
    
         
            -
                    #puts "#{sz}:#{f.file_size.first}"
         
     | 
| 
       44 
     | 
    
         
            -
                  end
         
     | 
| 
       45 
     | 
    
         
            -
                  uname = "#{u.login} #{u.name}"
         
     | 
| 
       46 
     | 
    
         
            -
                  users = users.merge(uname => sz)
         
     | 
| 
       47 
     | 
    
         
            -
                end
         
     | 
| 
       48 
     | 
    
         
            -
                longest_key = users.keys.max { |a,b| a.length <=> b.length }
         
     | 
| 
       49 
     | 
    
         
            -
                printf "%-#{longest_key.length}s %s".background(:white).foreground(:black), "User", "Space Used"
         
     | 
| 
       50 
     | 
    
         
            -
                puts ""
         
     | 
| 
       51 
     | 
    
         
            -
                users.each_pair do |k,v| 
         
     | 
| 
       52 
     | 
    
         
            -
                  if v >= problem_sz
         
     | 
| 
       53 
     | 
    
         
            -
                    printf "%-#{longest_key.length}s %s".background(:red).foreground(:white).blink, k, number_to_human_size(v)
         
     | 
| 
       54 
     | 
    
         
            -
                  elsif v >= warning_sz
         
     | 
| 
       55 
     | 
    
         
            -
                    printf "%-#{longest_key.length}s %s".background(:red).foreground(:white), k, number_to_human_size(v)
         
     | 
| 
       56 
     | 
    
         
            -
                  elsif v >= caution_sz
         
     | 
| 
       57 
     | 
    
         
            -
                    printf "%-#{longest_key.length}s %s".background(:yellow).foreground(:black), k, number_to_human_size(v)
         
     | 
| 
       58 
     | 
    
         
            -
                  else
         
     | 
| 
       59 
     | 
    
         
            -
                    printf "%-#{longest_key.length}s %s".background(:black).foreground(:white), k, number_to_human_size(v)
         
     | 
| 
       60 
     | 
    
         
            -
                  end
         
     | 
| 
       61 
     | 
    
         
            -
                  puts ""
         
     | 
| 
       62 
     | 
    
         
            -
                end
         
     | 
| 
       63 
     | 
    
         
            -
             
     | 
| 
       64 
     | 
    
         
            -
              end
         
     | 
| 
       65 
     | 
    
         
            -
             
     | 
| 
       66 
     | 
    
         
            -
              desc "(Re-)Generate the secret token"
         
     | 
| 
       67 
     | 
    
         
            -
              task :generate_secret => :environment do
         
     | 
| 
       68 
     | 
    
         
            -
                include ActiveSupport
         
     | 
| 
       69 
     | 
    
         
            -
                File.open("#{Rails.root}/config/initializers/secret_token.rb", 'w') do |f|
         
     | 
| 
       70 
     | 
    
         
            -
                  f.puts "#{Rails.application.class.parent_name}::Application.config.secret_token = '#{SecureRandom.hex(64)}'"
         
     | 
| 
       71 
     | 
    
         
            -
                end
         
     | 
| 
       72 
     | 
    
         
            -
              end
         
     | 
| 
       73 
     | 
    
         
            -
             
     | 
| 
       74 
     | 
    
         
            -
              desc "Characterize uncharacterized files"
         
     | 
| 
       75 
     | 
    
         
            -
              task :characterize => :environment do
         
     | 
| 
       76 
     | 
    
         
            -
                GenericFile.find(:all, :rows => GenericFile.count).each do |gf|
         
     | 
| 
       77 
     | 
    
         
            -
                  if gf.characterization.content.nil?
         
     | 
| 
       78 
     | 
    
         
            -
                    Resque.enqueue(CharacterizeJob, gf.pid)
         
     | 
| 
       79 
     | 
    
         
            -
                  end
         
     | 
| 
       80 
     | 
    
         
            -
                end
         
     | 
| 
       81 
     | 
    
         
            -
              end
         
     | 
| 
       82 
     | 
    
         
            -
             
     | 
| 
       83 
     | 
    
         
            -
              desc "Characterize uncharacterized files"
         
     | 
| 
       84 
     | 
    
         
            -
              task :characterize! => :environment do
         
     | 
| 
       85 
     | 
    
         
            -
                GenericFile.find(:all, :rows => GenericFile.count).each do |gf|
         
     | 
| 
       86 
     | 
    
         
            -
                  Resque.enqueue(CharacterizeJob, gf.pid)
         
     | 
| 
       87 
     | 
    
         
            -
                end
         
     | 
| 
       88 
     | 
    
         
            -
              end
         
     | 
| 
       89 
     | 
    
         
            -
             
     | 
| 
       90 
     | 
    
         
            -
              desc "Re-solrize all objects"
         
     | 
| 
       91 
     | 
    
         
            -
              task :resolrize => ['solr:reindex']
         
     | 
| 
       92 
     | 
    
         
            -
             
     | 
| 
       93 
     | 
    
         
            -
              namespace :export do
         
     | 
| 
       94 
     | 
    
         
            -
                desc "Dump metadata as RDF/XML for e.g. Summon integration"
         
     | 
| 
       95 
     | 
    
         
            -
                task :rdfxml => :environment do
         
     | 
| 
       96 
     | 
    
         
            -
                  raise "rake sufia:export:rdfxml output=FILE" unless ENV['output']
         
     | 
| 
       97 
     | 
    
         
            -
                  export_file = ENV['output']
         
     | 
| 
       98 
     | 
    
         
            -
                  triples = RDF::Repository.new
         
     | 
| 
       99 
     | 
    
         
            -
                  rows = GenericFile.count
         
     | 
| 
       100 
     | 
    
         
            -
                  GenericFile.find(:all, :rows => rows).each do |gf|
         
     | 
| 
       101 
     | 
    
         
            -
                    next unless gf.rightsMetadata.groups["public"] == "read" && gf.descMetadata.content
         
     | 
| 
       102 
     | 
    
         
            -
                    RDF::Reader.for(:ntriples).new(gf.descMetadata.content) do |reader|
         
     | 
| 
       103 
     | 
    
         
            -
                      reader.each_statement do |statement|
         
     | 
| 
       104 
     | 
    
         
            -
                        triples << statement
         
     | 
| 
       105 
     | 
    
         
            -
                      end
         
     | 
| 
       106 
     | 
    
         
            -
                    end
         
     | 
| 
       107 
     | 
    
         
            -
                  end
         
     | 
| 
       108 
     | 
    
         
            -
                  unless triples.empty?
         
     | 
| 
       109 
     | 
    
         
            -
                    RDF::Writer.for(:rdfxml).open(export_file) do |writer|
         
     | 
| 
       110 
     | 
    
         
            -
                      writer << triples
         
     | 
| 
       111 
     | 
    
         
            -
                    end
         
     | 
| 
       112 
     | 
    
         
            -
                  end
         
     | 
| 
       113 
     | 
    
         
            -
                end
         
     | 
| 
       114 
     | 
    
         
            -
              end
         
     | 
| 
       115 
     | 
    
         
            -
             
     | 
| 
       116 
     | 
    
         
            -
              namespace :harvest do
         
     | 
| 
       117 
     | 
    
         
            -
                desc "Harvest LC subjects"
         
     | 
| 
       118 
     | 
    
         
            -
                task :lc_subjects => :environment do |cmd, args|
         
     | 
| 
       119 
     | 
    
         
            -
                  vocabs = ["/tmp/subjects-skos.nt"]
         
     | 
| 
       120 
     | 
    
         
            -
                  LocalAuthority.harvest_rdf(cmd.to_s.split(":").last, vocabs)
         
     | 
| 
       121 
     | 
    
         
            -
                end
         
     | 
| 
       122 
     | 
    
         
            -
             
     | 
| 
       123 
     | 
    
         
            -
                desc "Harvest DBpedia titles"
         
     | 
| 
       124 
     | 
    
         
            -
                task :dbpedia_titles => :environment do |cmd, args|
         
     | 
| 
       125 
     | 
    
         
            -
                  vocabs = ["/tmp/labels_en.nt"]
         
     | 
| 
       126 
     | 
    
         
            -
                  LocalAuthority.harvest_rdf(cmd.to_s.split(":").last, vocabs, :predicate => RDF::RDFS.label)
         
     | 
| 
       127 
     | 
    
         
            -
                end
         
     | 
| 
       128 
     | 
    
         
            -
             
     | 
| 
       129 
     | 
    
         
            -
                desc "Harvest DBpedia categories"
         
     | 
| 
       130 
     | 
    
         
            -
                task :dbpedia_categories => :environment do |cmd, args|
         
     | 
| 
       131 
     | 
    
         
            -
                  vocabs = ["/tmp/category_labels_en.nt"]
         
     | 
| 
       132 
     | 
    
         
            -
                  LocalAuthority.harvest_rdf(cmd.to_s.split(":").last, vocabs, :predicate => RDF::RDFS.label)
         
     | 
| 
       133 
     | 
    
         
            -
                end
         
     | 
| 
       134 
     | 
    
         
            -
             
     | 
| 
       135 
     | 
    
         
            -
                desc "Harvest LC MARC geographic areas"
         
     | 
| 
       136 
     | 
    
         
            -
                task :lc_geographic => :environment do |cmd, args|
         
     | 
| 
       137 
     | 
    
         
            -
                  vocabs = ["/tmp/vocabularygeographicAreas.nt"]
         
     | 
| 
       138 
     | 
    
         
            -
                  LocalAuthority.harvest_rdf(cmd.to_s.split(":").last, vocabs)
         
     | 
| 
       139 
     | 
    
         
            -
                end
         
     | 
| 
       140 
     | 
    
         
            -
             
     | 
| 
       141 
     | 
    
         
            -
                desc "Harvest Geonames cities"
         
     | 
| 
       142 
     | 
    
         
            -
                task :geonames_cities => :environment do |cmd, args|
         
     | 
| 
       143 
     | 
    
         
            -
                  vocabs = ["/tmp/cities1000.txt"]
         
     | 
| 
       144 
     | 
    
         
            -
                  LocalAuthority.harvest_tsv(cmd.to_s.split(":").last, vocabs, :prefix => 'http://sws.geonames.org/')
         
     | 
| 
       145 
     | 
    
         
            -
                end
         
     | 
| 
       146 
     | 
    
         
            -
             
     | 
| 
       147 
     | 
    
         
            -
                desc "Harvest Lexvo languages"
         
     | 
| 
       148 
     | 
    
         
            -
                task :lexvo_languages => :environment do |cmd, args|
         
     | 
| 
       149 
     | 
    
         
            -
                  vocabs = ["/tmp/lexvo_2012-03-04.rdf"]
         
     | 
| 
       150 
     | 
    
         
            -
                  LocalAuthority.harvest_rdf(cmd.to_s.split(":").last, vocabs,
         
     | 
| 
       151 
     | 
    
         
            -
                                             :format => 'rdfxml', 
         
     | 
| 
       152 
     | 
    
         
            -
                                             :predicate => RDF::URI("http://www.w3.org/2008/05/skos#prefLabel"))
         
     | 
| 
       153 
     | 
    
         
            -
                end
         
     | 
| 
       154 
     | 
    
         
            -
             
     | 
| 
       155 
     | 
    
         
            -
                desc "Harvest LC genres"
         
     | 
| 
       156 
     | 
    
         
            -
                task :lc_genres => :environment do |cmd, args|
         
     | 
| 
       157 
     | 
    
         
            -
                  vocabs = ["/tmp/authoritiesgenreForms.nt"]
         
     | 
| 
       158 
     | 
    
         
            -
                  LocalAuthority.harvest_rdf(cmd.to_s.split(":").last, vocabs)
         
     | 
| 
       159 
     | 
    
         
            -
                end
         
     | 
| 
       160 
     | 
    
         
            -
             
     | 
| 
       161 
     | 
    
         
            -
                desc "Harvest LC name authorities"
         
     | 
| 
       162 
     | 
    
         
            -
                task :lc_names => :environment do |cmd, args|
         
     | 
| 
       163 
     | 
    
         
            -
                  vocabs = ["/tmp/authoritiesnames.nt.skos"]
         
     | 
| 
       164 
     | 
    
         
            -
                  LocalAuthority.harvest_rdf(cmd.to_s.split(":").last, vocabs)
         
     | 
| 
       165 
     | 
    
         
            -
                end
         
     | 
| 
       166 
     | 
    
         
            -
             
     | 
| 
       167 
     | 
    
         
            -
                desc "Harvest LC thesaurus of graphic materials"
         
     | 
| 
       168 
     | 
    
         
            -
                task :lc_graphics => :environment do |cmd, args|
         
     | 
| 
       169 
     | 
    
         
            -
                  vocabs = ["/tmp/vocabularygraphicMaterials.nt"]
         
     | 
| 
       170 
     | 
    
         
            -
                  LocalAuthority.harvest_rdf(cmd.to_s.split(":").last, vocabs)
         
     | 
| 
       171 
     | 
    
         
            -
                end
         
     | 
| 
       172 
     | 
    
         
            -
              end
         
     | 
| 
       173 
     | 
    
         
            -
            end
         
     |