Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merge seek main #26

Merged
merged 447 commits into from
Jan 23, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
447 commits
Select commit Hold shift + click to select a range
bba04fe
update template_extractor.rb #1648
stuzart Nov 15, 2023
a1b6400
remove field required from sample_controlled_vocabs #1648
stuzart Nov 15, 2023
6dcac28
Revert "remove field required from sample_controlled_vocabs #1648"
stuzart Nov 15, 2023
5bce8ff
Merge branch 'seek-1.14' into main
stuzart Nov 15, 2023
21ba058
remove field required from sample_controlled_vocabs #1648
stuzart Nov 15, 2023
eebceff
updated api tests #1661
stuzart Nov 15, 2023
969bd43
updated api examples #1661
stuzart Nov 15, 2023
9b55b7a
Seek ena upload (#1650)
kdp-cloud Nov 15, 2023
a8cf343
add extended_metadata to "Event"
whomingbird Nov 16, 2023
7840470
Merge branch 'main' into 1407-add-cm-to-other-resources
whomingbird Nov 16, 2023
7dd24f5
Adds tests for project controller
fherreazcue Nov 16, 2023
b74718d
removed isa_tags fixtures
kdp-cloud Nov 17, 2023
92cab21
Create Isa Tags factories
kdp-cloud Nov 17, 2023
3d80643
Replace fixtures by factories in sample types
kdp-cloud Nov 17, 2023
ea6d2b1
Replace fixtures in template attributes
kdp-cloud Nov 17, 2023
c5221c3
Replace IsaTage fixtures by factories in templates factories
kdp-cloud Nov 17, 2023
b5066f4
Replace IsaTag fixtures by Factories in controllers
kdp-cloud Nov 17, 2023
92fac07
Rewrite validation to something more readable
kdp-cloud Nov 17, 2023
cceb104
Remove fixture requirements for Templates and IsaTags
kdp-cloud Nov 17, 2023
4752ab6
Replace Template fixtures by factories in controller tests
kdp-cloud Nov 17, 2023
4a8cbe6
Replace Template fixtures by factories in integration tests
kdp-cloud Nov 17, 2023
ec0450a
Fix typo
kdp-cloud Nov 17, 2023
9f6259d
Remove commented out gibberish
kdp-cloud Nov 17, 2023
a4dcfb8
Split assay ST into assay - material and assay - data file
kdp-cloud Nov 17, 2023
f1d699e
Split assay template into assay - material and assay - data file
kdp-cloud Nov 17, 2023
87089a2
Fix references to old factories
kdp-cloud Nov 17, 2023
bafe91e
Remove 'puts' statements
kdp-cloud Nov 17, 2023
cc6c45e
Fixing samples_controller_test
kdp-cloud Nov 17, 2023
4f339b0
Remove Templates fixtures
kdp-cloud Nov 17, 2023
265b4fc
Only export selected row from dynamic table
kdp-cloud Nov 19, 2023
df3195f
Merge pull request #1665 from ELIXIR-Belgium/replace_fixtures_by_fact…
kdp-cloud Nov 20, 2023
cb71225
refactoring: use the format partial: rather than :partial=>
whomingbird Nov 20, 2023
af6d6b6
Merge branch 'main' into 1407-add-cm-to-other-resources
whomingbird Nov 20, 2023
d1bbe94
Make export ISA button visible if user can view the investigation
kdp-cloud Nov 16, 2023
9ac77fa
Simplification of single pages controller
kdp-cloud Nov 16, 2023
1205f2b
Add Permission check for studies and assays.
kdp-cloud Nov 17, 2023
2fcf0e5
Hide sources if user doesn't have viewing permission
kdp-cloud Nov 17, 2023
1ecc54b
Hide unauthorized samples and references to unauthorized sources
kdp-cloud Nov 17, 2023
e73f459
Hide unauthorized samples in processSequence
kdp-cloud Nov 17, 2023
43a5980
Hide unauthorized samples in assays
kdp-cloud Nov 17, 2023
958853c
Fixed existing integration tests
kdp-cloud Nov 20, 2023
2ea284f
Fix unit tests
kdp-cloud Nov 20, 2023
5449d1d
Fix functional tests
kdp-cloud Nov 20, 2023
14085e5
Create tests for sample permissions
kdp-cloud Nov 21, 2023
ae138a6
add test for assay samples
kdp-cloud Nov 21, 2023
05a748a
remove redundant `compact`
kdp-cloud Nov 21, 2023
6193cef
fix for use of controlled vocabularies without attributes #1659
stuzart Nov 21, 2023
ad64830
fix to add deleted_contributor to collections, and expanded the test …
stuzart Nov 21, 2023
67f50ed
allow users to override URL validation when the URL check returns a 4…
whomingbird Nov 21, 2023
99add07
Merge remote-tracking branch 'origin/fix-cvs-without-attributes-1659'…
whomingbird Nov 21, 2023
46756a5
small fix
whomingbird Nov 21, 2023
361f452
Merge pull request #1671 from seek4science/fix-cvs-without-attributes…
whomingbird Nov 21, 2023
76273d9
Merge branch 'main' into 1407-add-cm-to-other-resources
whomingbird Nov 21, 2023
e66050c
Fix unnecessary send and loop
fherreazcue Nov 22, 2023
564ebb6
Rollback deletion of script needed for project selection in single page
fherreazcue Nov 22, 2023
614e01f
Add project_ids to legacy_ro_crate_params
fherreazcue Nov 22, 2023
49eaea8
Merge pull request #1663 from seek4science/1407-add-cm-to-other-resou…
whomingbird Nov 22, 2023
36e70df
support and handle the allow_cv_free_text param #1648
stuzart Nov 16, 2023
a7a5261
UI checkbox with info for setting allow free text or not #1648
stuzart Nov 16, 2023
deb3ff8
update info text #1648
stuzart Nov 16, 2023
07a45fe
show a label on the sampel form, or sample type that indicates if fre…
stuzart Nov 16, 2023
6b0d2a5
localise the allow free text checkbox label #1648
stuzart Nov 17, 2023
81a894c
refactor the attribute handlers to take the associated attribute rath…
stuzart Nov 17, 2023
2368924
refactor the attribute handlers out of the attribute type, and into a…
stuzart Nov 21, 2023
68b2bfb
made attribute required when calling attribute_type_handler_factory #…
stuzart Nov 21, 2023
4655200
Add allow_cv_free_text to params
kdp-cloud Nov 22, 2023
a4228c2
Merge pull request #1674 from seek4science/override-url-validation
whomingbird Nov 22, 2023
e79aa83
Use authorized_for()
kdp-cloud Nov 22, 2023
888fdf7
Include `project_ids` in params
fbacall Nov 21, 2023
dadfe1c
Handle case where workflow params not provided
fbacall Nov 22, 2023
bd9346f
Merge pull request #1669 from ELIXIR-Belgium/fix_isa_exporter_permiss…
kdp-cloud Nov 23, 2023
64c50ed
Usage of ObjectsInput for CV Lists in the dynamic table
kdp-cloud Nov 23, 2023
5e556d6
simple seek_dev rake task for profiling a command
stuzart Nov 22, 2023
cb5fad0
Empty Spreadsheets can be downloaded
kdp-cloud Nov 23, 2023
b2055ce
upgrade caxlsx gem to use 'escape_formulas' functionality
kdp-cloud Nov 23, 2023
b70a807
Prevent formula injection
kdp-cloud Nov 23, 2023
5488029
Remove dropdown from view
kdp-cloud Nov 23, 2023
a74fdb5
Implement CV List in the upload feature
kdp-cloud Nov 24, 2023
3ba824a
enhancements to speed of doing authlook update_lookup_table_for_all_u…
stuzart Nov 23, 2023
13c9828
temporary fix for ruby-prof dependency
stuzart Nov 24, 2023
76ce648
Adapt controller for CV Lists
kdp-cloud Nov 24, 2023
c4ce7a3
Add CV term validation to upload feature
kdp-cloud Nov 24, 2023
6ff47d1
Update syntax to ajax 3 and set a timeout before reloading the page
kdp-cloud Nov 24, 2023
aef82ff
Removing error message of xlsx data validation
kdp-cloud Nov 24, 2023
b03f751
Merge branch 'seek-1.14' into main
stuzart Nov 27, 2023
c7fe193
update to the order items are dequeued from the AuthLookupUpdateQueue…
stuzart Nov 24, 2023
38357f1
Change Registered sample type name
kdp-cloud Nov 27, 2023
b65cd69
Refactor dynamic table
kdp-cloud Nov 28, 2023
e5c0e83
fix to the decouple_extracted_samples_policies, samples where being s…
stuzart Nov 27, 2023
3d3c045
Merge branch 'seek-1.14' into main
stuzart Nov 28, 2023
a536bb4
Fixing tests
kdp-cloud Nov 28, 2023
fff2a00
Update fixture spreadsheets
kdp-cloud Nov 28, 2023
2e85831
removed need to pass base_type to the attribute type handler factory …
stuzart Nov 27, 2023
2f5e950
renamed the TYPE handlers, to just handlers #1648
stuzart Nov 27, 2023
082d620
renamed AttributeTypeHandlers namespace #1648
stuzart Nov 27, 2023
d52bd81
renamed AttributeTypeHandlers tests #1648
stuzart Nov 27, 2023
a9218e8
change factory for_base_type to for_attribute
stuzart Nov 28, 2023
dbcbd57
Merge branch 'main' into remove-required-from-scv-1661
stuzart Nov 28, 2023
f82ea51
PR comments
kdp-cloud Nov 28, 2023
0119def
Fixing comments
kdp-cloud Nov 28, 2023
51dad7e
Merge pull request #1680 from ELIXIR-Belgium/issue_1676_fix_cv_list_i…
kdp-cloud Nov 28, 2023
78e5554
Move the instanceName to the single pages show view
kdp-cloud Nov 28, 2023
4efbe93
Fix exception when raising exception. #1684
fbacall Nov 30, 2023
5b3ffa8
Remove unused `publish_button_enabled` setting
fbacall Nov 30, 2023
cb3d6e9
Placeholders controller tests. #914
fbacall Nov 30, 2023
d9cdcc1
Fix Rubymine syntax complaints
fbacall Nov 30, 2023
45da009
Check all toggleable SEEK features enabled in respective controllers.…
fbacall Nov 30, 2023
19dc663
fix controlled_vocab_annotation_form fields to allow multiple items #…
stuzart Nov 30, 2023
2292ae1
Merge pull request #1688 from seek4science/enabled-features-filter
fbacall Dec 6, 2023
791a2d1
Merge pull request #1644 from ELIXIR-Belgium/seed_minimal_isa
kdp-cloud Dec 8, 2023
466923e
Merge branch 'main' into identify-ISA-JSON-compliant-investigations
somathias Dec 12, 2023
170ad70
show the job queue, and item queue, in a scrollable pane #1687
stuzart Dec 11, 2023
ea60b22
tidy indentation #1687
stuzart Dec 11, 2023
1486c6e
updated test #1687
stuzart Dec 11, 2023
e79977c
Pass current user to ISA export in investigations controller
somathias Dec 13, 2023
b2a1fc0
Add button leading to 'Default View' when in Single Page
somathias Dec 13, 2023
c0e70f0
speed up the js for creating the new rows from the json response #1691
stuzart Dec 6, 2023
c20698f
when loading the form with existing values, display disabled rows dif…
stuzart Dec 6, 2023
0528680
expand the ols client logging to show when finished if cached #1691
stuzart Dec 6, 2023
c104f86
first pass of generating the HTML server side #1691
stuzart Dec 7, 2023
1ab8525
remove the fields_for in the normal form, and always use helper _tag …
stuzart Dec 8, 2023
e28248a
improved the efficiency of finding the higher index, as it will alway…
stuzart Dec 8, 2023
6fffb9e
use select2 via objects_input to select the ontology #1691
stuzart Dec 8, 2023
cd2a7fd
fix the error reporting #1691
stuzart Dec 11, 2023
f4a24ae
enhanced the tests #1691
stuzart Dec 11, 2023
5fcca0c
some final tidying up, in particualr removed the fetch ols as JSON #1691
stuzart Dec 11, 2023
5969bd5
Make button functionality depend on ISA JSON compliance for studies a…
somathias Dec 13, 2023
99a827d
Make appearance of Assay Design tab dependent on ISA-JSON compliance
somathias Dec 13, 2023
ccb460d
Merge branch 'main' into identify-ISA-JSON-compliant-investigations
somathias Dec 13, 2023
268020a
removed the display of item usage on each resource list item #1699
stuzart Dec 13, 2023
818ab25
Add buttons to switch between SP and default view to ISA elements
somathias Dec 14, 2023
bf3200c
Delete export ISA function from single pages controller
somathias Dec 14, 2023
8dc61ed
Move test for ISA export to investigations controller test
somathias Dec 14, 2023
9d7a46c
Update app/views/assays/_buttons.html.erb
somathias Dec 14, 2023
ef5d53e
Update app/views/studies/_buttons.html.erb
somathias Dec 14, 2023
b28894d
Update app/views/investigations/_buttons.html.erb
somathias Dec 14, 2023
60fcdde
Delete unused route
somathias Dec 14, 2023
e876b2b
Fix path in isa_exporter_test
somathias Dec 14, 2023
5670de6
Prevent changing if investigations are ISA-JSON compliant once studie…
somathias Dec 15, 2023
c4859d1
Load tables to the Study design tab in deafult view
kdp-cloud Dec 15, 2023
36d8ad6
assays and studies should only be considered ISA-compliant if they ha…
kdp-cloud Dec 15, 2023
c887fc9
Only allow to link deafult studies to default investigations
kdp-cloud Dec 15, 2023
de35420
Only allow to link deafult assays to default studies
kdp-cloud Dec 15, 2023
bc851af
Add validation to the ISA exporter
kdp-cloud Dec 15, 2023
4e8fba2
Fix ISA exporter tests
kdp-cloud Dec 15, 2023
a9478e4
Fix user_content_actions overwriting
fbacall Dec 16, 2023
5359ce0
SVG panning/zooming
fbacall Dec 18, 2023
6eae785
Add isa-json compliance validation to Sample Type model
kdp-cloud Dec 18, 2023
9c74321
Write tests for determining ISA-JSON compliant sample types
kdp-cloud Dec 18, 2023
c7a6819
Merge pull request #1643 from seek4science/add_new_dropdown
fbacall Dec 18, 2023
80b24dc
Implementing select2 for sharing permission project list: enhance sea…
whomingbird Dec 18, 2023
7905e27
Ensure that the 'membering of' and 'working at' fields are consistent…
whomingbird Dec 18, 2023
c7a030b
Change column and method name to adhere to ruby style convention
somathias Dec 19, 2023
2a9db2b
Add missing ? to function call
somathias Dec 19, 2023
0b67189
Remove SVG renderer
fbacall Dec 19, 2023
cd11481
Ensure TextRenderer escapes content
fbacall Dec 19, 2023
81b592b
Render raw SVG blobs as an image rather than text
fbacall Dec 19, 2023
0d8cb97
Permit inline styles in SVG diagrams, or they look broken
fbacall Dec 19, 2023
c36765d
Tweaks to pannable SVG appearance.
fbacall Dec 19, 2023
aa59d54
Test fix
fbacall Dec 19, 2023
273c4fd
Extended Metadata unfolded at start #1696
whomingbird Dec 19, 2023
1f35b3d
fix bug in isa_assays_form
kdp-cloud Dec 20, 2023
5cf41b0
Fix bug in template attributes schema
kdp-cloud Dec 20, 2023
152c7bf
Add isa json compliance test to studies
kdp-cloud Jan 3, 2024
00f2d2e
Add ISA JSON compliant factories
kdp-cloud Jan 3, 2024
1bfe95e
Add assay ISA JSON compliance test
kdp-cloud Jan 3, 2024
5d16598
Fix typo
kdp-cloud Jan 3, 2024
a78470d
rename the folder name to "extended_metadata_drafts"
whomingbird Jan 4, 2024
f9bb54c
Merge pull request #1703 from seek4science/share-permission-project-l…
whomingbird Jan 8, 2024
a8579d3
Merge branch 'seek-1.14' into main
stuzart Jan 8, 2024
1bc0822
Merge pull request #1705 from seek4science/svg-pan
fbacall Jan 8, 2024
37c76c6
Functional button test for isa json compliant investigations
somathias Jan 9, 2024
bd685ad
Bump puma from 5.6.7 to 5.6.8
dependabot[bot] Jan 8, 2024
4388abd
Merge pull request #1707 from ELIXIR-Belgium/issue_1675_move_instance…
kdp-cloud Jan 9, 2024
5e54bb0
Split functional button tests for investigations
somathias Jan 9, 2024
cc78c40
Add functional test for Single Page button to Studies and Assays
somathias Jan 9, 2024
b643f17
Add functional test for adjusted buttons for isa json compliant Studies
somathias Jan 9, 2024
53d7a46
Add functional test for adjusted buttons for isa json compliant Assays
somathias Jan 9, 2024
8b71b2a
Add the dynamic table to the assay design tab in default view
kdp-cloud Jan 9, 2024
fb692f7
Fix study selection in single page
kdp-cloud Jan 9, 2024
e4e8896
Options to allow programmes and "site managed programme"'s projects t…
fbacall Nov 24, 2023
a2d2ab2
nil fix
fbacall Nov 27, 2023
c0d376f
Fix intermittent test failure (only on postgres?)
fbacall Nov 27, 2023
9399645
Fix programme admin regression
fbacall Nov 27, 2023
34aae7f
Fix typo. Tests. Don't check permission in `activate` method
fbacall Nov 27, 2023
aa33939
Auto activation tests
fbacall Nov 27, 2023
b0bac8e
Remove activation permission tests (handled in controller now)
fbacall Nov 28, 2023
005a758
Reword project acceptance email if automatically accepted
fbacall Nov 28, 2023
e43ec01
Add auto approve options to admin section
fbacall Nov 28, 2023
2e77d65
Refactor flaky test assertion
fbacall Nov 28, 2023
f80e9f2
Rejig logic to avoid need for unsaved log object
fbacall Nov 28, 2023
2e099c8
Fix form UX issues
fbacall Nov 29, 2023
8768624
Allow automatic creation/activation of programme & project together i…
fbacall Dec 6, 2023
feb3b78
bug fix : Select2 doesn't work when embedded in a bootstrap modal
whomingbird Jan 10, 2024
686a849
Merge pull request #1698 from seek4science/identify-ISA-JSON-complian…
somathias Jan 10, 2024
ccb32be
remember that the external search has been checked #1712
stuzart Jan 9, 2024
4dcc0b0
tweak weirdly failing test to avoid unexpected failures #1712
stuzart Jan 9, 2024
2228132
Merge branch 'seek-1.14' into main
stuzart Jan 10, 2024
61bb837
Fix for select2 inputs not working in bootstrap modals
fbacall Jan 9, 2024
5d72055
Revert "bug fix : Select2 doesn't work when embedded in a bootstrap m…
stuzart Jan 10, 2024
a562a73
Add rake upgrade task for recognising ISA JSON compliant investigations
kdp-cloud Jan 10, 2024
14c9b23
Merge pull request #1685 from seek4science/auto-approve
fbacall Jan 10, 2024
e1bf41f
Add allow free text fields to template attributes
kdp-cloud Dec 14, 2023
23f0f1a
add allow_free_cv_text param to templates controller
kdp-cloud Dec 14, 2023
230e15d
add allow_cv_free_text attribute
kdp-cloud Dec 14, 2023
1200d27
add allow_cv_free_text in templates js
kdp-cloud Dec 14, 2023
6cff2e8
add allow_cv_free_text dat attribute
kdp-cloud Dec 14, 2023
6cf9483
Simplify filtering of ISA tags
kdp-cloud Dec 15, 2023
eae11a5
Improve template error messages
kdp-cloud Dec 15, 2023
a4c8401
filter ISA Tags for all attributes, not only new rows
kdp-cloud Dec 15, 2023
998ccaf
Simplify hiding logic of the input row in the template attributes
kdp-cloud Dec 18, 2023
9723830
Add linked sample types to template attributes
kdp-cloud Dec 18, 2023
6f8ab8c
Add linked sample type id to the templates controller
kdp-cloud Dec 18, 2023
da99e72
Revert "Simplify filtering of ISA tags"
kdp-cloud Dec 19, 2023
029bbad
Add registered samples logic to the sample types
kdp-cloud Dec 19, 2023
e3f9497
Implement registered samples in the dynamic table
kdp-cloud Dec 19, 2023
b6b5556
Add linked sample_type reference to the template show page
kdp-cloud Dec 19, 2023
e7be32b
Fix reference to linked sample types in template attribute form
kdp-cloud Dec 19, 2023
fa3ce36
Hide input row in Sample types
kdp-cloud Dec 19, 2023
795f210
Make inaccessible registered samles hidden in dynamic table
kdp-cloud Dec 20, 2023
989e6ce
Fix exporting the registered samples
kdp-cloud Dec 20, 2023
ad7a077
Add registered samples as bagdes to table
kdp-cloud Dec 20, 2023
9822f5a
add data attribute to span
kdp-cloud Dec 20, 2023
51290cd
Add registered samples to single pages controller
kdp-cloud Dec 20, 2023
32c3c03
Add registered samples to ajax request
kdp-cloud Dec 20, 2023
9334ce6
Merge pull request #1716 from ELIXIR-Belgium/rake_task_isa_compliance
kdp-cloud Jan 10, 2024
66ca77f
only show "expand all" and "collapse all" buttons when there are link…
whomingbird Jan 10, 2024
49df7a7
Fix rake task
kdp-cloud Jan 10, 2024
a530365
Merge pull request #1717 from ELIXIR-Belgium/fix_rake_task_identify_i…
kdp-cloud Jan 10, 2024
9a2fdcf
code refactoring
whomingbird Jan 11, 2024
460e057
make "remove" and "add new" buttons smaller
whomingbird Jan 11, 2024
be4c045
Bump RedCloth from 4.3.2 to 4.3.3
dependabot[bot] Jan 9, 2024
ff2b9f3
add import project functionality
Menjabin Dec 14, 2023
8e70cf1
added unit and functional tests for import
Menjabin Dec 19, 2023
0d36230
Merge pull request #1718 from seek4science/extended-metadata-display-…
whomingbird Jan 11, 2024
1126a6e
Add modal to sample_types_forn instead of new isa_studies
kdp-cloud Jan 11, 2024
582300c
improved the order and logic of checking if extract samples button sh…
stuzart Jan 9, 2024
dc6653c
only check if there is one sample type matching, don't need all at th…
stuzart Jan 9, 2024
ffaf4b7
check if the data file matches sample type with ajax call #1710
stuzart Jan 10, 2024
c63c923
improve caching and error handling #1710
stuzart Jan 11, 2024
2b9f0aa
revert back to checking against all samples types to build up the cac…
stuzart Jan 11, 2024
08254d5
removed redundant test #1710
stuzart Jan 11, 2024
49b6aed
fix silly mistake #1710
stuzart Jan 12, 2024
b4b5b5b
final tweaks following checking PR #1710
stuzart Jan 12, 2024
5d7956d
Update terminology associated with remaining custom metadata.
whomingbird Jan 16, 2024
0ea9bd4
Merge pull request #1704 from ELIXIR-Belgium/issue_1701_fix_controlle…
kdp-cloud Jan 18, 2024
34a9b59
Merge remote-tracking branch 'Seek-1.14/main' into merge-seek-main
ReneHaensel Jan 23, 2024
a0eef20
deleting MDS3.2 seeds
ReneHaensel Jan 18, 2024
ab1dbc0
adding MDS3.3 Seeds
ReneHaensel Jan 22, 2024
f3e1724
transfer docs to Deployment
ReneHaensel Jan 18, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -66,6 +66,7 @@ public/javascripts/i18n.js
public/javascripts/translations.js
public/stylesheets/*_cached.css
public/system/
public/sitemaps/*

public/assets/
public/assets_dev/
Expand Down
11 changes: 8 additions & 3 deletions Gemfile
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ gem 'RedCloth', '>=4.3.0'
gem 'simple-spreadsheet-extractor', '~> 0.18.0'
gem 'open4'
gem 'sample-template-generator', '~>0.7'
gem 'rmagick', '4.2.5'
gem 'rmagick', '5.3.0'
gem 'rest-client', '~>2.0'
gem 'factory_bot', '~> 6.2.1'
gem 'bio', '~> 1.5.1'
Expand Down Expand Up @@ -111,6 +111,7 @@ gem 'ransack'

gem 'terser', '~> 1.1', '>= 1.1.1'


# Rails 4 upgrade
gem 'activerecord-session_store'
gem 'rails-observers'
Expand Down Expand Up @@ -155,7 +156,7 @@ gem 'remotipart', '~> 1.4.4' # Allows file upload in AJAX forms

gem 'rails-static-router'

gem 'caxlsx', '>= 3.0' # Write content to an xlsx file
gem 'caxlsx', '>= 4.0' # Write content to an xlsx file
gem 'caxlsx_rails', '~> 0.6.2'

gem 'net-ftp'
Expand All @@ -179,11 +180,13 @@ group :development do

gem 'web-console', '>= 4.1.0'
gem 'rack-mini-profiler', '~> 2.0'
gem "flamegraph", "~> 0.9.5"
gem "stackprof", "~> 0.2.25"
gem 'listen', '~> 3.3'
gem 'ruby-prof'
end

group :test do
gem 'ruby-prof'
gem 'test-prof'
gem 'rails-perftest'
gem 'minitest', '~> 5.14'
Expand All @@ -204,3 +207,5 @@ group :test, :development do
gem 'teaspoon'
gem 'teaspoon-mocha'
end

gem "sitemap_generator", "~> 6.3"
23 changes: 16 additions & 7 deletions Gemfile.lock
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ GIT
GEM
remote: https://rubygems.org/
specs:
RedCloth (4.3.2)
RedCloth (4.3.3)
actioncable (6.1.7.6)
actionpack (= 6.1.7.6)
activesupport (= 6.1.7.6)
Expand Down Expand Up @@ -168,7 +168,7 @@ GEM
builder (3.2.4)
case_transform (0.2)
activesupport
caxlsx (3.3.0)
caxlsx (4.0.0)
htmlentities (~> 4.3, >= 4.3.4)
marcel (~> 1.0)
nokogiri (~> 1.10, >= 1.10.4)
Expand Down Expand Up @@ -286,6 +286,7 @@ GEM
loofah (>= 2.3.1)
sax-machine (>= 1.0)
ffi (1.15.5)
flamegraph (0.9.5)
fssm (0.2.10)
gem-licenses (0.2.2)
gitlab_omniauth-ldap (2.2.0)
Expand Down Expand Up @@ -490,7 +491,7 @@ GEM
net-smtp (0.3.3)
net-protocol
netrc (0.11.0)
nio4r (2.5.9)
nio4r (2.7.0)
nokogiri (1.14.5)
mini_portile2 (~> 2.8.0)
racc (~> 1.4)
Expand Down Expand Up @@ -543,6 +544,7 @@ GEM
rack
rake (>= 0.8.1)
pg (1.3.1)
pkg-config (1.5.5)
pothoven-attachment_fu (3.3.2)
pr_geohash (1.0.0)
private_address_check (0.5.0)
Expand All @@ -561,7 +563,7 @@ GEM
psych (5.1.0)
stringio
public_suffix (5.0.0)
puma (5.6.7)
puma (5.6.8)
nio4r (~> 2.0)
pyu-ruby-sasl (0.0.3.3)
racc (1.7.1)
Expand Down Expand Up @@ -728,7 +730,8 @@ GEM
nokogiri
rexml (3.2.5)
rfc-822 (0.4.1)
rmagick (4.2.5)
rmagick (5.3.0)
pkg-config (~> 1.4)
ro-bundle (0.3.0)
addressable (~> 2.8.0)
json (~> 2.3.0)
Expand Down Expand Up @@ -830,6 +833,8 @@ GEM
simplecov_json_formatter (~> 0.1)
simplecov-html (0.12.3)
simplecov_json_formatter (0.1.3)
sitemap_generator (6.3.0)
builder (~> 3.0)
slop (3.6.0)
snaky_hash (2.0.0)
hashie
Expand All @@ -854,6 +859,7 @@ GEM
activesupport (>= 5.2)
sprockets (>= 3.0.0)
sqlite3 (1.4.2)
stackprof (0.2.25)
stringio (3.0.1)
sunspot (2.6.0)
pr_geohash (~> 1.0)
Expand Down Expand Up @@ -973,7 +979,7 @@ DEPENDENCIES
bootsnap (>= 1.4.4)
bootstrap-sass (>= 3.4.1)
bundler (>= 1.8.4)
caxlsx (>= 3.0)
caxlsx (>= 4.0)
caxlsx_rails (~> 0.6.2)
cff (~> 0.9.0)
citeproc-ruby (~> 2.0.0)
Expand All @@ -992,6 +998,7 @@ DEPENDENCIES
exception_notification
factory_bot (~> 6.2.1)
feedjira
flamegraph (~> 0.9.5)
fleximage!
fssm
gem-licenses
Expand Down Expand Up @@ -1063,7 +1070,7 @@ DEPENDENCIES
responders
rest-client (~> 2.0)
rfc-822
rmagick (= 4.2.5)
rmagick (= 5.3.0)
ro-bundle (~> 0.3.0)
ro-crate (~> 0.5.1)
rspec-rails (~> 5.1)
Expand All @@ -1077,8 +1084,10 @@ DEPENDENCIES
seedbank
simple-spreadsheet-extractor (~> 0.18.0)
simplecov
sitemap_generator (~> 6.3)
sprockets-rails
sqlite3 (~> 1.4)
stackprof (~> 0.2.25)
stringio (= 3.0.1)
sunspot_matchers
sunspot_rails
Expand Down
4 changes: 3 additions & 1 deletion app/assets/javascripts/application.js
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,7 @@
//= require calendar
//= require inplace
//= require strain
//= require checkbox
//= require batch_asset_selection
//= require cytoscape.js-2.5.0/cytoscape
//= require cytoscape_isa_graph
//= require bives
Expand All @@ -75,3 +75,5 @@
//= require git
//= require jquery.splitter/jquery.splitter.min
//= require select2.full.min
//= require licenses
//= require svg-pan-zoom-3.6.1/svg-pan-zoom.min
20 changes: 20 additions & 0 deletions app/assets/javascripts/application_shared.js.erb
Original file line number Diff line number Diff line change
Expand Up @@ -175,6 +175,9 @@ function digValue(object, path) {
elements.removeClass(cssClass)
}, 1100);
};

// Fixes select2 in modals: https://github.com/select2/select2/issues/1436
$j.fn.modal.Constructor.prototype.enforceFocus = function () {};
}(jQuery));

$j(document).ready(function () {
Expand Down Expand Up @@ -399,6 +402,23 @@ $j(document).ready(function () {
$j('#sidebar-toggle').click(Sidebar.toggle);
$j('#sidebar-close').click(Sidebar.toggle);
$j(document).on('click', '.sidebar-backdrop', Sidebar.toggle);

Licenses.init();

$j('.svg-pan-zoom').each(function () {
// Does not seem to work using jQuery load event, so doing it vanilla way
this.addEventListener('load', function () {
svgPanZoom(this, {
zoomEnabled: true,
dblClickZoomEnabled: true,
mouseWheelZoomEnabled: false,
controlIconsEnabled: true,
contain: false,
fit: true
});
});
});
});


var URL_ROOT = '<%= Rails.application.config.relative_url_root %>';
121 changes: 121 additions & 0 deletions app/assets/javascripts/batch_asset_selection.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,121 @@
$j(document).ready(function () {
$j('.batch-selection-select-children').click(BatchAssetSelection.selectChildren);
$j('.batch-selection-deselect-children').click(BatchAssetSelection.deselectChildren);
$j('.batch-selection-collapse-children').click(BatchAssetSelection.collapseRecursively);
$j('.batch-selection-expand-children').click(BatchAssetSelection.expandRecursively);
$j('.batch-selection-show-permissions').click(function (event) {
event.preventDefault();
$j('.batch-selection-permission-list', $j(this).closest('.batch-selection-scope')).show();
})
$j('.batch-selection-hide-permissions').click(function (event) {
event.preventDefault();
$j('.batch-selection-permission-list', $j(this).closest('.batch-selection-scope')).hide();
})
$j('.batch-selection-hide-blocked').click(BatchAssetSelection.hideBlocked).click(); // Trigger on page load
$j('.batch-selection-show-blocked').click(BatchAssetSelection.showBlocked);
$j('.batch-selection-collapse-toggle').click(function () {
BatchAssetSelection.toggleCollapse(this);
return false;
});
$j('.batch-selection-check-btn').click(function (event) {
if (event.target.nodeName.includes('BUTTON')) {
$j(this).find(':checkbox').click();
}
});
$j('.batch-selection-check-btn :checkbox').click(function () {
BatchAssetSelection.checkRepeatedItems(this.className, this.checked);
});
$j('.batch-selection-managed-by-toggle').click(function (event) {
event.preventDefault();
$j('.batch-selection-managed-by-list:first', $j(this).closest('.batch-selection-scope')).toggle();
});
$j('.batch-selection-permissions-toggle').click(function (event) {
event.preventDefault();
$j('.batch-selection-permission-list:first', $j(this).closest('.batch-selection-scope')).toggle();
});
});

const BatchAssetSelection = {
blockedSelectors: '.not-visible, .not-manageable, .already-published',
selectChildren: function (event) {
event.preventDefault();
BatchAssetSelection.setChildren($j(this).closest('.batch-selection-scope'), true);
},

deselectChildren: function (event) {
event.preventDefault();
BatchAssetSelection.setChildren($j(this).closest('.batch-selection-scope'), false);
},

setChildren: function (scope, value) {
const children = $j(':checkbox', scope);
const classes = new Set();
for (let child of children) {
classes.add(child.className);
}

classes.forEach(c => BatchAssetSelection.checkRepeatedItems(c, value));
},

checkRepeatedItems: function (className, check) {
document.getElementById('batch-asset-selection')
.querySelectorAll('.' + className).forEach(e => e.checked = check);
},

toggleManagers: function () {
$j('.batch-selection-managed-by-list', $j(this).closest('.batch-selection-asset')).toggle();

return false;
},

toggleCollapse: function (element, state) {
if (state === undefined) {
state = !element.classList.contains('open');
}
element.classList.toggle('open', state);
$j(element).closest('.batch-selection-scope').children('.batch-selection-collapse').toggle(state);
},

collapseRecursively: function () {
const scope = $j(this).closest('.batch-selection-scope').children('.batch-selection-collapse');
const toggles = $j('.batch-selection-collapse-toggle', scope);
for (let toggle of toggles) {
BatchAssetSelection.toggleCollapse(toggle, false);
}

return false;
},

expandRecursively: function () {
const scope = $j(this).closest('.batch-selection-scope').children('.batch-selection-collapse');
const toggles = $j('.batch-selection-collapse-toggle', scope);
for (let toggle of toggles) {
BatchAssetSelection.toggleCollapse(toggle, true);
}

return false;
},

hideBlocked: function () {
const children = $j(this).closest('.batch-selection-scope')
.find(BatchAssetSelection.blockedSelectors)
.closest('.batch-selection-asset');
for (let child of children) {
const element = $j(child);
// Don't hide if any non-blocked children
if (!$j(':checkbox', element).length) {
element.hide();
}
}

return false;
},

showBlocked: function () {
$j(this).closest('.batch-selection-scope')
.find(BatchAssetSelection.blockedSelectors)
.closest('.batch-selection-asset').show();

return false;
}
}
42 changes: 0 additions & 42 deletions app/assets/javascripts/checkbox.js

This file was deleted.

Loading