iqvoc 4.5.0 → 4.5.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (125) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +5 -0
  3. data/app/assets/javascripts/framework.js +1 -0
  4. data/app/assets/javascripts/iqvoc/label_resolver.js +21 -5
  5. data/app/assets/javascripts/iqvoc/treeview.js +16 -14
  6. data/app/controllers/collections_controller.rb +2 -2
  7. data/app/views/collections/_collection.html.erb +6 -10
  8. data/app/views/concepts/alphabetical/_search_result.html.erb +1 -1
  9. data/app/views/concepts/hierarchical/_treeview.html.erb +1 -1
  10. data/app/views/partials/collection/_edit_link_base.html.erb +1 -1
  11. data/app/views/partials/labeling/skos/_search_result.html.erb +4 -1
  12. data/config/locales/de.yml +1 -1
  13. data/config/locales/en.yml +1 -1
  14. data/db/schema.rb +147 -137
  15. data/lib/iqvoc/ability.rb +0 -1
  16. data/lib/iqvoc/version.rb +1 -1
  17. data/public/export/10104.nt +28 -0
  18. data/public/export/10361.nt +28 -0
  19. data/public/export/11661.nt +28 -0
  20. data/public/export/12103.nt +28 -0
  21. data/public/export/13189.nt +28 -0
  22. data/public/export/13639.nt +28 -0
  23. data/public/export/17712.nt +28 -0
  24. data/public/export/196884929177355112085070890849161334857.ttl +467 -0
  25. data/public/export/23823.nt +28 -0
  26. data/public/export/23927.nt +28 -0
  27. data/public/export/26252.nt +28 -0
  28. data/public/export/30787.nt +28 -0
  29. data/public/export/32113.nt +28 -0
  30. data/public/export/36868.nt +28 -0
  31. data/public/export/41744.nt +28 -0
  32. data/public/export/41776.nt +28 -0
  33. data/public/export/41839.nt +28 -0
  34. data/public/export/43554.nt +28 -0
  35. data/public/export/43751.nt +28 -0
  36. data/public/export/46366.nt +28 -0
  37. data/public/export/47965.nt +28 -0
  38. data/public/export/48396.nt +28 -0
  39. data/public/export/48957.nt +28 -0
  40. data/public/export/49679.nt +28 -0
  41. data/public/export/50354.nt +28 -0
  42. data/public/export/50860.nt +28 -0
  43. data/public/export/53229.nt +28 -0
  44. data/public/export/54626.nt +28 -0
  45. data/public/export/5495.nt +28 -0
  46. data/public/export/58436.nt +28 -0
  47. data/public/export/59109.nt +28 -0
  48. data/public/export/59787.nt +28 -0
  49. data/public/export/61441.nt +28 -0
  50. data/public/export/63168.nt +28 -0
  51. data/public/export/65302.nt +28 -0
  52. data/public/export/685.nt +28 -0
  53. data/public/uploads/import/02ee37548ae03562975ff833668971f5.nt +259 -0
  54. data/public/uploads/import/0648ee30731c939b0b29b8b3da02a37f.nt +259 -0
  55. data/public/uploads/import/11358ab82ceeebc158527bfe4a18ea1f.nt +259 -0
  56. data/public/uploads/import/1185628b03dc34398db8cc7866236417.nt +259 -0
  57. data/public/uploads/import/1397348a6f86aa6ed5331a84d3edcebc.nt +259 -0
  58. data/public/uploads/import/15f25175384c6d83d405d7be7c469c21.nt +259 -0
  59. data/public/uploads/import/2aef7428fe8406ee9c2c2b4778d78958.nt +259 -0
  60. data/public/uploads/import/34ba57752426c098eb527fb72c1bc925.nt +259 -0
  61. data/public/uploads/import/39ef9696a70b6a4f428eb6c60aa9a271.nt +259 -0
  62. data/public/uploads/import/3e7b846c89e9fda86148db18bfde007e.nt +259 -0
  63. data/public/uploads/import/43ba81cc0fb410dd50368aeb099a9390.nt +259 -0
  64. data/public/uploads/import/43e3dfbf0be754ec0b5eb6e4fed0b8dc.nt +259 -0
  65. data/public/uploads/import/4aab54eeefc9e9f2b5b2065619f38156.nt +259 -0
  66. data/public/uploads/import/59c145e15f686d0e96e5f2aa5c3317f6.nt +259 -0
  67. data/public/uploads/import/642383112706fa0022b8b45d5a940250.nt +259 -0
  68. data/public/uploads/import/66cab794b19872b597d0022523e33a60.nt +259 -0
  69. data/public/uploads/import/68dcbfd4457a91339dd8220be5d1f453.nt +259 -0
  70. data/public/uploads/import/6cecd2a4b748a5320ac379c92012b93e.nt +259 -0
  71. data/public/uploads/import/6d444bcd4abb765e611dce0bd4ecb7cc.nt +259 -0
  72. data/public/uploads/import/78d16c2d7483a3691ff1da2be21df82a.nt +259 -0
  73. data/public/uploads/import/7f87755bb7b7c681d6b4b0ce0a8a504d.nt +259 -0
  74. data/public/uploads/import/859e0763655994d7808addd3607797b9.nt +259 -0
  75. data/public/uploads/import/8c525c29316516b9ecac652d9d5ef54b.nt +259 -0
  76. data/public/uploads/import/93d710915123535827d989ed18c7f2b7.nt +259 -0
  77. data/public/uploads/import/9853224628875304e2c5b7a57e2bc8fe.nt +259 -0
  78. data/public/uploads/import/a7a39d9e22b6fe63fc6b0c2b1e44489f.nt +259 -0
  79. data/public/uploads/import/af6a9b869c6c4880e3989860ddeb98cb.nt +259 -0
  80. data/public/uploads/import/b8a7d32702291873a5e5e0ad974a6b6f.nt +259 -0
  81. data/public/uploads/import/bb14e9984e8b2bfa259fdbda03266354.nt +259 -0
  82. data/public/uploads/import/c9522fe0bf5dd2a14910adebf0da8f42.nt +259 -0
  83. data/public/uploads/import/d50b84732aeca82a2bcacb23f24fcc30.nt +259 -0
  84. data/public/uploads/import/ec5b61da759622ae4bfd75b3cf2593f1.nt +259 -0
  85. data/public/uploads/import/ef70cad10a327c30ae9920a75892df99.nt +259 -0
  86. data/public/uploads/import/f0062c164dc5d5e0d8856d758c48d174.nt +259 -0
  87. data/public/uploads/import/f01de50b1fef0b545550891f14b8784f.nt +259 -0
  88. data/public/uploads/tmp/1406704472-23289-6442/hobbies.nt +259 -0
  89. data/public/uploads/tmp/1406704801-23526-3968/hobbies.nt +259 -0
  90. data/public/uploads/tmp/1406790282-29330-1842/hobbies.nt +259 -0
  91. data/public/uploads/tmp/1406793457-30879-9653/hobbies.nt +259 -0
  92. data/public/uploads/tmp/1406794064-31233-6170/hobbies.nt +259 -0
  93. data/public/uploads/tmp/1406800828-34289-3506/hobbies.nt +259 -0
  94. data/public/uploads/tmp/1406897328-53459-8218/hobbies.nt +259 -0
  95. data/public/uploads/tmp/1406897516-53651-3601/hobbies.nt +259 -0
  96. data/public/uploads/tmp/1407146282-68166-6424/hobbies.nt +259 -0
  97. data/public/uploads/tmp/1407146467-68207-4153/hobbies.nt +259 -0
  98. data/public/uploads/tmp/1407308789-83575-4816/hobbies.nt +259 -0
  99. data/public/uploads/tmp/1407315773-88878-5428/hobbies.nt +259 -0
  100. data/public/uploads/tmp/1407327369-93658-3775/hobbies.nt +259 -0
  101. data/public/uploads/tmp/1407480326-61820-6782/hobbies.nt +259 -0
  102. data/public/uploads/tmp/1407480914-62732-4675/hobbies.nt +259 -0
  103. data/public/uploads/tmp/1407481222-63044-1363/hobbies.nt +259 -0
  104. data/public/uploads/tmp/1407481407-63198-8078/hobbies.nt +259 -0
  105. data/public/uploads/tmp/1407481774-63364-8454/hobbies.nt +259 -0
  106. data/public/uploads/tmp/1407481889-63528-5685/hobbies.nt +259 -0
  107. data/public/uploads/tmp/1407482056-63717-7127/hobbies.nt +259 -0
  108. data/public/uploads/tmp/1407482190-63874-3528/hobbies.nt +259 -0
  109. data/public/uploads/tmp/1407758145-85457-0968/hobbies.nt +259 -0
  110. data/public/uploads/tmp/1407835330-30825-9332/hobbies.nt +259 -0
  111. data/public/uploads/tmp/1407846652-37604-2441/hobbies.nt +259 -0
  112. data/public/uploads/tmp/1407846757-37727-6009/hobbies.nt +259 -0
  113. data/public/uploads/tmp/1407846820-37802-7221/hobbies.nt +259 -0
  114. data/public/uploads/tmp/1407846864-37891-0756/hobbies.nt +259 -0
  115. data/public/uploads/tmp/1407846903-37993-3442/hobbies.nt +259 -0
  116. data/public/uploads/tmp/1407846991-38198-1499/hobbies.nt +259 -0
  117. data/public/uploads/tmp/1407915929-44712-5601/hobbies.nt +259 -0
  118. data/public/uploads/tmp/1408438315-33265-6838/hobbies.nt +259 -0
  119. data/public/uploads/tmp/1408440572-34435-2805/hobbies.nt +259 -0
  120. data/public/uploads/tmp/1408447928-37628-4079/hobbies.nt +259 -0
  121. data/public/uploads/tmp/1408464923-56294-4587/hobbies.nt +259 -0
  122. data/public/uploads/tmp/1408539293-63641-4407/hobbies.nt +259 -0
  123. data/test/controllers/{concepts_controller_test.rb → concept_movement_test.rb} +3 -1
  124. data/vendor/assets/javascripts/URI.js +2006 -0
  125. metadata +111 -4
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 99bea7894088f98e903840ee975f4ce1106657a5
4
- data.tar.gz: 10c07f875139b1efc2abff513f12fd4e20385a1c
3
+ metadata.gz: 51d515f612b0d70c2b047431d331d739f6147996
4
+ data.tar.gz: fd86209d8993c47f7e154ea6447a83d50c63b16f
5
5
  SHA512:
