iqvoc 4.9.0 → 4.10.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/CHANGELOG.md +5 -0
- data/Gemfile +1 -1
- data/Gemfile.lock +3 -3
- data/README.md +18 -2
- data/app/assets/javascripts/iqvoc/autocomplete.js +1 -1
- data/app/assets/stylesheets/iqvoc/components/_entity_select.scss +1 -0
- data/app/controllers/collections/versions_controller.rb +17 -17
- data/app/controllers/collections_controller.rb +3 -0
- data/app/controllers/concepts/alphabetical_controller.rb +5 -2
- data/app/controllers/concepts/versions_controller.rb +17 -17
- data/app/controllers/concepts_controller.rb +3 -0
- data/app/controllers/concerns/controller_extensions.rb +1 -1
- data/app/models/concept/base.rb +5 -3
- data/app/models/label/base.rb +1 -1
- data/app/presenters/search_result.rb +1 -0
- data/app/views/collections/_form.html.erb +1 -0
- data/app/views/collections/show_unpublished.html.erb +3 -0
- data/app/views/concepts/_form.html.erb +2 -0
- data/app/views/concepts/show_unpublished.html.erb +4 -1
- data/app/views/partials/concept/relation/skos/_narrower.html.erb +2 -2
- data/app/views/partials/note/_note.html.erb +4 -1
- data/config/locales/de.yml +4 -1
- data/config/locales/en.yml +4 -1
- data/iqvoc.gemspec +1 -1
- data/lib/iqvoc/environments/development.rb +2 -3
- data/lib/iqvoc/environments/production.rb +3 -0
- data/lib/iqvoc/environments/test.rb +2 -1
- data/lib/iqvoc/version.rb +1 -1
- data/public/export/1420.nt +28 -0
- data/public/export/18228.nt +28 -0
- data/public/export/228686568701989066971611496838516248366.nt +28 -0
- data/public/export/27081.nt +28 -0
- data/public/export/336213965367806878006328280025568269144.nt +28 -0
- data/public/export/37687357862944733731237338243666999173.nt +28 -0
- data/public/export/43096.nt +28 -0
- data/public/export/46386.nt +28 -0
- data/public/export/53694.nt +28 -0
- data/public/export/61002.nt +28 -0
- data/public/export/iqvoc_dump-2016-02-11_10-32.xml +16 -0
- data/public/export/iqvoc_dump-2016-02-11_10-34.ttl +20 -0
- data/public/uploads/import/179004af8019c0f359a40431a8bd25ff.nt +259 -0
- data/public/uploads/import/4639b3e690c601979c8eb0373103fdb9.nt +259 -0
- data/public/uploads/import/795fe8419d071576cc8a4c08af2e2b1f.nt +259 -0
- data/public/uploads/import/7b9c355872346d23ed2f1e70e2d67724.nt +259 -0
- data/public/uploads/import/a6dbf3e1390463c7c6782f9bdbb5c9e2.nt +259 -0
- data/public/uploads/import/aea99360eca9d73d0e050d8bb9fc5f11.nt +259 -0
- data/public/uploads/import/bb42d0ca084b95d017e54e1a46243d42.nt +259 -0
- data/public/uploads/import/be829d88516a9bced467f49326b5e1f1.nt +259 -0
- data/public/uploads/import/dc432a7daeef3fdbba9c1dbc00fe72cb.nt +259 -0
- data/public/uploads/import/eaf10eecedc505d92e6b673a0b54b325.nt +259 -0
- data/public/uploads/tmp/1442817570-31784-4562/hobbies.nt +259 -0
- data/public/uploads/tmp/1446191508-3940-8607/hobbies.nt +259 -0
- data/public/uploads/tmp/1456325902-75110-0481/hobbies.nt +259 -0
- data/public/uploads/tmp/1461919870-29840-4090/hobbies.nt +259 -0
- data/public/uploads/tmp/1461920957-31094-8111/hobbies.nt +259 -0
- data/public/uploads/tmp/1462874108-80930-7543/hobbies.nt +259 -0
- data/public/uploads/tmp/1463068043-37090-6309/hobbies.nt +259 -0
- data/public/uploads/tmp/1463068182-37316-2356/hobbies.nt +259 -0
- data/public/uploads/tmp/1463126928-5331-8975/hobbies.nt +259 -0
- data/public/uploads/tmp/1463127124-5664-1168/hobbies.nt +259 -0
- data/test/integration/api_documentation_test.rb +32 -0
- metadata +41 -7
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: e1475e23fc06bf41a94bb3ceda90957f083638e0
|
|
4
|
+
data.tar.gz: f1974964f991cb31e0e4b78bd89a842fd9e2ec70
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 161ed636284243cd11817ef5dd04e11745572b726b394f55956a7eed52307358cbe401fd7ce6bfdc7b6a87b39a436867cf59f19a7ea16badd2088686cc9f573f
|
|
7
|
+
data.tar.gz: cfa95b56a8f5c3509b2c2bf1cfa4ffdca881f9582dfb0d3b796ba6f3aee3dd4929c70680efe7426cd5a6aad3333e5f5502f4c49e45bf062f015e10cb31e6037b
|
data/CHANGELOG.md
CHANGED
data/Gemfile
CHANGED
|
@@ -36,7 +36,7 @@ gem 'uglifier'
|
|
|
36
36
|
gem 'sass-rails', '~> 5.0.0'
|
|
37
37
|
gem 'bootstrap_form', '~> 2.2.0'
|
|
38
38
|
gem 'font-awesome-rails', '~> 4.3.0'
|
|
39
|
-
gem 'apipie-rails', '~> 0.3.
|
|
39
|
+
gem 'apipie-rails', '~> 0.3.5'
|
|
40
40
|
gem 'maruku', require: false
|
|
41
41
|
gem 'database_cleaner'
|
|
42
42
|
gem 'delayed_job_active_record', '~> 4.0.1'
|
data/Gemfile.lock
CHANGED
|
@@ -48,7 +48,7 @@ GEM
|
|
|
48
48
|
thread_safe (~> 0.3, >= 0.3.4)
|
|
49
49
|
tzinfo (~> 1.1)
|
|
50
50
|
addressable (2.3.7)
|
|
51
|
-
apipie-rails (0.3.
|
|
51
|
+
apipie-rails (0.3.5)
|
|
52
52
|
json
|
|
53
53
|
arel (6.0.3)
|
|
54
54
|
authlogic (3.4.5)
|
|
@@ -354,7 +354,7 @@ DEPENDENCIES
|
|
|
354
354
|
activerecord-jdbcmysql-adapter
|
|
355
355
|
activerecord-jdbcpostgresql-adapter (~> 1.3.13)
|
|
356
356
|
activerecord-jdbcsqlite3-adapter
|
|
357
|
-
apipie-rails (~> 0.3.
|
|
357
|
+
apipie-rails (~> 0.3.5)
|
|
358
358
|
authlogic (~> 3.4.2)
|
|
359
359
|
autoprefixer-rails (~> 5.1.8)
|
|
360
360
|
awesome_print
|
|
@@ -397,4 +397,4 @@ DEPENDENCIES
|
|
|
397
397
|
webmock
|
|
398
398
|
|
|
399
399
|
BUNDLED WITH
|
|
400
|
-
1.10.
|
|
400
|
+
1.10.6
|
data/README.md
CHANGED
|
@@ -23,8 +23,13 @@ vocabularies:
|
|
|
23
23
|
* editorial features for registered users
|
|
24
24
|
* publishing the vocabulary in the Semantic Web
|
|
25
25
|
|
|
26
|
-
iQvoc is built with state-of-the-art technology and can be easily customized
|
|
27
|
-
|
|
26
|
+
iQvoc is built with state-of-the-art technology and can be easily customized according to user's needs.
|
|
27
|
+
|
|
28
|
+
## Demo
|
|
29
|
+
|
|
30
|
+
You can try out iQvoc right now! In our [sandbox](http://try.iqvoc.net/) you can play around with the public views.
|
|
31
|
+
If you like to test the collaborative functions simply [request](mailto:iqvoc@innoq.com) your personal demo account.
|
|
32
|
+
|
|
28
33
|
## Setup
|
|
29
34
|
|
|
30
35
|
### Heroku
|
|
@@ -96,6 +101,17 @@ provides a basic overview of the possibilities.
|
|
|
96
101
|
|
|
97
102
|
Documentation resources can be found in the [wiki](https://github.com/innoq/iqvoc/wiki).
|
|
98
103
|
|
|
104
|
+
iQvoc provides an (inline) API documentation which can be found on `APP_URI/apidoc`. Check out our sandbox to see it in action: http://try.iqvoc.net/apidoc/
|
|
105
|
+
|
|
106
|
+
## Related projects
|
|
107
|
+
|
|
108
|
+
We provide several extensions to add additional features to iQvoc:
|
|
109
|
+
|
|
110
|
+
* [iqvoc_skosxl](https://github.com/innoq/iqvoc_skosxl): SKOS-XL extension for iQvoc
|
|
111
|
+
* [iqvoc_compound_forms](https://github.com/innoq/iqvoc_compound_forms): Compound labels for iQvoc
|
|
112
|
+
* [iqvoc_inflectionals](https://github.com/innoq/iqvoc_inflectionals): Inflectionals for iQvoc
|
|
113
|
+
* [iqvoc_similar_terms](https://github.com/innoq/iqvoc_similar_terms): iQvoc engine for similar terms
|
|
114
|
+
|
|
99
115
|
## Versioning
|
|
100
116
|
|
|
101
117
|
Releases will follow a semantic versioning format:
|
|
@@ -26,26 +26,26 @@ class Collections::VersionsController < ApplicationController
|
|
|
26
26
|
authorize! :merge, new_version
|
|
27
27
|
|
|
28
28
|
ActiveRecord::Base.transaction do
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
synced = triplestore_syncer.sync([new_version]) # XXX: blocking
|
|
38
|
-
flash[:warning] = 'triplestore synchronization failed' unless synced # TODO: i18n
|
|
39
|
-
end
|
|
40
|
-
|
|
41
|
-
flash[:success] = t('txt.controllers.versioning.published')
|
|
42
|
-
redirect_to collection_path(new_version)
|
|
43
|
-
else
|
|
44
|
-
flash[:error] = t('txt.controllers.versioning.merged_publishing_error')
|
|
29
|
+
new_version.rdf_updated_at = nil
|
|
30
|
+
new_version.publish
|
|
31
|
+
new_version.unlock
|
|
32
|
+
if new_version.publishable?
|
|
33
|
+
new_version.save
|
|
34
|
+
|
|
35
|
+
if current_collection && !current_collection.destroy
|
|
36
|
+
flash[:error] = t('txt.controllers.versioning.merged_delete_error')
|
|
45
37
|
redirect_to collection_path(new_version, published: 0)
|
|
46
38
|
end
|
|
39
|
+
|
|
40
|
+
if Iqvoc.config['triplestore.autosync']
|
|
41
|
+
synced = triplestore_syncer.sync([new_version]) # XXX: blocking
|
|
42
|
+
flash[:warning] = 'triplestore synchronization failed' unless synced # TODO: i18n
|
|
43
|
+
end
|
|
44
|
+
|
|
45
|
+
flash[:success] = t('txt.controllers.versioning.published')
|
|
46
|
+
redirect_to collection_path(new_version)
|
|
47
47
|
else
|
|
48
|
-
flash[:error] = t('txt.controllers.versioning.
|
|
48
|
+
flash[:error] = t('txt.controllers.versioning.merged_publishing_error')
|
|
49
49
|
redirect_to collection_path(new_version, published: 0)
|
|
50
50
|
end
|
|
51
51
|
end
|
|
@@ -119,6 +119,9 @@ class CollectionsController < ApplicationController
|
|
|
119
119
|
@collection = Iqvoc::Collection.base_class.by_origin(params[:id]).last!
|
|
120
120
|
authorize! :update, @collection
|
|
121
121
|
|
|
122
|
+
# set to_review to false if someone edits a concepts
|
|
123
|
+
concept_params["to_review"] = "false"
|
|
124
|
+
|
|
122
125
|
if @collection.update_attributes(concept_params)
|
|
123
126
|
flash[:success] = I18n.t('txt.controllers.collections.save.success')
|
|
124
127
|
redirect_to collection_path(@collection, published: 0)
|
|
@@ -30,7 +30,8 @@ class Concepts::AlphabeticalController < ConceptsController
|
|
|
30
30
|
.order("letter").map(&:letter)
|
|
31
31
|
|
|
32
32
|
if dataset = datasets.detect { |dataset| dataset.name == params[:dataset] }
|
|
33
|
-
|
|
33
|
+
query = params[:prefix].mb_chars.downcase.to_s
|
|
34
|
+
@search_results = dataset.alphabetical_search(query, I18n.locale) || []
|
|
34
35
|
@search_results = Kaminari.paginate_array(@search_results).page(params[:page])
|
|
35
36
|
else
|
|
36
37
|
@search_results = find_labelings
|
|
@@ -54,10 +55,12 @@ class Concepts::AlphabeticalController < ConceptsController
|
|
|
54
55
|
protected
|
|
55
56
|
|
|
56
57
|
def find_labelings
|
|
58
|
+
query = params[:prefix].mb_chars.downcase.to_s
|
|
59
|
+
|
|
57
60
|
Iqvoc::Concept.pref_labeling_class.
|
|
58
61
|
concept_published.
|
|
59
62
|
concept_not_expired.
|
|
60
|
-
label_begins_with(
|
|
63
|
+
label_begins_with(query).
|
|
61
64
|
by_label_language(I18n.locale).
|
|
62
65
|
includes(:target).
|
|
63
66
|
order("LOWER(#{Label::Base.table_name}.value)").
|
|
@@ -31,26 +31,26 @@ class Concepts::VersionsController < ApplicationController
|
|
|
31
31
|
authorize! :merge, new_version
|
|
32
32
|
|
|
33
33
|
ActiveRecord::Base.transaction do
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
synced = triplestore_syncer.sync([new_version]) # XXX: blocking
|
|
43
|
-
flash[:warning] = 'triplestore synchronization failed' unless synced # TODO: i18n
|
|
44
|
-
end
|
|
45
|
-
|
|
46
|
-
flash[:success] = t('txt.controllers.versioning.published')
|
|
47
|
-
redirect_to concept_path(id: new_version)
|
|
48
|
-
else
|
|
49
|
-
flash[:error] = t('txt.controllers.versioning.merged_publishing_error')
|
|
34
|
+
new_version.rdf_updated_at = nil
|
|
35
|
+
new_version.publish
|
|
36
|
+
new_version.unlock
|
|
37
|
+
if new_version.publishable?
|
|
38
|
+
new_version.save
|
|
39
|
+
|
|
40
|
+
if current_concept && !current_concept.destroy
|
|
41
|
+
flash[:error] = t('txt.controllers.versioning.merged_delete_error')
|
|
50
42
|
redirect_to concept_path(published: 0, id: new_version)
|
|
51
43
|
end
|
|
44
|
+
|
|
45
|
+
if Iqvoc.config['triplestore.autosync']
|
|
46
|
+
synced = triplestore_syncer.sync([new_version]) # XXX: blocking
|
|
47
|
+
flash[:warning] = 'triplestore synchronization failed' unless synced # TODO: i18n
|
|
48
|
+
end
|
|
49
|
+
|
|
50
|
+
flash[:success] = t('txt.controllers.versioning.published')
|
|
51
|
+
redirect_to concept_path(id: new_version)
|
|
52
52
|
else
|
|
53
|
-
flash[:error] = t('txt.controllers.versioning.
|
|
53
|
+
flash[:error] = t('txt.controllers.versioning.merged_publishing_error')
|
|
54
54
|
redirect_to concept_path(published: 0, id: new_version)
|
|
55
55
|
end
|
|
56
56
|
end
|
|
@@ -174,6 +174,9 @@ class ConceptsController < ApplicationController
|
|
|
174
174
|
|
|
175
175
|
@datasets = datasets_as_json
|
|
176
176
|
|
|
177
|
+
# set to_review to false if someone edits a concepts
|
|
178
|
+
concept_params["to_review"] = "false"
|
|
179
|
+
|
|
177
180
|
if @concept.update_attributes(concept_params)
|
|
178
181
|
flash[:success] = I18n.t('txt.controllers.versioned_concept.update_success')
|
|
179
182
|
redirect_to concept_path(published: 0, id: @concept)
|
data/app/models/concept/base.rb
CHANGED
|
@@ -180,7 +180,7 @@ class Concept::Base < ActiveRecord::Base
|
|
|
180
180
|
include_to_deep_cloning(:relations, :referenced_relations)
|
|
181
181
|
|
|
182
182
|
has_many :labelings, foreign_key: 'owner_id', class_name: 'Labeling::Base', dependent: :destroy
|
|
183
|
-
has_many :labels, through: :labelings, source: :target
|
|
183
|
+
has_many :labels, -> { order(:value) }, through: :labelings, source: :target
|
|
184
184
|
# Deep cloning has to be done in specific relations. S. pref_labels etc
|
|
185
185
|
|
|
186
186
|
has_many :notes, class_name: 'Note::Base', as: :owner, dependent: :destroy
|
|
@@ -237,6 +237,7 @@ class Concept::Base < ActiveRecord::Base
|
|
|
237
237
|
class_name: Iqvoc::Concept.pref_labeling_class_name
|
|
238
238
|
|
|
239
239
|
has_many :pref_labels,
|
|
240
|
+
-> { order(:value) },
|
|
240
241
|
through: :pref_labelings,
|
|
241
242
|
source: :target
|
|
242
243
|
|
|
@@ -245,6 +246,7 @@ class Concept::Base < ActiveRecord::Base
|
|
|
245
246
|
class_name: Iqvoc::Concept.alt_labeling_class_name
|
|
246
247
|
|
|
247
248
|
has_many :alt_labels,
|
|
249
|
+
-> { order(:value) },
|
|
248
250
|
through: :alt_labelings,
|
|
249
251
|
source: :target
|
|
250
252
|
|
|
@@ -435,13 +437,13 @@ class Concept::Base < ActiveRecord::Base
|
|
|
435
437
|
@labels ||= labelings.each_with_object({}) do |labeling, hash|
|
|
436
438
|
((hash[labeling.class.name.to_s] ||= {})[labeling.target.language] ||= []) << labeling.target if labeling.target
|
|
437
439
|
end
|
|
438
|
-
((@labels && @labels[labeling_class] && @labels[labeling_class][lang]) || []).select{ |l| l.published? || !only_published }
|
|
440
|
+
((@labels && @labels[labeling_class] && @labels[labeling_class][lang]) || []).select{ |l| l.published? || !only_published }.sort_by(&:value)
|
|
439
441
|
end
|
|
440
442
|
|
|
441
443
|
def related_concepts_for_relation_class(relation_class, only_published = true)
|
|
442
444
|
relation_class = relation_class.name if relation_class < ActiveRecord::Base # Use the class name string
|
|
443
445
|
relations.select { |rel| rel.class.name == relation_class }.map(&:target).
|
|
444
|
-
select { |c| c.published? || !only_published }
|
|
446
|
+
select { |c| c.published? || !only_published }.sort_by(&:pref_label)
|
|
445
447
|
end
|
|
446
448
|
|
|
447
449
|
def matches_for_class(match_class)
|
data/app/models/label/base.rb
CHANGED
|
@@ -63,7 +63,7 @@ class Label::Base < ActiveRecord::Base
|
|
|
63
63
|
end
|
|
64
64
|
|
|
65
65
|
def self.by_query_value(query)
|
|
66
|
-
where(["LOWER(#{table_name}.value) LIKE ?", query.
|
|
66
|
+
where(["LOWER(#{table_name}.value) LIKE ?", query.mb_chars.downcase.to_s])
|
|
67
67
|
end
|
|
68
68
|
|
|
69
69
|
# Attention: This means that even label classes without version controll will also
|
|
@@ -33,6 +33,9 @@
|
|
|
33
33
|
<% else %>
|
|
34
34
|
<%= button_to t("txt.views.versioning.to_edit_mode"),
|
|
35
35
|
collection_versions_lock_path(:origin => @collection.origin), :class => 'btn btn-default' if can?(:lock, @collection) %>
|
|
36
|
+
<% end %>
|
|
37
|
+
|
|
38
|
+
<% if can?(:destroy, @collection) %>
|
|
36
39
|
<%= button_to t("txt.views.versioning.delete"),
|
|
37
40
|
collection_path(:published => 0, :id => @collection.origin),
|
|
38
41
|
:method => :delete,
|
|
@@ -37,11 +37,14 @@
|
|
|
37
37
|
<% else %>
|
|
38
38
|
<%= button_to t("txt.views.versioning.to_edit_mode"),
|
|
39
39
|
concept_versions_lock_path(:origin => @concept.origin), :class => 'btn btn-default' if can?(:lock, @concept) %>
|
|
40
|
+
<% end %>
|
|
41
|
+
|
|
42
|
+
<% if can?(:destroy, @concept) %>
|
|
40
43
|
<%= button_to t("txt.views.versioning.delete"),
|
|
41
44
|
concept_path(:published => 0, :id => @concept.origin),
|
|
42
45
|
:method => :delete,
|
|
43
46
|
:class => 'btn btn-danger',
|
|
44
|
-
:data => { :confirm => I18n.t("txt.views.versioning.delete_confirm") }
|
|
47
|
+
:data => { :confirm => I18n.t("txt.views.versioning.delete_confirm") } %>
|
|
45
48
|
<% end %>
|
|
46
49
|
</div>
|
|
47
50
|
|
|
@@ -4,9 +4,9 @@
|
|
|
4
4
|
<% if concept.narrower_relations.any? %>
|
|
5
5
|
<div class="selector">
|
|
6
6
|
<% if(params[:published] == '0') %>
|
|
7
|
-
<%= treeview(concept.narrower_relations.published_with_newer_versions.map(&:target)) %>
|
|
7
|
+
<%= treeview(concept.narrower_relations.published_with_newer_versions.map(&:target).sort_by(&:pref_label)) %>
|
|
8
8
|
<% else %>
|
|
9
|
-
<%= treeview(concept.narrower_relations.published.map(&:target)) %>
|
|
9
|
+
<%= treeview(concept.narrower_relations.published.map(&:target).sort_by(&:pref_label)) %>
|
|
10
10
|
<% end %>
|
|
11
11
|
</div>
|
|
12
12
|
<% end %>
|
|
@@ -2,7 +2,10 @@
|
|
|
2
2
|
<div class="translation" lang="<%= note.language %>">
|
|
3
3
|
<span class="language_flap"><%= note.language %></span>
|
|
4
4
|
<div class="note_content">
|
|
5
|
-
|
|
5
|
+
<% if note.value %>
|
|
6
|
+
<p><%= auto_link(note.value, :html => { :target => '_blank' }) %></p>
|
|
7
|
+
<% end %>
|
|
8
|
+
|
|
6
9
|
<% if note.annotations.any? %>
|
|
7
10
|
<dl class="note_annotations">
|
|
8
11
|
<% note.annotations.each do |annotation| %>
|
data/config/locales/de.yml
CHANGED
|
@@ -53,6 +53,7 @@ de:
|
|
|
53
53
|
welcome: "Hallo %{user_name}"
|
|
54
54
|
move: "Verschieben"
|
|
55
55
|
save: "Speichern"
|
|
56
|
+
cancel: "Abbrechen"
|
|
56
57
|
copy: "Kopieren"
|
|
57
58
|
reset: "Zurücksetzen"
|
|
58
59
|
language: "Sprache"
|
|
@@ -109,8 +110,10 @@ de:
|
|
|
109
110
|
sources: Föderation
|
|
110
111
|
settings:
|
|
111
112
|
title: Titel
|
|
112
|
-
|
|
113
|
+
available_languages: verfügbare Sprachen
|
|
113
114
|
languages_pref_labeling: Sprachen für bevorzugte Labels
|
|
115
|
+
languages_notes: Sprachen für Notes
|
|
116
|
+
languages_further_labelings_Labeling: Sprachen für alternative Labels
|
|
114
117
|
languages_further_labelings_Labeling::SKOS::AltLabel: Sprachen für alternative Labels
|
|
115
118
|
performance_unbounded_hierarchy: unbegrenzte Hierarchie-Tiefe
|
|
116
119
|
triplestore_url: Triplestore-URL
|
data/config/locales/en.yml
CHANGED
|
@@ -53,6 +53,7 @@ en:
|
|
|
53
53
|
welcome: "Hello %{user_name}"
|
|
54
54
|
move: "Move"
|
|
55
55
|
save: "Save"
|
|
56
|
+
cancel: "Cancel"
|
|
56
57
|
copy: 'Copy'
|
|
57
58
|
reset: "Reset"
|
|
58
59
|
language: "Language"
|
|
@@ -109,8 +110,10 @@ en:
|
|
|
109
110
|
sources: Federation
|
|
110
111
|
settings:
|
|
111
112
|
title: Site title
|
|
112
|
-
|
|
113
|
+
available_languages: available languages
|
|
113
114
|
languages_pref_labeling: Languages for preferred labels
|
|
115
|
+
languages_notes: Languages for notes
|
|
116
|
+
languages_further_labelings_Labeling: Languages for alternative labels
|
|
114
117
|
languages_further_labelings_Labeling::SKOS::AltLabel: Languages for alternative labels
|
|
115
118
|
performance_unbounded_hierarchy: Unlimited hierarchy depth
|
|
116
119
|
triplestore_url: Triplestore URL
|
data/iqvoc.gemspec
CHANGED
|
@@ -32,7 +32,7 @@ Gem::Specification.new do |s|
|
|
|
32
32
|
s.add_dependency 'linkeddata'
|
|
33
33
|
s.add_dependency 'font-awesome-rails', '~> 4.2.0'
|
|
34
34
|
s.add_dependency 'uglifier', '>= 1.3.0'
|
|
35
|
-
s.add_dependency 'apipie-rails'
|
|
35
|
+
s.add_dependency 'apipie-rails', '~> 0.3.5'
|
|
36
36
|
s.add_dependency 'maruku'
|
|
37
37
|
s.add_dependency 'database_cleaner'
|
|
38
38
|
s.add_dependency 'delayed_job_active_record', '~> 4.0.1'
|
|
@@ -70,10 +70,9 @@ module Iqvoc::Environments
|
|
|
70
70
|
config.assets.raise_runtime_errors = true
|
|
71
71
|
|
|
72
72
|
# Raises error for missing translations
|
|
73
|
-
|
|
73
|
+
config.action_view.raise_on_missing_translations = true
|
|
74
74
|
|
|
75
|
+
# Raises error for missing translations
|
|
75
76
|
config.i18n.enforce_available_locales = true
|
|
76
|
-
|
|
77
|
-
config.action_view.raise_on_missing_translations = true
|
|
78
77
|
end
|
|
79
78
|
end
|