translations = {
    "invalid": "Invalid :field.",
    "required": ":field is required",
    "integer": ":field must be an integer.",
    "numeric": ":field must be a number.",
    "string": ":field must be a string.",
    "array": ":field must be a array.",
    "min_numeric": ":field must be at least :min.",
    "min_string": ":field must be at least :min characters.",
    "min_generic": ":field must have at least :min.",
    "max_numeric": ":field must not be greater than :max.",
    "max_string": ":field must not be greater than :max characters.",
    "max_generic": ":field must not exceed :max.",
    "gte": ":field must be greater than or equal to :value.",
    "lte": ":field must be less than or equal to :value.",
    "email": ":field must be a valid email address.",
    "in": ":field must be one of: :values.",
    "not_in": ":field must not be one of: :values.",
    "exists": "The following :field values not exists: :values.",
    "not_exists": "The following :field values already exist: :values",
    "char_count": ":field must be exactly :value characters.",
    "login_failed": "Invalid email or password.",
    "token_expired": "Token expired.",
    "no_permission": "You do not have permission for this action",
    "invalid_format": "Invalid Format",
    "date": ":field must be a date",
    "time": ":field must be a time",
    "not_allow_bulk_update": "Not allow bulk update",
    "module_already_create_activity_template": "This module already create activity template",
    "not_match": ":field and :confirm_field not match",
    "old_password_incorrect": "Old password incorrect.",
    "activity_template_allocator_custom_msg": {
        "activity_id_not_found": "Activity :value not found",
        "student_set_ids_not_found": "Student Set :value not found",
    },
    "unavailable_to_schedule": "Unavailable to scheduled",
    "not_allow_delete_parent_variant_activity": "Cannot delete parent variants: :activities_name. Activity is linked to other sub-variants.",
    "secondary_activity_not_allow_is_jta": ":activities_name is already part of a JTA. It cannot be added as a secondary activity",
    "scheduled_activity_not_allow_create_jta": ":activities_name is already scheduled. Scheduled activities must be unscheduled before they can be merged into a JTA.",
    "jta_parent_cant_do_jta": ":activity_name JTA Parent not allow to make another JTA",
    "activity_type_in_use": "Activity type is used by Activity or Activity Template and cannot be deleted.",
    "cant_update_date": "Unable to update start date and end date",
    "module_not_in_pos": "Module ':module_name' not found in :pos_name.",
    "cannot_be_empty": ":field cannot be empty",
    "activity_must_scheduled": "Activity must scheduled only can update",
    "not_available_schedule_to": "Not available schedule to :type (:name) in :day :time",
    "no_available_resources_to_schedule": "No available :resource to schedule",
}