6
- metadata.gz: 99cf4160a2ca89da8ed57c4654e7f64fadc02ced0d12b80abd89a6468ce7d51ac843c517b6426fd07448100e15abce4d050fd8db7cf7b05aa7861c7b6042166f
7
- data.tar.gz: 0110104c182fcc86ba50df85efb666267ff2bcbaf0fcc4faf8e049926909572a3c60f6f48cba2aa3cb4d5d3234fdbc99842deaae3e1a59f6c551103c1d41c2a3
6
+ metadata.gz: 254db459f18c50c68dda9c9512979ce477ecb311e8fa1068a4f41aa4fda09b3b003c504cc2a654d19908ce7566ac9e5c245f629271dc11f44df76b57ec5711b0
7
+ data.tar.gz: dbf89ead1ca799193a50a109c5062ed380a6fbc7301af574098291d40895b555659226f030686cbb4c8a6761bec9f31ec98b9c64c14d9ca650cc416580d96868
data/CHANGELOG.md CHANGED
@@ -1,3 +1,8 @@
1
+ ## [4.5.1]
2
+
3
+ * Fix hierarchical collection view
4
+ * some minor improvements
5
+
1
6
  ## [4.5.0]
2
7
 
3
8
  4.5.0 brings drag'n'drop concept editing capabilities and a new hierarchical
