tolk 1.2.0 → 2.0.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 +7 -0
- data/app/assets/javascripts/tolk/actions.js +30 -0
- data/app/assets/javascripts/tolk/application.js +3 -4
- data/app/assets/javascripts/tolk/interpolations.js +21 -0
- data/app/assets/javascripts/tolk/jquery-1.9.1.min.js +5 -0
- data/app/assets/javascripts/tolk/layout.js +17 -0
- data/app/assets/javascripts/tolk/libraries.js +1 -0
- data/app/assets/stylesheets/tolk/application.css +4 -2
- data/app/assets/stylesheets/tolk/screen.css +104 -38
- data/app/controllers/tolk/application_controller.rb +5 -4
- data/app/controllers/tolk/locales_controller.rb +51 -12
- data/app/controllers/tolk/searches_controller.rb +3 -3
- data/app/helpers/tolk/application_helper.rb +22 -6
- data/app/models/tolk/locale.rb +96 -95
- data/app/models/tolk/phrase.rb +4 -5
- data/app/models/tolk/translation.rb +53 -11
- data/app/views/layouts/tolk/application.html.erb +6 -10
- data/app/views/tolk/locales/all.html.erb +14 -9
- data/app/views/tolk/locales/index.html.erb +1 -4
- data/app/views/tolk/locales/show.html.erb +14 -9
- data/app/views/tolk/searches/_form.html.erb +2 -2
- data/app/views/tolk/searches/show.html.erb +15 -10
- data/config/initializers/will_paginate.rb +18 -0
- data/config/routes.rb +4 -0
- data/lib/generators/tolk/install_generator.rb +44 -0
- data/lib/generators/tolk/templates/initializer.erb +412 -0
- data/lib/generators/{tolk_migration/templates/migrate/create_tolk_tables.rb → tolk/templates/migration.rb} +0 -0
- data/lib/generators/tolk/utils.rb +35 -0
- data/lib/tasks/tolk_tasks.rake +14 -2
- data/lib/tolk.rb +13 -2
- data/lib/tolk/config.rb +87 -0
- data/lib/tolk/engine.rb +18 -0
- data/lib/tolk/export.rb +27 -0
- data/lib/tolk/import.rb +23 -5
- data/lib/tolk/pagination.rb +28 -0
- data/lib/tolk/sync.rb +25 -9
- data/lib/tolk/version.rb +2 -2
- data/lib/tolk/yaml.rb +29 -0
- metadata +113 -40
- data/app/assets/javascripts/tolk/controls.js +0 -963
- data/app/assets/javascripts/tolk/dragdrop.js +0 -972
- data/app/assets/javascripts/tolk/effects.js +0 -1120
- data/app/assets/javascripts/tolk/prototype.js +0 -4221
- data/init.rb +0 -8
- data/lib/generators/tolk_migration/tolk_migration_generator.rb +0 -19
File without changes
|
@@ -0,0 +1,35 @@
|
|
1
|
+
module Tolk
|
2
|
+
module Generators
|
3
|
+
module Utils
|
4
|
+
module InstanceMethods
|
5
|
+
def display(output, color = :green)
|
6
|
+
say(" - #{output}", color)
|
7
|
+
end
|
8
|
+
|
9
|
+
def ask_for(wording, default_value = nil, override_if_present_value = nil)
|
10
|
+
override_if_present_value.present? ?
|
11
|
+
display("Using [#{override_if_present_value}] for question '#{wording}'") && override_if_present_value :
|
12
|
+
ask(" ? #{wording} Press <enter> for [#{default_value}] >", :yellow).presence || default_value
|
13
|
+
end
|
14
|
+
|
15
|
+
def ask_boolean(wording, default_value = nil)
|
16
|
+
value = ask_for(wording, 'Y')
|
17
|
+
value = (value == 'Y')
|
18
|
+
end
|
19
|
+
end
|
20
|
+
|
21
|
+
module ClassMethods
|
22
|
+
def next_migration_number(dirname)
|
23
|
+
if ActiveRecord::Base.timestamped_migrations
|
24
|
+
migration_number = Time.now.utc.strftime("%Y%m%d%H%M%S").to_i
|
25
|
+
migration_number += 1
|
26
|
+
migration_number.to_s
|
27
|
+
else
|
28
|
+
"%.3d" % (current_migration_number(dirname) + 1)
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
34
|
+
end
|
35
|
+
|
data/lib/tasks/tolk_tasks.rake
CHANGED
@@ -1,7 +1,14 @@
|
|
1
1
|
namespace :tolk do
|
2
|
+
desc "Update locale"
|
3
|
+
task :update_locale, [:old_name, :new_name] => :environment do |t, args|
|
4
|
+
old_name, new_name = args[:old_name], args[:new_name]
|
5
|
+
puts Tolk::Locale.rename(old_name, new_name)
|
6
|
+
end
|
7
|
+
|
2
8
|
desc "Add database tables, copy over the assets, and import existing translations"
|
3
9
|
task :setup => :environment do
|
4
|
-
system
|
10
|
+
system 'rails g tolk:install'
|
11
|
+
|
5
12
|
Rake::Task['db:migrate'].invoke
|
6
13
|
Rake::Task['tolk:sync'].invoke
|
7
14
|
Rake::Task['tolk:import'].invoke
|
@@ -17,6 +24,12 @@ namespace :tolk do
|
|
17
24
|
Tolk::Locale.dump_all
|
18
25
|
end
|
19
26
|
|
27
|
+
desc "Generate a single yml file for a specific locale"
|
28
|
+
task :dump_yaml, [:locale] => :environment do |t, args|
|
29
|
+
locale = args[:locale]
|
30
|
+
Tolk::Locale.dump_yaml(locale)
|
31
|
+
end
|
32
|
+
|
20
33
|
desc "Imports data all non default locale yml files to Tolk"
|
21
34
|
task :import => :environment do
|
22
35
|
Rake::Task['tolk:sync'].invoke
|
@@ -30,5 +43,4 @@ namespace :tolk do
|
|
30
43
|
puts "#{bt.phrase.key} - #{bt.text}"
|
31
44
|
end
|
32
45
|
end
|
33
|
-
|
34
46
|
end
|
data/lib/tolk.rb
CHANGED
@@ -1,8 +1,19 @@
|
|
1
|
-
require '
|
2
|
-
require '
|
1
|
+
require 'safe_yaml/load'
|
2
|
+
require 'tolk/config'
|
3
3
|
require 'tolk/engine'
|
4
4
|
require 'tolk/sync'
|
5
5
|
require 'tolk/import'
|
6
|
+
require 'tolk/export'
|
7
|
+
require 'tolk/yaml'
|
8
|
+
require 'tolk/pagination'
|
6
9
|
|
7
10
|
module Tolk
|
11
|
+
# Setup Tolk
|
12
|
+
def self.config(&block)
|
13
|
+
if block_given?
|
14
|
+
block.call(Tolk::Config)
|
15
|
+
else
|
16
|
+
Tolk::Config
|
17
|
+
end
|
18
|
+
end
|
8
19
|
end
|
data/lib/tolk/config.rb
ADDED
@@ -0,0 +1,87 @@
|
|
1
|
+
require 'active_support/core_ext/class/attribute_accessors'
|
2
|
+
|
3
|
+
module Tolk
|
4
|
+
module Config
|
5
|
+
|
6
|
+
|
7
|
+
class << self
|
8
|
+
# Mapping : a hash of the type { 'ar' => 'Arabic' }
|
9
|
+
attr_accessor :mapping
|
10
|
+
|
11
|
+
# Dump locale path by default the locales folder (config/locales)
|
12
|
+
attr_accessor :dump_path
|
13
|
+
|
14
|
+
# primary locale to not be overriden by default locale in development mode
|
15
|
+
attr_accessor :primary_locale_name
|
16
|
+
|
17
|
+
# exclude locales tokens from gems
|
18
|
+
attr_accessor :exclude_gems_token
|
19
|
+
|
20
|
+
# reject files of type xxx.en.yml when syncing locales
|
21
|
+
attr_accessor :block_xxx_en_yml_locale_files
|
22
|
+
|
23
|
+
# strip translation texts automatically
|
24
|
+
attr_accessor :strip_texts
|
25
|
+
|
26
|
+
def reset
|
27
|
+
@exclude_gems_token = false
|
28
|
+
|
29
|
+
@strip_texts = true
|
30
|
+
|
31
|
+
@block_xxx_en_yml_locale_files = true # keep compat with older versions
|
32
|
+
|
33
|
+
@dump_path = Proc.new { "#{Rails.application.root}/config/locales" }
|
34
|
+
|
35
|
+
@mapping = {
|
36
|
+
'ar' => 'Arabic',
|
37
|
+
'bs' => 'Bosnian',
|
38
|
+
'bg' => 'Bulgarian',
|
39
|
+
'ca' => 'Catalan',
|
40
|
+
'cs' => 'Czech',
|
41
|
+
'da' => 'Danish',
|
42
|
+
'de' => 'German',
|
43
|
+
'el' => 'Greek',
|
44
|
+
'en' => 'English',
|
45
|
+
'es' => 'Spanish',
|
46
|
+
'et' => 'Estonian',
|
47
|
+
'fa' => 'Persian',
|
48
|
+
'fi' => 'Finnish',
|
49
|
+
'fr' => 'French',
|
50
|
+
'he' => 'Hebrew',
|
51
|
+
'hr' => 'Croatian',
|
52
|
+
'hu' => 'Hungarian',
|
53
|
+
'id' => 'Indonesian',
|
54
|
+
'is' => 'Icelandic',
|
55
|
+
'it' => 'Italian',
|
56
|
+
'ja' => 'Japanese',
|
57
|
+
'ko' => 'Korean',
|
58
|
+
'lo' => 'Lao',
|
59
|
+
'lt' => 'Lithuanian',
|
60
|
+
'lv' => 'Latvian',
|
61
|
+
'mk' => 'Macedonian',
|
62
|
+
'nl' => 'Dutch',
|
63
|
+
'no' => 'Norwegian',
|
64
|
+
'pl' => 'Polish',
|
65
|
+
'pt-BR' => 'Portuguese (Brazilian)',
|
66
|
+
'pt-PT' => 'Portuguese (Portugal)',
|
67
|
+
'ro' => 'Romanian',
|
68
|
+
'ru' => 'Russian',
|
69
|
+
'sv' => 'Swedish',
|
70
|
+
'sk' => 'Slovak',
|
71
|
+
'sl' => 'Slovene',
|
72
|
+
'sr' => 'Serbian',
|
73
|
+
'sw' => 'Swahili',
|
74
|
+
'th' => 'Thai',
|
75
|
+
'tr' => 'Turkish',
|
76
|
+
'uk' => 'Ukrainian',
|
77
|
+
'vi' => 'Vietnamese',
|
78
|
+
'zh-CN' => 'Chinese (Simplified)',
|
79
|
+
'zh-TW' => 'Chinese (Traditional)'
|
80
|
+
}
|
81
|
+
end
|
82
|
+
end
|
83
|
+
|
84
|
+
# Set default values for configuration options on load
|
85
|
+
self.reset
|
86
|
+
end
|
87
|
+
end
|
data/lib/tolk/engine.rb
CHANGED
@@ -3,5 +3,23 @@ require 'rails'
|
|
3
3
|
module Tolk
|
4
4
|
class Engine < Rails::Engine
|
5
5
|
isolate_namespace Tolk
|
6
|
+
|
7
|
+
initializer :assets do |app|
|
8
|
+
app.config.assets.precompile += ['tolk/libraries.js']
|
9
|
+
end
|
10
|
+
|
11
|
+
# We need one of the two pagination engines loaded by this point.
|
12
|
+
# We don't care which one, just one of them will do.
|
13
|
+
begin
|
14
|
+
require 'kaminari'
|
15
|
+
rescue LoadError
|
16
|
+
begin
|
17
|
+
require 'will_paginate'
|
18
|
+
rescue LoadError
|
19
|
+
puts "Please add the kaminari or will_paginate gem to your application's Gemfile."
|
20
|
+
puts "The Tolk engine needs either kaminari or will_paginate in order to paginate."
|
21
|
+
exit
|
22
|
+
end
|
23
|
+
end
|
6
24
|
end
|
7
25
|
end
|
data/lib/tolk/export.rb
ADDED
@@ -0,0 +1,27 @@
|
|
1
|
+
module Tolk
|
2
|
+
class Export
|
3
|
+
attr_reader :name, :data, :destination
|
4
|
+
|
5
|
+
def initialize(args)
|
6
|
+
@name = args.fetch(:name, '')
|
7
|
+
@data = args.fetch(:data, {})
|
8
|
+
@destination = args.fetch(:destination, self.class.dump_path)
|
9
|
+
end
|
10
|
+
|
11
|
+
def dump
|
12
|
+
File.open("#{destination}/#{name}.yml", "w+") do |file|
|
13
|
+
file.write(Tolk::YAML.dump(data))
|
14
|
+
end
|
15
|
+
end
|
16
|
+
|
17
|
+
class << self
|
18
|
+
def dump(args)
|
19
|
+
new(args).dump
|
20
|
+
end
|
21
|
+
|
22
|
+
def dump_path
|
23
|
+
Tolk::Locale._dump_path
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
data/lib/tolk/import.rb
CHANGED
@@ -8,14 +8,21 @@ module Tolk
|
|
8
8
|
|
9
9
|
def import_secondary_locales
|
10
10
|
locales = Dir.entries(self.locales_config_path)
|
11
|
-
locales = locales.reject {|l| ['.', '..'].include?(l) || !l.ends_with?('.yml') }.map {|x| x.split('.').first } - [Tolk::Locale.primary_locale.name]
|
12
11
|
|
12
|
+
locale_block_filter = Proc.new {
|
13
|
+
|l| ['.', '..'].include?(l) ||
|
14
|
+
!l.ends_with?('.yml') ||
|
15
|
+
l.match(/(.*\.){2,}/) # reject files of type xxx.en.yml
|
16
|
+
}
|
17
|
+
locales = locales.reject(&locale_block_filter).map {|x| x.split('.').first }
|
18
|
+
locales = locales - [Tolk::Locale.primary_locale.name]
|
13
19
|
locales.each {|l| import_locale(l) }
|
14
20
|
end
|
15
21
|
|
16
22
|
def import_locale(locale_name)
|
17
|
-
locale = Tolk::Locale.
|
23
|
+
locale = Tolk::Locale.where(name: locale_name).first_or_create
|
18
24
|
data = locale.read_locale_file
|
25
|
+
return unless data
|
19
26
|
|
20
27
|
phrases = Tolk::Phrase.all
|
21
28
|
count = 0
|
@@ -25,9 +32,13 @@ module Tolk
|
|
25
32
|
|
26
33
|
if phrase
|
27
34
|
translation = locale.translations.new(:text => value, :phrase => phrase)
|
28
|
-
|
35
|
+
if translation.save
|
36
|
+
count = count + 1
|
37
|
+
elsif translation.errors[:variables].present?
|
38
|
+
puts "[WARN] Key '#{key}' from '#{locale_name}.yml' could not be saved: #{translation.errors[:variables].first}"
|
39
|
+
end
|
29
40
|
else
|
30
|
-
puts "[ERROR] Key '#{key}' was found in #{locale_name}.yml but #{Tolk::Locale.primary_language_name} translation is missing"
|
41
|
+
puts "[ERROR] Key '#{key}' was found in '#{locale_name}.yml' but #{Tolk::Locale.primary_language_name} translation is missing"
|
31
42
|
end
|
32
43
|
end
|
33
44
|
|
@@ -40,7 +51,14 @@ module Tolk
|
|
40
51
|
locale_file = "#{self.locales_config_path}/#{self.name}.yml"
|
41
52
|
raise "Locale file #{locale_file} does not exists" unless File.exists?(locale_file)
|
42
53
|
|
43
|
-
|
54
|
+
puts "[INFO] Reading #{locale_file} for locale #{self.name}"
|
55
|
+
begin
|
56
|
+
self.class.flat_hash(Tolk::YAML.load_file(locale_file)[self.name])
|
57
|
+
rescue
|
58
|
+
puts "[ERROR] File #{locale_file} expected to declare #{self.name} locale, but it does not. Skipping this file."
|
59
|
+
nil
|
60
|
+
end
|
61
|
+
|
44
62
|
end
|
45
63
|
|
46
64
|
end
|
@@ -0,0 +1,28 @@
|
|
1
|
+
module Tolk
|
2
|
+
module Pagination
|
3
|
+
module Methods
|
4
|
+
# Kaminari defaults page_method_name to :page, will_paginate always uses
|
5
|
+
# :page
|
6
|
+
def pagination_method
|
7
|
+
defined?(Kaminari) ? Kaminari.config.page_method_name : :page
|
8
|
+
end
|
9
|
+
|
10
|
+
# Kaminari defaults param_name to :page, will_paginate always uses :page
|
11
|
+
def pagination_param
|
12
|
+
defined?(Kaminari) ? Kaminari.config.param_name : :page
|
13
|
+
end
|
14
|
+
end
|
15
|
+
|
16
|
+
module ViewHelper
|
17
|
+
def tolk_paginate(collection, options = {})
|
18
|
+
if respond_to?(:will_paginate)
|
19
|
+
# If parent app is using Will Paginate, we need to use it also
|
20
|
+
will_paginate collection, options
|
21
|
+
else
|
22
|
+
# Otherwise use Kaminari
|
23
|
+
paginate collection, options
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
data/lib/tolk/sync.rb
CHANGED
@@ -10,14 +10,36 @@ module Tolk
|
|
10
10
|
end
|
11
11
|
|
12
12
|
def load_translations
|
13
|
-
|
13
|
+
if Tolk.config.exclude_gems_token
|
14
|
+
# bypass default init_translations
|
15
|
+
I18n.backend.reload! if I18n.backend.initialized?
|
16
|
+
I18n.backend.instance_variable_set(:@initialized, true)
|
17
|
+
translations_files = Dir[Rails.root.join('config', 'locales', "*.{rb,yml}")]
|
18
|
+
|
19
|
+
if Tolk.config.block_xxx_en_yml_locale_files
|
20
|
+
locale_block_filter = Proc.new {
|
21
|
+
|l| ['.', '..'].include?(l) ||
|
22
|
+
!l.ends_with?('.yml') ||
|
23
|
+
l.split("/").last.match(/(.*\.){2,}/) # reject files of type xxx.en.yml
|
24
|
+
}
|
25
|
+
translations_files = translations_files.reject(&locale_block_filter)
|
26
|
+
end
|
27
|
+
|
28
|
+
I18n.backend.load_translations(translations_files)
|
29
|
+
else
|
30
|
+
I18n.backend.send :init_translations unless I18n.backend.initialized? # force load
|
31
|
+
end
|
14
32
|
translations = flat_hash(I18n.backend.send(:translations)[primary_locale.name.to_sym])
|
15
33
|
filter_out_i18n_keys(translations.merge(read_primary_locale_file))
|
16
34
|
end
|
17
35
|
|
18
36
|
def read_primary_locale_file
|
19
37
|
primary_file = "#{self.locales_config_path}/#{self.primary_locale_name}.yml"
|
20
|
-
File.exists?(primary_file)
|
38
|
+
if File.exists?(primary_file)
|
39
|
+
flat_hash(Tolk::YAML.load_file(primary_file)[self.primary_locale_name])
|
40
|
+
else
|
41
|
+
{}
|
42
|
+
end
|
21
43
|
end
|
22
44
|
|
23
45
|
def flat_hash(data, prefix = '', result = {})
|
@@ -38,7 +60,6 @@ module Tolk
|
|
38
60
|
|
39
61
|
def sync_phrases(translations)
|
40
62
|
primary_locale = self.primary_locale
|
41
|
-
secondary_locales = self.secondary_locales
|
42
63
|
|
43
64
|
# Handle deleted phrases
|
44
65
|
translations.present? ? Tolk::Phrase.destroy_all(["tolk_phrases.key NOT IN (?)", translations.keys]) : Tolk::Phrase.destroy_all
|
@@ -54,12 +75,7 @@ module Tolk
|
|
54
75
|
|
55
76
|
if translation.changed? && !translation.new_record?
|
56
77
|
# Set the primary updated flag if the primary translation has changed and it is not a new record.
|
57
|
-
|
58
|
-
if existing_translation = existing_phrase.translations.detect {|t| t.locale_id == locale.id }
|
59
|
-
existing_translation.force_set_primary_update = true
|
60
|
-
existing_translation.save!
|
61
|
-
end
|
62
|
-
end
|
78
|
+
existing_phrase.translations.where(Tolk::Translation.arel_table[:locale_id].not_eq(primary_locale.id)).update_all({ :primary_updated => true })
|
63
79
|
end
|
64
80
|
|
65
81
|
translation.primary = true
|
data/lib/tolk/version.rb
CHANGED
@@ -1,3 +1,3 @@
|
|
1
1
|
module Tolk
|
2
|
-
VERSION = "
|
3
|
-
end
|
2
|
+
VERSION = "2.0.0"
|
3
|
+
end
|
data/lib/tolk/yaml.rb
ADDED
@@ -0,0 +1,29 @@
|
|
1
|
+
module Tolk
|
2
|
+
module YAML
|
3
|
+
SAFE_YAML_OPTIONS = SafeYAML::Deep.freeze({
|
4
|
+
:default_mode => :safe,
|
5
|
+
:deserialize_symbols => true
|
6
|
+
})
|
7
|
+
|
8
|
+
def self.load(yaml)
|
9
|
+
# SafeYAML.load has different arity depending on the YAML engine used.
|
10
|
+
if SafeYAML::YAML_ENGINE == "psych"
|
11
|
+
SafeYAML.load(yaml, nil, SAFE_YAML_OPTIONS)
|
12
|
+
else # syck
|
13
|
+
SafeYAML.load(yaml, SAFE_YAML_OPTIONS)
|
14
|
+
end
|
15
|
+
end
|
16
|
+
|
17
|
+
def self.load_file(filename)
|
18
|
+
SafeYAML.load_file(filename, SAFE_YAML_OPTIONS)
|
19
|
+
end
|
20
|
+
|
21
|
+
def self.dump(payload)
|
22
|
+
if payload.respond_to?(:ya2yaml)
|
23
|
+
payload.ya2yaml(:syck_compatible => true)
|
24
|
+
else
|
25
|
+
::YAML.dump(payload)
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
metadata
CHANGED
@@ -1,51 +1,117 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: tolk
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
5
|
-
prerelease:
|
4
|
+
version: 2.0.0
|
6
5
|
platform: ruby
|
7
6
|
authors:
|
8
7
|
- David Heinemeier Hansson
|
9
8
|
- Piotr Sarnacki
|
10
9
|
- Emilio Tagua
|
11
10
|
- Thomas Darde
|
11
|
+
- Ferran Basora
|
12
12
|
autorequire:
|
13
13
|
bindir: bin
|
14
14
|
cert_chain: []
|
15
|
-
date:
|
15
|
+
date: 2016-10-21 00:00:00.000000000 Z
|
16
16
|
dependencies:
|
17
17
|
- !ruby/object:Gem::Dependency
|
18
|
-
name:
|
18
|
+
name: rails
|
19
19
|
requirement: !ruby/object:Gem::Requirement
|
20
|
-
none: false
|
21
20
|
requirements:
|
22
|
-
- -
|
21
|
+
- - ">="
|
23
22
|
- !ruby/object:Gem::Version
|
24
|
-
version: '0'
|
23
|
+
version: '4.0'
|
25
24
|
type: :runtime
|
26
25
|
prerelease: false
|
27
26
|
version_requirements: !ruby/object:Gem::Requirement
|
28
|
-
none: false
|
29
27
|
requirements:
|
30
|
-
- -
|
28
|
+
- - ">="
|
31
29
|
- !ruby/object:Gem::Version
|
32
|
-
version: '0'
|
30
|
+
version: '4.0'
|
33
31
|
- !ruby/object:Gem::Dependency
|
34
|
-
name:
|
32
|
+
name: safe_yaml
|
35
33
|
requirement: !ruby/object:Gem::Requirement
|
36
|
-
none: false
|
37
34
|
requirements:
|
38
|
-
- -
|
35
|
+
- - ">="
|
39
36
|
- !ruby/object:Gem::Version
|
40
|
-
version:
|
37
|
+
version: 0.8.6
|
41
38
|
type: :runtime
|
42
39
|
prerelease: false
|
43
40
|
version_requirements: !ruby/object:Gem::Requirement
|
44
|
-
none: false
|
45
41
|
requirements:
|
46
|
-
- -
|
42
|
+
- - ">="
|
43
|
+
- !ruby/object:Gem::Version
|
44
|
+
version: 0.8.6
|
45
|
+
- !ruby/object:Gem::Dependency
|
46
|
+
name: capybara
|
47
|
+
requirement: !ruby/object:Gem::Requirement
|
48
|
+
requirements:
|
49
|
+
- - "~>"
|
50
|
+
- !ruby/object:Gem::Version
|
51
|
+
version: 2.4.4
|
52
|
+
type: :development
|
53
|
+
prerelease: false
|
54
|
+
version_requirements: !ruby/object:Gem::Requirement
|
55
|
+
requirements:
|
56
|
+
- - "~>"
|
57
|
+
- !ruby/object:Gem::Version
|
58
|
+
version: 2.4.4
|
59
|
+
- !ruby/object:Gem::Dependency
|
60
|
+
name: sqlite3
|
61
|
+
requirement: !ruby/object:Gem::Requirement
|
62
|
+
requirements:
|
63
|
+
- - ">="
|
64
|
+
- !ruby/object:Gem::Version
|
65
|
+
version: '0'
|
66
|
+
type: :development
|
67
|
+
prerelease: false
|
68
|
+
version_requirements: !ruby/object:Gem::Requirement
|
69
|
+
requirements:
|
70
|
+
- - ">="
|
71
|
+
- !ruby/object:Gem::Version
|
72
|
+
version: '0'
|
73
|
+
- !ruby/object:Gem::Dependency
|
74
|
+
name: mocha
|
75
|
+
requirement: !ruby/object:Gem::Requirement
|
76
|
+
requirements:
|
77
|
+
- - ">="
|
78
|
+
- !ruby/object:Gem::Version
|
79
|
+
version: '1.0'
|
80
|
+
type: :development
|
81
|
+
prerelease: false
|
82
|
+
version_requirements: !ruby/object:Gem::Requirement
|
83
|
+
requirements:
|
84
|
+
- - ">="
|
85
|
+
- !ruby/object:Gem::Version
|
86
|
+
version: '1.0'
|
87
|
+
- !ruby/object:Gem::Dependency
|
88
|
+
name: selenium-webdriver
|
89
|
+
requirement: !ruby/object:Gem::Requirement
|
90
|
+
requirements:
|
91
|
+
- - ">="
|
47
92
|
- !ruby/object:Gem::Version
|
48
|
-
version: '0
|
93
|
+
version: '0'
|
94
|
+
type: :development
|
95
|
+
prerelease: false
|
96
|
+
version_requirements: !ruby/object:Gem::Requirement
|
97
|
+
requirements:
|
98
|
+
- - ">="
|
99
|
+
- !ruby/object:Gem::Version
|
100
|
+
version: '0'
|
101
|
+
- !ruby/object:Gem::Dependency
|
102
|
+
name: will_paginate
|
103
|
+
requirement: !ruby/object:Gem::Requirement
|
104
|
+
requirements:
|
105
|
+
- - ">="
|
106
|
+
- !ruby/object:Gem::Version
|
107
|
+
version: '0'
|
108
|
+
type: :development
|
109
|
+
prerelease: false
|
110
|
+
version_requirements: !ruby/object:Gem::Requirement
|
111
|
+
requirements:
|
112
|
+
- - ">="
|
113
|
+
- !ruby/object:Gem::Version
|
114
|
+
version: '0'
|
49
115
|
description: Tolk is a web interface for doing i18n translations packaged as an engine
|
50
116
|
for Rails applications.
|
51
117
|
email: david@loudthinking.com
|
@@ -54,21 +120,12 @@ extensions: []
|
|
54
120
|
extra_rdoc_files: []
|
55
121
|
files:
|
56
122
|
- MIT-LICENSE
|
57
|
-
-
|
58
|
-
- init.rb
|
59
|
-
- lib/generators/tolk_migration/templates/migrate/create_tolk_tables.rb
|
60
|
-
- lib/generators/tolk_migration/tolk_migration_generator.rb
|
61
|
-
- lib/tasks/tolk_tasks.rake
|
62
|
-
- lib/tolk/engine.rb
|
63
|
-
- lib/tolk/import.rb
|
64
|
-
- lib/tolk/sync.rb
|
65
|
-
- lib/tolk/version.rb
|
66
|
-
- lib/tolk.rb
|
123
|
+
- app/assets/javascripts/tolk/actions.js
|
67
124
|
- app/assets/javascripts/tolk/application.js
|
68
|
-
- app/assets/javascripts/tolk/
|
69
|
-
- app/assets/javascripts/tolk/
|
70
|
-
- app/assets/javascripts/tolk/
|
71
|
-
- app/assets/javascripts/tolk/
|
125
|
+
- app/assets/javascripts/tolk/interpolations.js
|
126
|
+
- app/assets/javascripts/tolk/jquery-1.9.1.min.js
|
127
|
+
- app/assets/javascripts/tolk/layout.js
|
128
|
+
- app/assets/javascripts/tolk/libraries.js
|
72
129
|
- app/assets/stylesheets/tolk/application.css
|
73
130
|
- app/assets/stylesheets/tolk/reset.css
|
74
131
|
- app/assets/stylesheets/tolk/screen.css
|
@@ -86,28 +143,44 @@ files:
|
|
86
143
|
- app/views/tolk/locales/show.html.erb
|
87
144
|
- app/views/tolk/searches/_form.html.erb
|
88
145
|
- app/views/tolk/searches/show.html.erb
|
89
|
-
|
90
|
-
|
146
|
+
- config/initializers/will_paginate.rb
|
147
|
+
- config/routes.rb
|
148
|
+
- lib/generators/tolk/install_generator.rb
|
149
|
+
- lib/generators/tolk/templates/initializer.erb
|
150
|
+
- lib/generators/tolk/templates/migration.rb
|
151
|
+
- lib/generators/tolk/utils.rb
|
152
|
+
- lib/tasks/tolk_tasks.rake
|
153
|
+
- lib/tolk.rb
|
154
|
+
- lib/tolk/config.rb
|
155
|
+
- lib/tolk/engine.rb
|
156
|
+
- lib/tolk/export.rb
|
157
|
+
- lib/tolk/import.rb
|
158
|
+
- lib/tolk/pagination.rb
|
159
|
+
- lib/tolk/sync.rb
|
160
|
+
- lib/tolk/version.rb
|
161
|
+
- lib/tolk/yaml.rb
|
162
|
+
homepage: https://github.com/tolk/tolk
|
163
|
+
licenses:
|
164
|
+
- MIT
|
165
|
+
metadata: {}
|
91
166
|
post_install_message:
|
92
167
|
rdoc_options: []
|
93
168
|
require_paths:
|
94
169
|
- lib
|
95
170
|
required_ruby_version: !ruby/object:Gem::Requirement
|
96
|
-
none: false
|
97
171
|
requirements:
|
98
|
-
- -
|
172
|
+
- - ">="
|
99
173
|
- !ruby/object:Gem::Version
|
100
|
-
version:
|
174
|
+
version: 2.0.0
|
101
175
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
102
|
-
none: false
|
103
176
|
requirements:
|
104
|
-
- -
|
177
|
+
- - ">="
|
105
178
|
- !ruby/object:Gem::Version
|
106
179
|
version: '0'
|
107
180
|
requirements: []
|
108
181
|
rubyforge_project:
|
109
|
-
rubygems_version:
|
182
|
+
rubygems_version: 2.4.5
|
110
183
|
signing_key:
|
111
|
-
specification_version:
|
184
|
+
specification_version: 4
|
112
185
|
summary: Rails engine providing web interface for managing i18n yaml files
|
113
186
|
test_files: []
|