card 1.101.0 → 1.101.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/VERSION +1 -1
- data/config/i18n-tasks.yml +0 -5
- data/config/initializers/01_core_extensions/array.rb +2 -1
- data/config/initializers/01_core_extensions/hash.rb +1 -0
- data/config/initializers/01_core_extensions/object.rb +15 -11
- data/config/initializers/02_patches/active_job.rb +1 -1
- data/config/initializers/02_patches/active_record.rb +2 -4
- data/config/initializers/02_patches/better_errors.rb +1 -3
- data/config/initializers/02_patches/kaminari.rb +2 -2
- data/config/initializers/deck_config.rb +1 -1
- data/config/initializers/inflections.rb +1 -0
- data/config/initializers/internationalization.rb +23 -21
- data/config/initializers/mime_types.rb +1 -0
- data/config/initializers/notification.rb +1 -0
- data/config/initializers/patches.rb +6 -5
- data/config/locales/en.yml +137 -525
- data/db/migrate/20110511221913_require_earlier_migrations.rb +1 -0
- data/db/migrate/20121111025347_require_1_10_migrations.rb +1 -0
- data/db/migrate/20121118114000_split_link_type.rb +1 -0
- data/db/migrate/20121118115000_update_link_type.rb +1 -0
- data/db/migrate/20130106052640_table_cleanup.rb +2 -2
- data/db/migrate/20130109015336_trunk_left.rb +1 -0
- data/db/migrate/20130411210957_update_codenames.rb +1 -0
- data/db/migrate/20140822073704_create_new_revision_tables.rb +1 -0
- data/db/migrate/20141001105348_move_revisions_to_actions.rb +9 -3
- data/db/migrate/20141216053032_better_index_names.rb +9 -6
- data/db/migrate/20170908114442_create_delayed_jobs.rb +1 -1
- data/db/migrate/20170908114452_increase_text_size_for_delayed_jobs.rb +1 -1
- data/db/migrate/20180514152037_add_card_virtuals_table.rb +1 -1
- data/db/migrate_core_cards/20120611203506_rails_inflection_updates.rb +3 -2
- data/db/migrate_core_cards/20130411191151_renaming_for_menu.rb +9 -9
- data/db/migrate_core_cards/20130419215612_import_help_text.rb +3 -2
- data/db/migrate_core_cards/20130823192433_add_style_cards.rb +5 -5
- data/db/migrate_core_cards/20130910183318_move_styles_to_content.rb +3 -2
- data/db/migrate_core_cards/20130920291703_update_stylesheets.rb +2 -4
- data/db/migrate_core_cards/20131016172445_common_css_patch.rb +1 -3
- data/db/migrate_core_cards/20140110193325_reset_account_request_type.rb +1 -3
- data/db/migrate_core_cards/20140307231621_user_data_to_cards.rb +12 -8
- data/db/migrate_core_cards/20140317035504_account_requests_to_signups.rb +2 -4
- data/db/migrate_core_cards/20140512155840_add_script_cards.rb +16 -9
- data/db/migrate_core_cards/20140629222005_add_email_cards.rb +19 -11
- data/db/migrate_core_cards/20140725180118_config_card_updates.rb +1 -1
- data/db/migrate_core_cards/20141115034214_config_descriptions_etc.rb +1 -1
- data/db/migrate_core_cards/20141119001955_make_symlinks_relative.rb +1 -1
- data/db/migrate_core_cards/20141204061304_watchers_to_following.rb +2 -0
- data/db/migrate_core_cards/20141216155251_add_more_following_cards.rb +4 -2
- data/db/migrate_core_cards/20150202143810_import_bootstrap_layout.rb +2 -2
- data/db/migrate_core_cards/20150220134731_following_to_follow_rule.rb +3 -4
- data/db/migrate_core_cards/20150317162412_bootstrap_themes.rb +8 -4
- data/db/migrate_core_cards/20150326205655_bootswatch_themes.rb +14 -7
- data/db/migrate_core_cards/20150429090551_search_card_context.rb +6 -4
- data/db/migrate_core_cards/20150508212032_menu_compatibility.rb +4 -2
- data/db/migrate_core_cards/20150510031118_fix_skin_codenames.rb +2 -1
- data/db/migrate_core_cards/20150601133433_add_recent_setting_session_card.rb +3 -3
- data/db/migrate_core_cards/20150610171702_add_debugger_session_card.rb +2 -1
- data/db/migrate_core_cards/20150610180019_add_recaptcha_key_and_admin_info_cards.rb +4 -3
- data/db/migrate_core_cards/20150724123438_update_file_and_image_cards.rb +6 -2
- data/db/migrate_core_cards/20150807205221_create_references_for_search_cards.rb +1 -1
- data/db/migrate_core_cards/20150824135418_update_file_history.rb +2 -0
- data/db/migrate_core_cards/20160804112510_reorganize_scripts.rb +1 -1
- data/db/migrate_core_cards/20160811115836_rename_stats_to_admin.rb +1 -0
- data/db/migrate_core_cards/20160914132636_fix_mod_files.rb +2 -0
- data/db/migrate_core_cards/20161102202156_tweak_recaptcha_setting_cards.rb +6 -6
- data/db/migrate_core_cards/20161103154836_update_keys.rb +2 -1
- data/db/migrate_core_cards/20170209132834_email_test_context.rb +2 -0
- data/db/migrate_core_cards/20170314175313_add_notification_event_card.rb +3 -3
- data/db/migrate_core_cards/20170515101262_add_advanced_edit_cards.rb +1 -1
- data/db/migrate_core_cards/20170608200649_add_input_options_codename.rb +1 -1
- data/db/migrate_core_cards/20180712042655_head_rule.rb +3 -4
- data/db/migrate_core_cards/20180905061537_migrate_layouts.rb +4 -4
- data/db/migrate_core_cards/20181120200937_update_layout.rb +1 -1
- data/db/migrate_core_cards/20190320091257_upgrade_recaptcha_to_v3.rb +7 -7
- data/db/migrate_core_cards/20190424100531_update_credit_image.rb +1 -0
- data/db/migrate_core_cards/20190502130029_add_shark_and_help_desk_role.rb +15 -14
- data/db/migrate_core_cards/20190503122739_update_pristine_data.rb +1 -1
- data/db/migrate_core_cards/20190625153616_pointer_overhaul.rb +9 -5
- data/db/migrate_core_cards/20190718140126_add_guides.rb +3 -3
- data/db/migrate_core_cards/20190822093633_move_help_text_to_code.rb +1 -2
- data/db/migrate_core_cards/20190823220018_cleanup_for_decko_1_0.rb +1 -1
- data/db/migrate_core_cards/20190829093961_cardtype_grouping.rb +7 -7
- data/db/migrate_core_cards/20190902193208_input_type.rb +1 -3
- data/db/migrate_core_cards/20190909104250_add_cardtype_input_types.rb +2 -2
- data/db/migrate_core_cards/20191028135243_add_link_editor_to_tiny_mce_config.rb +1 -0
- data/db/migrate_core_cards/20191115160748_history_cleanup.rb +0 -1
- data/db/migrate_core_cards/20191118145629_codename_fixes.rb +1 -2
- data/db/migrate_core_cards/20200821231558_add_nest_list_type.rb +1 -1
- data/db/migrate_core_cards/data/decko_logo.svg +1 -59
- data/db/seed/new/card_actions.yml +2153 -2145
- data/db/seed/new/card_acts.yml +3 -3
- data/db/seed/new/card_references.yml +900 -858
- data/db/seed/new/cards.yml +4869 -4848
- data/db/seed/new/schema_migrations_deck_cards.yml +2 -0
- data/db/seed/test/fixtures/card_actions.yml +3563 -3547
- data/db/seed/test/fixtures/card_acts.yml +675 -675
- data/db/seed/test/fixtures/card_changes.yml +103 -103
- data/db/seed/test/fixtures/card_references.yml +2165 -2123
- data/db/seed/test/fixtures/cards.yml +7862 -7751
- data/db/seed/test/fixtures/rails.gif +0 -0
- data/db/seed/test/fixtures/schema_migrations_deck_cards.yml +2 -0
- data/db/test_seed.rb +33 -34
- data/lib/card.rb +18 -1
- data/lib/card/auth.rb +5 -2
- data/lib/card/auth/current.rb +39 -100
- data/lib/card/auth/proxy.rb +36 -16
- data/lib/card/auth/token.rb +8 -2
- data/lib/card/cache.rb +2 -1
- data/lib/card/cache/all.rb +88 -0
- data/lib/card/cache/card_class.rb +44 -0
- data/lib/card/cache/persistent.rb +3 -34
- data/lib/card/cache/persistent_class.rb +28 -0
- data/lib/card/codename.rb +3 -4
- data/lib/card/content.rb +20 -10
- data/lib/card/content/all.rb +59 -0
- data/lib/card/content/chunk.rb +1 -1
- data/lib/card/content/clean.rb +4 -3
- data/lib/card/content/diff.rb +3 -2
- data/lib/card/content/diff/l_c_s/processor.rb +1 -1
- data/lib/card/content/diff/result.rb +41 -29
- data/lib/card/content/parser.rb +2 -2
- data/lib/card/content/truncate.rb +6 -6
- data/lib/card/director.rb +1 -1
- data/lib/card/director/act_direction.rb +4 -0
- data/lib/card/director/all.rb +61 -0
- data/lib/card/director/card_class.rb +18 -0
- data/lib/card/director/card_methods.rb +1 -0
- data/lib/card/director/event_delay.rb +4 -6
- data/lib/card/director/phases.rb +0 -1
- data/lib/card/director/run.rb +2 -0
- data/lib/card/director/stages.rb +3 -2
- data/lib/card/dirty.rb +13 -3
- data/lib/card/env.rb +2 -2
- data/lib/card/env/location.rb +4 -3
- data/lib/card/env/success.rb +46 -103
- data/lib/card/env/success/target.rb +73 -0
- data/lib/card/error.rb +1 -2
- data/lib/card/fetch.rb +7 -4
- data/lib/card/fetch/all.rb +33 -0
- data/lib/card/fetch/card_class.rb +155 -0
- data/lib/card/fetch/results.rb +9 -0
- data/lib/card/fetch/retrieve.rb +2 -0
- data/lib/card/fetch/store.rb +1 -0
- data/lib/card/format.rb +1 -2
- data/lib/card/format/content.rb +1 -3
- data/lib/card/format/error.rb +8 -4
- data/lib/card/format/method_delegation.rb +10 -2
- data/lib/card/format/nest.rb +3 -2
- data/lib/card/format/nest/fetch.rb +3 -2
- data/lib/card/format/nesting/mode.rb +1 -1
- data/lib/card/format/nesting/subformat.rb +2 -1
- data/lib/card/format/render.rb +2 -2
- data/lib/card/format/wrapper.rb +1 -1
- data/lib/card/lexicon.rb +5 -4
- data/lib/card/mark.rb +17 -15
- data/lib/card/model/save_helper.rb +18 -184
- data/lib/card/model/save_helper/save_arguments.rb +94 -0
- data/lib/card/model/save_helper/save_helper_helper.rb +93 -0
- data/lib/card/name.rb +10 -9
- data/lib/card/name/all.rb +136 -0
- data/lib/card/name/all/descendants.rb +48 -0
- data/lib/card/name/all/parts.rb +67 -0
- data/lib/card/name/card_class.rb +28 -0
- data/lib/card/name/fields_and_traits.rb +4 -2
- data/lib/card/name/name_variants.rb +0 -1
- data/lib/card/query.rb +24 -19
- data/lib/card/query/card_query/interpretation.rb +3 -2
- data/lib/card/query/card_query/match_attributes.rb +2 -1
- data/lib/card/query/card_query/normalization.rb +1 -0
- data/lib/card/query/card_query/reference_attributes.rb +1 -1
- data/lib/card/query/card_query/sorting.rb +12 -4
- data/lib/card/query/join.rb +1 -1
- data/lib/card/query/sql_statement.rb +1 -1
- data/lib/card/query/value/match_value.rb +1 -0
- data/lib/card/reference/all.rb +136 -0
- data/lib/card/rule/all.rb +76 -0
- data/lib/card/rule/cache.rb +2 -0
- data/lib/card/set/advanced_api.rb +8 -4
- data/lib/card/set/event.rb +2 -2
- data/lib/card/set/event/all.rb +101 -0
- data/lib/card/set/event/delayed_event.rb +6 -6
- data/lib/card/set/event/options.rb +14 -5
- data/lib/card/set/event/skip_and_trigger.rb +89 -0
- data/lib/card/set/format.rb +16 -9
- data/lib/card/set/format/abstract_format/view_definition.rb +1 -0
- data/lib/card/set/format/abstract_format/view_opts.rb +1 -0
- data/lib/card/set/i18n_scope.rb +18 -13
- data/lib/card/set/inheritance.rb +8 -6
- data/lib/card/set/loader.rb +24 -13
- data/lib/card/set/pattern/all.rb +63 -0
- data/lib/card/set/pattern/base.rb +4 -74
- data/lib/card/set/pattern/class_methods.rb +75 -0
- data/lib/card/set/required_field.rb +4 -1
- data/lib/card/set/trait.rb +11 -8
- data/lib/card/setting.rb +13 -12
- data/lib/card/subcards.rb +3 -4
- data/lib/card/subcards/add.rb +3 -24
- data/lib/card/subcards/all.rb +103 -0
- data/lib/card/subcards/args.rb +42 -0
- data/lib/card/tasks/card/file_card_creator/abstract_file_card/ruby_file.rb +1 -1
- data/lib/card/tasks/card/file_card_creator/output_helper.rb +17 -14
- data/lib/card/tasks/card/migrate.rake +2 -2
- data/lib/card/view/cache.rb +6 -8
- data/lib/card/view/cache/cache_action.rb +1 -2
- data/lib/card/view/cache/stub.rb +1 -1
- data/lib/card/view/options.rb +5 -4
- data/lib/card/view/permission.rb +15 -3
- data/lib/cardio.rb +10 -67
- data/lib/cardio/defaults.yml +70 -0
- data/lib/cardio/migration.rb +2 -2
- data/lib/cardio/migration/deck_structure.rb +2 -4
- data/lib/cardio/migration/import.rb +3 -3
- data/lib/cardio/migration/import/import_data.rb +1 -0
- data/lib/cardio/mod.rb +1 -0
- data/lib/cardio/mod/dirs.rb +2 -2
- data/lib/cardio/mod/load_strategy.rb +2 -4
- data/lib/cardio/mod/loader/set_loader.rb +2 -1
- data/lib/cardio/mod/loader/set_pattern_loader.rb +0 -1
- data/lib/cardio/mod/module_template.rb +1 -0
- data/lib/cardio/modfiles.rb +2 -4
- data/lib/cardio/schema.rb +2 -4
- data/lib/cardio/utils.rb +9 -0
- data/lib/generators/card/format/format_generator.rb +1 -1
- data/lib/generators/card/migration/migration_generator.rb +2 -1
- data/lib/generators/card/mod/mod_generator.rb +3 -2
- data/lib/generators/card/set/set_generator.rb +3 -3
- data/lib/generators/card/template/template_generator.rb +1 -1
- data/mod/admin/set/self/admin.rb +6 -3
- data/mod/admin/set/self/admin_info.rb +3 -8
- data/mod/admin/set/self/trash.rb +3 -2
- data/mod/admin/spec/set/self/admin_spec.rb +4 -4
- data/mod/core/set/all/abort.rb +5 -5
- data/mod/core/set/all/assign_attributes.rb +12 -28
- data/mod/core/set/all/autoname.rb +17 -0
- data/mod/core/set/all/codename.rb +3 -2
- data/mod/core/set/all/collection.rb +4 -6
- data/mod/core/set/all/content.rb +55 -99
- data/mod/core/set/all/contextual_content.rb +2 -4
- data/mod/core/set/all/initialize.rb +9 -9
- data/mod/core/set/all/name_events.rb +78 -58
- data/mod/core/set/all/reference_events.rb +69 -0
- data/mod/core/set/all/states.rb +5 -5
- data/mod/core/set/all/subcards.rb +1 -101
- data/mod/core/set/all/trash.rb +16 -14
- data/mod/core/set/all/type.rb +11 -11
- data/mod/core/set/all/utils.rb +4 -1
- data/mod/{settings → core}/set/right/autoname.rb +0 -0
- data/mod/{settings → core}/set/self/autoname.rb +0 -0
- data/mod/core/set/type/cardtype.rb +28 -0
- data/mod/core/set_pattern/06_rule.rb +1 -1
- data/mod/core/spec/set/all/assign_attributes_spec.rb +10 -9
- data/mod/core/spec/set/all/{rules2_spec.rb → clean_me_spec.rb} +19 -4
- data/mod/core/spec/set/all/collection_spec.rb +1 -1
- data/mod/core/spec/set/all/export_spec.rb +1 -0
- data/mod/core/spec/set/all/initialize_spec.rb +11 -11
- data/mod/core/spec/set/all/name_events_spec.rb +204 -0
- data/mod/{standard → core}/spec/set/type/cardtype_spec.rb +3 -24
- data/mod/standard/file/logo/image-original.svg +1 -59
- metadata +50 -61
- data/config/initializers/uuid_state_file.rb +0 -3
- data/lib/card/mod_inflector.rb +0 -16
- data/mod/Modfile +0 -4
- data/mod/core/set/all/actify.rb +0 -68
- data/mod/core/set/all/cache.rb +0 -109
- data/mod/core/set/all/event_conditions.rb +0 -172
- data/mod/core/set/all/fetch.rb +0 -122
- data/mod/core/set/all/fetch_helper.rb +0 -35
- data/mod/core/set/all/i18n.rb +0 -11
- data/mod/core/set/all/name.rb +0 -229
- data/mod/core/set/all/pattern.rb +0 -54
- data/mod/core/set/all/references.rb +0 -191
- data/mod/core/set/all/rename.rb +0 -33
- data/mod/core/set/all/rules.rb +0 -81
- data/mod/core/spec/set/all/actify_spec.rb +0 -58
- data/mod/core/spec/set/all/content_spec.rb +0 -15
- data/mod/core/spec/set/all/event_conditions_spec.rb +0 -217
- data/mod/core/spec/set/all/fetch_helper_spec.rb +0 -65
- data/mod/core/spec/set/all/fetch_spec.rb +0 -338
- data/mod/core/spec/set/all/i18n_spec.rb +0 -17
- data/mod/core/spec/set/all/name_spec.rb +0 -11
- data/mod/core/spec/set/all/pattern_spec.rb +0 -101
- data/mod/core/spec/set/all/permissions/reader_rules_spec.rb +0 -166
- data/mod/core/spec/set/all/references_spec.rb +0 -62
- data/mod/core/spec/set/all/rename_spec.rb +0 -189
- data/mod/core/spec/set/all/rules_spec.rb +0 -100
- data/mod/core/spec/set/all/subcards_spec.rb +0 -102
- data/mod/standard/set/all/rich_html/html_views/info.rb +0 -84
- data/mod/standard/set/type/cardtype.rb +0 -119
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 471e6eb7596b5743e59b50b9158fa16953ba916f328bb10a2e63153fad797eff
|
|
4
|
+
data.tar.gz: 51cf98adab2d3b8bf4c6f9b6a374d31da99da82d14b96eb3fc50634b8948e3d9
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 6e86bce11c52e5fb214a5df5e09389f8328320c53316e0fba5a6747fe644d5e5468081dbd9d8e22c3a83b7db8b48a8d3cda25340dc0c3e1ec31901cc78c812fa
|
|
7
|
+
data.tar.gz: 68f7a39e5a47dd497c7ab4bc2160d4f125e4a9e617cd1bb3625472ac09b201917ba2f1688f3960cf90ab9064314a281265acea03f63f46bffc10c95ab37585c4
|
data/VERSION
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
0.11.
|
|
1
|
+
0.11.5
|
data/config/i18n-tasks.yml
CHANGED
|
@@ -58,11 +58,6 @@ search:
|
|
|
58
58
|
## Root directories for relative keys resolution.
|
|
59
59
|
relative_roots:
|
|
60
60
|
- .
|
|
61
|
-
# - app/controllers
|
|
62
|
-
# - app/helpers
|
|
63
|
-
# - app/mailers
|
|
64
|
-
# - app/presenters
|
|
65
|
-
# - app/views
|
|
66
61
|
|
|
67
62
|
## Files or `File.fnmatch` patterns to exclude from search. Some files are always excluded regardless of this setting:
|
|
68
63
|
## %w(*.jpg *.png *.gif *.svg *.ico *.eot *.otf *.ttf *.woff *.woff2 *.pdf *.css *.sass *.scss *.less *.yml *.json)
|
|
@@ -18,16 +18,20 @@ module CoreExtensions
|
|
|
18
18
|
klone
|
|
19
19
|
end
|
|
20
20
|
|
|
21
|
-
|
|
22
|
-
|
|
21
|
+
# @return [Card::Name]
|
|
22
|
+
def cardname
|
|
23
|
+
Card::Name.new self
|
|
23
24
|
end
|
|
25
|
+
alias_method :to_name, :cardname
|
|
24
26
|
|
|
25
|
-
|
|
26
|
-
|
|
27
|
+
# @return [Card]
|
|
28
|
+
def card
|
|
29
|
+
Card[cardname]
|
|
27
30
|
end
|
|
28
31
|
|
|
29
|
-
|
|
30
|
-
|
|
32
|
+
# @return [Integer] id of card with name
|
|
33
|
+
def card_id
|
|
34
|
+
cardname.card_id
|
|
31
35
|
end
|
|
32
36
|
|
|
33
37
|
def name?
|
|
@@ -36,7 +40,11 @@ module CoreExtensions
|
|
|
36
40
|
# (at least in development mode) but the name cache is persistent.
|
|
37
41
|
# Hence the name objects in the cache are objects of a different instance of the
|
|
38
42
|
# Card::Name class and is_a?(Card::Name) will return false
|
|
39
|
-
|
|
43
|
+
is_a? Cardname
|
|
44
|
+
end
|
|
45
|
+
|
|
46
|
+
def in? other
|
|
47
|
+
other.include? self
|
|
40
48
|
end
|
|
41
49
|
|
|
42
50
|
def deep_clone_instance_variables
|
|
@@ -44,9 +52,5 @@ module CoreExtensions
|
|
|
44
52
|
instance_variable_set v, instance_variable_get(v).deep_clone
|
|
45
53
|
end
|
|
46
54
|
end
|
|
47
|
-
|
|
48
|
-
def in? other
|
|
49
|
-
other.include? self
|
|
50
|
-
end
|
|
51
55
|
end
|
|
52
56
|
end
|
|
@@ -42,9 +42,7 @@ module Patches
|
|
|
42
42
|
|
|
43
43
|
loop do
|
|
44
44
|
relation = reorder(table[primary_key].asc).limit(batch_size)
|
|
45
|
-
if batch_start
|
|
46
|
-
relation = relation.where(table[primary_key].gt(batch_start))
|
|
47
|
-
end
|
|
45
|
+
relation = relation.where(table[primary_key].gt(batch_start)) if batch_start
|
|
48
46
|
items = relation.pluck(*select_columns)
|
|
49
47
|
|
|
50
48
|
break if items.empty?
|
|
@@ -66,7 +64,7 @@ module Patches
|
|
|
66
64
|
module ConnectionAdapters
|
|
67
65
|
module AbstractAdapter
|
|
68
66
|
def match _string
|
|
69
|
-
raise
|
|
67
|
+
raise Cardio.t(:lib_exception_not_implemented)
|
|
70
68
|
end
|
|
71
69
|
|
|
72
70
|
def cast_types
|
|
@@ -21,9 +21,7 @@ module Patches
|
|
|
21
21
|
def real_filename_and_line_offset filename
|
|
22
22
|
File.open(filename) do |file|
|
|
23
23
|
file.each_line.with_index do |line, i|
|
|
24
|
-
if line
|
|
25
|
-
return Regexp.last_match(1), i + 1
|
|
26
|
-
end
|
|
24
|
+
return Regexp.last_match(1), i + 1 if line.match?(/pulled from (\S+) ~~/)
|
|
27
25
|
end
|
|
28
26
|
end
|
|
29
27
|
[filename, 0]
|
|
@@ -2,7 +2,7 @@ module Patches
|
|
|
2
2
|
module Kaminari
|
|
3
3
|
module Helpers
|
|
4
4
|
module Tag
|
|
5
|
-
def self.included
|
|
5
|
+
def self.included klass
|
|
6
6
|
klass.class_eval do
|
|
7
7
|
remove_method :page_url_for
|
|
8
8
|
end
|
|
@@ -33,7 +33,7 @@ module Patches
|
|
|
33
33
|
# to: {other: "params", user: {name: "yuki", page: nil}}
|
|
34
34
|
# (when @param_name == "user[page]")
|
|
35
35
|
@param_name.to_s.scan(/\w+/)[0..-2]
|
|
36
|
-
|
|
36
|
+
.inject(page_params) { |h, k| h[k] }[Regexp.last_match(0)] = nil
|
|
37
37
|
end
|
|
38
38
|
|
|
39
39
|
page_params
|
|
@@ -4,28 +4,30 @@
|
|
|
4
4
|
#
|
|
5
5
|
# Necessary since 'card' is packaged as a gem which is not an Engine
|
|
6
6
|
|
|
7
|
-
I18n.load_path += Dir.glob(Pathname(__FILE__).parent.parent
|
|
8
|
-
"/locales/*.{rb,yml}")
|
|
7
|
+
I18n.load_path += Dir.glob("#{Pathname(__FILE__).parent.parent}/locales/*.{rb,yml}")
|
|
9
8
|
|
|
10
9
|
# see http://svenfuchs.com/2009/7/19/experimental-ruby-i18n-extensions-pluralization-fallbacks-gettext-cache-and-chained-backend
|
|
11
|
-
module I18n
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
10
|
+
module I18n
|
|
11
|
+
module Backend
|
|
12
|
+
module Transformers
|
|
13
|
+
# this variable is a hook to allow dynamic activation/deactivation
|
|
14
|
+
@@demark_enable = true
|
|
15
|
+
|
|
16
|
+
def translate *args
|
|
17
|
+
transform_text(super) { |entry| "⟪#{entry}⟫" }
|
|
18
|
+
end
|
|
19
|
+
|
|
20
|
+
def localize *args
|
|
21
|
+
transform_text(super) { |entry| "⟦#{entry}⟧" }
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
def transform_text entry
|
|
25
|
+
if @@demark_enable && entry && (entry.is_a? String)
|
|
26
|
+
yield(entry)
|
|
27
|
+
else
|
|
28
|
+
entry
|
|
29
|
+
end
|
|
30
|
+
end
|
|
29
31
|
end
|
|
30
32
|
end
|
|
31
33
|
end
|
|
@@ -39,6 +41,6 @@ end
|
|
|
39
41
|
# or ./config/environments/*.rb file.
|
|
40
42
|
|
|
41
43
|
if ENV["DECKO_I18N_DEMARK"]
|
|
42
|
-
I18n::Backend::Simple.
|
|
44
|
+
I18n::Backend::Simple.include I18n::Backend::Transformers
|
|
43
45
|
puts "DECKO_I18N_DEMARK is active"
|
|
44
46
|
end
|
|
@@ -47,9 +47,11 @@ module ActiveRecord #:nodoc: all
|
|
|
47
47
|
end
|
|
48
48
|
end
|
|
49
49
|
|
|
50
|
-
module ActiveJob
|
|
51
|
-
|
|
52
|
-
|
|
50
|
+
module ActiveJob
|
|
51
|
+
module Arguments #:nodoc: all
|
|
52
|
+
class << self
|
|
53
|
+
prepend Patches::ActiveJob::Arguments
|
|
54
|
+
end
|
|
53
55
|
end
|
|
54
56
|
end
|
|
55
57
|
|
|
@@ -61,9 +63,8 @@ module ActiveSupport #:nodoc: all
|
|
|
61
63
|
end
|
|
62
64
|
end
|
|
63
65
|
|
|
64
|
-
|
|
65
66
|
module Zeitwerk #:nodoc: all
|
|
66
67
|
class Loader
|
|
67
68
|
prepend Patches::Zeitwerk
|
|
68
69
|
end
|
|
69
|
-
end
|
|
70
|
+
end
|
data/config/locales/en.yml
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
#
|
|
5
5
|
# key name prefixes:
|
|
6
6
|
# 'exception_' begins key of text to be used in a raised exception
|
|
7
|
-
# 'error_' begins key of text to be added to an error list (
|
|
7
|
+
# 'error_' begins key of text to be added to an error list (usually)
|
|
8
8
|
# 'search_' begins key of text to be used in CQL search comment
|
|
9
9
|
# 'deny_' begins key of text to be used in denying action due to permissions
|
|
10
10
|
# (Not all key names begin with a prefix. In the absence of a prefix,
|
|
@@ -30,540 +30,152 @@ en:
|
|
|
30
30
|
card_date_seconds: '%B %e, %Y %H:%M:%S'
|
|
31
31
|
card_date_only: '%B %e, %Y'
|
|
32
32
|
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
# close: Close
|
|
40
|
-
# delete: Delete
|
|
33
|
+
lib_error_rendering: "Error rendering: %{cardname} (%{view} view)"
|
|
34
|
+
lib_exception_for_card: "for card %{cardname}: %{message}"
|
|
35
|
+
lib_exception_init_without_card: format initialized without card
|
|
36
|
+
lib_exception_not_implemented: "%{func} not implemented"
|
|
37
|
+
lib_exception_unknown_codename: "unknown codename: %{codename}"
|
|
38
|
+
lib_no_cardname: unknown card
|
|
41
39
|
|
|
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
|
-
|
|
69
|
-
sorting:
|
|
70
|
-
exception_sort_not_implemented: "sort item: %{item} not yet implemented"
|
|
71
|
-
value:
|
|
72
|
-
exception_bad_condition_clause: Invalid Condition Clause %{item}
|
|
73
|
-
exception_invalid_operator: Invalid Operator %{operator}
|
|
74
|
-
set:
|
|
75
|
-
format:
|
|
76
|
-
exception_alias_fail: cannot find %{optview} view in %{optmod}; failed to alias %{view} in %{self}
|
|
77
|
-
setting:
|
|
78
|
-
templating: Templating
|
|
79
|
-
permission: Permissions
|
|
80
|
-
webpage: Webpage
|
|
81
|
-
pointer: Pointer
|
|
82
|
-
editing_cue: Editing cues
|
|
83
|
-
event: Events
|
|
84
|
-
other: Other
|
|
85
|
-
config: Config
|
|
86
|
-
mod:
|
|
87
|
-
:core:
|
|
88
|
-
set:
|
|
89
|
-
all:
|
|
90
|
-
codename:
|
|
91
|
-
only_admins_codename: only admins can set codename
|
|
92
|
-
error_code_in_use: codename %{codename} already in use
|
|
93
|
-
# event:
|
|
94
|
-
# outside_event_phases: phase method %{method} called outside of event phases
|
|
95
|
-
# called_in_stage: "%{item} method %{method} called in stage %{stage}"
|
|
96
|
-
# called_on_action: "on: %{xaction} method %{method} called on %{yaction}"
|
|
97
|
-
# fetch:
|
|
98
|
-
# exception_fetch_arg_skipvirt: "%{func} called with new arguments and %{sv}"
|
|
99
|
-
name_events:
|
|
100
|
-
error_name_exists: must be unique; '%{name}' already exists.
|
|
101
|
-
error_too_long: is too long (255 character maximum; length is %{length})
|
|
102
|
-
error_blank_name: can't be blank
|
|
103
|
-
error_blank_key: cannot be blank
|
|
104
|
-
error_banned_characters: "may not contain any of the following characters: %{banned}"
|
|
105
|
-
error_name_tag: "%{name} in use as a tag"
|
|
106
|
-
error_wrong_key: wrong key '%{key}' for name %{name}
|
|
107
|
-
is_incomplete: is incomplete
|
|
108
|
-
name:
|
|
109
|
-
search_children: "(%{side}) children of %{parent_name}"
|
|
110
|
-
rename:
|
|
111
|
-
cannot_change_content: cannot change content while changing name
|
|
112
|
-
cannot_change_type: cannot change type while changing name
|
|
113
|
-
permissions:
|
|
114
|
-
error_no_action_rule: No %{action} rule for %{name}
|
|
115
|
-
you_cant: You don't have permission to %{what}
|
|
116
|
-
deny_read_only: Currently in read-only mode
|
|
117
|
-
deny_verb_name: You don't have permission to %{verb} %{name}
|
|
118
|
-
deny_verb_this: You don't have permission to %{verb} this
|
|
119
|
-
deny_create: You don't have permission to create %{part_card_name}
|
|
120
|
-
deny_read_this: You don't have permission to read this
|
|
121
|
-
deny_change_to_type: You don't have permission to change to this type (need create permission)
|
|
122
|
-
deny_no_comment_template: No comments allowed on templates
|
|
123
|
-
deny_no_comment_structured: No comments allowed on structured content
|
|
124
|
-
references:
|
|
125
|
-
exception_need_id: id required to delete references
|
|
126
|
-
rules:
|
|
127
|
-
search_userprefcards: "preference cards for user: %{name}"
|
|
128
|
-
stages:
|
|
129
|
-
exception_no_override_act: not allowed to override current act
|
|
130
|
-
tracked_attributes:
|
|
131
|
-
error_unknown_type: "%{type} is not a known type."
|
|
132
|
-
trash:
|
|
133
|
-
error_system_card: "%{name} is is a system card. (%{codename})"
|
|
134
|
-
error_indestructible: "%{name} is an indestructible rule"
|
|
135
|
-
error_user_edits: "Edits have been made with %{name}'s user account.\nDeleting this card would mess up our history."
|
|
136
|
-
error_cant_delete_child: "can't delete %{child_name}: %{message}"
|
|
137
|
-
exception_almost_deleted: Narrowly averted deleting current file
|
|
138
|
-
type:
|
|
139
|
-
error_cant_change_errors: "of %{name} can't be changed; errors creating new %{type_id}: %{error_messages}"
|
|
140
|
-
error_no_such_type: No such type
|
|
141
|
-
error_hard_templated: can't be changed because %{name} is hard templated to %{type_name}
|
|
142
|
-
utils:
|
|
143
|
-
exception_almost_deleted: Narrowly averted deleting current file
|
|
144
|
-
set_pattern:
|
|
145
|
-
:01_all:
|
|
146
|
-
label_set_all_cards: All cards
|
|
147
|
-
label_setfollow_all_cards: everything
|
|
148
|
-
:02_all_plus:
|
|
149
|
-
label_set_plus_cards: All "+" cards
|
|
150
|
-
label_setfollow_plus_cards: all "+" cards
|
|
151
|
-
:03_type:
|
|
152
|
-
label_set_type_cards: All "%{name}" cards
|
|
153
|
-
label_setfollow_type_cards: all "%{name}s"
|
|
154
|
-
:04_star:
|
|
155
|
-
label_set_star_cards: All "*" cards
|
|
156
|
-
label_setfollow_star_cards: all "*" cards
|
|
157
|
-
:05_rstar:
|
|
158
|
-
label_set_rstar_cards: All "+*" cards
|
|
159
|
-
label_setfollow_rstar_cards: all "+*" cards
|
|
160
|
-
:06_right:
|
|
161
|
-
label_set_right_cards: All "+%{name}" cards
|
|
162
|
-
label_setfollow_right_cards: all "+%{name}s"
|
|
163
|
-
:07_type_plus_right:
|
|
164
|
-
label_set_typeplusright_cards: All "+%{right}" cards on "%{type}" cards
|
|
165
|
-
label_setfollow_typeplusright_cards: all "+%{right}" on "%{type}s"
|
|
166
|
-
:08_self:
|
|
167
|
-
label_set_self_card: The card "%{name}"
|
|
40
|
+
core_cannot_change_content: cannot change content while changing name
|
|
41
|
+
core_cannot_change_type: cannot change type while changing name
|
|
42
|
+
core_cards_exist: Sorry, this card must remain a Cardtype so long as there are %{cardname} cards.
|
|
43
|
+
core_error_banned_characters: "may not contain any of the following characters: %{banned}"
|
|
44
|
+
core_error_blank_key: cannot be blank
|
|
45
|
+
core_error_blank_name: can't be blank
|
|
46
|
+
core_error_cant_alter: can't alter this type; %{name} cards still exist
|
|
47
|
+
core_error_cant_change_errors: "of %{name} can't be changed; errors creating new %{type_id}: %{error_messages}"
|
|
48
|
+
core_error_code_in_use: codename %{codename} already in use
|
|
49
|
+
core_error_hard_templated: can't be changed because %{name} is hard templated to %{type_name}
|
|
50
|
+
core_error_indestructible: "%{name} is an indestructible rule"
|
|
51
|
+
core_error_invalid_character_in_cardtype: "may not contain any of the following characters: %{banned}"
|
|
52
|
+
core_error_name_exists: must be unique; '%{name}' already exists.
|
|
53
|
+
core_error_name_tag: "%{name} in use as a tag"
|
|
54
|
+
core_error_no_such_type: No such type
|
|
55
|
+
core_error_system_card: "%{name} is is a system card. (%{codename})"
|
|
56
|
+
core_error_too_long: is too long (255 character maximum; length is %{length})
|
|
57
|
+
core_error_user_edits: "Edits have been made with %{name}'s user account.\nDeleting this card would mess up our history."
|
|
58
|
+
core_error_wrong_key: wrong key '%{key}' for name %{name}
|
|
59
|
+
core_exception_almost_deleted: Narrowly averted deleting current file
|
|
60
|
+
core_is_incomplete: is incomplete
|
|
61
|
+
core_only_admins_codename: only admins can set codename
|
|
62
|
+
core_rename_and_update: "Rename and Update"
|
|
63
|
+
core_renaming: "Renaming"
|
|
64
|
+
core_rename: "Rename"
|
|
65
|
+
core_rename_confirm: "Are you sure you want to rename"
|
|
66
|
+
core_rename_reference_confirm: "This name is referred to at least %{count} time(s). You may choose to <em>update</em> those references to use the new name."
|
|
168
67
|
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
rstar:
|
|
172
|
-
rules_editor:
|
|
173
|
-
not_a_rule: not a rule
|
|
174
|
-
applies_to: "<label>Applies to</label> %{card_link}:"
|
|
175
|
-
no_current_rule: No Current Rule
|
|
176
|
-
cancel: Cancel
|
|
177
|
-
delete_revert_rule: Deleting will revert to %{rule_setting_name} rule for %{card_label}
|
|
178
|
-
delete: Delete
|
|
179
|
-
set: set
|
|
180
|
-
related_set: related set
|
|
181
|
-
current: current
|
|
182
|
-
delete_narrower:
|
|
183
|
-
one: This rule will not have any effect on this card unless you delete the narrower rule for %{rules_sentence}.
|
|
184
|
-
other: This rule will not have any effect on this card unless you delete the narrower rules for %{rules_sentence}.
|
|
185
|
-
submit: Submit
|
|
186
|
-
self:
|
|
187
|
-
head:
|
|
188
|
-
edit_page: Edit this page!
|
|
189
|
-
recent:
|
|
190
|
-
recent_changes: Recent Changes
|
|
191
|
-
search:
|
|
192
|
-
results_for: "Search results for: %{keyword}"
|
|
193
|
-
search_goto_items: "goto items for term: %{term}"
|
|
194
|
-
stats:
|
|
195
|
-
stat: Stat
|
|
196
|
-
value: Value
|
|
197
|
-
action: Action
|
|
198
|
-
cards: cards
|
|
199
|
-
trashed_cards: trashed cards
|
|
200
|
-
delete_all: delete all
|
|
201
|
-
actions: actions
|
|
202
|
-
delete_old: delete old
|
|
203
|
-
references: references
|
|
204
|
-
repair_all: repair all
|
|
205
|
-
view_cache: view cache
|
|
206
|
-
clear_view_cache: clear view cache
|
|
207
|
-
memory_now: memory now
|
|
208
|
-
clear_cache: clear cache
|
|
209
|
-
# memory previous
|
|
210
|
-
memory_prev: memory prev
|
|
211
|
-
# memory difference
|
|
212
|
-
memory_diff: memory diff
|
|
213
|
-
megabyte_suffix: M
|
|
214
|
-
type:
|
|
215
|
-
cardtype:
|
|
216
|
-
cards_exist: Sorry, this card must remain a Cardtype so long as there are %{cardname} cards.
|
|
217
|
-
add_card: Add %{cardname}
|
|
218
|
-
configure_card: Configure %{cardname}
|
|
219
|
-
error_cant_alter: can't alter this type; %{name} cards still exist
|
|
220
|
-
error_invalid_character_in_cardtype: "may not contain any of the following characters: %{banned}"
|
|
221
|
-
search_type:
|
|
222
|
-
no_limit_exception: OH NO.. no limit
|
|
223
|
-
no_content_exception: "Error in card '%{name}': can't run search with empty content"
|
|
224
|
-
no_results: no results
|
|
225
|
-
previous: Previous
|
|
226
|
-
next: Next
|
|
227
|
-
set:
|
|
228
|
-
cant_edit: Cannot currently edit Sets
|
|
229
|
-
rules: Rules
|
|
230
|
-
set: Set
|
|
231
|
-
field: field
|
|
232
|
-
common: common
|
|
233
|
-
by_group: by group
|
|
234
|
-
by_name: by name
|
|
235
|
-
recent: recent
|
|
236
|
-
#:bootstrap: #No known language-specfic messages
|
|
68
|
+
admin_warn: ADMINISTRATOR WARNING
|
|
69
|
+
admin_email_off: Email delivery is turned off. Change settings in %{path} to send sign up notifications.
|
|
237
70
|
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
howto_register: Register your domain at %{recaptcha_link}
|
|
250
|
-
howto_add: Add your keys to %{recaptcha_settings}
|
|
251
|
-
howto_turn_off: 'How to turn captcha off:'
|
|
252
|
-
howto_go: Go to %{captcha_card}
|
|
253
|
-
howto_update: Update all *captcha rules to "no".
|
|
71
|
+
account_check_email: Check your email for a link to reset your password
|
|
72
|
+
account_deny_email_restricted: viewing email is restricted to administrators and account holders
|
|
73
|
+
account_deny_not_change_own_account: change the status of your own account
|
|
74
|
+
account_email_missing: email can't be blank
|
|
75
|
+
account_encrypted: encrypted
|
|
76
|
+
account_error_blank: can't be blank
|
|
77
|
+
account_error_invalid_address: must be valid address
|
|
78
|
+
account_error_not_active: Sorry, that account is not active.
|
|
79
|
+
account_error_not_recognized: not recognized
|
|
80
|
+
account_error_not_unique: must be unique
|
|
81
|
+
account_error_token_expired: expired token
|
|
254
82
|
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
83
|
+
account_error_unknown_email: Unrecognized email.
|
|
84
|
+
account_error_wrong_password: Wrong password
|
|
85
|
+
account_exception_bad_expiration: illegal expiration value (eg '%{example}')
|
|
86
|
+
account_forgot_password: Forgot Password
|
|
87
|
+
account_invite: Invite
|
|
88
|
+
account_missing_account: "ERROR: signup card missing account"
|
|
89
|
+
account_or_sign_up: '...or sign up!'
|
|
90
|
+
account_password_length: must be at least 4 characters
|
|
91
|
+
account_password_missing: password can't be blank
|
|
92
|
+
account_private_data: Private data
|
|
93
|
+
account_reset_my_password: Reset my password
|
|
94
|
+
account_reset_password: RESET PASSWORD
|
|
95
|
+
account_search_email_duplicate: email duplicate? (%{content})
|
|
96
|
+
account_sign_in: Sign in
|
|
97
|
+
account_sign_in_title: Sign In
|
|
98
|
+
account_sign_out: Sign out
|
|
99
|
+
account_sign_up: Sign up
|
|
100
|
+
account_sorry_email_reset: Sorry, %{error_msg}. Please check your email for a new password reset link.
|
|
260
101
|
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
follow_included: follow cards included by %{cardname}
|
|
271
|
-
followed_card: followed card
|
|
272
|
-
follower: follower
|
|
273
|
-
new: new
|
|
274
|
-
deleted: deleted
|
|
275
|
-
update_changes: "\nThis update included the following changes:%{changes}"
|
|
276
|
-
right:
|
|
277
|
-
follow:
|
|
278
|
-
more_options: more options
|
|
279
|
-
heading_get_notified: Get notified about changes
|
|
280
|
-
following:
|
|
281
|
-
no_preference: No following preference
|
|
282
|
-
self:
|
|
283
|
-
always:
|
|
284
|
-
following: Following
|
|
285
|
-
follow: follow
|
|
286
|
-
created:
|
|
287
|
-
following_created: Following content you created
|
|
288
|
-
follow_if_created: follow if I created
|
|
289
|
-
thing_created: "%{label} I created"
|
|
290
|
-
edited:
|
|
291
|
-
following_edited: Following content you edited
|
|
292
|
-
follow_if_edited: follow if I edited
|
|
293
|
-
thing_edited: "%{label} I edited"
|
|
294
|
-
follow_defaults:
|
|
295
|
-
confirm_update_all_heading: Are you sure you want to change the default follow rules?
|
|
296
|
-
confirm_update_all_text: You may choose to update all existing users. This may take a while.
|
|
297
|
-
submit_update: Submit and update all users
|
|
298
|
-
updating: Updating
|
|
299
|
-
submit: Submit
|
|
300
|
-
never:
|
|
301
|
-
ignoring: Ignoring
|
|
302
|
-
ignore: ignore
|
|
303
|
-
type_plus_right:
|
|
304
|
-
user:
|
|
305
|
-
follow:
|
|
306
|
-
problems_card: Problems with %{cardname}
|
|
307
|
-
sign_in: sign in
|
|
308
|
-
please_sign_in: Please %{sign_in}
|
|
102
|
+
api_key_not_found: no API key found
|
|
103
|
+
api_key_incorrect: API key mismatch
|
|
104
|
+
api_key_invalid: "Invalid API Key; must contain 20+ alphanumeric characters only"
|
|
105
|
+
api_key_label: "API Key"
|
|
106
|
+
api_key_generate: "Generate API Key"
|
|
107
|
+
api_key_regenerate: "Regenerate API Key"
|
|
108
|
+
api_key_generating: "Generating API Key"
|
|
109
|
+
api_key_taken: "API Key taken"
|
|
110
|
+
api_key_get_jwt_token: "get a JWT token"
|
|
309
111
|
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
abstract:
|
|
313
|
-
code_file:
|
|
314
|
-
exception_not_set_path: "not a set path: %{path}"
|
|
315
|
-
content_in_file: Content is stored in file and can't be edited.
|
|
316
|
-
type:
|
|
317
|
-
pointer:
|
|
318
|
-
label_select: Select
|
|
319
|
-
#description: description
|
|
320
|
-
comment_style_group: STYLE GROUP
|
|
321
|
-
search_opt_names_ptr: option names for pointer
|
|
322
|
-
json:
|
|
323
|
-
invalid_json: invalid json
|
|
324
|
-
toggle:
|
|
325
|
-
# Warning: unless careful, yes/no get converted to true/false
|
|
326
|
-
:yes: 'yes'
|
|
327
|
-
:no: 'no'
|
|
328
|
-
number:
|
|
329
|
-
not_numeric: "'%{content}' is not numeric"
|
|
330
|
-
all:
|
|
331
|
-
base:
|
|
332
|
-
too_deep: Man, you're too deep. (Too many levels of nests at a time)
|
|
333
|
-
error:
|
|
334
|
-
unsupported_view: view (%{view}) not supported for %{cardname}
|
|
335
|
-
not_found_named: Could not find %{cardname}.
|
|
336
|
-
not_found_no_name: the card requested
|
|
337
|
-
server_error: "\nWagn Hitch! Server Error. Yuck, sorry about that.\nTo tell us more and follow the fix,\nadd a support ticket at %{ticket_link}\n"
|
|
338
|
-
se_hitch: 'Wagn Hitch :('
|
|
339
|
-
se_sorry: Server Error. Yuck, sorry about that.
|
|
340
|
-
se_ticket: <a href="%{ticket_link}">Add a support ticket</a> to tell us more and follow the fix.
|
|
341
|
-
denial: Permission Denied
|
|
342
|
-
bad_address: "404: Bad Address"
|
|
343
|
-
too_slow: Timed out! %{showname} took too long to load.
|
|
344
|
-
error_rendering: error rendering
|
|
345
|
-
error_message: Error message (visible to admin only)
|
|
346
|
-
add_thing: Add %{title}
|
|
347
|
-
conflict: Conflict!
|
|
348
|
-
also_changes: "%{actor_link} has also been making changes."
|
|
349
|
-
conflict_instruction: Please examine below, resolve above, and re-submit.
|
|
350
|
-
not_found: Not Found
|
|
351
|
-
not_found_card: Could not find %{cardname}
|
|
112
|
+
bootstrap_cannot_source_theme: can't find source for theme %{theme_name}
|
|
113
|
+
bootstrap_not_valid_theme: not a valid theme %{theme_name}
|
|
352
114
|
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
# affect_refs:
|
|
366
|
-
# one: affect at least 1 reference to "%{cardname}"
|
|
367
|
-
# other: affect at least %{count} references to "%{cardname}"
|
|
368
|
-
# update_ignore: You may choose to <em>update or ignore</em> the referers.
|
|
369
|
-
# change_will: This change will...
|
|
370
|
-
# rename_update: Rename and Update
|
|
371
|
-
# renaming: Renaming
|
|
372
|
-
# rename: Rename
|
|
373
|
-
html_error:
|
|
374
|
-
problems_name: Problems with %{cardname}
|
|
375
|
-
please: Please
|
|
376
|
-
sign_in: sign in
|
|
377
|
-
or: or
|
|
378
|
-
sign_up: sign up
|
|
379
|
-
read_only: We are currently in read-only mode. Please try again later.
|
|
380
|
-
sorry: Sorry!
|
|
381
|
-
need_permission_task: You need permission %{task}.
|
|
382
|
-
to_do_that: to do that
|
|
383
|
-
denied_task: to %{denied_task} this
|
|
384
|
-
# form:
|
|
385
|
-
# unsupported_action_class: "unsupported card_form action class: %{actionclass}"
|
|
386
|
-
# submit: Submit
|
|
387
|
-
# submitting: Submitting
|
|
388
|
-
# cancel: Cancel
|
|
389
|
-
menu:
|
|
390
|
-
edit: edit
|
|
391
|
-
discuss: discuss
|
|
392
|
-
page: page
|
|
393
|
-
rules: rules
|
|
394
|
-
account: account
|
|
395
|
-
modal:
|
|
396
|
-
close: Close
|
|
397
|
-
html_wrapper:
|
|
398
|
-
close: Close
|
|
399
|
-
format:
|
|
400
|
-
html_format:
|
|
401
|
-
unknown_layout: "Unknown layout: %{name}"
|
|
402
|
-
built_in: "Built-in Layouts: %{built_in_layouts}"
|
|
403
|
-
available_layouts: "Available Layouts: %{available_layouts}"
|
|
115
|
+
carrierwave_add_item: Add %{attachment_name}...
|
|
116
|
+
carrierwave_codename_needed_for_storage: codename needed for storage type coded
|
|
117
|
+
carrierwave_delete: Delete
|
|
118
|
+
carrierwave_download: Download %{title}
|
|
119
|
+
carrierwave_error_invalid_storage_type: "%{type} is not a valid file storage option"
|
|
120
|
+
carrierwave_file_error: File Error
|
|
121
|
+
carrierwave_is_missing: is missing
|
|
122
|
+
carrierwave_mod_argument_needed_to_save: mod argument needed to save card as coded
|
|
123
|
+
carrierwave_moving_files_is_not_supported: moving files from cloud elsewhere is not supported
|
|
124
|
+
carrierwave_replace_item: Replace %{attachment_name}...
|
|
125
|
+
carrierwave_unknown_storage_type: unknown storage type %{new_storage_type}
|
|
126
|
+
carrierwave_url_is_missing: url is missing
|
|
404
127
|
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
edited: edited
|
|
428
|
-
editors: editors
|
|
429
|
-
engage: engage
|
|
430
|
-
follow: follow
|
|
431
|
-
history: history
|
|
432
|
-
mates: mates
|
|
433
|
-
name: name
|
|
434
|
-
nests: nests
|
|
435
|
-
pin_pin: pin
|
|
436
|
-
pin_unpin: unpin
|
|
437
|
-
recent: recent
|
|
438
|
-
references_out: references out
|
|
439
|
-
references_in: references in
|
|
440
|
-
refresh: refresh
|
|
441
|
-
roles: roles
|
|
442
|
-
rules: rules
|
|
443
|
-
structure: structure
|
|
444
|
-
type: type
|
|
128
|
+
format_add_card: Add %{cardname}
|
|
129
|
+
format_bad_address: "404: Bad Address"
|
|
130
|
+
format_close: Close
|
|
131
|
+
format_configure_card: Configure %{cardname}
|
|
132
|
+
format_denial: Permission Denied
|
|
133
|
+
format_denied_task: to %{denied_task} this
|
|
134
|
+
format_invalid_json: invalid json
|
|
135
|
+
format_need_permission_task: "You need permission %{task}."
|
|
136
|
+
format_not_found_named: Could not find %{cardname}.
|
|
137
|
+
format_not_found_no_name: the card requested
|
|
138
|
+
format_not_numeric: "'%{content}' is not numeric"
|
|
139
|
+
format_or: "or"
|
|
140
|
+
format_please: Please
|
|
141
|
+
format_problems_name: Problems with %{cardname}
|
|
142
|
+
format_read_only: We are currently in read-only mode. Please try again later.
|
|
143
|
+
format_server_error: "\nWagn Hitch! Server Error. Yuck, sorry about that.\nTo tell us more and follow the fix,\nadd a support ticket at %{ticket_link}\n"
|
|
144
|
+
format_sorry: Sorry!
|
|
145
|
+
format_to_do_that: to do that
|
|
146
|
+
format_toggle_no: "no"
|
|
147
|
+
format_toggle_yes: "yes"
|
|
148
|
+
format_too_deep: Man, you're too deep. (Too many levels of nests at a time)
|
|
149
|
+
format_unsupported_view: view (%{view}) not supported for %{cardname}
|
|
445
150
|
|
|
446
|
-
|
|
447
|
-
set:
|
|
448
|
-
abstract:
|
|
449
|
-
attachment:
|
|
450
|
-
error_invalid_storage_type: "%{type} is not a valid file storage option"
|
|
451
|
-
url_is_missing: url is missing
|
|
452
|
-
is_missing: is missing
|
|
453
|
-
storage_type:
|
|
454
|
-
mod_argument_needed_to_save: mod argument needed to save card as coded
|
|
455
|
-
codename_needed_for_storage: codename needed for storage type coded
|
|
456
|
-
unknown_storage_type: unknown storage type %{new_storage_type}
|
|
457
|
-
moving_files_is_not_supported: moving files from cloud elsewhere is not supported
|
|
458
|
-
type:
|
|
459
|
-
file:
|
|
460
|
-
file_error: File Error
|
|
461
|
-
download: Download %{title}
|
|
462
|
-
delete: Delete
|
|
463
|
-
add_item: Add %{attachment_name}...
|
|
464
|
-
replace_item: Replace %{attachment_name}...
|
|
151
|
+
history_error_not_latest_revision: changes not based on latest revision
|
|
465
152
|
|
|
153
|
+
layout_available_layouts: "Available Layouts: %{available_layouts}"
|
|
154
|
+
layout_unknown_layout: "Unknown layout: %{name}"
|
|
466
155
|
|
|
467
|
-
|
|
468
|
-
set:
|
|
469
|
-
type:
|
|
470
|
-
customized_bootswatch_skin:
|
|
471
|
-
not_valid_theme: not a valid theme %{theme_name}
|
|
472
|
-
cannot_source_theme: can't find source for theme %{theme_name}
|
|
156
|
+
legacy_toc: Table of Contents
|
|
473
157
|
|
|
474
|
-
|
|
475
|
-
set:
|
|
476
|
-
all:
|
|
477
|
-
content_history:
|
|
478
|
-
error_not_latest_revision: changes not based on latest revision
|
|
479
|
-
history:
|
|
480
|
-
time_ago: "%{elapsed__time_in_words} ago"
|
|
481
|
-
current: Current
|
|
482
|
-
added: Added
|
|
483
|
-
deleted: Deleted
|
|
484
|
-
save_as_current: Save as current
|
|
485
|
-
show_changes: Show changes
|
|
486
|
-
hide_changes: Hide changes
|
|
158
|
+
permission_error_no_action_rule: No %{action} rule for %{name}
|
|
487
159
|
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
|
|
509
|
-
|
|
510
|
-
check_email_reset: Please check your email for a new password reset link.
|
|
511
|
-
errors_message: Sorry, %{item}. %{message}
|
|
512
|
-
user:
|
|
513
|
-
help_first_last: üblicherweise Vor- und Nachname
|
|
514
|
-
welcome: Willkommen, Decker!
|
|
515
|
-
get_started: Um loszulegen, erstelle einen Account.
|
|
516
|
-
email_off: "WARNING: E-Mail-Versand ist deaktiviert. Ändere die Einstellung in %{path} um bei neuen Registrierungen Benachrichtigungen zu senden."
|
|
517
|
-
set_up: Anlegen
|
|
518
|
-
setting_up: Lege an
|
|
519
|
-
right:
|
|
520
|
-
account:
|
|
521
|
-
events:
|
|
522
|
-
sorry_email_reset: Sorry, %{error_msg}. Please check your email for a new password reset link.
|
|
523
|
-
email:
|
|
524
|
-
error_invalid_address: must be valid address
|
|
525
|
-
search_email_duplicate: email duplicate? (%{content})
|
|
526
|
-
error_not_unique: must be unique
|
|
527
|
-
deny_email_restricted: viewing email is restricted to administrators and account holders
|
|
528
|
-
password:
|
|
529
|
-
encrypted: encrypted
|
|
530
|
-
password_length: must be at least 4 characters
|
|
531
|
-
salt:
|
|
532
|
-
private_data: Private data
|
|
533
|
-
stats:
|
|
534
|
-
field: Field
|
|
535
|
-
cache_value: Cache Val
|
|
536
|
-
db_value: Database Val
|
|
537
|
-
cache_db_compare: Cache/DB Comparison
|
|
538
|
-
cached_card: Cached Card Inspect
|
|
539
|
-
db_card: Database Card Inspect
|
|
540
|
-
status:
|
|
541
|
-
deny_not_change_own_account: change the status of your own account
|
|
542
|
-
api_key:
|
|
543
|
-
private_data: Private data
|
|
544
|
-
error_token_not_found: no token found
|
|
545
|
-
error_token_expired: expired token
|
|
546
|
-
error_incorrect_token: token mismatch
|
|
547
|
-
exception_bad_expiration: illegal expiration value (eg '%{example}')
|
|
548
|
-
self:
|
|
549
|
-
account_links:
|
|
550
|
-
sign_up: Sign up
|
|
551
|
-
sign_in: Sign in
|
|
552
|
-
invite: Invite
|
|
553
|
-
sign_out: Sign out
|
|
554
|
-
signin:
|
|
555
|
-
sign_in_title: Sign In
|
|
556
|
-
sign_in: Sign in
|
|
557
|
-
or_sign_up: '...or sign up!'
|
|
558
|
-
reset_password: RESET PASSWORD
|
|
559
|
-
forgot_password: Forgot Password
|
|
560
|
-
reset_my_password: Reset my password
|
|
561
|
-
check_email: Check your email for a link to reset your password
|
|
562
|
-
error_unknown_email: Unrecognized email.
|
|
563
|
-
error_not_active: Sorry, that account is not active.
|
|
564
|
-
error_blank: can't be blank
|
|
565
|
-
error_wrong_password: Wrong password
|
|
566
|
-
email_missing: email can't be blank
|
|
567
|
-
password_missing: password can't be blank
|
|
568
|
-
error_not_active: not active
|
|
569
|
-
error_not_recognized: not recognized
|
|
160
|
+
recaptcha_captcha_keys: You are configured to use %{captcha_link}, but for that to work you need new %{recaptcha_link}.
|
|
161
|
+
recaptcha_captcha_temp: Your captcha is currently working with temporary settings. This is fine for a local installation, but you will need new %{recaptcha_link} if you want to make this site public.
|
|
162
|
+
recaptcha_howto_add: Add your keys to %{recaptcha_settings}
|
|
163
|
+
recaptcha_howto_add_keys: "How to add new recaptcha keys:"
|
|
164
|
+
recaptcha_howto_go: Go to %{captcha_card}
|
|
165
|
+
recaptcha_howto_register: Register your domain at %{recaptcha_link}
|
|
166
|
+
recaptcha_howto_turn_off: 'How to turn captcha off:'
|
|
167
|
+
recaptcha_howto_update: Update all *captcha rules to "no".
|
|
168
|
+
|
|
169
|
+
rules_config: Config
|
|
170
|
+
rules_event: Events
|
|
171
|
+
rules_other: Other
|
|
172
|
+
rules_permission: Permissions
|
|
173
|
+
rules_pointer: Pointer
|
|
174
|
+
rules_templating: Templating
|
|
175
|
+
rules_webpage: Webpage
|
|
176
|
+
rules_editing: Editing
|
|
177
|
+
|
|
178
|
+
alias_target_must_be_simple: "must be aliased to a single, valid simple card"
|
|
179
|
+
alias_must_be_simple: "must be a simple (not a compound) card"
|
|
180
|
+
alias_cards_no_children: "Alias cards can't have children"
|
|
181
|
+
alias_redirect_former_name: "redirect former name to new one"
|