permission_forge 0.14.1 → 0.15.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 +4 -4
- data/CHANGELOG.md +2372 -0
- data/README.md +76 -25
- data/app/controllers/concerns/permission_forge/api/crud_actions.rb +3 -2
- data/app/controllers/concerns/permission_forge/api/input_shapes.rb +200 -0
- data/app/controllers/concerns/permission_forge/api/pagination.rb +12 -5
- data/app/controllers/concerns/permission_forge/api/response_renderer.rb +37 -1
- data/app/controllers/concerns/permission_forge/api_authentication.rb +13 -2
- data/app/controllers/concerns/permission_forge/cache_confirmation.rb +42 -11
- data/app/controllers/concerns/permission_forge/change_review.rb +42 -0
- data/app/controllers/concerns/permission_forge/copy_refusal.rb +39 -0
- data/app/controllers/concerns/permission_forge/param_shapes.rb +207 -7
- data/app/controllers/concerns/permission_forge/save_notice.rb +69 -0
- data/app/controllers/permission_forge/api/audit_events_controller.rb +1 -1
- data/app/controllers/permission_forge/api/base_controller.rb +163 -12
- data/app/controllers/permission_forge/api/dashboard_controller.rb +29 -4
- data/app/controllers/permission_forge/api/permission_set_group_users_controller.rb +5 -2
- data/app/controllers/permission_forge/api/permission_set_groups_controller.rb +5 -4
- data/app/controllers/permission_forge/api/permission_set_rules_controller.rb +7 -5
- data/app/controllers/permission_forge/api/permission_set_users_controller.rb +80 -19
- data/app/controllers/permission_forge/api/permission_sets_controller.rb +12 -6
- data/app/controllers/permission_forge/api/resource_actions_controller.rb +1 -1
- data/app/controllers/permission_forge/api/resource_fields_controller.rb +3 -4
- data/app/controllers/permission_forge/api/resources_controller.rb +26 -12
- data/app/controllers/permission_forge/api/unmatched_routes_controller.rb +20 -0
- data/app/controllers/permission_forge/application_controller.rb +39 -5
- data/app/controllers/permission_forge/assignments_controller.rb +36 -34
- data/app/controllers/permission_forge/bulk_assignments_controller.rb +8 -4
- data/app/controllers/permission_forge/field_lookups_controller.rb +1 -1
- data/app/controllers/permission_forge/maintenance_controller.rb +6 -2
- data/app/controllers/permission_forge/people_controller.rb +14 -14
- data/app/controllers/permission_forge/permission_set_editor.rb +20 -6
- data/app/controllers/permission_forge/permission_set_group_users_controller.rb +3 -1
- data/app/controllers/permission_forge/permission_set_groups_controller.rb +23 -9
- data/app/controllers/permission_forge/permission_set_rules_controller.rb +20 -10
- data/app/controllers/permission_forge/permission_sets_controller.rb +23 -24
- data/app/controllers/permission_forge/resource_actions_controller.rb +11 -6
- data/app/controllers/permission_forge/resource_fields_controller.rb +37 -19
- data/app/controllers/permission_forge/resources_controller.rb +12 -11
- data/app/frontend/permission_forge/pf_admin.css +99 -17
- data/app/frontend/permission_forge/pf_admin.js +36 -0
- data/app/helpers/permission_forge/application_helper.rb +22 -72
- data/app/helpers/permission_forge/audit_attribution_helper.rb +77 -0
- data/app/helpers/permission_forge/audit_helper.rb +57 -119
- data/app/helpers/permission_forge/audit_records_helper.rb +103 -0
- data/app/helpers/permission_forge/audit_sentences_helper.rb +56 -2
- data/app/helpers/permission_forge/badges_helper.rb +74 -17
- data/app/helpers/permission_forge/changes_helper.rb +24 -6
- data/app/helpers/permission_forge/conditions_helper.rb +119 -0
- data/app/helpers/permission_forge/labels_helper.rb +134 -0
- data/app/helpers/permission_forge/people_helper.rb +11 -19
- data/app/helpers/permission_forge/rule_problems_helper.rb +73 -0
- data/app/helpers/permission_forge/sentences_helper.rb +119 -98
- data/app/helpers/permission_forge/settings_helper.rb +2 -2
- data/app/helpers/permission_forge/ui_helper.rb +65 -4
- data/app/models/permission_forge/audit_event.rb +5 -1
- data/app/models/permission_forge/permission_set.rb +208 -18
- data/app/models/permission_forge/permission_set_group.rb +10 -4
- data/app/models/permission_forge/permission_set_group_user.rb +3 -1
- data/app/models/permission_forge/permission_set_rule.rb +254 -17
- data/app/models/permission_forge/permission_set_user.rb +38 -3
- data/app/models/permission_forge/resource.rb +18 -8
- data/app/models/permission_forge/resource_action.rb +15 -6
- data/app/models/permission_forge/resource_field.rb +97 -11
- data/app/views/permission_forge/assignments/confirm_destroy.html.erb +4 -4
- data/app/views/permission_forge/assignments/new.html.erb +10 -6
- data/app/views/permission_forge/audit_events/index.html.erb +1 -1
- data/app/views/permission_forge/audit_events/show.html.erb +16 -9
- data/app/views/permission_forge/bulk_assignments/confirm_revoke.html.erb +3 -3
- data/app/views/permission_forge/bulk_assignments/new.html.erb +3 -3
- data/app/views/permission_forge/field_lookups/show.html.erb +2 -2
- data/app/views/permission_forge/home/_broken_rules_card.html.erb +35 -0
- data/app/views/permission_forge/home/_conditions_card.html.erb +28 -0
- data/app/views/permission_forge/home/_ending_card.html.erb +11 -5
- data/app/views/permission_forge/home/_expired_card.html.erb +1 -1
- data/app/views/permission_forge/home/_mask_strategies_card.html.erb +27 -0
- data/app/views/permission_forge/home/_privacy_card.html.erb +21 -7
- data/app/views/permission_forge/home/_rules_card.html.erb +1 -1
- data/app/views/permission_forge/home/_secret_rules_card.html.erb +33 -0
- data/app/views/permission_forge/home/_stale_card.html.erb +7 -5
- data/app/views/permission_forge/home/_tidy_card.html.erb +1 -1
- data/app/views/permission_forge/home/index.html.erb +5 -6
- data/app/views/permission_forge/people/_access_tab.html.erb +26 -19
- data/app/views/permission_forge/people/_audit_tab.html.erb +8 -8
- data/app/views/permission_forge/people/_effective_field_source.html.erb +13 -7
- data/app/views/permission_forge/people/_effective_tab.html.erb +16 -15
- data/app/views/permission_forge/people/_effective_why.html.erb +20 -16
- data/app/views/permission_forge/people/_why_item.html.erb +1 -1
- data/app/views/permission_forge/people/confirm_remove_all.html.erb +3 -3
- data/app/views/permission_forge/people/erasure_preview.html.erb +1 -1
- data/app/views/permission_forge/permission_set_groups/confirm_destroy.html.erb +3 -3
- data/app/views/permission_forge/permission_set_groups/index.html.erb +3 -3
- data/app/views/permission_forge/permission_set_groups/show.html.erb +28 -19
- data/app/views/permission_forge/permission_set_rules/_builder.html.erb +35 -15
- data/app/views/permission_forge/permission_set_rules/_preview.html.erb +17 -0
- data/app/views/permission_forge/permission_set_rules/confirm_destroy.html.erb +3 -3
- data/app/views/permission_forge/permission_set_rules/preview.html.erb +12 -0
- data/app/views/permission_forge/permission_sets/_assignments_tab.html.erb +37 -22
- data/app/views/permission_forge/permission_sets/_audit_tab.html.erb +4 -4
- data/app/views/permission_forge/permission_sets/_condition_problems.html.erb +15 -0
- data/app/views/permission_forge/permission_sets/_conditions_tab.html.erb +14 -8
- data/app/views/permission_forge/permission_sets/_header.html.erb +6 -5
- data/app/views/permission_forge/permission_sets/_records_summary.html.erb +2 -2
- data/app/views/permission_forge/permission_sets/_resources_tab.html.erb +4 -4
- data/app/views/permission_forge/permission_sets/confirm_destroy.html.erb +4 -4
- data/app/views/permission_forge/permission_sets/confirm_switch_mode.html.erb +3 -3
- data/app/views/permission_forge/permission_sets/index.html.erb +6 -6
- data/app/views/permission_forge/permission_sets/new.html.erb +2 -2
- data/app/views/permission_forge/permission_sets/review.html.erb +13 -3
- data/app/views/permission_forge/permission_sets/show.html.erb +7 -5
- data/app/views/permission_forge/resource_actions/_across_sets.html.erb +7 -10
- data/app/views/permission_forge/resource_actions/_effect.html.erb +5 -5
- data/app/views/permission_forge/resource_actions/_form.html.erb +1 -1
- data/app/views/permission_forge/resource_actions/_managed_note.html.erb +5 -3
- data/app/views/permission_forge/resource_actions/confirm_destroy.html.erb +1 -1
- data/app/views/permission_forge/resource_actions/new.html.erb +1 -1
- data/app/views/permission_forge/resource_actions/show.html.erb +2 -2
- data/app/views/permission_forge/resource_fields/_explain.html.erb +19 -15
- data/app/views/permission_forge/resource_fields/show.html.erb +21 -12
- data/app/views/permission_forge/resources/_actions_tab.html.erb +4 -4
- data/app/views/permission_forge/resources/_fields_tab.html.erb +17 -9
- data/app/views/permission_forge/resources/_rules_tab.html.erb +9 -6
- data/app/views/permission_forge/resources/_sync.html.erb +8 -5
- data/app/views/permission_forge/resources/confirm_destroy.html.erb +3 -3
- data/app/views/permission_forge/resources/new.html.erb +3 -2
- data/app/views/permission_forge/resources/show.html.erb +6 -6
- data/app/views/permission_forge/settings/_row.html.erb +2 -2
- data/app/views/permission_forge/settings/show.html.erb +10 -1
- data/app/views/permission_forge/shared/_across_sets.html.erb +8 -9
- data/app/views/permission_forge/shared/_audit_events.html.erb +2 -2
- data/app/views/permission_forge/shared/_audit_footer.html.erb +13 -2
- data/app/views/permission_forge/shared/_crud_cell.html.erb +6 -6
- data/app/views/permission_forge/shared/_mode_banners.html.erb +1 -1
- data/app/views/permission_forge/shared/_savebar.html.erb +4 -2
- data/config/locales/permission_forge.en.yml +480 -69
- data/config/locales/permission_forge.mk.yml +499 -79
- data/config/locales/permission_forge.sq.yml +509 -80
- data/config/routes.rb +38 -23
- data/lib/generators/permission_forge/install/install_generator.rb +21 -0
- data/lib/generators/permission_forge/install/templates/initializer.rb.tt +35 -34
- data/lib/generators/permission_forge/install/templates/migration.rb.tt +5 -5
- data/lib/permission_forge/activation_conditions.rb +200 -0
- data/lib/permission_forge/admin/action_label.rb +33 -0
- data/lib/permission_forge/admin/action_rows.rb +3 -1
- data/lib/permission_forge/admin/actor_label.rb +52 -0
- data/lib/permission_forge/admin/attention_items.rb +152 -31
- data/lib/permission_forge/admin/audit_log.rb +4 -7
- data/lib/permission_forge/admin/audit_trail.rb +33 -17
- data/lib/permission_forge/admin/bulk_people_matcher.rb +32 -14
- data/lib/permission_forge/admin/chain_entries.rb +42 -0
- data/lib/permission_forge/admin/change_set.rb +12 -1
- data/lib/permission_forge/admin/change_set_parts/base.rb +5 -4
- data/lib/permission_forge/admin/change_set_parts/context.rb +3 -1
- data/lib/permission_forge/admin/change_set_parts/field_edit.rb +4 -1
- data/lib/permission_forge/admin/change_set_parts/field_levels.rb +1 -1
- data/lib/permission_forge/admin/change_set_parts/new_actions.rb +1 -1
- data/lib/permission_forge/admin/change_set_parts/new_fields.rb +38 -11
- data/lib/permission_forge/admin/change_set_parts/resource_edit.rb +17 -1
- data/lib/permission_forge/admin/change_set_parts/resource_flags.rb +1 -1
- data/lib/permission_forge/admin/change_set_parts/set_attrs.rb +4 -0
- data/lib/permission_forge/admin/change_set_parts/values.rb +10 -4
- data/lib/permission_forge/admin/column_fields.rb +22 -21
- data/lib/permission_forge/admin/conditions_form.rb +47 -15
- data/lib/permission_forge/admin/controller_catalog.rb +42 -14
- data/lib/permission_forge/admin/editable_lock.rb +83 -3
- data/lib/permission_forge/admin/effective_access.rb +147 -48
- data/lib/permission_forge/admin/effective_fields.rb +75 -67
- data/lib/permission_forge/admin/error_sentence.rb +47 -0
- data/lib/permission_forge/admin/expiry_presets.rb +17 -0
- data/lib/permission_forge/admin/exports/holdings.rb +6 -3
- data/lib/permission_forge/admin/field_across_sets.rb +7 -4
- data/lib/permission_forge/admin/field_chain.rb +109 -0
- data/lib/permission_forge/admin/field_detail.rb +24 -11
- data/lib/permission_forge/admin/field_label.rb +109 -0
- data/lib/permission_forge/admin/field_level.rb +4 -68
- data/lib/permission_forge/admin/field_provenance.rb +132 -0
- data/lib/permission_forge/admin/field_rows.rb +26 -11
- data/lib/permission_forge/admin/last_changes.rb +14 -0
- data/lib/permission_forge/admin/list_sentence.rb +32 -0
- data/lib/permission_forge/admin/mask_strategy_choices.rb +57 -0
- data/lib/permission_forge/admin/model_catalog.rb +83 -39
- data/lib/permission_forge/admin/model_label.rb +66 -0
- data/lib/permission_forge/admin/people_candidates.rb +21 -9
- data/lib/permission_forge/admin/people_directory.rb +23 -5
- data/lib/permission_forge/admin/permission_set_factory.rb +6 -15
- data/lib/permission_forge/admin/person_label.rb +105 -16
- data/lib/permission_forge/admin/prefill.rb +92 -0
- data/lib/permission_forge/admin/record_name.rb +45 -0
- data/lib/permission_forge/admin/rule_builder.rb +77 -3
- data/lib/permission_forge/admin/rule_form.rb +44 -10
- data/lib/permission_forge/admin/rule_form_input.rb +27 -11
- data/lib/permission_forge/admin/rule_notes.rb +43 -0
- data/lib/permission_forge/admin/rule_preview.rb +96 -0
- data/lib/permission_forge/admin/sensitive_columns.rb +10 -62
- data/lib/permission_forge/admin/settings_catalog.rb +64 -12
- data/lib/permission_forge/admin/state_label.rb +97 -0
- data/lib/permission_forge/admin_method_override.rb +44 -0
- data/lib/permission_forge/api/schema.rb +322 -0
- data/lib/permission_forge/api/serializers/base_serializer.rb +87 -1
- data/lib/permission_forge/api/serializers/permission_set_group_user_serializer.rb +1 -1
- data/lib/permission_forge/api/serializers/permission_set_rule_serializer.rb +1 -1
- data/lib/permission_forge/api/serializers/permission_set_serializer.rb +5 -2
- data/lib/permission_forge/api/serializers/permission_set_user_serializer.rb +1 -1
- data/lib/permission_forge/api/serializers/resource_action_serializer.rb +1 -1
- data/lib/permission_forge/api/serializers/resource_field_serializer.rb +1 -1
- data/lib/permission_forge/api/serializers/resource_serializer.rb +1 -1
- data/lib/permission_forge/api_authorizations.rb +59 -0
- data/lib/permission_forge/api_only_admin.rb +81 -0
- data/lib/permission_forge/audit/actor_codes.rb +32 -0
- data/lib/permission_forge/audit/actor_resolver.rb +1 -2
- data/lib/permission_forge/audit/boot_warnings.rb +29 -9
- data/lib/permission_forge/audit/event_catalog.rb +16 -6
- data/lib/permission_forge/audit/event_query.rb +3 -3
- data/lib/permission_forge/audit/reason_codes.rb +25 -0
- data/lib/permission_forge/audit/runtime.rb +9 -2
- data/lib/permission_forge/audit/settings_observer.rb +2 -2
- data/lib/permission_forge/audit/unmasked_without_user.rb +169 -0
- data/lib/permission_forge/audit.rb +24 -10
- data/lib/permission_forge/boot_checks.rb +180 -63
- data/lib/permission_forge/cache/base.rb +10 -0
- data/lib/permission_forge/cache/null_cache.rb +5 -0
- data/lib/permission_forge/cache/outcome.rb +119 -0
- data/lib/permission_forge/cache/rails_cache.rb +6 -0
- data/lib/permission_forge/cache/report.rb +150 -0
- data/lib/permission_forge/cache/user_keys.rb +8 -4
- data/lib/permission_forge/cache_warnings.rb +140 -0
- data/lib/permission_forge/concerns/auto_permission_scoping.rb +19 -2
- data/lib/permission_forge/concerns/has_tenant_scoping.rb +1 -1
- data/lib/permission_forge/concerns/has_uuid.rb +1 -1
- data/lib/permission_forge/concerns/keeps_copied_values.rb +48 -0
- data/lib/permission_forge/concerns/masked_attributes/alias_access.rb +12 -2
- data/lib/permission_forge/concerns/masked_attributes/virtual_readers.rb +6 -4
- data/lib/permission_forge/concerns/masked_attributes.rb +150 -34
- data/lib/permission_forge/concerns/normalizes_label.rb +78 -0
- data/lib/permission_forge/concerns/permission_cache_accessor.rb +3 -3
- data/lib/permission_forge/concerns/permission_scoped_findable.rb +121 -29
- data/lib/permission_forge/concerns/permissioned_user.rb +1 -1
- data/lib/permission_forge/concerns/records_audit_events.rb +13 -6
- data/lib/permission_forge/concerns/requires_name.rb +37 -0
- data/lib/permission_forge/concerns/validates_column_lengths.rb +24 -0
- data/lib/permission_forge/concerns/validates_dependency.rb +5 -2
- data/lib/permission_forge/concerns/validates_required_columns.rb +74 -0
- data/lib/permission_forge/conditional_sets.rb +13 -6
- data/lib/permission_forge/configuration/admin_ui_settings.rb +18 -4
- data/lib/permission_forge/configuration/audit_settings.rb +2 -1
- data/lib/permission_forge/configuration/controller_action_settings.rb +5 -4
- data/lib/permission_forge/configuration/masked_attributes_settings.rb +73 -19
- data/lib/permission_forge/configuration/presets.rb +20 -11
- data/lib/permission_forge/configuration/query_scoping_settings.rb +55 -0
- data/lib/permission_forge/configuration/strategy_values.rb +2 -1
- data/lib/permission_forge/configuration.rb +41 -18
- data/lib/permission_forge/controller_actions/managed_index.rb +8 -7
- data/lib/permission_forge/database_reach.rb +93 -0
- data/lib/permission_forge/deprecation.rb +1 -1
- data/lib/permission_forge/docs/api_samples.rb +250 -0
- data/lib/permission_forge/docs/configuration_reference.rb +172 -0
- data/lib/permission_forge/encrypted_attributes.rb +150 -0
- data/lib/permission_forge/engine.rb +46 -14
- data/lib/permission_forge/execution_state/restore.rb +74 -0
- data/lib/permission_forge/execution_state.rb +8 -1
- data/lib/permission_forge/field_level.rb +123 -0
- data/lib/permission_forge/field_names.rb +145 -0
- data/lib/permission_forge/field_variants.rb +96 -0
- data/lib/permission_forge/generated_text.rb +95 -0
- data/lib/permission_forge/inspection_filters.rb +83 -0
- data/lib/permission_forge/managed_fields.rb +66 -0
- data/lib/permission_forge/masked_models.rb +25 -19
- data/lib/permission_forge/masking_sync.rb +100 -25
- data/lib/permission_forge/model_bindings.rb +30 -19
- data/lib/permission_forge/model_lookup.rb +42 -0
- data/lib/permission_forge/operators/encrypted_alias.rb +67 -0
- data/lib/permission_forge/operators/registry.rb +6 -0
- data/lib/permission_forge/operators/rule_column.rb +242 -27
- data/lib/permission_forge/operators/rule_path.rb +179 -0
- data/lib/permission_forge/operators/rule_problem.rb +309 -0
- data/lib/permission_forge/operators/rule_sources.rb +96 -0
- data/lib/permission_forge/operators/value_casters/postgresql_types.rb +237 -0
- data/lib/permission_forge/operators/value_casters/temporal.rb +9 -20
- data/lib/permission_forge/operators/value_casters.rb +61 -13
- data/lib/permission_forge/operators/value_typing.rb +83 -7
- data/lib/permission_forge/query_scoping_warnings.rb +22 -17
- data/lib/permission_forge/rake_audit.rb +5 -4
- data/lib/permission_forge/rake_dry_run.rb +32 -0
- data/lib/permission_forge/rake_output.rb +189 -0
- data/lib/permission_forge/record_read_access.rb +51 -0
- data/lib/permission_forge/resource_chain.rb +14 -2
- data/lib/permission_forge/schema_read/ordered_types.rb +72 -0
- data/lib/permission_forge/schema_read.rb +335 -0
- data/lib/permission_forge/secret_columns.rb +49 -0
- data/lib/permission_forge/sensitive_columns.rb +114 -0
- data/lib/permission_forge/services/attribute_access_guard.rb +22 -14
- data/lib/permission_forge/services/bulk_permission_set_assignment.rb +16 -8
- data/lib/permission_forge/services/concerns/clonable.rb +9 -0
- data/lib/permission_forge/services/concerns/settles_cache.rb +58 -0
- data/lib/permission_forge/services/consent_withdrawal_handler.rb +37 -19
- data/lib/permission_forge/services/data_subject_erasure.rb +83 -45
- data/lib/permission_forge/services/expired_assignment_cleaner.rb +62 -25
- data/lib/permission_forge/services/extra_field_defaults.rb +1 -1
- data/lib/permission_forge/services/field_permission_merger.rb +44 -17
- data/lib/permission_forge/services/filters_response_attributes.rb +20 -5
- data/lib/permission_forge/services/gdpr_field_auditor/text_report.rb +33 -5
- data/lib/permission_forge/services/gdpr_field_auditor.rb +68 -48
- data/lib/permission_forge/services/host_key_guard.rb +8 -5
- data/lib/permission_forge/services/mask_value.rb +72 -11
- data/lib/permission_forge/services/permission_cache_clearer.rb +36 -15
- data/lib/permission_forge/services/permission_hash_builder.rb +48 -19
- data/lib/permission_forge/services/permission_rule_applier.rb +131 -68
- data/lib/permission_forge/services/permission_set_cloner.rb +32 -8
- data/lib/permission_forge/services/permission_set_condition_evaluator.rb +38 -36
- data/lib/permission_forge/services/permission_set_group_cloner.rb +2 -1
- data/lib/permission_forge/services/permits_attributes/result.rb +31 -0
- data/lib/permission_forge/services/permits_attributes.rb +48 -27
- data/lib/permission_forge/services/resource_field_generator/row_builder.rb +96 -0
- data/lib/permission_forge/services/resource_field_generator.rb +71 -42
- data/lib/permission_forge/services/resource_with_fields_builder.rb +2 -1
- data/lib/permission_forge/services/rls_operator_sql.rb +83 -24
- data/lib/permission_forge/services/rls_policy_generator.rb +83 -39
- data/lib/permission_forge/services/rls_read_access_sql.rb +131 -0
- data/lib/permission_forge/services/security_audit/action_check.rb +49 -5
- data/lib/permission_forge/services/security_audit/assignment_check.rb +2 -1
- data/lib/permission_forge/services/security_audit/audit_trail_check.rb +1 -3
- data/lib/permission_forge/services/security_audit/conditions_check.rb +92 -0
- data/lib/permission_forge/services/security_audit/config_check.rb +41 -18
- data/lib/permission_forge/services/security_audit/integrity_check.rb +71 -4
- data/lib/permission_forge/services/security_audit/masking_without_user.rb +66 -0
- data/lib/permission_forge/services/security_audit/personal_data_check.rb +7 -11
- data/lib/permission_forge/services/security_audit/rule_check.rb +180 -50
- data/lib/permission_forge/services/security_audit/text_report.rb +14 -2
- data/lib/permission_forge/services/security_audit/unmanaged_actions.rb +145 -0
- data/lib/permission_forge/services/security_audit/user_model_check.rb +4 -3
- data/lib/permission_forge/services/security_audit.rb +16 -4
- data/lib/permission_forge/services/stale_assignment_auditor.rb +8 -5
- data/lib/permission_forge/timestamp_fields.rb +60 -0
- data/lib/permission_forge/unique_conflict.rb +117 -0
- data/lib/permission_forge/version.rb +1 -1
- data/lib/permission_forge/virtual_fields/discovery.rb +2 -1
- data/lib/permission_forge/virtual_fields.rb +15 -5
- data/lib/permission_forge/warnings.rb +263 -0
- data/lib/permission_forge/web_request.rb +248 -0
- data/lib/permission_forge.rb +54 -0
- data/lib/tasks/permission_forge.rake +26 -6
- data/lib/tasks/permission_forge_audit_events.rake +8 -4
- data/lib/tasks/permission_forge_cache.rake +12 -12
- data/lib/tasks/permission_forge_docs.rake +48 -0
- data/lib/tasks/permission_forge_expiration.rake +11 -5
- data/lib/tasks/permission_forge_gdpr.rake +36 -20
- metadata +84 -1
|
@@ -3,14 +3,47 @@ mk:
|
|
|
3
3
|
permission_forge:
|
|
4
4
|
api:
|
|
5
5
|
errors:
|
|
6
|
+
action_authorization_missing: Промените преку API бараат config.api_action_authorization;
|
|
7
|
+
се одбиваат додека не е поставено и config.api_require_authorization е вклучено
|
|
6
8
|
action_not_authorized: Акцијата не е авторизирана
|
|
9
|
+
assignment_authorization_missing: Доделувањата преку API бараат config.api_assignment_authorization;
|
|
10
|
+
се одбиваат додека не е поставено и config.api_require_authorization е вклучено
|
|
7
11
|
assignment_not_authorized: Доделувањето не е авторизирано
|
|
12
|
+
body_unreadable: Содржината на барањето не може да се прочита. Испратете валиден
|
|
13
|
+
JSON со Content-Type application/json.
|
|
14
|
+
boolean_invalid: мора да биде true или false
|
|
15
|
+
bulk_action_invalid: мора да биде assign или revoke
|
|
16
|
+
expires_at_past: мора да биде во иднина
|
|
8
17
|
field_generation_failed: Не може да се генерираат полиња за овој ресурс
|
|
18
|
+
field_value_shape: мора да биде низа, број, true или false; листа од нив (ниту
|
|
19
|
+
една со запирка) само за in, not_in и between
|
|
20
|
+
flag_shape: мора да биде низа или null
|
|
9
21
|
forbidden: Забрането
|
|
22
|
+
hour_shape: мора да биде цел број од 0 до 23, или null
|
|
23
|
+
integer_shape: мора да биде цел број
|
|
24
|
+
ip_list_empty: нема ниту една ставка; испратете null за да го отстраните условот
|
|
25
|
+
ip_list_shape: мора да биде низа или листа од низи (IP адреси или CIDR опсези),
|
|
26
|
+
или null
|
|
10
27
|
not_editable: Овој запис не може да се уредува
|
|
11
28
|
not_found: Записот не е пронајден
|
|
29
|
+
not_iso8601_time: не е датум или време во ISO 8601
|
|
30
|
+
not_null: Недостасува задолжителна вредност. Ништо не е зачувано.
|
|
31
|
+
record_not_unique: Друго барање го зачува истиот запис пред еден момент; тој
|
|
32
|
+
веќе постои
|
|
33
|
+
resource_names_no_model: не именува модел што оваа апликација може да го вчита
|
|
34
|
+
route_not_found: Ниедна крајна точка на API не одговара на оваа патека и метод
|
|
35
|
+
section_missing: недостасува, празно е или не е објект
|
|
36
|
+
stats_authorization_missing: GET /api/stats бара config.api_stats_authorization,
|
|
37
|
+
или config.api_stats_require_admin = false
|
|
12
38
|
tenant_required: Ова барање нема закупец. API-то за администрација служи по
|
|
13
39
|
еден закупец.
|
|
40
|
+
text_shape: мора да биде низа
|
|
41
|
+
unauthorized: Не сте автентицирани
|
|
42
|
+
user_id_invalid: не е id на корисник
|
|
43
|
+
user_id_missing: недостасува
|
|
44
|
+
user_ids_missing: мора да наведе барем еден корисник
|
|
45
|
+
user_ids_not_list: мора да биде листа од id на корисници
|
|
46
|
+
user_not_found: не именува никого што може да се додели
|
|
14
47
|
assignments:
|
|
15
48
|
confirm_destroy:
|
|
16
49
|
body: "%{name} ќе го изгуби пристапот до %{resources}, освен ако друг сет
|
|
@@ -32,6 +65,7 @@ mk:
|
|
|
32
65
|
expires: Истекува
|
|
33
66
|
filter_sets: Филтрирај сетови на дозволи
|
|
34
67
|
forever: без краен датум
|
|
68
|
+
locked_hint: 'Управувано од системот/API: тука не може да се додаваат корисници.'
|
|
35
69
|
muting_notice: "⊘ Пригушувачки. %{sets} му одзема пристап на %{name}, без
|
|
36
70
|
оглед на тоа што дозволуваат другите сетови."
|
|
37
71
|
no_sets: Ниеден сет на дозволи не одговара.
|
|
@@ -106,6 +140,7 @@ mk:
|
|
|
106
140
|
all_for_record: Сите настани на овој запис
|
|
107
141
|
all_for_set: Сите настани на овој сет на дозволи
|
|
108
142
|
all_in_action: Сите настани од оваа акција
|
|
143
|
+
all_unknown_actor: Сите настани без познат извршител
|
|
109
144
|
attribute: Атрибут
|
|
110
145
|
before: Пред
|
|
111
146
|
changes: Пред и по
|
|
@@ -130,23 +165,30 @@ mk:
|
|
|
130
165
|
snapshot_destroyed: Записот како што бил кога бил отстранет.
|
|
131
166
|
source: Каде
|
|
132
167
|
title: Ревизиски настан %{event}
|
|
168
|
+
unknown_actor_html: За оваа промена не е именуван актер (код извршен надвор
|
|
169
|
+
од барање, како runner или задача во позадина). Именувајте го со %{method}.
|
|
133
170
|
uuid: Id на настанот
|
|
134
171
|
value: Вредност
|
|
135
172
|
what: Што
|
|
136
173
|
who: Кој, каде и зошто
|
|
137
174
|
audit_log:
|
|
175
|
+
actor_codes:
|
|
176
|
+
api_client: API клиент
|
|
177
|
+
boot: Стартување на апликацијата
|
|
138
178
|
actor_named:
|
|
139
179
|
api: "%{name} (API)"
|
|
140
180
|
basic_auth: "%{name} (прозорец за лозинка)"
|
|
141
|
-
actor_types:
|
|
142
|
-
api: API клиент
|
|
143
|
-
basic_auth: Прозорец за лозинка
|
|
144
|
-
system: Систем
|
|
145
|
-
unknown: Непознат
|
|
146
|
-
user: Лице
|
|
147
181
|
boolean:
|
|
148
182
|
'false': Не
|
|
149
183
|
'true': Да
|
|
184
|
+
cache_scope:
|
|
185
|
+
own_process: 'Кешираните дозволи беа исчистени само во процесот што го изврши
|
|
186
|
+
(складиште во меморија): секој друг процес ги задржа своите.'
|
|
187
|
+
server_process: 'Кешираните дозволи беа исчистени само во овој процес на серверот
|
|
188
|
+
(складиште во меморија): другите веб-работници и процесите за задачи ги
|
|
189
|
+
задржаа своите.'
|
|
190
|
+
unconfirmed: 'Складиштето за кеш живее во секој процес (складиште во меморија):
|
|
191
|
+
другите процеси во секој случај ги задржуваат своите кеширани дозволи.'
|
|
150
192
|
categories:
|
|
151
193
|
access: Пристап
|
|
152
194
|
admin: Администрација
|
|
@@ -175,6 +217,8 @@ mk:
|
|
|
175
217
|
page_of: Страница %{page} од %{pages}
|
|
176
218
|
pages_label: Страници
|
|
177
219
|
person_id: 'Лице #%{id}'
|
|
220
|
+
reason_codes:
|
|
221
|
+
expired: Датумот на завршување беше поминат
|
|
178
222
|
reason_inline: 'Причина: %{reason}'
|
|
179
223
|
refused:
|
|
180
224
|
body: Читањето на ревизискиот дневник е ограничено со поставката audit_log_authorization,
|
|
@@ -184,8 +228,17 @@ mk:
|
|
|
184
228
|
sentence_variants:
|
|
185
229
|
assignment_revoked_expired: "%{actor} му го отстрани на %{person} сетот на
|
|
186
230
|
дозволи %{set} откако истече на %{date}."
|
|
231
|
+
cache_cleared_unconfirmed: "%{actor} побара да се исчистат кешираните дозволи
|
|
232
|
+
на секој корисник, но складиштето за кеш не го потврди тоа: старите дозволи
|
|
233
|
+
може да останат во употреба додека не истече траењето на кешот."
|
|
234
|
+
cache_settled_unconfirmed: 'Кешираните дозволи на %{person} требаше да се
|
|
235
|
+
исчистат по промената од %{actor}, но складиштето за кеш не го потврди тоа:
|
|
236
|
+
старите може да останат во употреба додека не истече траењето на кешот.'
|
|
187
237
|
field_access_limited: "%{actor} го прочита %{record} со овие полиња скриени
|
|
188
238
|
или маскирани: %{fields}."
|
|
239
|
+
permissions_invalidated_unconfirmed: 'Кешираните дозволи на %{person} требаше
|
|
240
|
+
да се исчистат, но складиштето за кеш не го потврди тоа: старите може да
|
|
241
|
+
останат во употреба додека не истече траењето на кешот.'
|
|
189
242
|
sentences:
|
|
190
243
|
access:
|
|
191
244
|
denied: На %{actor} му беше одбиен пристапот до %{record}.
|
|
@@ -210,6 +263,7 @@ mk:
|
|
|
210
263
|
viewed: "%{actor} прегледа ревизиски податоци."
|
|
211
264
|
cache:
|
|
212
265
|
cleared: "%{actor} ги исчисти кешираните дозволи на сите корисници."
|
|
266
|
+
settled: Кешираните дозволи на %{person} беа исчистени по промената од %{actor}.
|
|
213
267
|
cleanup:
|
|
214
268
|
expired_assignments: "%{actor} ги отстрани истечените доделувања."
|
|
215
269
|
consent:
|
|
@@ -222,6 +276,8 @@ mk:
|
|
|
222
276
|
access: "%{actor} го прочита %{record}."
|
|
223
277
|
sensitive_acknowledged: "%{actor} потврди дека полето %{record} во %{set}
|
|
224
278
|
треба да се чита без маска."
|
|
279
|
+
unmasked_without_user: Поле од %{model} беше прочитано без маска во веб-барање
|
|
280
|
+
кога никој не беше најавен.
|
|
225
281
|
group_membership:
|
|
226
282
|
added: "%{actor} го додаде %{person} во %{group}."
|
|
227
283
|
changed: "%{actor} го промени членството на %{person} во %{group}."
|
|
@@ -318,6 +374,9 @@ mk:
|
|
|
318
374
|
will_assign:
|
|
319
375
|
one: "%{count} ќе биде доделен"
|
|
320
376
|
other: "%{count} ќе бидат доделени"
|
|
377
|
+
denials:
|
|
378
|
+
no_read_access: Немате дозвола да ги читате записите на %{resource}.
|
|
379
|
+
rule_default: Немате дозвола да го извршите ова дејство.
|
|
321
380
|
errors:
|
|
322
381
|
admin:
|
|
323
382
|
action_format: Користете мали букви, бројки и долни црти, почнувајќи со буква
|
|
@@ -328,6 +387,10 @@ mk:
|
|
|
328
387
|
flag: Флеговите на сесија можат да содржат само букви, бројки, точки, две
|
|
329
388
|
точки, цртички и долни црти.
|
|
330
389
|
group_blank: Дајте ѝ име на групата.
|
|
390
|
+
hours_equal: Почетниот и крајниот час мора да се разликуваат (прозорец од
|
|
391
|
+
9 до 9 е празен).
|
|
392
|
+
hours_incomplete: Изберете го и почетниот и крајниот час.
|
|
393
|
+
hours_range: Изберете часови помеѓу 00:00 и 23:00.
|
|
331
394
|
ip: 'Ред %{line}: „%{ip}“ не е валидна IP адреса или CIDR опсег.'
|
|
332
395
|
person: Прво изберете корисник.
|
|
333
396
|
resource_model: Изберете модел од листата.
|
|
@@ -375,9 +438,40 @@ mk:
|
|
|
375
438
|
assigned:
|
|
376
439
|
one: "%{set} е доделен на %{count} корисник."
|
|
377
440
|
other: "%{set} е доделен на %{count} корисници."
|
|
441
|
+
assigned_cache_kept:
|
|
442
|
+
one: "%{set} е доделен на %{count} корисник, но складиштето за кеш не потврди
|
|
443
|
+
дека неговите кеширани дозволи се исчистени. Старите дозволи може да останат
|
|
444
|
+
во употреба додека не истече траењето на кешот."
|
|
445
|
+
other: "%{set} е доделен на %{count} корисници, но складиштето за кеш не
|
|
446
|
+
потврди дека нивните кеширани дозволи се исчистени. Старите дозволи може
|
|
447
|
+
да останат во употреба додека не истече траењето на кешот."
|
|
378
448
|
revoked:
|
|
379
449
|
one: "%{set} е одземен од %{count} корисник."
|
|
380
450
|
other: "%{set} е одземен од %{count} корисници."
|
|
451
|
+
revoked_cache_kept:
|
|
452
|
+
one: "%{set} е одземен од %{count} корисник, но складиштето за кеш не потврди
|
|
453
|
+
дека неговите кеширани дозволи се исчистени. Старите дозволи може да останат
|
|
454
|
+
во употреба додека не истече траењето на кешот."
|
|
455
|
+
other: "%{set} е одземен од %{count} корисници, но складиштето за кеш не
|
|
456
|
+
потврди дека нивните кеширани дозволи се исчистени. Старите дозволи може
|
|
457
|
+
да останат во употреба додека не истече траењето на кешот."
|
|
458
|
+
cache_not_confirmed: 'Складиштето за кеш не потврди дека кешираните дозволи
|
|
459
|
+
се исчистени: старите дозволи може да останат во употреба додека не истече
|
|
460
|
+
траењето на кешот.'
|
|
461
|
+
cache_process_local: 'Складиштето за кеш живее само во овој процес на серверот
|
|
462
|
+
(складиште во меморија): другите веб-работници и процесите за задачи ги задржуваат
|
|
463
|
+
своите кеширани дозволи додека не се рестартираат или додека записите не истечат.'
|
|
464
|
+
copy_refused:
|
|
465
|
+
kinds:
|
|
466
|
+
permission_set: сетот на дозволи „%{name}“
|
|
467
|
+
permission_set_group: Permission Set Group „%{name}“
|
|
468
|
+
permission_set_rule: правилото „%{name}“
|
|
469
|
+
record: еден ред
|
|
470
|
+
resource: Resource „%{name}“
|
|
471
|
+
resource_action: акцијата „%{name}“
|
|
472
|
+
resource_field: полето „%{name}“
|
|
473
|
+
message: "„%{name}“ не беше копиран: %{record} содржи нешто што нов ред не
|
|
474
|
+
може да го содржи (%{errors}). Поправете го, па копирајте повторно."
|
|
381
475
|
fields:
|
|
382
476
|
acknowledged: Во ред. „%{field}“ нема повторно да биде означено во ревизијата
|
|
383
477
|
на приватност.
|
|
@@ -391,6 +485,7 @@ mk:
|
|
|
391
485
|
set_added: "„%{set}“ е преместен во оваа група."
|
|
392
486
|
set_removed: "„%{set}“ е отстранет од оваа група."
|
|
393
487
|
updated: Групата е зачувана. Ничиј пристап не е променет.
|
|
488
|
+
invalid_param: "%{param} %{detail}. Ништо не е променето."
|
|
394
489
|
locked_widening: 'Овој сет на дозволи е заклучен: пристапот може да се отстрани
|
|
395
490
|
или скрати, но не и да се даде или продолжи.'
|
|
396
491
|
locked_widening_muting: 'Овој пригушувачки сет на дозволи е заклучен: носителите
|
|
@@ -400,7 +495,17 @@ mk:
|
|
|
400
495
|
cleaned:
|
|
401
496
|
one: Отстрането е %{count} истечено доделување.
|
|
402
497
|
other: Отстранети се %{count} истечени доделувања.
|
|
498
|
+
cleaned_cache_kept:
|
|
499
|
+
one: Отстрането е %{count} истечено доделување, но складиштето за кеш не
|
|
500
|
+
потврди дека кешираните дозволи на засегнатите лица се исчистени. Старите
|
|
501
|
+
дозволи може да останат во употреба додека не истече траењето на кешот.
|
|
502
|
+
other: Отстранети се %{count} истечени доделувања, но складиштето за кеш
|
|
503
|
+
не потврди дека кешираните дозволи на засегнатите лица се исчистени. Старите
|
|
504
|
+
дозволи може да останат во употреба додека не истече траењето на кешот.
|
|
505
|
+
no_changes: Нема промени за зачувување.
|
|
403
506
|
not_editable: Овој запис не може да се уредува.
|
|
507
|
+
not_null: Недостасуваше задолжителна вредност. Ништо не е променето; страницата
|
|
508
|
+
го покажува она што е сега.
|
|
404
509
|
people:
|
|
405
510
|
cache_refresh_failed: Кешираните дозволи на %{name} не можеше да се освежат.
|
|
406
511
|
Складиштето за кеш не го потврди тоа, па старите дозволи може да останат
|
|
@@ -444,23 +549,33 @@ mk:
|
|
|
444
549
|
duplicated_outside_group: 'Дуплирано е „%{name}“: ресурсите, полињата, акциите
|
|
445
550
|
и правилата се копирани. Доделувањата не се. Копијата не е во „%{group}“,
|
|
446
551
|
која е заклучена.'
|
|
447
|
-
|
|
552
|
+
nothing_applied: 'Нема што да се зачува: %{reasons}.'
|
|
448
553
|
save_failed: 'Ништо не е зачувано: %{errors}'
|
|
449
554
|
saved:
|
|
450
555
|
one: Зачувана е %{count} промена. Сега важи за %{people}.
|
|
451
556
|
other: Зачувани се %{count} промени. Сега важат за %{people}.
|
|
452
557
|
switched_granting: "„%{name}“ сега дава пристап."
|
|
453
558
|
switched_muting: "„%{name}“ сега е пригушувачки сет на дозволи."
|
|
559
|
+
record_not_unique: Друго барање го зачува истото пред еден момент. Ништо не
|
|
560
|
+
е променето; страницата покажува што има сега.
|
|
561
|
+
record_not_unique_detail: "%{detail} — друго барање го зачува пред еден момент.
|
|
562
|
+
Ништо не е променето; страницата покажува што има сега."
|
|
454
563
|
resources:
|
|
455
564
|
added:
|
|
456
565
|
one: Додаден е %{resource} со %{count} поле.
|
|
457
566
|
other: Додаден е %{resource} со %{count} полиња.
|
|
567
|
+
added_muting: Додаден е %{resource}. Одзема %{what}.
|
|
568
|
+
added_muting_nothing: 'Додаден е %{resource}. Сè уште не одзема ништо: изберете
|
|
569
|
+
подолу што одзема.'
|
|
458
570
|
columns_added:
|
|
459
571
|
one: Додадена е %{count} колона.
|
|
460
572
|
other: Додадени се %{count} колони.
|
|
461
573
|
missing_removed:
|
|
462
574
|
one: Отстрането е %{count} поле чија колона веќе не постои.
|
|
463
575
|
other: Отстранети се %{count} полиња чии колони веќе не постојат.
|
|
576
|
+
muted_fields:
|
|
577
|
+
one: "%{count} поле"
|
|
578
|
+
other: "%{count} полиња"
|
|
464
579
|
removed: "%{resource} е отстранет од „%{set}“."
|
|
465
580
|
rules:
|
|
466
581
|
created: Додадено е правилото „%{rule}“.
|
|
@@ -477,6 +592,29 @@ mk:
|
|
|
477
592
|
'off': Бележењето е исклучено во иницијализаторот (audit_events = false).
|
|
478
593
|
Ниедна промена не се бележи.
|
|
479
594
|
title: Ревизискиот дневник не бележи
|
|
595
|
+
broken_rules_card:
|
|
596
|
+
description: 'Овие правила за записи именуваат поле, табела, врска или услов
|
|
597
|
+
што не постои, или вредност што нивното поле не може да ја содржи. Секое
|
|
598
|
+
од нив не се совпаѓа со ништо: на секој на кого се однесува му е одбиен
|
|
599
|
+
секој запис на ресурсот.'
|
|
600
|
+
fix: Поправи го правилото
|
|
601
|
+
locked_fix_html: 'Заклучено (%{flag}): управувано е од системот или API што
|
|
602
|
+
го создал, па поправете го правилото таму (или отклучете го сетот во кодот).
|
|
603
|
+
Копија направена тука го остава ова правило какво што е.'
|
|
604
|
+
open: Отвори правила
|
|
605
|
+
people:
|
|
606
|
+
one: "%{count} корисник го има овој сет."
|
|
607
|
+
other: "%{count} корисници го имаат овој сет."
|
|
608
|
+
rule: "„%{rule}“ на %{resource} во „%{set}“"
|
|
609
|
+
title: Правила што не се совпаѓаат со ништо
|
|
610
|
+
conditions_card:
|
|
611
|
+
description: Овие сетови имаат услов што не може да се процени (IP што не
|
|
612
|
+
е адреса, ниту една ставка или расипан временски прозорец).
|
|
613
|
+
open: Поправи ги условите
|
|
614
|
+
people:
|
|
615
|
+
one: "%{count} корисник го има овој сет."
|
|
616
|
+
other: "%{count} корисници го имаат овој сет."
|
|
617
|
+
title: Услови за активирање што никој не може да ги процени
|
|
480
618
|
ending_card:
|
|
481
619
|
description: Доделувања што завршуваат во следните 7 дена.
|
|
482
620
|
extend: Продолжи за 30 дена
|
|
@@ -522,8 +660,9 @@ mk:
|
|
|
522
660
|
people:
|
|
523
661
|
one: "%{count} корисник има"
|
|
524
662
|
other: "%{count} корисници имаат"
|
|
525
|
-
|
|
526
|
-
|
|
663
|
+
search_help: Пребарајте корисник по име или е-пошта за да видите до што има
|
|
664
|
+
пристап и зошто
|
|
665
|
+
search_placeholder: Име или е-пошта
|
|
527
666
|
sets:
|
|
528
667
|
one: "%{count} активен сет на дозволи"
|
|
529
668
|
other: "%{count} активни сетови на дозволи"
|
|
@@ -532,10 +671,24 @@ mk:
|
|
|
532
671
|
one: "%{count} работа за преглед"
|
|
533
672
|
other: "%{count} работи за преглед"
|
|
534
673
|
title: Бара внимание
|
|
674
|
+
mask_strategies_card:
|
|
675
|
+
description: Ниту една вградена ниту прилагодена стратегија за маскирање нема
|
|
676
|
+
вакви имиња, па нивните вредности се маскираат целосно додека не изберете
|
|
677
|
+
стратегија или не ја вратите прилагодената.
|
|
678
|
+
field: "„%{field}“ на %{resource} во „%{set}“"
|
|
679
|
+
fix: Поправи го полето
|
|
680
|
+
people:
|
|
681
|
+
one: "%{count} корисник го има овој сет."
|
|
682
|
+
other: "%{count} корисници го имаат овој сет."
|
|
683
|
+
strategy_html: Стратегија %{strategy}
|
|
684
|
+
title: Полиња маскирани со непозната стратегија
|
|
535
685
|
privacy_card:
|
|
686
|
+
by_name_note: Полињата се означуваат според името на колоната, па некои можеби
|
|
687
|
+
не се лични податоци (на пр. името на компанија).
|
|
536
688
|
description: "%{unmasked}, %{unconfigured}."
|
|
537
689
|
fix: Поправи
|
|
538
690
|
intended: Ова е намерно
|
|
691
|
+
intended_note: Ако полето може да се гледа без маска, изберете Ова е намерно.
|
|
539
692
|
per_set_note: Секој ред гледа еден сет на дозволи сам за себе. Корисник што
|
|
540
693
|
има и друг сет што го конфигурира полето го следи тој сет.
|
|
541
694
|
show_all: Прикажи ги сите %{count}
|
|
@@ -549,6 +702,7 @@ mk:
|
|
|
549
702
|
unmasked:
|
|
550
703
|
one: "%{count} чувствително поле се прикажува немаскирано"
|
|
551
704
|
other: "%{count} чувствителни полиња се прикажуваат немаскирани"
|
|
705
|
+
view: Прегледај поле
|
|
552
706
|
where: "%{resource} · Читливо немаскирано во „%{set}“ · %{people}"
|
|
553
707
|
where_turned_off: "%{resource} · Поставката во „%{set}“ е исклучена, па полето
|
|
554
708
|
се прикажува немаскирано · %{people}"
|
|
@@ -564,8 +718,8 @@ mk:
|
|
|
564
718
|
find_by или permission_scoped.
|
|
565
719
|
open: Отвори правила
|
|
566
720
|
people:
|
|
567
|
-
one: "%{count}
|
|
568
|
-
other: "%{count}
|
|
721
|
+
one: "%{count} корисник го има овој сет."
|
|
722
|
+
other: "%{count} корисници го имаат овој сет."
|
|
569
723
|
rules:
|
|
570
724
|
one: "%{count} правило за %{resource} во „%{name}“"
|
|
571
725
|
other: "%{count} правила за %{resource} во „%{name}“"
|
|
@@ -573,6 +727,18 @@ mk:
|
|
|
573
727
|
важат само каде апликацијата користи find_by или permission_scoped. Другите
|
|
574
728
|
барања (where, all, релации) ги враќаат сите записи.
|
|
575
729
|
title: Правила за записи што не се применуваат насекаде
|
|
730
|
+
secret_rules_card:
|
|
731
|
+
column_html: Споредува %{column}
|
|
732
|
+
description: Овие правила за записи споредуваат колона што чува тајна. Сè
|
|
733
|
+
уште важат, но тоа кој запис кој корисник го гледа ја открива тајната. Споредете
|
|
734
|
+
друга колона или отстранете го правилото.
|
|
735
|
+
fix: Поправи го правилото
|
|
736
|
+
open: Отвори правила
|
|
737
|
+
people:
|
|
738
|
+
one: "%{count} корисник го има овој сет."
|
|
739
|
+
other: "%{count} корисници го имаат овој сет."
|
|
740
|
+
rule: "„%{rule}“ на %{resource} во „%{set}“"
|
|
741
|
+
title: Правила на тајни колони
|
|
576
742
|
stale_card:
|
|
577
743
|
assigned: Доделено на %{date} од %{by}
|
|
578
744
|
description: Не се прегледани повеќе од %{days} дена. Потврдете дека на овие
|
|
@@ -670,21 +836,20 @@ mk:
|
|
|
670
836
|
one: " и уште %{count}"
|
|
671
837
|
other: " и уште %{count}"
|
|
672
838
|
from: од %{set}
|
|
839
|
+
masked_by: Маскирано од %{set}
|
|
673
840
|
muted_by: Скриено од %{set}
|
|
674
841
|
none: Ниеден сет не го прикажува
|
|
675
|
-
|
|
842
|
+
read_only_by: Ограничено на Само читање од %{set}
|
|
843
|
+
unconfigured: "%{state} · %{behaviour}"
|
|
676
844
|
virtual: Виртуелно поле, читливо по основно
|
|
677
845
|
effective_tab:
|
|
678
846
|
conditional: "%{sets} важат само додека нивните услови за активирање се исполнети.
|
|
679
847
|
Тука се вклучени."
|
|
680
848
|
fields_visible: "%{visible} од %{total} полиња се видливи"
|
|
681
849
|
grid_label: Ефективен пристап
|
|
682
|
-
hidden_by_muting: Скриено со пригушување
|
|
683
850
|
intro: Што може %{name} да прави во моментов, со сите сетови заедно. Изберете
|
|
684
851
|
која било ќелија за да видите зошто.
|
|
685
852
|
legend: Легенда
|
|
686
|
-
legend_muted: Пригушено
|
|
687
|
-
legend_none: Не е дадено
|
|
688
853
|
why: Зошто
|
|
689
854
|
why_empty: Изберете ќелија, поле или акција за да видите кој сет на дозволи
|
|
690
855
|
го предизвикал тоа.
|
|
@@ -693,11 +858,17 @@ mk:
|
|
|
693
858
|
action_granted: "%{set} ја дозволува оваа акција."
|
|
694
859
|
action_muted: "%{set} ја блокира оваа акција."
|
|
695
860
|
action_none: Ниеден сет на дозволи не ја дозволува оваа акција.
|
|
861
|
+
action_title: "%{action} · %{resource}"
|
|
862
|
+
field_base_unreadable: 'Скриено: наследува од %{resource}, каде Читање не
|
|
863
|
+
е дозволено.'
|
|
696
864
|
field_capped: Се прикажува како Само читање бидејќи Уредување не е дозволено
|
|
697
865
|
на овој ресурс.
|
|
698
|
-
|
|
699
|
-
|
|
866
|
+
field_decided_by: 'Одлучено од %{resource}, од кој наследува: победува најстрогата
|
|
867
|
+
поставка по наследувањето.'
|
|
868
|
+
field_hidden_on: Скриено на %{resource}, од кој наследува.
|
|
700
869
|
field_none: Ниеден сет на дозволи не го прикажува ова поле.
|
|
870
|
+
field_own_unreadable: Скриено бидејќи Читање не е дозволено на овој ресурс.
|
|
871
|
+
field_title: "%{resource} › %{field}"
|
|
701
872
|
field_unconfigured: 'Ниеден сет не ја конфигурира оваа колона: %{behaviour}.'
|
|
702
873
|
field_variant: Ја следи поставката на %{base}.
|
|
703
874
|
field_virtual: Виртуелно поле од моделот, читливо освен ако некој сет не го
|
|
@@ -705,6 +876,7 @@ mk:
|
|
|
705
876
|
flag_granted: "%{set} дава %{flag}."
|
|
706
877
|
flag_muted: "%{set} го пригушува %{flag}."
|
|
707
878
|
flag_none: Ниеден сет на дозволи не дава %{flag}.
|
|
879
|
+
flag_title: "%{flag} %{resource}"
|
|
708
880
|
no_rules: Нема правила за записи, па се прикажува секој запис.
|
|
709
881
|
note_add_up: 'Сетовите на дозволи се собираат: доволно е едно доделување.'
|
|
710
882
|
note_fields: Ако повеќе сетови прикажуваат едно поле, победува најотворената
|
|
@@ -770,7 +942,10 @@ mk:
|
|
|
770
942
|
закупец и го чисти името од ревизискиот дневник.
|
|
771
943
|
title: Бришење на податоци за субјектот…
|
|
772
944
|
refresh:
|
|
773
|
-
desc: '
|
|
945
|
+
desc: 'Потребно по промена од конзола, runner или задача во позадина кога
|
|
946
|
+
кешот е по процес (memory store): тој процес ги избриша само своите
|
|
947
|
+
записи, па овој веб-процес продолжува да ги дава старите дозволи додека
|
|
948
|
+
не истечат.'
|
|
774
949
|
title: Освежи кеширани дозволи
|
|
775
950
|
remove_all:
|
|
776
951
|
desc: 'При заминување: го отстранува секое доделување.'
|
|
@@ -844,10 +1019,12 @@ mk:
|
|
|
844
1019
|
field: Изберете поле за проверка.
|
|
845
1020
|
list: Додадете барем една вредност во листата.
|
|
846
1021
|
name_blank: Дајте му име на правилото.
|
|
1022
|
+
operator: Изберете услов од листата.
|
|
847
1023
|
range: Внесете ги двата краја на опсегот.
|
|
848
1024
|
value: Внесете вредност или изберете „тековниот корисник“.
|
|
849
1025
|
field: Поле за проверка
|
|
850
1026
|
follow: Следи врска
|
|
1027
|
+
ignored_field: без ред за поле (ignored_fields)
|
|
851
1028
|
ignored_warning: Прикажи ги сите е вклучено за овој ресурс, па правилата за
|
|
852
1029
|
записи се игнорираат додека не се исклучи.
|
|
853
1030
|
include_nulls: Прикажи ги и записите каде %{field} е празно
|
|
@@ -864,19 +1041,36 @@ mk:
|
|
|
864
1041
|
desc: Записите без поврзаниот запис се задржуваат.
|
|
865
1042
|
title: И записи без него
|
|
866
1043
|
message: Порака при блокирање
|
|
867
|
-
|
|
868
|
-
|
|
1044
|
+
message_help: Се прикажува кога некој отвора запис што ова правило го скрива.
|
|
1045
|
+
model_error: "%{field} %{message}"
|
|
869
1046
|
model_missing: Овој модел или врска веќе не постои во апликацијата.
|
|
870
1047
|
name: Име на правилото
|
|
871
1048
|
name_placeholder: пр. Сопствени клиенти
|
|
1049
|
+
notes:
|
|
1050
|
+
secret_column:
|
|
1051
|
+
body_html: "%{column} чува тајна, па ново правило на неа се одбива. Ова
|
|
1052
|
+
правило сè уште важи, но тоа кој запис кој корисник го гледа ја открива
|
|
1053
|
+
тајната: споредете друга колона или отстранете го правилото."
|
|
1054
|
+
title: Ова правило споредува колона што чува тајна
|
|
872
1055
|
operator: Услов
|
|
873
1056
|
optional: опционално
|
|
1057
|
+
path_html: 'Патека на врски: %{path}'
|
|
874
1058
|
pick_field: Изберете поле…
|
|
1059
|
+
pick_relationship: Изберете врска…
|
|
875
1060
|
preview: Преглед
|
|
876
1061
|
preview_empty: Изберете поле за да го видите правилото како реченица.
|
|
1062
|
+
preview_refused: Нема да се зачува
|
|
1063
|
+
problem_fixes:
|
|
1064
|
+
field: Изберете го полето повторно за да го поправите.
|
|
1065
|
+
join: Изберете повторно начин на комбинирање, под Напредно, за да го поправите.
|
|
1066
|
+
operator: Изберете го условот повторно за да го поправите.
|
|
1067
|
+
path: Изберете ја врската повторно за да ја поправите.
|
|
1068
|
+
value: Внесете вредност што ова поле може да ја содржи за да го поправите.
|
|
1069
|
+
problem_title: Ова правило не се совпаѓа со ништо
|
|
877
1070
|
relationship: Врска
|
|
878
1071
|
remove_step: Отстрани го овој чекор на врската
|
|
879
1072
|
save: Зачувај правило
|
|
1073
|
+
stored_field: "%{name} (како што е зачувано)"
|
|
880
1074
|
this_field: ова поле
|
|
881
1075
|
update_form: Ажурирај
|
|
882
1076
|
confirm_destroy:
|
|
@@ -887,6 +1081,9 @@ mk:
|
|
|
887
1081
|
title: Уреди правило за %{resource}
|
|
888
1082
|
new:
|
|
889
1083
|
title: Ново правило за %{resource}
|
|
1084
|
+
preview:
|
|
1085
|
+
back: Назад кон правилата
|
|
1086
|
+
title: Преглед на правило за %{resource}
|
|
890
1087
|
value_input:
|
|
891
1088
|
from: Од
|
|
892
1089
|
no_value: Не е потребна вредност за овој услов.
|
|
@@ -988,7 +1185,7 @@ mk:
|
|
|
988
1185
|
copy_name: "%{name} (копија)"
|
|
989
1186
|
header:
|
|
990
1187
|
description: Опис
|
|
991
|
-
description_placeholder: Додадете
|
|
1188
|
+
description_placeholder: 'Додадете опис: кога се користи'
|
|
992
1189
|
group: Група
|
|
993
1190
|
name: Име
|
|
994
1191
|
index:
|
|
@@ -1072,6 +1269,7 @@ mk:
|
|
|
1072
1269
|
body_nobody: Сè уште никој го нема овој сет, па зачувувањето не влијае на
|
|
1073
1270
|
никого додека не го доделите.
|
|
1074
1271
|
crumb: Преглед
|
|
1272
|
+
not_applied: 'Не е применето:'
|
|
1075
1273
|
save: Зачувај промени
|
|
1076
1274
|
title:
|
|
1077
1275
|
one: Прегледај %{count} промена
|
|
@@ -1128,10 +1326,14 @@ mk:
|
|
|
1128
1326
|
овој ресурс, или внесете клуч што го проверува вашиот код.
|
|
1129
1327
|
permitted: Дозволено
|
|
1130
1328
|
managed_note:
|
|
1131
|
-
|
|
1132
|
-
чии сетови на дозволи ја дозволуваат можат да ја извршат. Сите
|
|
1133
|
-
одбиваат.
|
|
1134
|
-
|
|
1329
|
+
body_allowed: Штом еден активен сет на дозволи има ред за некоја акција, само
|
|
1330
|
+
корисниците чии сетови на дозволи ја дозволуваат можат да ја извршат. Сите
|
|
1331
|
+
други се одбиваат.
|
|
1332
|
+
body_blocked: Додека ниеден активен сет на дозволи нема ред за некоја акција,
|
|
1333
|
+
никој не може да ја изврши. Штом некој има, можат да ја извршат корисниците
|
|
1334
|
+
чии сетови на дозволи ја дозволуваат; сите други и понатаму се одбиваат.
|
|
1335
|
+
title_allowed: Додавањето акција ја прави управувана за сите
|
|
1336
|
+
title_blocked: Додавањето акција ја отвора за корисниците на кои им е дозволена
|
|
1135
1337
|
unmanaged_allowed: Акција со која не управува ниеден сет на дозволи може да
|
|
1136
1338
|
ја изврши секој.
|
|
1137
1339
|
unmanaged_blocked: Акција со која не управува ниеден сет на дозволи е блокирана
|
|
@@ -1157,9 +1359,17 @@ mk:
|
|
|
1157
1359
|
овој ресурс.
|
|
1158
1360
|
full_picture: Види сè до што %{name} има пристап →
|
|
1159
1361
|
granted: "%{name} го гледа преку %{sets}."
|
|
1160
|
-
|
|
1362
|
+
hidden_by:
|
|
1363
|
+
one: "%{name} не го гледа: %{sets} го скрива."
|
|
1364
|
+
other: "%{name} не го гледа: %{sets} го скриваат."
|
|
1365
|
+
masked_by:
|
|
1366
|
+
one: "%{name} го гледа маскирано: %{sets} го маскира."
|
|
1367
|
+
other: "%{name} го гледа маскирано: %{sets} го маскираат."
|
|
1161
1368
|
no_access: "%{name} не може да чита %{resources}."
|
|
1162
1369
|
none: Ниеден сет не го прикажува ова поле на %{name}.
|
|
1370
|
+
read_only_by:
|
|
1371
|
+
one: "%{name} не може да го уредува: %{sets} ја одзема можноста за уредување."
|
|
1372
|
+
other: "%{name} не може да го уредува: %{sets} ја одземаат можноста за уредување."
|
|
1163
1373
|
unconfigured: Ниеден сет не ја конфигурира оваа колона, па поставката за неконфигурирани
|
|
1164
1374
|
полиња одлучува за %{name}.
|
|
1165
1375
|
virtual_default: "%{name} го добива ова виртуелно поле по основно, читливо
|
|
@@ -1180,6 +1390,7 @@ mk:
|
|
|
1180
1390
|
flags_muting_note: Во пригушувачките сетови овие флегови значат „отстрани“.
|
|
1181
1391
|
impact: Со зачувување, ова веднаш важи за %{people}.
|
|
1182
1392
|
label: Ознака
|
|
1393
|
+
locked_impact: Заклучено, па ништо овде не може да се зачува.
|
|
1183
1394
|
mask_strategy: Стратегија за маскирање
|
|
1184
1395
|
muting_note: Ова е пригушувачки сет на дозволи. Изборите тука одземаат пристап.
|
|
1185
1396
|
no_rules: Ниедно правило во овој сет не филтрира по ова поле.
|
|
@@ -1188,15 +1399,20 @@ mk:
|
|
|
1188
1399
|
not_configured_implicit: 'Нема поставка за ова поле во „%{set}“. Ја следи
|
|
1189
1400
|
поставката „Виртуелни полиња без поставка“: со тековната конфигурација е
|
|
1190
1401
|
читливо и уредливо по основно.'
|
|
1402
|
+
not_configured_muting: Нема поставка за оваа колона во „%{set}“, па овој пригушувачки
|
|
1403
|
+
сет на дозволи не одзема ништо од неа.
|
|
1191
1404
|
pick_person: Изберете корисник…
|
|
1192
1405
|
save: Зачувај
|
|
1193
|
-
sensitive: 'Одговара на шаблонот за приватност „%{pattern}
|
|
1194
|
-
Маскирано (%{strategy}).'
|
|
1406
|
+
sensitive: 'Одговара на шаблонот за приватност „%{pattern}“, па можеби е личен
|
|
1407
|
+
податок. Препорачано: Маскирано (%{strategy}).'
|
|
1195
1408
|
turned_off: 'Поставката за ова поле во „%{set}“ е исклучена, па не се применува.
|
|
1196
1409
|
Со тековната конфигурација полето е: %{behaviour}.'
|
|
1197
1410
|
turned_off_implicit: 'Поставката за ова поле во „%{set}“ е исклучена, па не
|
|
1198
1411
|
се применува. Полето ја следи поставката „Виртуелни полиња без поставка“:
|
|
1199
1412
|
со тековната конфигурација е читливо и уредливо по основно.'
|
|
1413
|
+
turned_off_muting: Поставката за ова поле во „%{set}“ е исклучена, па овој
|
|
1414
|
+
пригушувачки сет на дозволи не одзема ништо од него.
|
|
1415
|
+
unknown_strategy: "(непозната — целосно маскирано додека не изберете една)"
|
|
1200
1416
|
used_by_rules: Се користи во правила
|
|
1201
1417
|
variants: 'Важи и за:'
|
|
1202
1418
|
variants_muting: 'Пригушувањето на ова ги пригушува и:'
|
|
@@ -1247,20 +1463,12 @@ mk:
|
|
|
1247
1463
|
filter_label: Филтрирај полиња
|
|
1248
1464
|
filters:
|
|
1249
1465
|
all: Сите
|
|
1250
|
-
edit: Може да се уредува
|
|
1251
|
-
hidden: Скриено
|
|
1252
|
-
hide: Скриено
|
|
1253
|
-
leave: Непроменето
|
|
1254
|
-
mask: Присилно маскирање
|
|
1255
|
-
masked: Маскирано
|
|
1256
|
-
read: Само читање
|
|
1257
|
-
sensitive: Чувствително
|
|
1258
|
-
unconfigured: Не е конфигурирано
|
|
1259
1466
|
implicit_grant: Уредливо по основно
|
|
1260
1467
|
level: Ниво на пристап
|
|
1261
1468
|
level_aria: Ниво на пристап за %{field}
|
|
1469
|
+
mutes_nothing: Не одзема ништо
|
|
1262
1470
|
no_match: Ниедно поле не одговара.
|
|
1263
|
-
not_configured:
|
|
1471
|
+
not_configured: "%{state} · %{behaviour}"
|
|
1264
1472
|
read_off: Вклучете Читање за %{resource} за да изберете кои полиња ги гледаат
|
|
1265
1473
|
корисниците.
|
|
1266
1474
|
search: Пребарај полиња
|
|
@@ -1282,15 +1490,17 @@ mk:
|
|
|
1282
1490
|
models: Модели
|
|
1283
1491
|
no_models: Ниеден модел не одговара.
|
|
1284
1492
|
note: Полињата ќе бидат креирани од колоните и виртуелните полиња на моделот.
|
|
1285
|
-
note_gdpr: Полињата ќе бидат креирани од колоните и виртуелните полиња на
|
|
1493
|
+
note_gdpr: 'Полињата ќе бидат креирани од колоните и виртуелните полиња на
|
|
1286
1494
|
моделот. Стандардите за приватност се вклучени, па чувствителните колони
|
|
1287
|
-
почнуваат како
|
|
1495
|
+
почнуваат како Маскирано, освен со Целосен пристап: тогаш само се означуваат
|
|
1496
|
+
како чувствителни, за вие да ги маскирате.'
|
|
1288
1497
|
presets:
|
|
1289
1498
|
block_changes:
|
|
1290
1499
|
desc: Ги пригушува Креирање, Уредување, Бришење и секоја акција.
|
|
1291
1500
|
title: Блокирај ги сите промени
|
|
1292
1501
|
full:
|
|
1293
|
-
desc: Читање, креирање, уредување и бришење. Сите полиња може да се
|
|
1502
|
+
desc: Читање, креирање, уредување и бришење. Сите полиња може да се уредуваат,
|
|
1503
|
+
ниедно не е маскирано.
|
|
1294
1504
|
title: Целосен пристап
|
|
1295
1505
|
hide_sensitive:
|
|
1296
1506
|
desc: Ја скрива секоја колона што личи на лични податоци.
|
|
@@ -1316,7 +1526,7 @@ mk:
|
|
|
1316
1526
|
all_queries: важи за сите барања
|
|
1317
1527
|
blocked_message: 'Порака при блокирање: „%{message}“'
|
|
1318
1528
|
empty: 'Сè уште нема правила, па записите не се ограничени: секој со овој
|
|
1319
|
-
сет ги гледа сите %{
|
|
1529
|
+
сет ги гледа сите записи од %{resource} што може да ги чита.'
|
|
1320
1530
|
empty_muting: Пригушувачките сетови на дозволи не додаваат правила за записи.
|
|
1321
1531
|
empty_view_all: Нема правила. Прикажи ги сите е вклучено, па секој запис е
|
|
1322
1532
|
вклучен во секој случај.
|
|
@@ -1352,7 +1562,7 @@ mk:
|
|
|
1352
1562
|
modify_all_needs: Бара Прикажи ги сите и Уредување.
|
|
1353
1563
|
muting_hint: Пригушените акции им се одземаат на корисниците со овој сет,
|
|
1354
1564
|
без оглед на тоа што дозволуваат другите сетови.
|
|
1355
|
-
muting_note: Поставките тука им одземаат пристап на
|
|
1565
|
+
muting_note: Поставките тука им одземаат пристап на сите што го имаат „%{set}“.
|
|
1356
1566
|
needs_read_hint: Уредување и Бришење бараат Читање.
|
|
1357
1567
|
record_scope: Опсег на записи
|
|
1358
1568
|
remove: Отстрани %{resource} од овој сет…
|
|
@@ -1374,7 +1584,8 @@ mk:
|
|
|
1374
1584
|
read: Додај ги сите нови како Само читање
|
|
1375
1585
|
gdpr_off: Стандардите за приватност се исклучени.
|
|
1376
1586
|
gdpr_on: 'Стандардите за приватност се вклучени: чувствителните колони се
|
|
1377
|
-
додаваат како
|
|
1587
|
+
додаваат како Маскирано, освен со целосен пристап (тогаш само се означуваат
|
|
1588
|
+
како чувствителни).'
|
|
1378
1589
|
ignored_count:
|
|
1379
1590
|
one: "%{count} се игнорира"
|
|
1380
1591
|
other: "%{count} се игнорираат"
|
|
@@ -1387,6 +1598,9 @@ mk:
|
|
|
1387
1598
|
new_count:
|
|
1388
1599
|
one: "%{count} нова колона не е конфигурирана"
|
|
1389
1600
|
other: "%{count} нови колони не се конфигурирани"
|
|
1601
|
+
new_count_muting:
|
|
1602
|
+
one: "%{count} колона без поставка, па не одзема ништо"
|
|
1603
|
+
other: "%{count} колони без поставка, па не одземаат ништо"
|
|
1390
1604
|
new_title: Нови колони, неконфигурирани
|
|
1391
1605
|
none: Нема
|
|
1392
1606
|
remove_missing: Отстрани ги полињата што недостасуваат
|
|
@@ -1470,6 +1684,9 @@ mk:
|
|
|
1470
1684
|
api_serializer_overrides:
|
|
1471
1685
|
desc: Замени за тоа како записите се запишуваат во API одговорите.
|
|
1472
1686
|
name: Прилагодени серијализатори
|
|
1687
|
+
api_stats_authorization:
|
|
1688
|
+
desc: Одлучува кој може да ја чита статистиката за користење преку API.
|
|
1689
|
+
name: Проверка на API статистиката
|
|
1473
1690
|
api_stats_require_admin:
|
|
1474
1691
|
desc: Само администраторите можат да ја читаат статистиката за користење
|
|
1475
1692
|
преку API.
|
|
@@ -1590,7 +1807,8 @@ mk:
|
|
|
1590
1807
|
да не се прикажуваат во дневниците.
|
|
1591
1808
|
name: Филтрирај чувствителни вредности од дневниците
|
|
1592
1809
|
gdpr_defaults:
|
|
1593
|
-
desc: Колоните што изгледаат лични се маскираат по основно кога се
|
|
1810
|
+
desc: Колоните што изгледаат лични се маскираат по основно кога се додаваат,
|
|
1811
|
+
освен кога се додаваат со целосен пристап.
|
|
1594
1812
|
name: Стандарди за приватност
|
|
1595
1813
|
gdpr_field_patterns:
|
|
1596
1814
|
desc: Имињата на колони што одговараат на шаблон се означуваат како чувствителни
|
|
@@ -1622,9 +1840,13 @@ mk:
|
|
|
1622
1840
|
код ги чита од моделот.
|
|
1623
1841
|
name: Маскирај виртуелни полиња на моделите
|
|
1624
1842
|
masked_attributes_nil_user_strategy:
|
|
1625
|
-
desc: '
|
|
1626
|
-
|
|
1627
|
-
|
|
1843
|
+
desc: 'Што враќаат маскираните модели кога нема тековен корисник. bypass:
|
|
1844
|
+
зачуваните вредности секаде (секое читање во веб-барање се запишува во
|
|
1845
|
+
логот и се објавува како настан за ревизија). hide_in_requests: скриени
|
|
1846
|
+
вредности во веб-барања (јавна страница, контролер што заборавил најава),
|
|
1847
|
+
зачуваните вредности во задачи во позадина, rake-задачи и конзолата. hide:
|
|
1848
|
+
скриени вредности секаде. Моделот на корисникот останува читлив: најавувањето
|
|
1849
|
+
го чита пред некој да е најавен.'
|
|
1628
1850
|
name: Маскирани атрибути кога никој не е најавен
|
|
1629
1851
|
masked_write_protection:
|
|
1630
1852
|
desc: Спречува маскирана вредност како „•••• 4821“ да се зачува врз вистинската.
|
|
@@ -1633,6 +1855,11 @@ mk:
|
|
|
1633
1855
|
desc: Дали правилата се прескокнуваат, сè се одбива, или се јавува грешка
|
|
1634
1856
|
кога нема тековен корисник.
|
|
1635
1857
|
name: Правила за записи кога никој не е најавен
|
|
1858
|
+
no_read_access_strategy:
|
|
1859
|
+
desc: 'Што враќаат пребарувањата на записи за најавен корисник чии сетови
|
|
1860
|
+
на дозволи не даваат Читање на ресурсот: редовите што ги дозволуваат правилата
|
|
1861
|
+
за записи (без правило, секој ред), или ниеден.'
|
|
1862
|
+
name: Записи без пристап за читање
|
|
1636
1863
|
omit_hidden_in_attributes_hash:
|
|
1637
1864
|
desc: Скриените полиња се отстрануваат од хеш-мапите на атрибути наместо
|
|
1638
1865
|
да се постават како празни.
|
|
@@ -1670,6 +1897,11 @@ mk:
|
|
|
1670
1897
|
rls_session_variable:
|
|
1671
1898
|
desc: Име на променливата што ѝ кажува на базата кој е тековниот корисник.
|
|
1672
1899
|
name: Променлива на сесија во базата
|
|
1900
|
+
rule_secret_column_patterns:
|
|
1901
|
+
desc: Правилата за записи не смеат да споредуваат колони што одговараат
|
|
1902
|
+
на овие шаблони (хешеви на лозинки, токени, колони encrypted_*). Празна
|
|
1903
|
+
листа ги дозволува.
|
|
1904
|
+
name: Шаблони за тајни колони
|
|
1673
1905
|
snapshot_transactions:
|
|
1674
1906
|
desc: 'Дали една трансакција во базата продолжува да ги гледа податоците
|
|
1675
1907
|
како што биле кога започнала. Дозволите пресметани во таква трансакција
|
|
@@ -1745,9 +1977,12 @@ mk:
|
|
|
1745
1977
|
gdpr_defaults: Новите чувствителни колони почнуваат маскирани.
|
|
1746
1978
|
http_basic_auth_enabled: Пристапот до овие екрани е заштитен.
|
|
1747
1979
|
masked_attributes_nil_user_strategy: Маскираните модели ги кријат вредностите
|
|
1748
|
-
кога никој не е
|
|
1980
|
+
кога никој не е најавен, барем во веб-барања (моделот на корисникот останува
|
|
1981
|
+
читлив за најавување).
|
|
1749
1982
|
masked_write_protection: Маскираните вредности никогаш не се запишуваат назад.
|
|
1750
1983
|
nil_user_strategy: Кодот без најавен корисник не гледа записи.
|
|
1984
|
+
no_read_access_strategy: Најавените корисници без Читање на ресурс не гледаат
|
|
1985
|
+
ниту еден негов запис.
|
|
1751
1986
|
preset: Однапред поставените вредности :strict ги затвораат поставувањата
|
|
1752
1987
|
што стандардно оставаат отворен пристап.
|
|
1753
1988
|
unconfigured_action_strategy: Акциите на контролери што никој не ги конфигурирал
|
|
@@ -1761,25 +1996,31 @@ mk:
|
|
|
1761
1996
|
или ревизиската табела недостасува). Со audit_events = true и без табела,
|
|
1762
1997
|
секоја промена не успева (со стандардната стратегија :raise).
|
|
1763
1998
|
audit_trail_enabled: Никој не се бележи како креатор или уредувач на записите.
|
|
1999
|
+
auto_query_scoping: 'Правилата за записи се користат, но важат само за пребарувањата
|
|
2000
|
+
find_by и permission_scoped: другите барања ги враќаат сите записи.'
|
|
1764
2001
|
conditional_sets_strict_mode: Условените сетови се третираат како активни
|
|
1765
|
-
кога недостасуваат информации за барањето (
|
|
2002
|
+
кога недостасуваат информации за барањето (без нив пристапот останува отворен).
|
|
1766
2003
|
http_basic_auth_enabled: Овие екрани се или заклучени (барањето лозинка е
|
|
1767
2004
|
вклучено, но нема податоци за најава) или незаштитени (нема лозинка ниту
|
|
1768
2005
|
прилагоден администраторски контролер).
|
|
1769
2006
|
masked_write_protection: Маскираните вредности може да се зачуваат врз вистинските
|
|
1770
2007
|
податоци.
|
|
2008
|
+
unconfigured_action_strategy: Акциите на контролери што никој не ги конфигурирал
|
|
2009
|
+
може да ги изврши секој најавен корисник (изречно отстапување од стандардното
|
|
2010
|
+
:block).
|
|
1771
2011
|
unconfigured_field_strategy: Колоните што никој не ги конфигурирал се прикажуваат
|
|
1772
2012
|
немаскирани на секој што може да го чита ресурсот.
|
|
1773
2013
|
row:
|
|
1774
2014
|
changed: Променето
|
|
1775
|
-
|
|
1776
|
-
|
|
2015
|
+
default_html: 'Стандардно: %{value}'
|
|
2016
|
+
docs_html: 'Документација за конфигурација: %{key} ↗'
|
|
1777
2017
|
how_to_change: Како да се промени
|
|
1778
2018
|
risk: Ризик
|
|
1779
2019
|
secure: Безбедно
|
|
1780
2020
|
snippet_current: Примерот ја прикажува тековната вредност.
|
|
1781
2021
|
snippet_recommended: Примерот ја прикажува препорачаната вредност.
|
|
1782
|
-
step_deploy:
|
|
2022
|
+
step_deploy: Зачувајте ја промената во кодот и објавете ја апликацијата (или
|
|
2023
|
+
рестартирајте го серверот локално).
|
|
1783
2024
|
step_edit: Уредете ја датотеката погоре.
|
|
1784
2025
|
step_reload: Освежете ја оваа страница за потврда.
|
|
1785
2026
|
sections:
|
|
@@ -1800,6 +2041,9 @@ mk:
|
|
|
1800
2041
|
record_rules: Правила за записи и ограничување на барањата
|
|
1801
2042
|
show:
|
|
1802
2043
|
api_disabled_html: API е исклучен (%{key}).
|
|
2044
|
+
attention:
|
|
2045
|
+
one: Почетната страница наведува %{count} ставка што бара внимание.
|
|
2046
|
+
other: Почетната страница наведува %{count} ставки што бараат внимание.
|
|
1803
2047
|
changed_count:
|
|
1804
2048
|
one: "%{count} променета"
|
|
1805
2049
|
other: "%{count} променети"
|
|
@@ -1807,15 +2051,22 @@ mk:
|
|
|
1807
2051
|
has_risk: Има ризична поставка
|
|
1808
2052
|
health: Преглед на состојбата
|
|
1809
2053
|
how_to_fix: Како да се поправи
|
|
1810
|
-
intro_html: Поставките се дефинирани во %{file}. Промените бараат
|
|
1811
|
-
Оваа страница ги прикажува тековните вредности и како да се
|
|
2054
|
+
intro_html: Поставките се дефинирани во %{file}. Промените бараат ново издание
|
|
2055
|
+
или рестарт. Оваа страница ги прикажува тековните вредности и како да се
|
|
2056
|
+
променат.
|
|
1812
2057
|
no_match: Ниедна поставка не одговара.
|
|
2058
|
+
open_home: Отвори ја почетната страница
|
|
1813
2059
|
read_only: Само читање
|
|
1814
2060
|
search: Пребарај поставки
|
|
1815
2061
|
section_meta: "%{settings} · %{changed}"
|
|
1816
2062
|
secure_count:
|
|
1817
2063
|
one: "%{count} поставка за безбедност и приватност изгледа добро."
|
|
1818
2064
|
other: "%{count} поставки за безбедност и приватност изгледаат добро."
|
|
2065
|
+
secure_count_set:
|
|
2066
|
+
one: "%{count} поставка за безбедност и приватност е поставена како што
|
|
2067
|
+
се препорачува."
|
|
2068
|
+
other: "%{count} поставки за безбедност и приватност се поставени како што
|
|
2069
|
+
се препорачува."
|
|
1819
2070
|
settings_count:
|
|
1820
2071
|
one: "%{count} поставка"
|
|
1821
2072
|
other: "%{count} поставки"
|
|
@@ -1849,18 +2100,17 @@ mk:
|
|
|
1849
2100
|
set: Поставено
|
|
1850
2101
|
shared:
|
|
1851
2102
|
across_sets:
|
|
1852
|
-
muted_hidden: 'Пригушено: скриено'
|
|
1853
2103
|
none: Ниеден сет на дозволи не го содржи овој ресурс.
|
|
1854
2104
|
active: Активен
|
|
1855
2105
|
audit_footer:
|
|
1856
2106
|
created: Креирано од %{created_by} · %{created_at}
|
|
1857
2107
|
disabled: Не се бележи кој креирал и кој уредувал.
|
|
1858
2108
|
edited: Последно уредено од %{updated_by} · %{updated_at}
|
|
2109
|
+
edited_at: Последно уредено %{updated_at}
|
|
1859
2110
|
history: Историја
|
|
1860
2111
|
crud_cell:
|
|
1861
2112
|
allowed: Дозволено
|
|
1862
2113
|
muted: Пригушено
|
|
1863
|
-
needs_read: Прво вклучете Читање
|
|
1864
2114
|
needs_read_short: Бара Читање
|
|
1865
2115
|
'no': Не
|
|
1866
2116
|
unchanged: Непроменето
|
|
@@ -1923,8 +2173,6 @@ mk:
|
|
|
1923
2173
|
copied: Копирано
|
|
1924
2174
|
copy: Копирај
|
|
1925
2175
|
summary: Технички детали
|
|
1926
|
-
time_ago: пред %{time}
|
|
1927
|
-
time_nil: "—"
|
|
1928
2176
|
toasts:
|
|
1929
2177
|
dismiss: Затвори
|
|
1930
2178
|
undo: Врати
|
|
@@ -1935,6 +2183,11 @@ mk:
|
|
|
1935
2183
|
user_select_prompt: Изберете корисник...
|
|
1936
2184
|
user_select_truncated: Прикажани се само првите %{count} корисници. Конфигурирајте
|
|
1937
2185
|
user_list_resolver за да ја стесните листата.
|
|
2186
|
+
support:
|
|
2187
|
+
array:
|
|
2188
|
+
last_word_connector: " и "
|
|
2189
|
+
two_words_connector: " и "
|
|
2190
|
+
words_connector: ", "
|
|
1938
2191
|
ui:
|
|
1939
2192
|
actions: Акции
|
|
1940
2193
|
apply: Примени
|
|
@@ -1945,7 +2198,14 @@ mk:
|
|
|
1945
2198
|
reviewed_by: Прегледано од %{who} на %{date}
|
|
1946
2199
|
reviewed_on: Прегледано на %{date}
|
|
1947
2200
|
audit:
|
|
1948
|
-
|
|
2201
|
+
csv:
|
|
2202
|
+
created_at: Создадено на
|
|
2203
|
+
created_by: Создадено од
|
|
2204
|
+
edited_at: Последна промена на
|
|
2205
|
+
edited_by: Последна промена од
|
|
2206
|
+
record: Запис
|
|
2207
|
+
type: Тип
|
|
2208
|
+
where: Каде
|
|
1949
2209
|
types:
|
|
1950
2210
|
action: Акција
|
|
1951
2211
|
assignment: Доделување
|
|
@@ -1960,21 +2220,24 @@ mk:
|
|
|
1960
2220
|
column_missing: Колоната недостасува
|
|
1961
2221
|
conditional: Условен
|
|
1962
2222
|
expired: Истечено
|
|
1963
|
-
fail_open:
|
|
1964
|
-
fail_open_long: '
|
|
2223
|
+
fail_open: Активен при недостиг
|
|
2224
|
+
fail_open_long: 'Активен при недостиг: важи и кога недостасуваат информации
|
|
2225
|
+
за барањето'
|
|
1965
2226
|
fail_open_title: conditional_sets_strict_mode е исклучен
|
|
1966
|
-
locked: Заклучено
|
|
1967
2227
|
muting: Пригушувачки
|
|
1968
|
-
not_configured: Не е конфигурирано
|
|
1969
2228
|
'off': Исклучено
|
|
1970
2229
|
sensitive: Чувствително
|
|
2230
|
+
unknown_mask_strategy: Непозната стратегија за маскирање — целосно маскирано
|
|
2231
|
+
додека не се поправи
|
|
1971
2232
|
virtual: Виртуелно
|
|
1972
2233
|
breadcrumb: Патека
|
|
1973
2234
|
cancel: Откажи
|
|
1974
2235
|
changes:
|
|
1975
2236
|
action_managed_already: "(веќе е управувано; сетови што го дозволуваат: %{sets})"
|
|
1976
|
-
|
|
2237
|
+
action_managed_first_allowed: "(со ова станува управувано: отсега само корисниците
|
|
1977
2238
|
чии сетови на дозволи го дозволуваат можат да го извршат)"
|
|
2239
|
+
action_managed_first_blocked: "(првиот ред за него: отсега можат да го извршат
|
|
2240
|
+
корисниците чии сетови на дозволи го дозволуваат; досега никој не можеше)"
|
|
1978
2241
|
action_managed_later: "(ќе важи штом овој сет и овој ресурс бидат вклучени)"
|
|
1979
2242
|
action_managed_nobody: "(веќе е управувано; ниеден сет на дозволи сè уште
|
|
1980
2243
|
не го дозволува)"
|
|
@@ -2001,6 +2264,10 @@ mk:
|
|
|
2001
2264
|
flag_off_muting: "%{resource}: %{flag} веќе не е пригушено"
|
|
2002
2265
|
flag_on: "%{resource}: %{flag} дозволено"
|
|
2003
2266
|
flag_on_muting: "%{resource}: %{flag} пригушено"
|
|
2267
|
+
not_applied_read: "%{resource}: %{flag} не е вклучено, бидејќи „Читање“ е
|
|
2268
|
+
исклучено"
|
|
2269
|
+
not_applied_view_all_and_edit: "%{resource}: %{flag} не е вклучено, бидејќи
|
|
2270
|
+
бара „Прикажи ги сите“ и „Уредување“"
|
|
2004
2271
|
resource_text: "%{resource}: %{attribute} е променето"
|
|
2005
2272
|
set_group: Преместено во групата „%{group}“
|
|
2006
2273
|
set_no_group: Отстрането од својата група
|
|
@@ -2010,6 +2277,9 @@ mk:
|
|
|
2010
2277
|
close: Затвори
|
|
2011
2278
|
conditions:
|
|
2012
2279
|
always: Секогаш активен. Нема услови за активирање.
|
|
2280
|
+
effect:
|
|
2281
|
+
granting: Никогаш не е исполнет, па не дава ништо.
|
|
2282
|
+
muting: 'Пригушувачки сет на дозволи: важи за секое барање.'
|
|
2013
2283
|
flag_generic: кога е поставен %{flag}
|
|
2014
2284
|
flags:
|
|
2015
2285
|
marketing_consent: кога е дадена согласност за маркетинг
|
|
@@ -2017,9 +2287,26 @@ mk:
|
|
|
2017
2287
|
sso_login: по најава преку SSO на компанијата
|
|
2018
2288
|
from_ips: од %{ips}
|
|
2019
2289
|
hours: помеѓу %{from} и %{to}
|
|
2290
|
+
hours_broken: помеѓу %{from} и %{to} (прозорец што никој не може да го процени
|
|
2291
|
+
— поправете го во јазичето Услови)
|
|
2292
|
+
hours_broken_here: помеѓу %{from} и %{to} (прозорец што никој не може да го
|
|
2293
|
+
процени)
|
|
2020
2294
|
hours_overnight: помеѓу %{from} и %{to} (преку ноќ)
|
|
2295
|
+
ips_broken: од %{ips} (листа што никој не може да ја процени — поправете ја
|
|
2296
|
+
во јазичето Услови)
|
|
2297
|
+
ips_broken_here: од %{ips} (листа што никој не може да ја процени)
|
|
2298
|
+
no_hour: без час
|
|
2021
2299
|
only_works: Работи само %{parts}.
|
|
2022
2300
|
or: " или "
|
|
2301
|
+
problems:
|
|
2302
|
+
flag_unusable_html: Знакот на сесијата %{flag} содржи контролен знак, па
|
|
2303
|
+
ниедно барање не може да го носи.
|
|
2304
|
+
hours_equal: Почетниот и крајниот час се исти, па прозорецот е празен.
|
|
2305
|
+
hours_incomplete: Поставен е само еден од двата часа.
|
|
2306
|
+
hours_range: Еден час е надвор од 00:00–23:00.
|
|
2307
|
+
ip_empty: Листата на IP адреси има само раздвојувачи, ниту една ставка.
|
|
2308
|
+
ip_entry_html: "%{entry} не е IP адреса или CIDR опсег."
|
|
2309
|
+
problems_title: Овие услови не може да се проценат
|
|
2023
2310
|
dates:
|
|
2024
2311
|
days_ago:
|
|
2025
2312
|
one: пред %{count} ден
|
|
@@ -2060,16 +2347,13 @@ mk:
|
|
|
2060
2347
|
read_access: Читање
|
|
2061
2348
|
view_all: Прикажи ги сите
|
|
2062
2349
|
keep: Задржи
|
|
2063
|
-
|
|
2064
|
-
edit:
|
|
2065
|
-
|
|
2066
|
-
|
|
2067
|
-
|
|
2068
|
-
|
|
2069
|
-
|
|
2070
|
-
muted: Пригушено
|
|
2071
|
-
none: Не е конфигурирано
|
|
2072
|
-
read: Само читање
|
|
2350
|
+
level_sentences:
|
|
2351
|
+
edit: "%{set} го прикажува ова поле и дозволува негово уредување."
|
|
2352
|
+
hide: "%{set} го скрива ова поле."
|
|
2353
|
+
mask: "%{set} присилно го маскира ова поле."
|
|
2354
|
+
masked: "%{set} го прикажува ова поле маскирано (%{strategy})."
|
|
2355
|
+
no_edit: "%{set} ја одзема можноста за уредување на ова поле."
|
|
2356
|
+
read: "%{set} го прикажува ова поле само за читање."
|
|
2073
2357
|
locked:
|
|
2074
2358
|
title: 'Заклучено: управувано од системот/API'
|
|
2075
2359
|
mask_strategies:
|
|
@@ -2090,6 +2374,7 @@ mk:
|
|
|
2090
2374
|
nov: ное
|
|
2091
2375
|
oct: окт
|
|
2092
2376
|
sep: сеп
|
|
2377
|
+
needs_read_first: Прво вклучете Читање
|
|
2093
2378
|
next: Следно
|
|
2094
2379
|
no_group: Не е во група
|
|
2095
2380
|
open_person: Отвори корисник
|
|
@@ -2117,50 +2402,185 @@ mk:
|
|
|
2117
2402
|
records: Записи
|
|
2118
2403
|
remove: Отстрани
|
|
2119
2404
|
resource: Ресурс
|
|
2405
|
+
resource_plural:
|
|
2406
|
+
one: запис %{name}
|
|
2407
|
+
other: записи %{name}
|
|
2120
2408
|
rules:
|
|
2121
2409
|
and: и
|
|
2122
2410
|
current_user: тековниот корисник
|
|
2411
|
+
matches_nothing: Не се совпаѓа со ништо
|
|
2412
|
+
notes:
|
|
2413
|
+
secret_column: Тајна колона
|
|
2123
2414
|
only_show: Прикажи само
|
|
2124
2415
|
or_empty: или %{field} е празно
|
|
2416
|
+
problems:
|
|
2417
|
+
empty_association: Патеката на врски има празен чекор (две точки една по
|
|
2418
|
+
друга, или точка на почетокот)
|
|
2419
|
+
encrypted_column: "%{name} на %{model} е шифриран: базата го чува неговиот
|
|
2420
|
+
шифриран текст, па правилото може само да провери дали е празен"
|
|
2421
|
+
foreign_table_html: "%{name} е табела на друг модел: правило за филтер ги
|
|
2422
|
+
споредува само колоните на %{model}"
|
|
2423
|
+
missing_column_html: "%{name} не е колона на %{model}"
|
|
2424
|
+
pattern_on_non_text: "%{name} на %{model} не е текст: услов со шаблон (содржи,
|
|
2425
|
+
почнува со, завршува со) не може да го совпадне"
|
|
2426
|
+
unjoinable_association: "%{name} е врска на %{model} што правило не може
|
|
2427
|
+
да ја следи"
|
|
2428
|
+
unjoinable_class_not_loadable: "%{name} е врска на %{model} чиј модел не
|
|
2429
|
+
може да се вчита"
|
|
2430
|
+
unjoinable_invalid_definition: "%{name} е врска на %{model} чиј :through,
|
|
2431
|
+
:source или inverse_of именува врска што не постои"
|
|
2432
|
+
unjoinable_polymorphic: "%{name} е полиморфна врска на %{model}: правило
|
|
2433
|
+
не може да ја следи"
|
|
2434
|
+
unjoinable_record_dependent_scope: "%{name} е врска на %{model} чиј опсег
|
|
2435
|
+
зависи од записот: правило не може да ја следи"
|
|
2436
|
+
unknown_association_html: "%{name} не е врска на %{model}"
|
|
2437
|
+
unknown_join_type_html: "%{name} не е начин на спојување што оваа верзија
|
|
2438
|
+
го познава"
|
|
2439
|
+
unknown_operator_html: "%{name} не е услов што оваа верзија го познава"
|
|
2440
|
+
unknown_table_html: "%{name} не е табела во оваа база на податоци"
|
|
2441
|
+
unusable_value_html: "%{value} не е вредност што %{name} на %{model} може
|
|
2442
|
+
да ја содржи"
|
|
2125
2443
|
where: каде
|
|
2126
2444
|
rules_count:
|
|
2127
2445
|
one: Правила (%{count})
|
|
2128
2446
|
other: Правила (%{count})
|
|
2129
2447
|
rules_tab: Правила
|
|
2130
2448
|
search: Пребарај
|
|
2131
|
-
search_people:
|
|
2449
|
+
search_people: Име или е-пошта
|
|
2132
2450
|
setting: Поставка
|
|
2133
2451
|
states:
|
|
2134
|
-
|
|
2135
|
-
|
|
2136
|
-
|
|
2452
|
+
actor:
|
|
2453
|
+
api: API клиент
|
|
2454
|
+
basic_auth: Прозорец за лозинка
|
|
2455
|
+
system: Систем
|
|
2456
|
+
unknown: Непознат
|
|
2457
|
+
user: Лице
|
|
2458
|
+
effective:
|
|
2459
|
+
blocked: Блокирано
|
|
2460
|
+
granted: Дозволено
|
|
2461
|
+
hidden_by_muting: Скриено со пригушување
|
|
2462
|
+
none: Не
|
|
2463
|
+
field_level:
|
|
2464
|
+
edit: Може да се уредува
|
|
2465
|
+
hidden: Скриено
|
|
2466
|
+
hide: Скриј
|
|
2467
|
+
leave: Непроменето
|
|
2468
|
+
mask: Присилно маскирање
|
|
2469
|
+
masked: Маскирано
|
|
2470
|
+
none: Не е конфигурирано
|
|
2471
|
+
read: Само читање
|
|
2472
|
+
lock:
|
|
2473
|
+
locked: Заклучено
|
|
2137
2474
|
unconfigured:
|
|
2138
2475
|
block: Блокирано по основно
|
|
2139
2476
|
mask_all: Целосно маскирано
|
|
2140
2477
|
pass_through: Се прикажува немаскирано
|
|
2141
2478
|
warn: Се прикажува и се запишува во дневник
|
|
2479
|
+
untitled:
|
|
2480
|
+
permission_set: Сет на дозволи без име
|
|
2481
|
+
permission_set_group: Група на сетови на дозволи без име
|
|
2482
|
+
permission_set_rule: Правило без име
|
|
2142
2483
|
view_all: Прикажи ги сите
|
|
2143
2484
|
validations:
|
|
2485
|
+
attributes:
|
|
2486
|
+
allowed_hours_end: Краен час
|
|
2487
|
+
allowed_hours_start: Почетен час
|
|
2488
|
+
allowed_ips: Дозволени IP адреси
|
|
2489
|
+
create_access: Создавање
|
|
2490
|
+
delete_access: Бришење
|
|
2491
|
+
description: Опис
|
|
2492
|
+
edit_access: Уредување
|
|
2493
|
+
expires_at: Краен датум
|
|
2494
|
+
failure_message: Порака при блокирање
|
|
2495
|
+
field_accessor_path: Релација
|
|
2496
|
+
field_name: Поле
|
|
2497
|
+
field_value: Вредност
|
|
2498
|
+
include_nulls: Вклучи празни вредности
|
|
2499
|
+
is_active: Активно
|
|
2500
|
+
is_editable: Уредлив
|
|
2501
|
+
is_muting: Пригушувачки
|
|
2502
|
+
is_permitted: Дозволено
|
|
2503
|
+
join_type: Спојување
|
|
2504
|
+
label: Етикета
|
|
2505
|
+
mask_access: Маскирање
|
|
2506
|
+
mask_strategy: Стратегија за маскирање
|
|
2507
|
+
modify_all: Измени сè
|
|
2508
|
+
name: Име
|
|
2509
|
+
operator: Услов
|
|
2510
|
+
permission_set_group: Permission Set Group
|
|
2511
|
+
read_access: Читање
|
|
2512
|
+
requires_session_flag: Ознака на сесија
|
|
2513
|
+
user_id: Лице
|
|
2514
|
+
uuid: UUID
|
|
2515
|
+
view_all: Прегледај сè
|
|
2516
|
+
blank: не смее да биде празно
|
|
2517
|
+
full_message: "%{attribute} %{message}"
|
|
2518
|
+
invalid: не е валидно
|
|
2144
2519
|
name_blank: не смее да биде празно
|
|
2520
|
+
nul_byte: не смее да содржи NUL бајт
|
|
2145
2521
|
permission_set:
|
|
2522
|
+
flag_unusable: 'не смее да содржи контролен знак (нов ред, табулатор): ниедно
|
|
2523
|
+
барање не може да носи таков знак'
|
|
2146
2524
|
group_missing: мора да биде постоечка група на сетови на дозволи
|
|
2525
|
+
hours_equal: мора да се разликува од почетниот час (прозорец од еден час до
|
|
2526
|
+
истиот час е празен; оставете ги двата празни за без прозорец)
|
|
2527
|
+
hours_incomplete: мора да се постави заедно со другиот час (или двата да се
|
|
2528
|
+
остават празни)
|
|
2529
|
+
hours_range: мора да биде помеѓу 0 и 23
|
|
2530
|
+
invalid_ip_entry: содржи „%{entry}“, што не е IP адреса или CIDR опсег
|
|
2531
|
+
name_taken: веќе се користи од друг сет на дозволи
|
|
2532
|
+
permission_set_group_user:
|
|
2533
|
+
taken: е веќе член на оваа група
|
|
2147
2534
|
permission_set_rule:
|
|
2148
2535
|
between_requires_two_values: мора да содржи точно 2 вредности одделени со
|
|
2149
2536
|
запирка за операторот between
|
|
2537
|
+
empty_association: има празно име на асоцијација (две точки една по друга,
|
|
2538
|
+
или точка на почетокот)
|
|
2539
|
+
encrypted_column: 'го именува %{name}, шифриран атрибут на %{model}: базата
|
|
2540
|
+
го чува неговиот шифриран текст, па правилото може само да провери дали
|
|
2541
|
+
е празен (is_null, is_not_null)'
|
|
2150
2542
|
field_value_required: е потребна за овој оператор
|
|
2543
|
+
foreign_table: 'именува %{name}, табела што не е на %{model}: правило за филтер
|
|
2544
|
+
ја споредува сопствената табела. За колона од друга табела, користете правило
|
|
2545
|
+
за спојување (тип на спојување и патеката на релацијата)'
|
|
2151
2546
|
in_requires_values: мора да содржи барем 1 вредност одделена со запирка
|
|
2152
2547
|
invalid_field_name: мора да биде валидно име на колона (букви, бројки, долни
|
|
2153
2548
|
црти, точки)
|
|
2154
2549
|
invalid_join_type: не е валиден тип на спојување
|
|
2155
2550
|
invalid_operator: не е валиден оператор
|
|
2551
|
+
nul_byte: не смее да содржи NUL бајт
|
|
2156
2552
|
numeric_or_date_required: мора да биде нумеричка или датумска вредност за
|
|
2157
2553
|
оператори за споредба
|
|
2554
|
+
pattern_on_non_text: 'совпаѓа само текст, а %{model}.%{name} е колона од тип
|
|
2555
|
+
%{type}: користете услов што споредува вредности'
|
|
2556
|
+
secret_column: 'именува колона што чува тајна (хеш на лозинка, токен, колона
|
|
2557
|
+
encrypted_*): правило за записи никогаш не споредува таква'
|
|
2558
|
+
unjoinable_association: го именува %{association}, асоцијација на %{model}
|
|
2559
|
+
што правило не може да ја спои
|
|
2560
|
+
unjoinable_class_not_loadable: го именува %{association}, асоцијација на %{model}
|
|
2561
|
+
чија класа не може да се вчита
|
|
2562
|
+
unjoinable_invalid_definition: го именува %{association}, асоцијација на %{model}
|
|
2563
|
+
чиј :through, :source или inverse_of именува асоцијација што не постои
|
|
2564
|
+
unjoinable_polymorphic: 'го именува %{association}, полиморфна асоцијација
|
|
2565
|
+
на %{model}: правило не може да ја спои'
|
|
2566
|
+
unjoinable_record_dependent_scope: 'го именува %{association}, асоцијација
|
|
2567
|
+
на %{model} чиј опсег (или еден по должината на :through) го зема записот:
|
|
2568
|
+
правило не може да ја спои'
|
|
2569
|
+
unknown_association: го именува %{association}, што не е асоцијација на %{model}
|
|
2570
|
+
unknown_column: го именува %{name}, што не е колона на %{model}
|
|
2571
|
+
unknown_table: именува %{name}, што не е табела во оваа база на податоци
|
|
2572
|
+
unusable_value: не е вредност што %{model}.%{name} може да ја содржи
|
|
2158
2573
|
value_not_expected: не бара вредност за овој оператор
|
|
2159
2574
|
value_required: не смее да биде празно за овој оператор
|
|
2575
|
+
permission_set_user:
|
|
2576
|
+
taken: веќе го има овој сет на дозволи
|
|
2577
|
+
requires: бара %{requires} да биде вклучено
|
|
2160
2578
|
resource:
|
|
2161
2579
|
invalid_name: мора да биде валидно име на класа модел (пр. Customer или Admin::Report)
|
|
2580
|
+
name_taken: веќе постои во овој сет на дозволи
|
|
2162
2581
|
resource_field:
|
|
2163
2582
|
invalid_mask_strategy: не е валидна стратегија за маскирање
|
|
2164
2583
|
mask_strategy_required: мора да биде присутна кога е овозможен пристап со
|
|
2165
2584
|
маска
|
|
2585
|
+
taken: е веќе зафатено
|
|
2166
2586
|
too_long: е предолго (најмногу %{count} знаци)
|