talia_core 0.4.1 → 0.4.2
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/VERSION.yml +4 -0
- data/config/database.yml +19 -0
- data/config/database.yml.example +35 -0
- data/config/rdfstore.yml +13 -0
- data/config/rdfstore.yml.example +13 -0
- data/config/rdfstore.yml.rdflite_example +16 -0
- data/config/rdfstore.yml.redland_example +46 -0
- data/config/talia_core.yml +14 -0
- data/config/talia_core.yml.example +42 -0
- data/generators/generator_helpers.rb +49 -0
- data/generators/talia_admin/USAGE +1 -0
- data/generators/talia_admin/talia_admin_generator.rb +19 -0
- data/generators/talia_admin/templates/controllers/admin/background_controller.rb +50 -0
- data/generators/talia_admin/templates/controllers/admin/custom_templates_controller.rb +25 -0
- data/generators/talia_admin/templates/controllers/admin/locales_controller.rb +15 -0
- data/generators/talia_admin/templates/controllers/admin/sources_controller.rb +71 -0
- data/generators/talia_admin/templates/controllers/admin/translations_controller.rb +61 -0
- data/generators/talia_admin/templates/controllers/admin/users_controller.rb +48 -0
- data/generators/talia_admin/templates/controllers/admin_controller.rb +7 -0
- data/generators/talia_admin/templates/helpers/admin/background_helper.rb +60 -0
- data/generators/talia_admin/templates/helpers/admin/custom_templates_helper.rb +5 -0
- data/generators/talia_admin/templates/helpers/admin/locales_helper.rb +2 -0
- data/generators/talia_admin/templates/helpers/admin/sources_helper.rb +65 -0
- data/generators/talia_admin/templates/helpers/admin/translations_helper.rb +51 -0
- data/generators/talia_admin/templates/helpers/admin/users_helper.rb +2 -0
- data/generators/talia_admin/templates/helpers/admin_helper.rb +11 -0
- data/generators/talia_admin/templates/public/images/backend/body_bg.gif +0 -0
- data/generators/talia_admin/templates/public/images/backend/footer_bg.gif +0 -0
- data/generators/talia_admin/templates/public/images/backend/header.jpg +0 -0
- data/generators/talia_admin/templates/public/images/backend/header_bg.gif +0 -0
- data/generators/talia_admin/templates/public/images/backend/menu.jpg +0 -0
- data/generators/talia_admin/templates/public/images/backend/menu_bg.gif +0 -0
- data/generators/talia_admin/templates/public/images/backend/opednid.gif +0 -0
- data/generators/talia_admin/templates/public/images/backend/page_bg.jpg +0 -0
- data/generators/talia_admin/templates/public/images/backend/triangolino.gif +0 -0
- data/generators/talia_admin/templates/public/images/backend/triangolino_full.gif +0 -0
- data/generators/talia_admin/templates/public/javascripts/backend.js +24 -0
- data/generators/talia_admin/templates/public/javascripts/lowpro.js +321 -0
- data/generators/talia_admin/templates/public/stylesheets/backend.css +466 -0
- data/generators/talia_admin/templates/test/fixtures/users.yml +32 -0
- data/generators/talia_admin/templates/test/functional/admin/custom_templates_controller_test.rb +8 -0
- data/generators/talia_admin/templates/test/functional/admin/locales_controller_test.rb +35 -0
- data/generators/talia_admin/templates/test/functional/admin/sources_controller_test.rb +109 -0
- data/generators/talia_admin/templates/test/functional/admin/translations_controller_test.rb +93 -0
- data/generators/talia_admin/templates/test/functional/admin/users_controller_test.rb +67 -0
- data/generators/talia_admin/templates/test/functional/admin_controller_test.rb +15 -0
- data/generators/talia_admin/templates/test/unit/user_test.rb +134 -0
- data/generators/talia_admin/templates/views/admin/background/_finished.html.erb +9 -0
- data/generators/talia_admin/templates/views/admin/background/_pending.html.erb +1 -0
- data/generators/talia_admin/templates/views/admin/background/_progress.html.erb +15 -0
- data/generators/talia_admin/templates/views/admin/background/_running.html.erb +11 -0
- data/generators/talia_admin/templates/views/admin/background/environment.html.erb +12 -0
- data/generators/talia_admin/templates/views/admin/background/show.html.erb +17 -0
- data/generators/talia_admin/templates/views/admin/background/stderr.html.erb +6 -0
- data/generators/talia_admin/templates/views/admin/background/stdin.html.erb +6 -0
- data/generators/talia_admin/templates/views/admin/background/stdout.html.erb +6 -0
- data/generators/talia_admin/templates/views/admin/custom_templates/_content_form_column.rhtml +2 -0
- data/generators/talia_admin/templates/views/admin/custom_templates/_template_type_form_column.rhtml +2 -0
- data/generators/talia_admin/templates/views/admin/index.html.erb +5 -0
- data/generators/talia_admin/templates/views/admin/locales/new.html.erb +9 -0
- data/generators/talia_admin/templates/views/admin/sources/_data.html.erb +6 -0
- data/generators/talia_admin/templates/views/admin/sources/_data_form.html.erb +15 -0
- data/generators/talia_admin/templates/views/admin/sources/_form.html.erb +7 -0
- data/generators/talia_admin/templates/views/admin/sources/_list.html.erb +3 -0
- data/generators/talia_admin/templates/views/admin/sources/_notice.html.erb +1 -0
- data/generators/talia_admin/templates/views/admin/sources/_predicate.html.erb +22 -0
- data/generators/talia_admin/templates/views/admin/sources/_predicates.html.erb +15 -0
- data/generators/talia_admin/templates/views/admin/sources/_sources.html.erb +17 -0
- data/generators/talia_admin/templates/views/admin/sources/_upload.html.erb +6 -0
- data/generators/talia_admin/templates/views/admin/sources/edit.html.erb +6 -0
- data/generators/talia_admin/templates/views/admin/sources/index.html.erb +5 -0
- data/generators/talia_admin/templates/views/admin/translations/_new_translation.html.erb +7 -0
- data/generators/talia_admin/templates/views/admin/translations/_translation.html.erb +10 -0
- data/generators/talia_admin/templates/views/admin/translations/edit.html.erb +16 -0
- data/generators/talia_admin/templates/views/admin/users/_form.html.erb +10 -0
- data/generators/talia_admin/templates/views/admin/users/_form_roles.html.erb +8 -0
- data/generators/talia_admin/templates/views/admin/users/edit.html.erb +12 -0
- data/generators/talia_admin/templates/views/admin/users/index.html.erb +22 -0
- data/generators/talia_admin/templates/views/admin/users/new.html.erb +5 -0
- data/generators/talia_admin/templates/views/admin/users/show.html.erb +6 -0
- data/generators/talia_admin/templates/views/layouts/admin.html.erb +56 -0
- data/generators/talia_base/USAGE +5 -0
- data/generators/talia_base/talia_base_generator.rb +62 -0
- data/generators/talia_base/templates/app/controllers/custom_templates_controller.rb +27 -0
- data/generators/talia_base/templates/app/controllers/ontologies_controller.rb +13 -0
- data/generators/talia_base/templates/app/controllers/sessions_controller.rb +90 -0
- data/generators/talia_base/templates/app/controllers/source_data/show.html.erb +2 -0
- data/generators/talia_base/templates/app/controllers/source_data_controller.rb +43 -0
- data/generators/talia_base/templates/app/controllers/sources_controller.rb +62 -0
- data/generators/talia_base/templates/app/controllers/types_controller.rb +23 -0
- data/generators/talia_base/templates/app/helpers/custom_templates_helper.rb +2 -0
- data/generators/talia_base/templates/app/helpers/ontologies_helper.rb +2 -0
- data/generators/talia_base/templates/app/helpers/sessions_helper.rb +2 -0
- data/generators/talia_base/templates/app/helpers/source_data/show.html.erb +2 -0
- data/generators/talia_base/templates/app/helpers/source_data_helper.rb +2 -0
- data/generators/talia_base/templates/app/helpers/sources_helper.rb +39 -0
- data/generators/talia_base/templates/app/helpers/types_helper.rb +2 -0
- data/generators/talia_base/templates/app/views/ontologies/index.builder +10 -0
- data/generators/talia_base/templates/app/views/ontologies/show.builder +7 -0
- data/generators/talia_base/templates/app/views/sessions/new.html.erb +33 -0
- data/generators/talia_base/templates/app/views/source_data/show.html.erb +2 -0
- data/generators/talia_base/templates/app/views/sources/_form.html.erb +15 -0
- data/generators/talia_base/templates/app/views/sources/edit.html.erb +9 -0
- data/generators/talia_base/templates/app/views/sources/index.html.erb +2 -0
- data/generators/talia_base/templates/app/views/sources/new.html.erb +8 -0
- data/generators/talia_base/templates/app/views/sources/show.html.erb +19 -0
- data/generators/talia_base/templates/app/views/types/index.html.erb +4 -0
- data/generators/talia_base/templates/app/views/types/show.html.erb +3 -0
- data/generators/talia_base/templates/config/routes.rb +83 -0
- data/generators/talia_base/templates/config/talia_initializer.rb +8 -0
- data/generators/talia_base/templates/migrations/bj_migration.rb +10 -0
- data/generators/talia_base/templates/migrations/constraint_migration.rb +24 -0
- data/generators/talia_base/templates/migrations/create_active_sources.rb +15 -0
- data/generators/talia_base/templates/migrations/create_custom_templates.rb +17 -0
- data/generators/talia_base/templates/migrations/create_data_records.rb +27 -0
- data/generators/talia_base/templates/migrations/create_open_id.rb +26 -0
- data/generators/talia_base/templates/migrations/create_progress_jobs.rb +18 -0
- data/generators/talia_base/templates/migrations/create_roles.rb +20 -0
- data/generators/talia_base/templates/migrations/create_semantic_properties.rb +14 -0
- data/generators/talia_base/templates/migrations/create_semantic_relations.rb +17 -0
- data/generators/talia_base/templates/migrations/create_sessions.rb +16 -0
- data/generators/talia_base/templates/migrations/create_users.rb +20 -0
- data/generators/talia_base/templates/migrations/create_workflows.rb +28 -0
- data/generators/talia_base/templates/migrations/populate_users.rb +11 -0
- data/generators/talia_base/templates/migrations/upgrade_relations.rb +12 -0
- data/generators/talia_base/templates/ontologies/hyper_ontology.owl +1462 -0
- data/generators/talia_base/templates/ontologies/hyper_ontology.pprj +9351 -0
- data/generators/talia_base/templates/ontologies/hyper_ontology.repository +6 -0
- data/generators/talia_base/templates/ontologies/scholar_0.1.owl +109 -0
- data/generators/talia_base/templates/script/configure_talia +292 -0
- data/generators/talia_base/templates/script/prepare_images +100 -0
- data/generators/talia_base/templates/talia.sh +51 -0
- data/generators/talia_base/templates/tasks/talia_core.rk +1 -0
- data/lib/loader_helper.rb +9 -0
- data/lib/talia_core.rb +0 -2
- data/lib/talia_dependencies.rb +5 -0
- data/lib/talia_util/rake_tasks.rb +223 -0
- data/tasks/talia_core_tasks.rake +2 -0
- metadata +138 -13
data/VERSION.yml
ADDED
data/config/database.yml
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
---
|
|
2
|
+
production:
|
|
3
|
+
adapter: jdbcmysql
|
|
4
|
+
host: localhost
|
|
5
|
+
password: talia
|
|
6
|
+
username: talia
|
|
7
|
+
database: talia_2_3_new_talia_production
|
|
8
|
+
test:
|
|
9
|
+
adapter: jdbcmysql
|
|
10
|
+
host: localhost
|
|
11
|
+
password: talia
|
|
12
|
+
username: talia
|
|
13
|
+
database: talia_2_3_new_talia_test
|
|
14
|
+
development:
|
|
15
|
+
adapter: jdbcmysql
|
|
16
|
+
host: localhost
|
|
17
|
+
password: talia
|
|
18
|
+
username: talia
|
|
19
|
+
database: talia_2_3_new_talia_development
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
# MySQL (default setup). Versions 4.1 and 5.0 are recommended.
|
|
2
|
+
#
|
|
3
|
+
# Install the MySQL driver:
|
|
4
|
+
# gem install mysql
|
|
5
|
+
# On MacOS X:
|
|
6
|
+
# gem install mysql -- --include=/usr/local/lib
|
|
7
|
+
# On Windows:
|
|
8
|
+
# There is no gem for Windows. Install mysql.so from RubyForApache.
|
|
9
|
+
# http://rubyforge.org/projects/rubyforapache
|
|
10
|
+
#
|
|
11
|
+
# And be sure to use new-style password hashing:
|
|
12
|
+
# http://dev.mysql.com/doc/refman/5.0/en/old-client.html
|
|
13
|
+
development:
|
|
14
|
+
adapter: mysql
|
|
15
|
+
database: Talia_development
|
|
16
|
+
username: rails
|
|
17
|
+
password: slilRuAmNep3
|
|
18
|
+
host: localhost
|
|
19
|
+
|
|
20
|
+
# Warning: The database defined as 'test' will be erased and
|
|
21
|
+
# re-generated from your development database when you run 'rake'.
|
|
22
|
+
# Do not set this db to the same as development or production.
|
|
23
|
+
test:
|
|
24
|
+
adapter: mysql
|
|
25
|
+
database: Talia_test
|
|
26
|
+
username: rails
|
|
27
|
+
password: slilRuAmNep3
|
|
28
|
+
host: localhost
|
|
29
|
+
|
|
30
|
+
production:
|
|
31
|
+
adapter: mysql
|
|
32
|
+
database: Talia_production
|
|
33
|
+
username: rails
|
|
34
|
+
password: slilRuAmNep3
|
|
35
|
+
host: localhost
|
data/config/rdfstore.yml
ADDED
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
# RDF store setup for rdland
|
|
2
|
+
development:
|
|
3
|
+
type: rdflite
|
|
4
|
+
dbfile: rdflite_development.db
|
|
5
|
+
|
|
6
|
+
# Warning: The database defined as 'test' will be erased and
|
|
7
|
+
# re-generated from your development database when you run 'rake'.
|
|
8
|
+
# Do not set this db to the same as development or production.
|
|
9
|
+
test:
|
|
10
|
+
type: rdflite
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
# WARNING: YOU REALLY DO NOT WANT TO USE RDFLIT IN AN PRODUCTION ENVIRONMENT!
|
|
14
|
+
production:
|
|
15
|
+
type: rdflite
|
|
16
|
+
dbfile: rdflist_production.db
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
# RDF store setup for rdland with mysql store
|
|
2
|
+
development:
|
|
3
|
+
type: redland
|
|
4
|
+
name: dbl
|
|
5
|
+
location: mysql
|
|
6
|
+
database: Talia_development_rdf
|
|
7
|
+
user: root
|
|
8
|
+
password:
|
|
9
|
+
host: localhost
|
|
10
|
+
|
|
11
|
+
# Configuration example for redland with hashes(bdb) store
|
|
12
|
+
# You may also use "memory" instead of "hashes" for the memory-only store
|
|
13
|
+
#
|
|
14
|
+
# development:
|
|
15
|
+
# type: redland
|
|
16
|
+
# location: hashes
|
|
17
|
+
# name: talia_development
|
|
18
|
+
# hash-type: bdb
|
|
19
|
+
# dir: .
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
# Warning: The database defined as 'test' will be erased and
|
|
23
|
+
# re-generated from your development database when you run 'rake'.
|
|
24
|
+
# Do not set this db to the same as development or production.
|
|
25
|
+
test:
|
|
26
|
+
type: rdflite
|
|
27
|
+
|
|
28
|
+
production:
|
|
29
|
+
type: redland
|
|
30
|
+
name: dbl
|
|
31
|
+
location: mysql
|
|
32
|
+
database: Talia_production_rdf
|
|
33
|
+
user: root
|
|
34
|
+
password:
|
|
35
|
+
host: localhost
|
|
36
|
+
|
|
37
|
+
# Configuration example for redland with hashes(bdb) store
|
|
38
|
+
# You may also use "memory" instead of "hashes" for the memory-only store
|
|
39
|
+
#
|
|
40
|
+
# production:
|
|
41
|
+
# type: redland
|
|
42
|
+
# location: hashes
|
|
43
|
+
# name: talia_production
|
|
44
|
+
# hash-type: bdb
|
|
45
|
+
# dir: .
|
|
46
|
+
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
---
|
|
2
|
+
site_name: Talia 2.3.
|
|
3
|
+
rdf_connection_file: rdfstore
|
|
4
|
+
ardf_log_level: 0
|
|
5
|
+
local_uri: http://localhost:5000/
|
|
6
|
+
default_namespace_uri: http://default.dummy/
|
|
7
|
+
iip_root_directory_location:
|
|
8
|
+
standalone_db: true
|
|
9
|
+
db_file: database
|
|
10
|
+
namespaces:
|
|
11
|
+
dcns: http://purl.org/dc/elements/1.1/
|
|
12
|
+
dct: http://purl.org/dc/terms/
|
|
13
|
+
dcmit: http://purl.org/dc/dcmitype/
|
|
14
|
+
hyper: http://www.hypernietzsche.org/ontology/
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
# TaliaCore configuration file
|
|
2
|
+
|
|
3
|
+
# The domain URI that is the "local" domain of this installation
|
|
4
|
+
local_uri: "http://test.dummy/"
|
|
5
|
+
# The domain URI that is used as a default if no namespace is given
|
|
6
|
+
default_namespace_uri: "http://default.dummy/"
|
|
7
|
+
|
|
8
|
+
# The RDF store configuration can be read from a file
|
|
9
|
+
rdf_connection_file: rdfstore
|
|
10
|
+
# RDF configuration can also be given as a hash here
|
|
11
|
+
# rdf_connection:
|
|
12
|
+
|
|
13
|
+
# Set the logging level for ActiveRDF
|
|
14
|
+
ardf_log_level: 0
|
|
15
|
+
|
|
16
|
+
# If standalone_db is set, ActiveRecord will be configured for use
|
|
17
|
+
# without the Rails environment
|
|
18
|
+
standalone_db: true
|
|
19
|
+
db_file: database
|
|
20
|
+
# Database configuration can also be given as a hash here
|
|
21
|
+
# db_connection:
|
|
22
|
+
# If unset, the databse log will end up in the default log directory
|
|
23
|
+
# db_log: database.log
|
|
24
|
+
|
|
25
|
+
# The location for data files (only set if you need to change
|
|
26
|
+
# the default location)
|
|
27
|
+
# data_directory_location: "/var/www/talia_data/"
|
|
28
|
+
|
|
29
|
+
# Configure the namespaces for use with RDF
|
|
30
|
+
namespaces:
|
|
31
|
+
# Default namespaces rdf, rdfs, xsd, owl are defined in the semantic_naming
|
|
32
|
+
# library.
|
|
33
|
+
# HyperNietzsche namespace
|
|
34
|
+
hyper: "http://www.hypernietzsche.org/ontology/"
|
|
35
|
+
# DublinCore namespace
|
|
36
|
+
dcns: "http://purl.org/dc/elements/1.1/"
|
|
37
|
+
dct: "http://purl.org/dc/terms/"
|
|
38
|
+
dcmit: "http://purl.org/dc/dcmitype/"
|
|
39
|
+
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
module GeneratorHelpers
|
|
2
|
+
|
|
3
|
+
DEFAULT_SHEBANG = File.join(Config::CONFIG['bindir'], Config::CONFIG['ruby_install_name'])
|
|
4
|
+
|
|
5
|
+
def files_in(m, dir, top_dir = '')
|
|
6
|
+
Dir["#{File.join(self_dir, 'templates', dir)}/*"].each do |file|
|
|
7
|
+
|
|
8
|
+
m.directory "#{top_dir}#{dir}"
|
|
9
|
+
|
|
10
|
+
if(File.directory?(file))
|
|
11
|
+
files_in(m, "#{dir}/#{File.basename(file)}", top_dir)
|
|
12
|
+
else
|
|
13
|
+
m.file "#{dir}/#{File.basename(file)}", "#{top_dir}#{dir}/#{File.basename(file)}"
|
|
14
|
+
end
|
|
15
|
+
end
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
def make_migration(m, template_name)
|
|
19
|
+
m.migration_template "migrations/#{template_name}", "db/migrate", :migration_file_name => template_name.gsub(/\.rb\Z/, '')
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
# This monkeypatches a problem in the generator that causes it to have
|
|
25
|
+
# migration ids based on the timestamp in seconds. If more than one
|
|
26
|
+
# migration is generated at a time (that is, whithin one second),
|
|
27
|
+
# this will cause them to not work because of identical ids.
|
|
28
|
+
module Rails
|
|
29
|
+
module Generator
|
|
30
|
+
module Commands
|
|
31
|
+
class Create
|
|
32
|
+
|
|
33
|
+
alias :orig_migration_string :next_migration_string
|
|
34
|
+
|
|
35
|
+
def migration_count
|
|
36
|
+
@m_count ||= 0
|
|
37
|
+
@m_count += 1
|
|
38
|
+
@m_count
|
|
39
|
+
end
|
|
40
|
+
|
|
41
|
+
def next_migration_string(padding = 3)
|
|
42
|
+
return orig_migration_string(padding) unless(ActiveRecord::Base.timestamped_migrations)
|
|
43
|
+
(Time.now.utc.strftime("%Y%m%d%H%M") + ("%.2d" % migration_count))
|
|
44
|
+
end
|
|
45
|
+
|
|
46
|
+
end
|
|
47
|
+
end
|
|
48
|
+
end
|
|
49
|
+
end
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
Installs all files for the Talia administration backend.
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
require File.dirname(__FILE__) + '/../generator_helpers'
|
|
2
|
+
|
|
3
|
+
class TaliaAdminGenerator < Rails::Generator::Base
|
|
4
|
+
|
|
5
|
+
include GeneratorHelpers
|
|
6
|
+
|
|
7
|
+
def self_dir ; File.dirname(__FILE__) ; end
|
|
8
|
+
|
|
9
|
+
def manifest
|
|
10
|
+
record do |m|
|
|
11
|
+
files_in m, 'views', 'app/'
|
|
12
|
+
files_in m, 'helpers', 'app/'
|
|
13
|
+
files_in m, 'controllers', 'app/'
|
|
14
|
+
files_in m, 'public'
|
|
15
|
+
files_in m, 'test'
|
|
16
|
+
end
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
end
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
class Admin::BackgroundController < ApplicationController
|
|
2
|
+
layout 'admin', :except => [:update_progress]
|
|
3
|
+
require_role 'admin'
|
|
4
|
+
|
|
5
|
+
active_scaffold 'Bj::Table::Job' do |config|
|
|
6
|
+
# runner = Bj::Runner.ping
|
|
7
|
+
runner_label = "no runner active"
|
|
8
|
+
config.label = "Job Management (#{runner_label})"
|
|
9
|
+
|
|
10
|
+
if(!Bj.config[Bj::Runner.no_tickle_key])
|
|
11
|
+
config.action_links.add('tickle', :label => 'Tickle Runner', :action => 'tickle', :parameters => {:id => '0'})
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
config.actions.exclude :create, :update, :delete
|
|
15
|
+
config.show.link.inline = false
|
|
16
|
+
config.columns = [ :state, :tag, :pid, :submitter, :runner, :submitted_at ]
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
def tickle
|
|
20
|
+
Bj::Runner.tickle
|
|
21
|
+
redirect_to :action => 'index'
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
def show
|
|
25
|
+
@job = Bj::Table::Job.find(params['id'])
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
def stdin
|
|
29
|
+
@job = Bj::Table::Job.find(params['id'])
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
def stdout
|
|
33
|
+
@job = Bj::Table::Job.find(params['id'])
|
|
34
|
+
end
|
|
35
|
+
|
|
36
|
+
def stderr
|
|
37
|
+
@job = Bj::Table::Job.find(params['id'])
|
|
38
|
+
end
|
|
39
|
+
|
|
40
|
+
def environment
|
|
41
|
+
@job = Bj::Table::Job.find(params['id'])
|
|
42
|
+
@environment = @job.env ? YAML.load(@job.env) : nil
|
|
43
|
+
end
|
|
44
|
+
|
|
45
|
+
def update_progress
|
|
46
|
+
@job = Bj::Table::Job.find(params['id'])
|
|
47
|
+
@progress_job = TaliaCore::BackgroundJobs::ProgressJob.find(:first, :conditions => { :job_id => @job.id })
|
|
48
|
+
render :partial => 'progress'
|
|
49
|
+
end
|
|
50
|
+
end
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
class Admin::CustomTemplatesController < ApplicationController
|
|
2
|
+
layout 'admin'
|
|
3
|
+
require_role 'admin'
|
|
4
|
+
|
|
5
|
+
active_scaffold :custom_template do |config|
|
|
6
|
+
config.columns = [:name, :template_type, :content]
|
|
7
|
+
config.action_links.add 'clear_cache', :label => 'Clear Cache'
|
|
8
|
+
end
|
|
9
|
+
|
|
10
|
+
def clear_cache
|
|
11
|
+
CustomTemplate.find(:all).each do |template|
|
|
12
|
+
expire_page(:controller => '/custom_templates', :action => template.template_type, :id => template.name)
|
|
13
|
+
end
|
|
14
|
+
render :text => 'Template cache cleared'
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
protected
|
|
18
|
+
|
|
19
|
+
# Before an updated record, clean out the cache for that page
|
|
20
|
+
def before_update_save(record)
|
|
21
|
+
expire_page(:controller => '/custom_templates', :action => record.template_type, :id => record.name)
|
|
22
|
+
puts "EXPIRED"
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
end
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
class Admin::LocalesController < ApplicationController
|
|
2
|
+
layout 'admin'
|
|
3
|
+
|
|
4
|
+
def new
|
|
5
|
+
end
|
|
6
|
+
|
|
7
|
+
def create
|
|
8
|
+
if I18n.add_locale(params[:name], params[:code])
|
|
9
|
+
redirect_to edit_admin_translation_path(params[:code])
|
|
10
|
+
else
|
|
11
|
+
flash[:error] = "Invalid locale, please check the format and make sure the language is available."
|
|
12
|
+
render :action => 'new'
|
|
13
|
+
end
|
|
14
|
+
end
|
|
15
|
+
end
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
require 'paginator'
|
|
2
|
+
|
|
3
|
+
class Admin::SourcesController < ApplicationController
|
|
4
|
+
include TaliaCore
|
|
5
|
+
require_role 'admin'
|
|
6
|
+
layout 'admin'
|
|
7
|
+
cache_sweeper :av_media_sweeper, :only => :update
|
|
8
|
+
|
|
9
|
+
# GET /admin/sources
|
|
10
|
+
# GET /admin/sources.xml
|
|
11
|
+
def index
|
|
12
|
+
@sources = TaliaCore::Source.paginate :page => params[:page], :per_page => 10
|
|
13
|
+
|
|
14
|
+
respond_to do |format|
|
|
15
|
+
format.html # index.html.erb
|
|
16
|
+
format.xml { render :xml => @sources }
|
|
17
|
+
format.js do
|
|
18
|
+
render :update do |page|
|
|
19
|
+
page.replace_html 'sources', :partial => 'sources'
|
|
20
|
+
end
|
|
21
|
+
end
|
|
22
|
+
end
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
# GET /admin/sources/1/edit
|
|
26
|
+
def edit
|
|
27
|
+
@source = TaliaCore::Source.find_by_partial_uri(params[:id])
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
# PUT /admin/sources/1
|
|
31
|
+
# PUT /admin/sources/1.xml
|
|
32
|
+
def update
|
|
33
|
+
@source = TaliaCore::Source.find_by_id(params[:id])
|
|
34
|
+
|
|
35
|
+
respond_to do |format|
|
|
36
|
+
if @source.update_attributes(params[:source])
|
|
37
|
+
flash[:notice] = 'Source was successfully updated.'
|
|
38
|
+
format.html { redirect_to :action => "index" }
|
|
39
|
+
format.xml { head :ok }
|
|
40
|
+
else
|
|
41
|
+
format.html { render :action => "edit" }
|
|
42
|
+
format.xml { render :xml => @source.errors, :status => :unprocessable_entity }
|
|
43
|
+
end
|
|
44
|
+
end
|
|
45
|
+
end
|
|
46
|
+
|
|
47
|
+
# GET /admin/sources/data/1
|
|
48
|
+
def data
|
|
49
|
+
# We need to specify the clause, because of Source#find overwrite the
|
|
50
|
+
# default behavior.
|
|
51
|
+
@source = TaliaCore::Source.find_by_id(params[:id])
|
|
52
|
+
|
|
53
|
+
respond_to do |format|
|
|
54
|
+
format.js do
|
|
55
|
+
render :update do |page|
|
|
56
|
+
page.replace_html 'list', :partial => 'list'
|
|
57
|
+
page.insert_html :top, 'data', :partial => 'notice', :locals => { :text => 'Your file has been saved.'}
|
|
58
|
+
page[:data_notice].visual_effect :highlight
|
|
59
|
+
page[:data_notice].visual_effect :fade, :duration => 3
|
|
60
|
+
page.delay(3.1) { page.remove :data_notice }
|
|
61
|
+
end
|
|
62
|
+
end
|
|
63
|
+
end
|
|
64
|
+
end
|
|
65
|
+
|
|
66
|
+
# GET /admin/sources/auto_complete_for_source/aaa
|
|
67
|
+
def auto_complete_for_source
|
|
68
|
+
@items = TaliaCore::Source.find_by_uri_token(params[:source][:predicates_attributes].first[:titleized])
|
|
69
|
+
render :inline => "<%= auto_complete_result @items, 'titleized' %>"
|
|
70
|
+
end
|
|
71
|
+
end
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
class Admin::TranslationsController < ApplicationController
|
|
2
|
+
layout 'admin'
|
|
3
|
+
require_role 'admin'
|
|
4
|
+
PER_PAGE = 30
|
|
5
|
+
|
|
6
|
+
after_filter :flush_locale, :only => [:update, :destroy]
|
|
7
|
+
|
|
8
|
+
# GET /admin/translations
|
|
9
|
+
def index
|
|
10
|
+
redirect_to edit_admin_translation_path(Locale.active.code)
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
# GET /admin/translations/search?key1=hello%20world&key2=good_morning
|
|
14
|
+
def search
|
|
15
|
+
keys = params.map {|key, value| value if key.to_s =~ /key/}.compact
|
|
16
|
+
translations = ViewTranslation.find_by_locale_and_tr_key(params[:locale], keys)
|
|
17
|
+
session[:reference_locale] = params[:locale]
|
|
18
|
+
|
|
19
|
+
respond_to do |format|
|
|
20
|
+
format.js { render :layout => false, :inline => translations.to_json }
|
|
21
|
+
end
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
# GET /admin/translations/en-US/edit
|
|
25
|
+
def edit
|
|
26
|
+
@translations = ViewTranslation.find_by_locale(params[:id], :order => "tr_key ASC")
|
|
27
|
+
@locale_code = params[:id]
|
|
28
|
+
@autoload = load_reference_translations?
|
|
29
|
+
end
|
|
30
|
+
|
|
31
|
+
# PUT /admin/translations/en-US
|
|
32
|
+
def update
|
|
33
|
+
if ViewTranslation.create_or_update(params[:translations], params[:id])
|
|
34
|
+
flash[:notice] = 'Your translations has been saved'
|
|
35
|
+
else
|
|
36
|
+
flash[:error] = 'There was some problems'
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
redirect_to edit_admin_translation_path(params[:id])
|
|
40
|
+
end
|
|
41
|
+
|
|
42
|
+
# DELETE /admin/translations/1
|
|
43
|
+
def destroy
|
|
44
|
+
@translation = ViewTranslation.find(params[:id])
|
|
45
|
+
@translation.destroy
|
|
46
|
+
|
|
47
|
+
respond_to do |format|
|
|
48
|
+
format.html do
|
|
49
|
+
flash[:notice] = 'Your translation has been deleted'
|
|
50
|
+
redirect_to edit_admin_translation_path(params[:locale])
|
|
51
|
+
end
|
|
52
|
+
format.js
|
|
53
|
+
end
|
|
54
|
+
end
|
|
55
|
+
|
|
56
|
+
private
|
|
57
|
+
|
|
58
|
+
def load_reference_translations?
|
|
59
|
+
!!session[:reference_locale] && session[:reference_locale] != params[:locale]
|
|
60
|
+
end
|
|
61
|
+
end
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
class Admin::UsersController < ApplicationController
|
|
2
|
+
require_role 'admin'
|
|
3
|
+
layout 'admin'
|
|
4
|
+
PER_PAGE = 10
|
|
5
|
+
|
|
6
|
+
def index
|
|
7
|
+
@users = User.paginate(:page => params[:page], :per_page => PER_PAGE)
|
|
8
|
+
end
|
|
9
|
+
|
|
10
|
+
def show
|
|
11
|
+
@user = User.find(params[:id])
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
def new
|
|
15
|
+
@user = User.new
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
def create
|
|
19
|
+
@user = User.new(params[:user])
|
|
20
|
+
|
|
21
|
+
if @user.save
|
|
22
|
+
flash[:notice] = "User was successfully created."
|
|
23
|
+
redirect_to :action => 'show', :id => @user
|
|
24
|
+
else
|
|
25
|
+
render :action => 'new'
|
|
26
|
+
end
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
def edit
|
|
30
|
+
@user = User.find(params[:id])
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
def update
|
|
34
|
+
@user = User.find(params[:id])
|
|
35
|
+
|
|
36
|
+
if @user.update_attributes(params[:user])
|
|
37
|
+
flash[:notice] = "User was successfully updated."
|
|
38
|
+
redirect_to :action => 'show', :id => @user
|
|
39
|
+
else
|
|
40
|
+
render :action => 'edit'
|
|
41
|
+
end
|
|
42
|
+
end
|
|
43
|
+
|
|
44
|
+
def destroy
|
|
45
|
+
User.find(params[:id]).destroy
|
|
46
|
+
redirect_to :action => 'index'
|
|
47
|
+
end
|
|
48
|
+
end
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
module Admin::BackgroundHelper
|
|
2
|
+
|
|
3
|
+
def render_job
|
|
4
|
+
case(@job.state)
|
|
5
|
+
when 'finished'
|
|
6
|
+
render :partial => 'finished'
|
|
7
|
+
when 'running'
|
|
8
|
+
render :partial => 'running'
|
|
9
|
+
when 'pending'
|
|
10
|
+
render :partial => 'pending'
|
|
11
|
+
else
|
|
12
|
+
"Unknown state #{@job.state}"
|
|
13
|
+
end
|
|
14
|
+
end
|
|
15
|
+
|
|
16
|
+
def progress_eta
|
|
17
|
+
return 'Finishing...' unless(@progress_job.percentage < 100)
|
|
18
|
+
('ETA: ' + duration_s(@progress_job.eta)).gsub(' ', ' ')
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
def job_tag
|
|
22
|
+
"- #{@job.tag}" if(@job.tag)
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
def job_duration
|
|
26
|
+
finished = @job.finished_at || Time.now
|
|
27
|
+
duration_s(finished - @job.started_at)
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
def job_link
|
|
31
|
+
link_to('Back to job', :action => 'show', :id => @job.id)
|
|
32
|
+
end
|
|
33
|
+
|
|
34
|
+
def stdout_link
|
|
35
|
+
link_to('View STDOUT', :action => 'stdout', :id => @job.id) unless(@job.stdout.blank?)
|
|
36
|
+
end
|
|
37
|
+
|
|
38
|
+
def stderr_link
|
|
39
|
+
link_to('View STDERR', :action => 'stderr', :id => @job.id) unless(@job.stderr.blank?)
|
|
40
|
+
end
|
|
41
|
+
|
|
42
|
+
def stdin_link
|
|
43
|
+
link_to('View STDIN', :action => 'stdin', :id => @job.id) unless(@job.stdin.blank?)
|
|
44
|
+
end
|
|
45
|
+
|
|
46
|
+
def environment_link
|
|
47
|
+
link_to('Runtime Environment', :action => 'environment', :id => @job.id) unless(@job.env.blank?)
|
|
48
|
+
end
|
|
49
|
+
|
|
50
|
+
def duration_s(seconds)
|
|
51
|
+
minutes, seconds = seconds.divmod(60)
|
|
52
|
+
hours, minutes = (minutes == 0) ? [0, 0] : minutes.divmod(60)
|
|
53
|
+
duration_s = ''
|
|
54
|
+
(duration_s << "#{hours.to_i} hours ") if(hours != 0)
|
|
55
|
+
(duration_s << "#{minutes.to_i} minutes ") if(minutes != 0)
|
|
56
|
+
duration_s << "#{seconds.to_i} seconds"
|
|
57
|
+
duration_s
|
|
58
|
+
end
|
|
59
|
+
|
|
60
|
+
end
|