@@ -3,6 +3,7 @@
3
3
  //= require jquery-ui.custom
4
4
  //= require jquery-ui.datepicker-de
5
5
  //= require tree.jquery.js
6
+ //= require URI.js
6
7
  //= require storage
7
8
  //= require bootstrap/transition
8
9
  //= require bootstrap/collapse
@@ -7,11 +7,18 @@ return function(context) {
7
7
  };
8
8
 
9
9
  function retrieveLabel(conceptURL, el, callback) {
10
+ var datasets = $("body").data("datasets");
10
11
  var proxy = $("body").data("remote-label-path");
11
- $.get(proxy, { concept_url: conceptURL }, function(data, status, xhr) {
12
- el.text(data.label);
13
- el.removeClass("unlabeled");
14
- });
12
+
13
+ var conceptBaseURL = getBaseURI(conceptURL);
14
+
15
+ // try to get remote label if conceptBaseURL is a iqvoc instance
16
+ if(conceptBaseURL in datasets) {
17
+ $.get(proxy, { concept_url: conceptURL }, function(data, status, xhr) {
18
+ el.text(data.label);
19
+ el.removeClass("unlabeled");
20
+ });
21
+ }
15
22
  }
16
23
 
17
24
  function processNode(i, node) {
@@ -20,4 +27,13 @@ function processNode(i, node) {
20
27
  retrieveLabel(uri, el);
21
28
  }
22
29
 
23
- }(jQuery))
30
+ function getBaseURI(url) {
31
+ var uri = new URI(url);
32
+ var parts = {
33
+ protocol: uri.protocol(),
34
+ hostname: uri.host()
35
+ };
36
+ return URI.build(parts);
37
+ }
38
+
39
+ }(jQuery));
@@ -28,7 +28,8 @@ function Treeview(container) {
28
28
  id: item.attr('id'),
29
29
  url: item.children('a').attr('href'),
30
30
  update_url: item.data('update-url'),
31
- published: item.data('published')
31
+ published: item.data('published'),
32
+ additionalText: item.children('span.additional_info')
32
33
  };
33
34
  });
34
35
 
