iqvoc 3.2.8 → 3.2.9
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.
- data/app/models/labeling/skos/base.rb +9 -4
- data/config/database.yml +3 -3
- data/db/schema.rb +102 -49
- data/lib/iqvoc/version.rb +1 -1
- data/public/javascripts/iqvoc/application.js +118 -130
- metadata +52 -18
- data/config/initializers/secret_token.rb +0 -30
|
@@ -56,24 +56,29 @@ class Labeling::SKOS::Base < Labeling::Base
|
|
|
56
56
|
if params[:collection_origin].present?
|
|
57
57
|
collection = Collection::Unordered.where(:origin => params[:collection_origin]).last
|
|
58
58
|
if collection
|
|
59
|
-
scope = scope.includes(:owner => :collection_members)
|
|
59
|
+
# scope = scope.includes(:owner => :collection_members)
|
|
60
|
+
scope = scope.joins("LEFT OUTER JOIN `collection_members` ON `collection_members`.`target_id` = `concepts`.`id`")
|
|
60
61
|
scope = scope.where("#{Collection::Member::Base.table_name}.collection_id" => collection)
|
|
61
62
|
else
|
|
62
63
|
raise "Collection with Origin #{params[:collection_origin]} not found!"
|
|
63
64
|
end
|
|
64
65
|
end
|
|
65
66
|
scope = scope.includes(:owner)
|
|
66
|
-
|
|
67
|
+
|
|
67
68
|
scope = case params[:for]
|
|
68
69
|
when "concept"
|
|
69
70
|
scope.where("concepts.type" => Iqvoc::Concept.base_class_name).merge(Concept::Base.published)
|
|
70
71
|
when "collection"
|
|
71
72
|
scope.where("concepts.type" => Iqvoc::Collection.base_class_name)
|
|
73
|
+
if collection
|
|
74
|
+
scope = scope.where("`collection_members`.`type` = 'Collection::Member::Collection'")
|
|
75
|
+
end
|
|
76
|
+
scope
|
|
72
77
|
else
|
|
73
78
|
# no additional conditions
|
|
74
79
|
scope
|
|
75
80
|
end
|
|
76
|
-
|
|
81
|
+
|
|
77
82
|
scope
|
|
78
83
|
end
|
|
79
84
|
|
|
@@ -84,7 +89,7 @@ class Labeling::SKOS::Base < Labeling::Base
|
|
|
84
89
|
def self.build_from_rdf(subject, predicate, object)
|
|
85
90
|
raise "Labeling::SKOS::Base#build_from_rdf: Subject (#{subject}) must be a Concept." unless subject.is_a?(Concept::Base)
|
|
86
91
|
raise "Labeling::SKOS::Base#build_from_rdf: Object (#{object}) must be a string literal" unless object =~ /^"(.+)"(@(.+))$/
|
|
87
|
-
|
|
92
|
+
|
|
88
93
|
lang = $3
|
|
89
94
|
value = JSON.parse(%Q{["#{$1}"]})[0].gsub("\\n", "\n") # Trick to decode \uHHHHH chars
|
|
90
95
|
|
data/config/database.yml
CHANGED
|
@@ -13,7 +13,7 @@ development:
|
|
|
13
13
|
database: iqvoc_development
|
|
14
14
|
username: root
|
|
15
15
|
password:
|
|
16
|
-
|
|
16
|
+
host: 127.0.0.1
|
|
17
17
|
|
|
18
18
|
test:
|
|
19
19
|
adapter: mysql2
|
|
@@ -22,7 +22,7 @@ test:
|
|
|
22
22
|
database: iqvoc_test
|
|
23
23
|
username: root
|
|
24
24
|
password:
|
|
25
|
-
|
|
25
|
+
host: 127.0.0.1
|
|
26
26
|
|
|
27
27
|
production:
|
|
28
28
|
adapter: mysql2
|
|
@@ -31,4 +31,4 @@ production:
|
|
|
31
31
|
database: iqvoc_development
|
|
32
32
|
username: root
|
|
33
33
|
password:
|
|
34
|
-
|
|
34
|
+
host: 127.0.0.1
|
data/db/schema.rb
CHANGED
|
@@ -9,33 +9,33 @@
|
|
|
9
9
|
# from scratch. The latter is a flawed and unsustainable approach (the more migrations
|
|
10
10
|
# you'll amass, the slower it'll run and the greater likelihood for issues).
|
|
11
11
|
#
|
|
12
|
-
# It's strongly recommended
|
|
12
|
+
# It's strongly recommended that you check this file into your version control system.
|
|
13
13
|
|
|
14
|
-
ActiveRecord::Schema.define(:
|
|
14
|
+
ActiveRecord::Schema.define(version: 20140807123413) do
|
|
15
15
|
|
|
16
|
-
create_table "collection_members", :
|
|
16
|
+
create_table "collection_members", force: true do |t|
|
|
17
17
|
t.integer "collection_id"
|
|
18
18
|
t.integer "target_id"
|
|
19
19
|
t.string "type"
|
|
20
20
|
end
|
|
21
21
|
|
|
22
|
-
add_index "collection_members", ["collection_id", "target_id", "type"], :
|
|
22
|
+
add_index "collection_members", ["collection_id", "target_id", "type"], name: "ix_collections_fk_type", using: :btree
|
|
23
23
|
|
|
24
|
-
create_table "concept_relations", :
|
|
24
|
+
create_table "concept_relations", force: true do |t|
|
|
25
25
|
t.string "type"
|
|
26
26
|
t.integer "owner_id"
|
|
27
27
|
t.integer "target_id"
|
|
28
28
|
t.datetime "created_at"
|
|
29
29
|
t.datetime "updated_at"
|
|
30
|
-
t.integer "rank", :
|
|
30
|
+
t.integer "rank", default: 100
|
|
31
31
|
end
|
|
32
32
|
|
|
33
|
-
add_index "concept_relations", ["owner_id", "target_id"], :
|
|
33
|
+
add_index "concept_relations", ["owner_id", "target_id"], name: "ix_concept_relations_fk", using: :btree
|
|
34
34
|
|
|
35
|
-
create_table "concepts", :
|
|
35
|
+
create_table "concepts", force: true do |t|
|
|
36
36
|
t.string "type"
|
|
37
|
-
t.string "origin", :
|
|
38
|
-
t.integer "rev",
|
|
37
|
+
t.string "origin", limit: 4000
|
|
38
|
+
t.integer "rev", default: 1
|
|
39
39
|
t.date "published_at"
|
|
40
40
|
t.integer "published_version_id"
|
|
41
41
|
t.integer "locked_by"
|
|
@@ -45,18 +45,71 @@ ActiveRecord::Schema.define(:version => 20120601094501) do
|
|
|
45
45
|
t.date "rdf_updated_at"
|
|
46
46
|
t.datetime "created_at"
|
|
47
47
|
t.datetime "updated_at"
|
|
48
|
-
t.boolean "top_term",
|
|
48
|
+
t.boolean "top_term", default: false
|
|
49
49
|
end
|
|
50
50
|
|
|
51
|
-
add_index "concepts", ["origin"], :
|
|
52
|
-
add_index "concepts", ["published_version_id"], :
|
|
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", :
|
|
54
|
+
create_table "configuration_settings", force: true do |t|
|
|
55
55
|
t.string "key"
|
|
56
56
|
t.string "value"
|
|
57
57
|
end
|
|
58
58
|
|
|
59
|
-
create_table "
|
|
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
|
+
end
|
|
72
|
+
|
|
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
|
+
end
|
|
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"
|
|
99
|
+
end
|
|
100
|
+
|
|
101
|
+
add_index "imports", ["user_id"], name: "index_imports_on_user_id", using: :btree
|
|
102
|
+
|
|
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"
|
|
110
|
+
end
|
|
111
|
+
|
|
112
|
+
create_table "labelings", force: true do |t|
|
|
60
113
|
t.string "type"
|
|
61
114
|
t.integer "owner_id"
|
|
62
115
|
t.integer "target_id"
|
|
@@ -64,24 +117,23 @@ ActiveRecord::Schema.define(:version => 20120601094501) do
|
|
|
64
117
|
t.datetime "updated_at"
|
|
65
118
|
end
|
|
66
119
|
|
|
67
|
-
add_index "labelings", ["owner_id", "target_id", "type"], :
|
|
68
|
-
add_index "labelings", ["type"], :
|
|
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
|
|
69
122
|
|
|
70
|
-
create_table "labels", :
|
|
123
|
+
create_table "labels", force: true do |t|
|
|
71
124
|
t.string "type"
|
|
72
|
-
t.string "origin", :
|
|
125
|
+
t.string "origin", limit: 4000
|
|
73
126
|
t.string "language"
|
|
74
|
-
t.string "value", :
|
|
127
|
+
t.string "value", limit: 1024
|
|
75
128
|
t.datetime "created_at"
|
|
76
129
|
t.datetime "updated_at"
|
|
77
130
|
t.date "published_at"
|
|
78
131
|
end
|
|
79
132
|
|
|
80
|
-
add_index "labels", ["language"], :
|
|
81
|
-
add_index "labels", ["origin"], :
|
|
82
|
-
add_index "labels", ["value"], :name => "ix_labels_on_value", :length => {"value"=>255}
|
|
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
|
|
83
135
|
|
|
84
|
-
create_table "matches", :
|
|
136
|
+
create_table "matches", force: true do |t|
|
|
85
137
|
t.integer "concept_id"
|
|
86
138
|
t.string "type"
|
|
87
139
|
t.string "value"
|
|
@@ -89,44 +141,44 @@ ActiveRecord::Schema.define(:version => 20120601094501) do
|
|
|
89
141
|
t.datetime "updated_at"
|
|
90
142
|
end
|
|
91
143
|
|
|
92
|
-
add_index "matches", ["concept_id", "type"], :
|
|
93
|
-
add_index "matches", ["type"], :
|
|
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
|
|
94
146
|
|
|
95
|
-
create_table "
|
|
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
|
|
151
|
+
end
|
|
152
|
+
|
|
153
|
+
add_index "notations", ["concept_id"], name: "index_notations_on_concept_id", using: :btree
|
|
154
|
+
|
|
155
|
+
create_table "note_annotations", force: true do |t|
|
|
96
156
|
t.integer "note_id"
|
|
97
|
-
t.string "predicate", :
|
|
98
|
-
t.string "value", :
|
|
157
|
+
t.string "predicate", limit: 50
|
|
158
|
+
t.string "value", limit: 1024
|
|
99
159
|
t.datetime "created_at"
|
|
100
160
|
t.datetime "updated_at"
|
|
101
|
-
t.string "namespace", :
|
|
161
|
+
t.string "namespace", limit: 50
|
|
162
|
+
t.string "language"
|
|
102
163
|
end
|
|
103
164
|
|
|
104
|
-
add_index "note_annotations", ["note_id"], :
|
|
165
|
+
add_index "note_annotations", ["note_id"], name: "ix_note_annotations_fk", using: :btree
|
|
105
166
|
|
|
106
|
-
create_table "notes", :
|
|
107
|
-
t.string "language", :
|
|
108
|
-
t.string "value", :
|
|
109
|
-
t.string "type", :
|
|
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
|
|
110
171
|
t.datetime "created_at"
|
|
111
172
|
t.datetime "updated_at"
|
|
112
173
|
t.integer "owner_id"
|
|
113
|
-
t.string "owner_type",
|
|
174
|
+
t.string "owner_type", null: false
|
|
114
175
|
end
|
|
115
176
|
|
|
116
|
-
add_index "notes", ["language"], :
|
|
117
|
-
add_index "notes", ["owner_id", "owner_type", "type"], :
|
|
118
|
-
add_index "notes", ["type"], :
|
|
119
|
-
|
|
120
|
-
create_table "page_requests", :force => true do |t|
|
|
121
|
-
t.string "path"
|
|
122
|
-
t.float "page_duration"
|
|
123
|
-
t.float "view_duration"
|
|
124
|
-
t.float "db_duration"
|
|
125
|
-
t.datetime "created_at", :null => false
|
|
126
|
-
t.datetime "updated_at", :null => false
|
|
127
|
-
end
|
|
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
|
|
128
180
|
|
|
129
|
-
create_table "users", :
|
|
181
|
+
create_table "users", force: true do |t|
|
|
130
182
|
t.string "forename"
|
|
131
183
|
t.string "surname"
|
|
132
184
|
t.string "email"
|
|
@@ -139,6 +191,7 @@ ActiveRecord::Schema.define(:version => 20120601094501) do
|
|
|
139
191
|
t.string "perishable_token"
|
|
140
192
|
t.string "role"
|
|
141
193
|
t.string "telephone_number"
|
|
194
|
+
t.string "type"
|
|
142
195
|
end
|
|
143
196
|
|
|
144
197
|
end
|
data/lib/iqvoc/version.rb
CHANGED
|
@@ -2,144 +2,132 @@
|
|
|
2
2
|
/*global jQuery, IQVOC */
|
|
3
3
|
|
|
4
4
|
jQuery(document).ready(function($) {
|
|
5
|
-
|
|
5
|
+
"use strict";
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
var locale = $("head meta[name=i18n-locale]").attr("content");
|
|
8
8
|
|
|
9
|
-
|
|
10
|
-
|
|
9
|
+
IQVOC.enhancedDropdown(".menu");
|
|
10
|
+
IQVOC.dynamicAuth("#auth_controls");
|
|
11
11
|
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
12
|
+
if(IQVOC.visualization) {
|
|
13
|
+
IQVOC.visualization.init("infovis", function(container) {
|
|
14
|
+
if(IQVOC.Storage.getItem("visualization") === "enlarged") {
|
|
15
|
+
container.data("widget").toggleSize(true);
|
|
16
|
+
}
|
|
17
|
+
});
|
|
18
|
+
}
|
|
19
19
|
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
20
|
+
// language selection
|
|
21
|
+
var langWidget = $("ul.lang-widget")[0];
|
|
22
|
+
// primary language (converting links to radio buttons)
|
|
23
|
+
$("a", langWidget).each(function(i, node) {
|
|
24
|
+
var link = $(node),
|
|
25
|
+
el = link.closest("li"),
|
|
26
|
+
btn = $('<input type="radio" name="primary_language">');
|
|
27
|
+
if(link.hasClass("current")) {
|
|
28
|
+
btn[0].checked = true;
|
|
29
|
+
}
|
|
30
|
+
var label = $("<label />").append(btn).append(link);
|
|
31
|
+
el.append(label);
|
|
32
|
+
return label[0];
|
|
33
|
+
});
|
|
34
|
+
$("input:radio", langWidget).live("change", function(ev) {
|
|
35
|
+
window.location = $(this).closest("label").find("a").attr("href");
|
|
36
|
+
});
|
|
37
|
+
// secondary language
|
|
38
|
+
var toggleSections = function(langSelected) {
|
|
39
|
+
$(".translation[lang]").each(function(i, node) {
|
|
40
|
+
var el = $(node),
|
|
41
|
+
lang = el.attr("lang");
|
|
42
|
+
if(lang !== locale && $.inArray(lang, langSelected) === -1) {
|
|
43
|
+
el.addClass("hidden");
|
|
44
|
+
} else {
|
|
45
|
+
el.removeClass("hidden");
|
|
46
|
+
}
|
|
47
|
+
});
|
|
48
|
+
};
|
|
49
|
+
var updateNoteLangs = function(langSelected) {
|
|
50
|
+
$(".inline_note.new select").each(function(i, sel) { // NB: new notes only!
|
|
51
|
+
$(sel).find("option").each(function(i, opt) {
|
|
52
|
+
var el = $(opt),
|
|
53
|
+
lang = el.val();
|
|
54
|
+
if(lang !== locale && $.inArray(lang, langSelected) === -1) {
|
|
55
|
+
el.remove();
|
|
56
|
+
}
|
|
57
|
+
});
|
|
58
|
+
});
|
|
59
|
+
};
|
|
60
|
+
$(document).bind("lang_selected", function(ev, data) {
|
|
61
|
+
toggleSections(data.langs);
|
|
62
|
+
updateNoteLangs(data.langs);
|
|
63
|
+
});
|
|
64
|
+
var langSelector = new IQVOC.LanguageSelector(langWidget, "lang_selected");
|
|
65
|
+
if($("#concept_new, #concept_edit").length) { // edit mode
|
|
66
|
+
// disable secondary language selection to avoid excessive state complexity
|
|
67
|
+
$(":checkbox", langSelector.container).prop("disabled", true);
|
|
68
|
+
}
|
|
69
69
|
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
70
|
+
// entity selection (edit mode)
|
|
71
|
+
$("input.entity_select").each(function(i, node) {
|
|
72
|
+
IQVOC.EntitySelector(node);
|
|
73
|
+
});
|
|
74
74
|
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
75
|
+
// Label editing (inline notes)
|
|
76
|
+
$("fieldset.note_relation ol li.inline_note.new").hide();
|
|
77
|
+
$("fieldset.note_relation input[type=button]").click(function(ev) {
|
|
78
|
+
IQVOC.createNote.apply(this, arguments);
|
|
79
|
+
langSelector.notify(); // trigger updateNoteLangs -- XXX: hacky!?
|
|
80
|
+
});
|
|
81
|
+
$("li.inline_note input:checkbox").change(function(ev) {
|
|
82
|
+
var action = this.checked ? "addClass" : "removeClass";
|
|
83
|
+
$(this).closest("li")[action]("deleted");
|
|
84
|
+
});
|
|
85
85
|
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
86
|
+
// Datepicker
|
|
87
|
+
$.datepicker.setDefaults($.datepicker.regional[locale]);
|
|
88
|
+
$("input.datepicker").datepicker({ dateFormat: "yy-mm-dd" });
|
|
89
89
|
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
90
|
+
// Dashboard table row highlighting and click handling
|
|
91
|
+
$("tr.highlightable")
|
|
92
|
+
.hover(function(ev) {
|
|
93
|
+
var action = ev.type === "mouseenter" ? "addClass" : "removeClass";
|
|
94
|
+
$(this)[action]("hover");
|
|
95
|
+
})
|
|
96
|
+
.click(function(ev) {
|
|
97
|
+
window.location = $(this).attr("data-url");
|
|
98
|
+
});
|
|
99
99
|
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
100
|
+
// Search
|
|
101
|
+
$("button#language_select_all").click(function() {
|
|
102
|
+
$("input[type=checkbox].lang_check").attr("checked", true);
|
|
103
|
+
});
|
|
104
|
+
$("button#language_select_none").click(function() {
|
|
105
|
+
$("input[type=checkbox].lang_check").attr("checked", false);
|
|
106
|
+
});
|
|
107
|
+
$("select.search_type").change(function() {
|
|
108
|
+
var result_type_filter = $("li.result_type_filter");
|
|
109
|
+
if($(this).val().match(/labeling/)) {
|
|
110
|
+
result_type_filter.show();
|
|
111
|
+
}
|
|
112
|
+
else {
|
|
113
|
+
result_type_filter.hide();
|
|
114
|
+
}
|
|
115
|
+
});
|
|
116
|
+
$("select.search_type").change();
|
|
117
117
|
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
return -1
|
|
134
|
-
if (nameA > nameB)
|
|
135
|
-
return 1
|
|
136
|
-
return 0 // default return value (no sorting)
|
|
137
|
-
})
|
|
138
|
-
$(childList).empty().append(sortedItems);
|
|
139
|
-
|
|
140
|
-
$.fn.treeviewLoad({ url: url }, this.id, childList, container);
|
|
141
|
-
}
|
|
142
|
-
}
|
|
143
|
-
});
|
|
144
|
-
});
|
|
118
|
+
// hierarchical tree view
|
|
119
|
+
$("ul.hybrid-treeview").each(function() {
|
|
120
|
+
var url = $(this).attr("data-url"),
|
|
121
|
+
container = this;
|
|
122
|
+
$(this).treeview({
|
|
123
|
+
collapsed: true,
|
|
124
|
+
toggle: function() {
|
|
125
|
+
var el = $(this);
|
|
126
|
+
if(el.hasClass("hasChildren")) {
|
|
127
|
+
var childList = el.removeClass("hasChildren").find("ul");
|
|
128
|
+
$.fn.treeviewLoad({ url: url }, this.id, childList, container);
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
});
|
|
132
|
+
});
|
|
145
133
|
});
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: iqvoc
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 3.2.
|
|
4
|
+
version: 3.2.9
|
|
5
5
|
prerelease:
|
|
6
6
|
platform: ruby
|
|
7
7
|
authors:
|
|
@@ -11,11 +11,11 @@ authors:
|
|
|
11
11
|
autorequire:
|
|
12
12
|
bindir: bin
|
|
13
13
|
cert_chain: []
|
|
14
|
-
date:
|
|
14
|
+
date: 2014-12-02 00:00:00.000000000 Z
|
|
15
15
|
dependencies:
|
|
16
16
|
- !ruby/object:Gem::Dependency
|
|
17
17
|
name: rails
|
|
18
|
-
requirement:
|
|
18
|
+
requirement: !ruby/object:Gem::Requirement
|
|
19
19
|
none: false
|
|
20
20
|
requirements:
|
|
21
21
|
- - ~>
|
|
@@ -23,10 +23,15 @@ dependencies:
|
|
|
23
23
|
version: 3.0.9
|
|
24
24
|
type: :runtime
|
|
25
25
|
prerelease: false
|
|
26
|
-
version_requirements:
|
|
26
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
27
|
+
none: false
|
|
28
|
+
requirements:
|
|
29
|
+
- - ~>
|
|
30
|
+
- !ruby/object:Gem::Version
|
|
31
|
+
version: 3.0.9
|
|
27
32
|
- !ruby/object:Gem::Dependency
|
|
28
33
|
name: bundler
|
|
29
|
-
requirement:
|
|
34
|
+
requirement: !ruby/object:Gem::Requirement
|
|
30
35
|
none: false
|
|
31
36
|
requirements:
|
|
32
37
|
- - ! '>='
|
|
@@ -34,10 +39,15 @@ dependencies:
|
|
|
34
39
|
version: '0'
|
|
35
40
|
type: :runtime
|
|
36
41
|
prerelease: false
|
|
37
|
-
version_requirements:
|
|
42
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
43
|
+
none: false
|
|
44
|
+
requirements:
|
|
45
|
+
- - ! '>='
|
|
46
|
+
- !ruby/object:Gem::Version
|
|
47
|
+
version: '0'
|
|
38
48
|
- !ruby/object:Gem::Dependency
|
|
39
49
|
name: kaminari
|
|
40
|
-
requirement:
|
|
50
|
+
requirement: !ruby/object:Gem::Requirement
|
|
41
51
|
none: false
|
|
42
52
|
requirements:
|
|
43
53
|
- - ! '>='
|
|
@@ -45,10 +55,15 @@ dependencies:
|
|
|
45
55
|
version: '0'
|
|
46
56
|
type: :runtime
|
|
47
57
|
prerelease: false
|
|
48
|
-
version_requirements:
|
|
58
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
59
|
+
none: false
|
|
60
|
+
requirements:
|
|
61
|
+
- - ! '>='
|
|
62
|
+
- !ruby/object:Gem::Version
|
|
63
|
+
version: '0'
|
|
49
64
|
- !ruby/object:Gem::Dependency
|
|
50
65
|
name: authlogic
|
|
51
|
-
requirement:
|
|
66
|
+
requirement: !ruby/object:Gem::Requirement
|
|
52
67
|
none: false
|
|
53
68
|
requirements:
|
|
54
69
|
- - ! '>='
|
|
@@ -56,10 +71,15 @@ dependencies:
|
|
|
56
71
|
version: '0'
|
|
57
72
|
type: :runtime
|
|
58
73
|
prerelease: false
|
|
59
|
-
version_requirements:
|
|
74
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
75
|
+
none: false
|
|
76
|
+
requirements:
|
|
77
|
+
- - ! '>='
|
|
78
|
+
- !ruby/object:Gem::Version
|
|
79
|
+
version: '0'
|
|
60
80
|
- !ruby/object:Gem::Dependency
|
|
61
81
|
name: cancan
|
|
62
|
-
requirement:
|
|
82
|
+
requirement: !ruby/object:Gem::Requirement
|
|
63
83
|
none: false
|
|
64
84
|
requirements:
|
|
65
85
|
- - ! '>='
|
|
@@ -67,10 +87,15 @@ dependencies:
|
|
|
67
87
|
version: '0'
|
|
68
88
|
type: :runtime
|
|
69
89
|
prerelease: false
|
|
70
|
-
version_requirements:
|
|
90
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
91
|
+
none: false
|
|
92
|
+
requirements:
|
|
93
|
+
- - ! '>='
|
|
94
|
+
- !ruby/object:Gem::Version
|
|
95
|
+
version: '0'
|
|
71
96
|
- !ruby/object:Gem::Dependency
|
|
72
97
|
name: iq_rdf
|
|
73
|
-
requirement:
|
|
98
|
+
requirement: !ruby/object:Gem::Requirement
|
|
74
99
|
none: false
|
|
75
100
|
requirements:
|
|
76
101
|
- - ~>
|
|
@@ -78,10 +103,15 @@ dependencies:
|
|
|
78
103
|
version: 0.0.14
|
|
79
104
|
type: :runtime
|
|
80
105
|
prerelease: false
|
|
81
|
-
version_requirements:
|
|
106
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
107
|
+
none: false
|
|
108
|
+
requirements:
|
|
109
|
+
- - ~>
|
|
110
|
+
- !ruby/object:Gem::Version
|
|
111
|
+
version: 0.0.14
|
|
82
112
|
- !ruby/object:Gem::Dependency
|
|
83
113
|
name: json
|
|
84
|
-
requirement:
|
|
114
|
+
requirement: !ruby/object:Gem::Requirement
|
|
85
115
|
none: false
|
|
86
116
|
requirements:
|
|
87
117
|
- - ! '>='
|
|
@@ -89,7 +119,12 @@ dependencies:
|
|
|
89
119
|
version: '0'
|
|
90
120
|
type: :runtime
|
|
91
121
|
prerelease: false
|
|
92
|
-
version_requirements:
|
|
122
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
123
|
+
none: false
|
|
124
|
+
requirements:
|
|
125
|
+
- - ! '>='
|
|
126
|
+
- !ruby/object:Gem::Version
|
|
127
|
+
version: '0'
|
|
93
128
|
description: iQvoc - a SKOS(-XL) vocabulary management system built on the Semantic
|
|
94
129
|
Web
|
|
95
130
|
email:
|
|
@@ -256,7 +291,6 @@ files:
|
|
|
256
291
|
- config/initializers/kaminari_config.rb
|
|
257
292
|
- config/initializers/language.rb
|
|
258
293
|
- config/initializers/mime_types.rb
|
|
259
|
-
- config/initializers/secret_token.rb
|
|
260
294
|
- config/initializers/secret_token.rb.template
|
|
261
295
|
- config/initializers/session_store.rb
|
|
262
296
|
- config/locales/activerecord.de.yml
|
|
@@ -480,7 +514,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
480
514
|
version: '0'
|
|
481
515
|
requirements: []
|
|
482
516
|
rubyforge_project:
|
|
483
|
-
rubygems_version: 1.8.
|
|
517
|
+
rubygems_version: 1.8.23.2
|
|
484
518
|
signing_key:
|
|
485
519
|
specification_version: 3
|
|
486
520
|
summary: iQvoc
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
# encoding: UTF-8
|
|
2
|
-
|
|
3
|
-
# Copyright 2011 innoQ Deutschland GmbH
|
|
4
|
-
#
|
|
5
|
-
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
6
|
-
# you may not use this file except in compliance with the License.
|
|
7
|
-
# You may obtain a copy of the License at
|
|
8
|
-
#
|
|
9
|
-
# http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
-
#
|
|
11
|
-
# Unless required by applicable law or agreed to in writing, software
|
|
12
|
-
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
13
|
-
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
14
|
-
# See the License for the specific language governing permissions and
|
|
15
|
-
# limitations under the License.
|
|
16
|
-
|
|
17
|
-
# Be sure to restart your server when you modify this file.
|
|
18
|
-
|
|
19
|
-
if Iqvoc.const_defined?(:Application)
|
|
20
|
-
|
|
21
|
-
# Your secret key for verifying the integrity of signed cookies.
|
|
22
|
-
# If you change this key, all old signed cookies will become invalid!
|
|
23
|
-
# Make sure the secret is at least 30 characters and all random,
|
|
24
|
-
# no regular words or you'll be exposed to dictionary attacks.
|
|
25
|
-
|
|
26
|
-
# Run `rake secret` and uncomment the following line
|
|
27
|
-
# Replace the secret-placeholder with your generated token
|
|
28
|
-
Iqvoc::Application.config.secret_token = 'ef1f801c911b45ded2944aad3121244bfabf231631d102e6e120da8639c47eb6aa4ae7df733f0d539951cbc4e399e6050f46bc279d6a85d57135688394b87c5a'
|
|
29
|
-
|
|
30
|
-
end
|