@@ -40,26 +41,18 @@ function Treeview(container) {
40
41
  openedIcon: $('<i class="fa fa-minus-square-o"></i>'),
41
42
  data: data,
42
43
  dataUrl: function(node) {
43
- // build ajax url (add root param)
44
- // FIXME: uggly url concatenation
45
- if (url.indexOf('published') < 0) {
46
- return node ? url + '?root=' + node.id : url;
47
- }
48
- else {
49
- return node ? url + '&root=' + node.id : url;
50
- }
44
+ var uri = URI(url).addQuery('root', node.id);
45
+ return uri.normalize().toString();
51
46
  },
52
47
  onCreateLi: function(node, $li) {
53
- // TODO: add additionalText if present
54
- var link = $('<a href="' + node.url +'">' + node.name + '</a>');
48
+ var link = buildLink(node.url, node.name, node.additionalText);
55
49
  $li.find('.jqtree-title').replaceWith(link);
56
50
 
57
51
  // mark published/unpublished items
58
52
  if (typeof node.published !== 'undefined' && !node.published) {
59
53
  // modify draft link
60
- if (link.attr('href').indexOf('published') < 0) {
61
- link.attr('href', link.attr('href')+'?published=0'); // FIXME: implicit knowledge
62
- }
54
+ var href = URI(link.attr('href'));
55
+ link.attr('href', href.addQuery('published', 0));
63
56
  link.addClass('unpublished');
64
57
  } else {
65
58
  link.addClass('published');
@@ -209,6 +202,15 @@ function Treeview(container) {
209
202
  $tree.tree('updateNode', node, {moved: false});
210
203
  }
211
204
 
205
+ function buildLink(url, label, additionalText) {
206
+ var link = $('<a>').attr('href', url).html(label);
207
+
208
+ if (additionalText) {
209
+ link = link.after(' ', additionalText);
210
+ }
211
+ return link;
212
+ }
213
+
212
214
  }
213
215
 
214
216
  return function(selector) {
@@ -37,8 +37,8 @@ class CollectionsController < ApplicationController
37
37
  collections.map do |collection|
38
38
  { id: collection.id,
39
39
  url: collection_path(id: collection, format: :html),
40
- text: CGI.escapeHTML(collection.pref_label.to_s),
41
- hasChildren: collection.subcollections.any?,
40
+ name: CGI.escapeHTML(collection.pref_label.to_s),
41
+ load_on_demand: collection.subcollections.any?,
42
42
  additionalText: " (#{collection.additional_info})"
43
43
  }
44
44
  end
@@ -1,15 +1,11 @@
1
1
  <%- has_children = collection.subcollections.any? -%>
2
- <li class="<%= has_children ? "hasChildren" : "" %>" id="<%= collection.id %>">
3
- <%= link_to collection.pref_label.to_s,
4
- collection_path(:id => collection) %>
2
+ <li class="<%= has_children ? "hasChildren" : "" %>"
3
+ id="<%= collection.id %>"
4
+ data-has-children="<%= has_children %>"
5
+ >
6
+ <%= link_to collection.pref_label.to_s, collection_path(id: collection) %>
5
7
 
6
8
  <%- if collection.additional_info -%>
7
- (<%= collection.additional_info %>)
8
- <%- end -%>
9
-
10
- <%- if has_children -%>
11
- <ul>
12
- <li><span class="placeholder">&nbsp;</span></li>
13
- </ul>
9
+ <span class="additional_info">(<%= collection.additional_info %>)</span>
14
10
  <%- end -%>
15
11
  </li>
@@ -3,7 +3,7 @@
3
3
  <%= link_to result.label.to_s, result.path,
4
4
  :alt => result.concept.origin, :data => { 'resource-path' => result.path }, :class => 'concept-item-link' %>
5
5
  <% if result.concept.additional_info.present? %>
6
- (<%= result.concept.additional_info %>)
6
+ <span class="additional_info">(<%= result.concept.additional_info %>)</span>
7
7
  <% end %>
8
8
  </p>
9
9
 
@@ -24,7 +24,7 @@
24
24
  <% end %>
25
25
 
26
26
  <% if concept.additional_info.present? %>
27
- (<%= concept.additional_info %>)
27
+ <span class="additional_info">(<%= concept.additional_info %>)</span>
28
28
  <% end %>
29
29
  </li>
30
30
  <% end %>
@@ -1,4 +1,4 @@
1
1
  <%= link_to truncate(item.pref_label.to_s, :length => 45), (item.published? ? collection_path(item) : collection_path(item, :published => 0)) %>
2
2
  <% if item.additional_info %>
3
- (<%= item.additional_info %>)
3
+ <span class="additional_info">(<%= item.additional_info %>)</span>
4
4
  <% end %>
@@ -1,6 +1,9 @@
1
1
  <% if owner = result.owner %>
2
2
  <li class="search-result" data-rdf-namespace="<%= result.rdf_namespace %>" data-rdf-predicate="<%= result.rdf_predicate %>" data-rdf-value="<%= result.to_s %>" data-rdf-language="<%= result.language %>">
3
- <%= link_to_object(owner, result.target.value, :class => 'search-result-link', :data => { 'resource-path' => rdf_path(owner.origin, :lang => nil, :format => nil) }) %> <% if owner.additional_info.present? %>(<%= owner.additional_info %>)<% end %>
3
+ <%= link_to_object(owner, result.target.value, :class => 'search-result-link', :data => { 'resource-path' => rdf_path(owner.origin, :lang => nil, :format => nil) }) %>
4
+ <% if owner.additional_info.present? %>
5
+ <span class="additional_info">(<%= owner.additional_info %>)</span>
6
+ <% end %>
4
7
  <dl class="search-result-meta">
5
8
  <dt class="search-result-key"><%= t('txt.views.search_results.type') %></dt>
6
9
  <dd class="search-result-value" data-key="<%= t('txt.views.search_results.type') %>"><%= result.model_name.human %></dd>
@@ -103,7 +103,7 @@ de:
103
103
  languages: Sprachen
104
104
  performance: Performance
105
105
  triplestore: Triplestore
106
- sources: Verteilte Suche
106
+ sources: Föderation
107
107
  settings:
108
108
  title: Titel
109
109
  languages_notes: Sprachen für Notes
@@ -103,7 +103,7 @@ en:
103
103
  languages: languages
104
104
  performance: Performance
105
105
  triplestore: triplestore
106
- sources: Distributed search
106
+ sources: Federation
107
107
  settings:
108
108
  title: site title
109
109
  languages_notes: languages for notes
data/db/schema.rb CHANGED
@@ -11,177 +11,187 @@
11
11
  #
12
12
  # It's strongly recommended that you check this file into your version control system.
13
13
 
14
- ActiveRecord::Schema.define(version: 20_140_506_133_619) do
14
+ ActiveRecord::Schema.define(version: 20140807123413) do
15
15
 
16
- create_table 'collection_members', force: true do |t|
17
- t.integer 'collection_id'
18
- t.integer 'target_id'
19
- t.string 'type'
16
+ create_table "collection_members", force: true do |t|
17
+ t.integer "collection_id"
18
+ t.integer "target_id"
19
+ t.string "type"
20
20
  end
21
21
 
22
- add_index 'collection_members', %w(collection_id target_id type), name: 'ix_collections_fk_type', using: :btree
22
+ add_index "collection_members", ["collection_id", "target_id", "type"], name: "ix_collections_fk_type", using: :btree
23
23
 
24
- create_table 'concept_relations', force: true do |t|
25
- t.string 'type'
26
- t.integer 'owner_id'
27
- t.integer 'target_id'
28
- t.datetime 'created_at'
29
- t.datetime 'updated_at'
30
- t.integer 'rank', default: 100
24
+ create_table "concept_relations", force: true do |t|
25
+ t.string "type"
26
+ t.integer "owner_id"
27
+ t.integer "target_id"
28
+ t.datetime "created_at"
29
+ t.datetime "updated_at"
30
+ t.integer "rank", default: 100
31
31
  end
32
32
 
33
- add_index 'concept_relations', %w(owner_id target_id), name: 'ix_concept_relations_fk', using: :btree
34
-
35
- create_table 'concepts', force: true do |t|
36
- t.string 'type'
37
- t.string 'origin', limit: 4000
38
- t.integer 'rev', default: 1
39
- t.date 'published_at'
40
- t.integer 'published_version_id'
41
- t.integer 'locked_by'
42
- t.date 'expired_at'
43
- t.date 'follow_up'
44
- t.boolean 'to_review'
45
- t.date 'rdf_updated_at'
46
- t.datetime 'created_at'
47
- t.datetime 'updated_at'
48
- t.boolean 'top_term', default: false
33
+ add_index "concept_relations", ["owner_id", "target_id"], name: "ix_concept_relations_fk", using: :btree
34
+
35
+ create_table "concepts", force: true do |t|
36
+ t.string "type"
37
+ t.string "origin", limit: 4000
38
+ t.integer "rev", default: 1
39
+ t.date "published_at"
40
+ t.integer "published_version_id"
41
+ t.integer "locked_by"
42
+ t.date "expired_at"
43
+ t.date "follow_up"
44
+ t.boolean "to_review"
45
+ t.date "rdf_updated_at"
46
+ t.datetime "created_at"
47
+ t.datetime "updated_at"
48
+ t.boolean "top_term", default: false
49
49
  end
50
50
 
51
- add_index 'concepts', ['origin'], name: 'ix_concepts_on_origin', length: { 'origin' => 255 }, using: :btree
52
- add_index 'concepts', ['published_version_id'], name: 'ix_concepts_publ_version_id', using: :btree
51
+ add_index "concepts", ["origin"], name: "ix_concepts_on_origin", length: {"origin"=>255}, using: :btree
52
+ add_index "concepts", ["published_version_id"], name: "ix_concepts_publ_version_id", using: :btree
53
53
 
54
- create_table 'configuration_settings', force: true do |t|
55
- t.string 'key'
56
- t.string 'value'
54
+ create_table "configuration_settings", force: true do |t|
55
+ t.string "key"
56
+ t.string "value"
57
57
  end
58
58
 
59
- create_table 'delayed_jobs', force: true do |t|
60
- t.integer 'priority', default: 0, null: false
61
- t.integer 'attempts', default: 0, null: false
62
- t.text 'handler', null: false
63
- t.text 'last_error'
64
- t.datetime 'run_at'
65
- t.datetime 'locked_at'
66
- t.datetime 'failed_at'
67
- t.string 'locked_by'
68
- t.string 'queue'
69
- t.datetime 'created_at'
70
- t.datetime 'updated_at'
59
+ create_table "delayed_jobs", force: true do |t|
60
+ t.integer "priority", default: 0, null: false
61
+ t.integer "attempts", default: 0, null: false
62
+ t.text "handler", null: false
63
+ t.text "last_error"
64
+ t.datetime "run_at"
65
+ t.datetime "locked_at"
66
+ t.datetime "failed_at"
67
+ t.string "locked_by"
68
+ t.string "queue"
69
+ t.datetime "created_at"
70
+ t.datetime "updated_at"
71
71
  end
72
72
 
73
- add_index 'delayed_jobs', %w(priority run_at), name: 'delayed_jobs_priority', using: :btree
74
-
75
- create_table 'exports', force: true do |t|
76
- t.integer 'user_id'
77
- t.text 'output'
78
- t.boolean 'success', default: false
79
- t.integer 'file_type'
80
- t.string 'token'
81
- t.datetime 'created_at'
82
- t.datetime 'updated_at'
83
- t.datetime 'finished_at'
84
- t.string 'default_namespace'
73
+ add_index "delayed_jobs", ["priority", "run_at"], name: "delayed_jobs_priority", using: :btree
74
+
75
+ create_table "exports", force: true do |t|
76
+ t.integer "user_id"
77
+ t.text "output"
78
+ t.boolean "success", default: false
79
+ t.integer "file_type"
80
+ t.string "token"
81
+ t.datetime "created_at"
82
+ t.datetime "updated_at"
83
+ t.datetime "finished_at"
84
+ t.string "default_namespace"
85
85
  end
86
86
 
87
- add_index 'exports', ['user_id'], name: 'index_exports_on_user_id', using: :btree
88
-
89
- create_table 'imports', force: true do |t|
90
- t.integer 'user_id'
91
- t.text 'output'
92
- t.boolean 'success', default: false
93
- t.datetime 'created_at'
94
- t.datetime 'updated_at'
95
- t.datetime 'finished_at'
96
- t.string 'import_file'
97
- t.boolean 'publish'
98
- t.string 'default_namespace'
87
+ add_index "exports", ["user_id"], name: "index_exports_on_user_id", using: :btree
88
+
89
+ create_table "imports", force: true do |t|
90
+ t.integer "user_id"
91
+ t.text "output"
92
+ t.boolean "success", default: false
93
+ t.datetime "created_at"
94
+ t.datetime "updated_at"
95
+ t.datetime "finished_at"
96
+ t.string "import_file"
97
+ t.boolean "publish"
98
+ t.string "default_namespace"
99
99
  end
100
100
 
101
- add_index 'imports', ['user_id'], name: 'index_imports_on_user_id', using: :btree
101
+ add_index "imports", ["user_id"], name: "index_imports_on_user_id", using: :btree
102
102
 
103
- create_table 'labelings', force: true do |t|
104
- t.string 'type'
105
- t.integer 'owner_id'
106
- t.integer 'target_id'
107
- t.datetime 'created_at'
108
- t.datetime 'updated_at'
103
+ create_table "job_relations", force: true do |t|
104
+ t.string "type"
105
+ t.string "owner_reference"
106
+ t.string "job_id"
107
+ t.datetime "created_at"
108
+ t.datetime "updated_at"
109
+ t.string "response_error"
109
110
  end
110
111
 
111
- add_index 'labelings', %w(owner_id target_id type), name: 'ix_labelings_fk_type', using: :btree
112
- add_index 'labelings', ['type'], name: 'ix_labelings_on_type', using: :btree
113
-
114
- create_table 'labels', force: true do |t|
115
- t.string 'type'
116
- t.string 'origin', limit: 4000
117
- t.string 'language'
118
- t.string 'value', limit: 1024
119
- t.datetime 'created_at'
120
- t.datetime 'updated_at'
121
- t.date 'published_at'
112
+ create_table "labelings", force: true do |t|
113
+ t.string "type"
114
+ t.integer "owner_id"
115
+ t.integer "target_id"
116
+ t.datetime "created_at"
117
+ t.datetime "updated_at"
122
118
  end
123
119
 
124
- add_index 'labels', ['language'], name: 'ix_labels_on_language', using: :btree
125
- add_index 'labels', ['origin'], name: 'ix_labels_on_origin', length: { 'origin' => 255 }, using: :btree
120
+ add_index "labelings", ["owner_id", "target_id", "type"], name: "ix_labelings_fk_type", using: :btree
121
+ add_index "labelings", ["type"], name: "ix_labelings_on_type", using: :btree
122
+
123
+ create_table "labels", force: true do |t|
124
+ t.string "type"
125
+ t.string "origin", limit: 4000
126
+ t.string "language"
127
+ t.string "value", limit: 1024
128
+ t.datetime "created_at"
129
+ t.datetime "updated_at"
130
+ t.date "published_at"
131
+ end
132
+
133
+ add_index "labels", ["language"], name: "ix_labels_on_language", using: :btree
134
+ add_index "labels", ["origin"], name: "ix_labels_on_origin", length: {"origin"=>255}, using: :btree
126
135
 
127
- create_table 'matches', force: true do |t|
128
- t.integer 'concept_id'
129
- t.string 'type'
130
- t.string 'value'
131
- t.datetime 'created_at'
132
- t.datetime 'updated_at'
136
+ create_table "matches", force: true do |t|
137
+ t.integer "concept_id"
138
+ t.string "type"
139
+ t.string "value"
140
+ t.datetime "created_at"
141
+ t.datetime "updated_at"
133
142
  end
134
143
 
135
- add_index 'matches', %w(concept_id type), name: 'ix_matches_fk_type', using: :btree
136
- add_index 'matches', ['type'], name: 'ix_matches_on_type', using: :btree
144
+ add_index "matches", ["concept_id", "type"], name: "ix_matches_fk_type", using: :btree
145
+ add_index "matches", ["type"], name: "ix_matches_on_type", using: :btree
137
146
 
138
- create_table 'notations', force: true do |t|
139
- t.integer 'concept_id'
140
- t.string 'value', limit: 4000
141
- t.string 'data_type', limit: 4000
147
+ create_table "notations", force: true do |t|
148
+ t.integer "concept_id"
149
+ t.string "value", limit: 4000
150
+ t.string "data_type", limit: 4000
142
151
  end
143
152
 
144
- add_index 'notations', ['concept_id'], name: 'index_notations_on_concept_id', using: :btree
153
+ add_index "notations", ["concept_id"], name: "index_notations_on_concept_id", using: :btree
145
154
 
146
- create_table 'note_annotations', force: true do |t|
147
- t.integer 'note_id'
148
- t.string 'predicate', limit: 50
149
- t.string 'value', limit: 1024
150
- t.datetime 'created_at'
151
- t.datetime 'updated_at'
152
- t.string 'namespace', limit: 50
153
- t.string 'language'
155
+ create_table "note_annotations", force: true do |t|
156
+ t.integer "note_id"
157
+ t.string "predicate", limit: 50
158
+ t.string "value", limit: 1024
159
+ t.datetime "created_at"
160
+ t.datetime "updated_at"
161
+ t.string "namespace", limit: 50
162
+ t.string "language"
154
163
  end
155
164
 
156
- add_index 'note_annotations', ['note_id'], name: 'ix_note_annotations_fk', using: :btree
165
+ add_index "note_annotations", ["note_id"], name: "ix_note_annotations_fk", using: :btree
157
166
 
158
- create_table 'notes', force: true do |t|
159
- t.string 'language', limit: 2
160
- t.string 'value', limit: 4000
161
- t.string 'type', limit: 50
162
- t.datetime 'created_at'
163
- t.datetime 'updated_at'
164
- t.integer 'owner_id'
165
- t.string 'owner_type', null: false
167
+ create_table "notes", force: true do |t|
168
+ t.string "language", limit: 2
169
+ t.string "value", limit: 4000
170
+ t.string "type", limit: 50
171
+ t.datetime "created_at"
172
+ t.datetime "updated_at"
173
+ t.integer "owner_id"
174
+ t.string "owner_type", null: false
166
175
  end
167
176
 
168
- add_index 'notes', ['language'], name: 'ix_notes_on_language', using: :btree
169
- add_index 'notes', %w(owner_id owner_type type), name: 'ix_notes_fk_type', using: :btree
170
- add_index 'notes', ['type'], name: 'ix_notes_on_type', using: :btree
171
-
172
- create_table 'users', force: true do |t|
173
- t.string 'forename'
174
- t.string 'surname'
175
- t.string 'email'
176
- t.string 'crypted_password'
177
- t.boolean 'active'
178
- t.datetime 'created_at'
179
- t.datetime 'updated_at'
180
- t.string 'password_salt'
181
- t.string 'persistence_token'
182
- t.string 'perishable_token'
183
- t.string 'role'
184
- t.string 'telephone_number'
177
+ add_index "notes", ["language"], name: "ix_notes_on_language", using: :btree
178
+ add_index "notes", ["owner_id", "owner_type", "type"], name: "ix_notes_fk_type", using: :btree
179
+ add_index "notes", ["type"], name: "ix_notes_on_type", using: :btree
180
+
181
+ create_table "users", force: true do |t|
182
+ t.string "forename"
183
+ t.string "surname"
184
+ t.string "email"
185
+ t.string "crypted_password"
186
+ t.boolean "active"
187
+ t.datetime "created_at"
188
+ t.datetime "updated_at"
189
+ t.string "password_salt"
190
+ t.string "persistence_token"
191
+ t.string "perishable_token"
192
+ t.string "role"
193
+ t.string "telephone_number"
194
+ t.string "type"
185
195
  end
186
196
 
187
197
  end
data/lib/iqvoc/ability.rb CHANGED
@@ -6,7 +6,6 @@ module Iqvoc
6
6
 
7
7
  def initialize(user = nil)
8
8
  can :read, Iqvoc::Concept.root_class.instance
9
- can :read, ::Collection::Base
10
9
  can :read, [::Concept::Base, ::Collection::Base, ::Label::Base], &@@if_published
11
10
 
12
11
  # static pages
data/lib/iqvoc/version.rb CHANGED
@@ -15,5 +15,5 @@
15
15
  # limitations under the License.
16
16
 
17
17
  module Iqvoc
18
- VERSION = '4.5.0'
18
+ VERSION = '4.5.1'
19
19
  end
@@ -0,0 +1,28 @@
1
+ <http://www.example.com/animal> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.w3.org/2004/02/skos/core#Concept> .
2
+ <http://www.example.com/animal> <http://www.w3.org/2004/02/skos/core#inScheme> <http://www.example.com/scheme> .
3
+ <http://www.example.com/animal> <http://www.w3.org/2004/02/skos/core#prefLabel> "Tier"@de .
4
+ <http://www.example.com/animal> <http://www.w3.org/2004/02/skos/core#prefLabel> "Animal"@en .
5
+ <http://www.example.com/animal> <http://www.w3.org/2004/02/skos/core#altLabel> "Viehzeug"@de .
6
+ <http://www.example.com/animal> <http://www.w3.org/2004/02/skos/core#narrower> <http://www.example.com/cow> .
7
+ <http://www.example.com/animal> <http://www.w3.org/2004/02/skos/core#narrower> <http://www.example.com/donkey> .
8
+ <http://www.example.com/animal> <http://www.w3.org/2004/02/skos/core#narrower> <http://www.example.com/monkey> .
9
+ <http://www.example.com/animal> <http://www.w3.org/2004/02/skos/core#definition> "Ein Tier ist kein Mensch."@de .
10
+ <http://www.example.com/cow> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.w3.org/2004/02/skos/core#Concept> .
11
+ <http://www.example.com/cow> <http://www.w3.org/2004/02/skos/core#inScheme> <http://www.example.com/scheme> .
12
+ <http://www.example.com/cow> <http://www.w3.org/2004/02/skos/core#prefLabel> "Kuh"@de .
13
+ <http://www.example.com/cow> <http://www.w3.org/2004/02/skos/core#prefLabel> "Cow"@en .
14
+ <http://www.example.com/cow> <http://www.w3.org/2004/02/skos/core#altLabel> "Rind"@de .
15
+ <http://www.example.com/cow> <http://www.w3.org/2004/02/skos/core#broader> <http://www.example.com/animal> .
16
+ <http://www.example.com/donkey> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.w3.org/2004/02/skos/core#Concept> .
17
+ <http://www.example.com/donkey> <http://www.w3.org/2004/02/skos/core#inScheme> <http://www.example.com/scheme> .
18
+ <http://www.example.com/donkey> <http://www.w3.org/2004/02/skos/core#prefLabel> "Esel"@de .
19
+ <http://www.example.com/donkey> <http://www.w3.org/2004/02/skos/core#prefLabel> "Donkey"@en .
20
+ <http://www.example.com/donkey> <http://www.w3.org/2004/02/skos/core#broader> <http://www.example.com/animal> .
21
+ <http://www.example.com/monkey> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.w3.org/2004/02/skos/core#Concept> .
22
+ <http://www.example.com/monkey> <http://www.w3.org/2004/02/skos/core#inScheme> <http://www.example.com/scheme> .
23
+ <http://www.example.com/monkey> <http://www.w3.org/2004/02/skos/core#prefLabel> "Affe"@de .
24
+ <http://www.example.com/monkey> <http://www.w3.org/2004/02/skos/core#prefLabel> "Monkey"@en .
25
+ <http://www.example.com/monkey> <http://www.w3.org/2004/02/skos/core#altLabel> "Äffle"@de .
26
+ <http://www.example.com/monkey> <http://www.w3.org/2004/02/skos/core#altLabel> "Ape"@en .
27
+ <http://www.example.com/monkey> <http://www.w3.org/2004/02/skos/core#broader> <http://www.example.com/animal> .
28
+ <http://www.example.com/monkey> <http://www.w3.org/2004/02/skos/core#exactMatch> <http://dbpedia.org/page/Monkey> .