From 6acec074e220a1d08cf3e71349313205df6abc68 Mon Sep 17 00:00:00 2001 From: did Date: Wed, 6 Jul 2011 00:33:34 +0200 Subject: [PATCH] spanish translation (ticket #103) --- config/locales/admin_ui.de.yml | 1 + config/locales/admin_ui.en.yml | 1 + config/locales/admin_ui.es.yml | 281 ++++++++++++++++++ config/locales/admin_ui.fr.yml | 1 + config/locales/admin_ui.it.yml | 1 + config/locales/admin_ui.pt-BR.yml | 1 + config/locales/carrierwave.es.yml | 4 + config/locales/default.es.yml | 219 ++++++++++++++ config/locales/devise.es.yml | 63 ++++ config/locales/flash.es.yml | 116 ++++++++ config/locales/formtastic.es.yml | 84 ++++++ doc/changelogs/20110704.txt | 2 +- lib/locomotive/configuration.rb | 2 +- lib/locomotive/render.rb | 2 +- .../admin/icons/flags/{sp.png => es.png} | Bin .../locomotive/liquid/drops/content_spec.rb | 2 +- 16 files changed, 776 insertions(+), 4 deletions(-) create mode 100644 config/locales/admin_ui.es.yml create mode 100644 config/locales/carrierwave.es.yml create mode 100644 config/locales/default.es.yml create mode 100644 config/locales/devise.es.yml create mode 100644 config/locales/flash.es.yml create mode 100644 config/locales/formtastic.es.yml rename public/images/admin/icons/flags/{sp.png => es.png} (100%) diff --git a/config/locales/admin_ui.de.yml b/config/locales/admin_ui.de.yml index 499dccdc..22054fca 100644 --- a/config/locales/admin_ui.de.yml +++ b/config/locales/admin_ui.de.yml @@ -163,6 +163,7 @@ de: pt-BR: "Bras. Portugisisch" it: "Italienisch" nl: "Holländer" + es: "Spanisch" ask_for_name: "Bitte gib deinen neuen Namen an" theme_assets: diff --git a/config/locales/admin_ui.en.yml b/config/locales/admin_ui.en.yml index 214e2a66..136c1f08 100644 --- a/config/locales/admin_ui.en.yml +++ b/config/locales/admin_ui.en.yml @@ -171,6 +171,7 @@ en: pt-BR: "Brazilian Portuguese" it: Italian nl: Dutch + es: Spanish ask_for_name: "Please type your new name" theme_assets: diff --git a/config/locales/admin_ui.es.yml b/config/locales/admin_ui.es.yml new file mode 100644 index 00000000..67cf166e --- /dev/null +++ b/config/locales/admin_ui.es.yml @@ -0,0 +1,281 @@ +es: + admin: + buttons: + login: Iniciar sesión + send_password: Enviar + change_password: Cambiar + new_item: "+ añadir" + switch_to_site: Ir + + messages: + confirm: Por favor confirme + + shared: + header: + welcome: Bienvenido, %{name} + see: Ver Sitio + logout: Salir + menu: + contents: Contenido + assets: Colecciones + settings: Ajustes + pages: Páginas + snippets: Fragmentos + account: Mi Cuenta + site: Sitio + theme_assets: Ficheros del Tema + footer: + who_is_behind: "Servicio desarrollado por %{development} y diseñado por Sacha Greif" + form_actions: + back: Volver sin guardar + create: Crear + update: Actualizar + send: Enviar + + errors: + "500": + title: Error de aplicación + notice: "Lo sentimos, pero algo hubo un error en la aplicación" + link: "→ Volver" + "404": + title: Página no encontrada + notice: "La página requerida no existe." + link: "→ Volver" + + notifications: + new_content_instance: + subject: "[%{type}] nuevo" + title: "Hola %{name}, queremos hacerte saber que una nueva instancia se creó el día %{date}" + type: "Modelo: %{type}" + + custom_fields: + edit: + title: Editando campo personalizado + text_formatting: + none: Ninguno + html: HTML + edit_field: + title: Editar campo + edit_category: + title: Editar opciones + help: Gestionar la lista de opciones que aparecerán en la lista desplegable. + collection_label: Lista de opciones + custom_form: + edit_categories: Editar opciones + delete_file: Borrar fichero + index: + is_required: requerido + default_label: Nombre del campo + + sessions: + new: + title: Inicio de sesión + link: "Olvidé mi clave" + email: "Email" + password: "Clave" + + passwords: + new: + title: Clave olvidada + link: "→ Volver a la página de inicio" + email: "Su email" + edit: + title: Cambiar my clave + link: "→ Volver a la página de inicio de sesióne" + password: "Su nueva clave" + password_confirmation: "Repita la nueva clave" + + pages: + index: + title: Mostrando páginas + help: "Las páginas se organizan en forma de árbol. Puede reordenar páginas y carpetas." + no_items: "No se ha creado ninguna página aún. Pulse aquí to para crear la primera." + + new: Nueva página + lastest_items: Últimas páginas + new: + title: Nueva página + help: "Por favor rellene el formulario de más abajo para crear su página. ¡Atención! Las páginas, por defecto, están 'no publicadas'." + page: + updated_at: última actualización + edit: + show: mostrar + help: "El título de la página se puede cambiar haciendo click en él." + ask_for_title: "Por favor escriba el nuevo título" + form: + delete_file: Borrar fichero + default_block: Por defecto + cache_strategy: + none: Ninguna + simple: Simple + hour: 1 hora + day: 1 día + week: 1 semana + month: 1 mes + + snippets: + index: + title: Mostrando fragmentos + help: "Los Fragmentos son trozos de código HTML que pueden ser utilizados en varios lugares del sitio web (por ejemplo un pie de página)." + no_items: "Por ahora no hay fragmentos. Haga click aquí para crear el primero." + new: nuevo fragmento + new: + title: New fragmento + help: "Rellene el siguiente formulario para crear el fragmento." + edit: + title: Editando fragmento + help: "Rellene el siguiente formulario para actualizar el fragmento." + snippet: + updated_at: Última actualización + + sites: + new: + title: Nuevo sitio + help: "Rellene el siguiente formulario para crear su nuevo sitio." + + current_sites: + edit: + import: importar + new_membership: añadir cuenta + help: "El nombre del sitio puede actualizarse haciendo click en él." + ask_for_name: "Por favor escriba el nuevo nombre del sitio" + + memberships: + new: + title: Nueva cuenta + help: "Por favor escriba el email de la cuenta que a añadir. Si no está en el sistema, se le redirigirá al formulario de creación de cuentas." + + accounts: + new: + title: Nueva cuenta + help: "Rellene el siguiente formulario para añadir una nueva cuenta." + + my_accounts: + edit: + help: "Para cambiar su nombre, haga click en él." + new_site: nuevo sitio + en: Inglés + de: Alemán + fr: Francés + pt-BR: "Portugués (Brasil)" + it: Italiano + nl: holandés + es: Español + ask_for_name: "Por favor escriba su nuevo nombre" + + theme_assets: + index: + title: Mostrando ficheros del tema + help: "La sección de ficheros del tema sirve para gestionar los ficheros necesitados por su diseño, ... etc. Si necesita gestionar una galería de imágenes, utilice la sección de 'Media' en lugar de la de ficheros del tema." + all: todos los ficheros + new: nuevo fichero + snippets: Fragmentos + css_and_js: Estilo y Javascript + fonts: Fuentes + images: Imágenes + medias: Media + no_items: "Por ahora no hay ficheros. Haga click aquí para crear el primero." + asset: + updated_at: Última actualización + new: + title: Nuevo Fichero + help: "Tiene la opción de subir un fichero desde su disco duro o copiar y pegar el contenido de una hoja de estilos o javascript." + edit: + title: "Editando %{file}" + help: "Este fichero está accesible en la siguiente url: %{url}" + form: + picker_link: Insertar un fichero en el código + choose_file: Elegir un fichero + choose_plain_text: Elegir texto plano + images: + title: Mostrando imágenes + no_items: "No hay ficheros por ahora." + + assets: + new: + title: Nuevo contenido multi-media + help: "Rellene el siguiente formulario para crear el contenido multi-media." + edit: + title: Editando contenido multi-media + help: "Rellene el siguiente formulario para actualizar el contenido multi-media." + + content_types: + index: + new: nuevo modelo + new: + title: Nuevo modelo + help: "Cree su propio modelo de datos (Proyecto, Persona, ...etc). Su modelo debería tener al menos un campo obligatorio." + edit: + title: Editando modelo + help: "Su modelo debe tener al menos un campo obligatorio." + show_items: enseñar elementos + new_item: nuevo elemento + form: + order_by: + created_at: 'Por fecha de creación' + updated_at: 'Por fecha de última modificación' + position_in_list: Manualmente + order_direction: + asc: Ascendente + desc: Descendente + + contents: + index: + title: 'Mostrando "%{type}"' + edit: editar modelo + destroy: borrar modelo + download: descargar elementos + new: nuevo elemento + category_noname: "Sin nombre" + lastest_items: "Últimos elementos" + updated_at: "Última actualización" + list: + no_items: "No hay ningún elemento. Haga click aquí para crear el primero." + new: + title: '%{type} — nuevo elemento' + edit: + title: '%{type} — editando elemento' + + image_picker: + link: Insertar una imagen el el código + + cross_domain_sessions: + new: + title: Autenticación multi-dominio + notice: Será redirigido al sitio web en un par de segundos. + + import: + new: + title: Importar plantilla de sitio web + help: "Tenga cuidado al subir una nueva plantilla a un sitio web existente; los datos existentes podrían ser modificados o incluso borrados." + show: + title: Importación en progreso + help: "Su sitio web está siendo importado desde el fichero zip que ha subido. La importación dura algunos segundos." + steps: + site: Información del Sitio + content_types: Modelos + assets: Contenido multi-media + asset_collections: Colecciones + snippets: Fragmentos + pages: Páginas + messages: + success: "El sitio web se ha actualizado con éxito." + failure: "La importación no se pudo realizar." + + installation: + common: + title: Instalación inicial de Locomotive + next: Siguiente + step_1: + title: "Paso 1/2 — Crear cuenta" + name: Nombre de la cuenta + email: Email + password: Clave + password_confirmation: Repetición de la clave + done: "Ya se ha añadido una cuenta:
%{name}, %{email}" + next: Crear cuenta + step_2: + title: "Paso 2/2 — Crear el primer sitio" + explanations: "Si ya ha subido una primera plantilla de sitio (ver instrucciones), puede empezar a utilizarla ahora mismo. En caso contrario, puede subir una nueva (hay plantillas gratuitas aquí)." + back_to_default_template: "Haga click aquí para elegir la plantilla por defecto" + next: Crear sitio \ No newline at end of file diff --git a/config/locales/admin_ui.fr.yml b/config/locales/admin_ui.fr.yml index 3e2299d0..9329231d 100644 --- a/config/locales/admin_ui.fr.yml +++ b/config/locales/admin_ui.fr.yml @@ -172,6 +172,7 @@ fr: pt-BR: "en Portugais" it: "en Italien" nl: "en Hollandais" + es: en Espagnol ask_for_name: "Veuillez entrer le nouveau nom" theme_assets: diff --git a/config/locales/admin_ui.it.yml b/config/locales/admin_ui.it.yml index 1c98a50b..d23ba958 100644 --- a/config/locales/admin_ui.it.yml +++ b/config/locales/admin_ui.it.yml @@ -161,6 +161,7 @@ it: pt-BR: "Portoghese Brasiliano" it: Italiano nl: Olandese + es: Spagnolo ask_for_name: "Prego, digita il tuo nome" theme_assets: diff --git a/config/locales/admin_ui.pt-BR.yml b/config/locales/admin_ui.pt-BR.yml index f5290ea0..8d938b24 100644 --- a/config/locales/admin_ui.pt-BR.yml +++ b/config/locales/admin_ui.pt-BR.yml @@ -158,6 +158,7 @@ pt-BR: pt-BR: "Português do Brasil" it: Italiano nl: Holandês + es: Espanhol ask_for_name: "Por favor preencha o novo nome" theme_assets: diff --git a/config/locales/carrierwave.es.yml b/config/locales/carrierwave.es.yml new file mode 100644 index 00000000..1ab6e699 --- /dev/null +++ b/config/locales/carrierwave.es.yml @@ -0,0 +1,4 @@ +es: + carrierwave: + errors: + integrity: 'no es un tipo de fichero válido.' diff --git a/config/locales/default.es.yml b/config/locales/default.es.yml new file mode 100644 index 00000000..52d39f38 --- /dev/null +++ b/config/locales/default.es.yml @@ -0,0 +1,219 @@ +es: + errors: + # The default format use in full error messages. + format: "%{attribute} %{message}" + + # The values :model, :attribute and :value are always available for interpolation + # The value :count is available when applicable. Can be used for pluralization. + messages: + inclusion: "no está incluido en la lista" + exclusion: "está reservado" + invalid: "no es válido" + confirmation: "no coincide con la confirmación" + accepted: "debe ser aceptado" + empty: "no puede estar vacío" + blank: "no puede estar en blanco" + too_long: "es demasiado largo (%{count} caracteres máximo)" + too_short: "es demasiado corto (%{count} caracteres mínimo)" + wrong_length: "no tiene la longitud correcta (%{count} caracteres exactos)" + taken: "ya está en uso" + not_a_number: "no es un número" + greater_than: "debe ser mayor que %{count}" + greater_than_or_equal_to: "debe ser mayor que o igual a %{count}" + equal_to: "debe ser igual a %{count}" + less_than: "debe ser menor que %{count}" + less_than_or_equal_to: "debe ser menor que o igual a %{count}" + odd: "debe ser impar" + even: "debe ser par" + + domain_taken: "%{value} ya está siendo utilizado en otro sitio" + invalid_domain: "%{value} no es válido" + needs_admin_account: "Se necesita al menos una cuenta de administrador" + protected_page: "Las páginas index y 404 no se pueden borrar" + extname_changed: "El nuevo fichero no tiene la misma extensión del antiguo" + array_too_short: "es demasiado pequeño (como mínimo debe tener %{count} elementos)" + liquid_syntax: "Error de sintaxis de Liquid ('%{error}')" + invalid_theme_file: "debe tener contenido o no es un fichero zip válido" + page: + liquid_syntax: "Error de sintaxis Liquid. Por favor verifique la sintaxis ('%{error}'/'%{fullpath}')" + liquid_extend: "La página '%{fullpath}' extiende el contenido de una página que no existe" + + attributes: + defaults: + pages: + index: + title: "Página de inicio" + body: "Contenido de la página de inicio" + "404": + title: "Página no encontrada" + body: "Contenido de la página no encontrada" + other: + body: "{% extends 'parent' %}" + + mongoid: + attributes: + page: + title: Título + parent: Padre + parent_id: Padre + slug: Enlace + listed: Menu + templatized: Templatizada + published: Publicada + redirect: Redirección + redirect_url: Url de redirección + cache_strategy: Cache + content_type: + name: Nombre + description: Descripción + slug: Enlace + order_by: Ordenación + highlighted_field_name: Campo destacado + group_by_field_name: Champ para agrupar + api_enabled: API activada + asset_collection: + name: Nombre + slug: Enlace + asset: + name: Nombre + source: Fichero + account: + email: E-mail + name: Nombre + language: Idioma + password: Clave + password_confirmation: Repetición de la Clave + snippet: + body: Código + slug: Enlace + name: Nombre + theme_asset: + content_type: Tipo de Fichero + site: + name: Nombre del sitio + domain_name: Dominio + subdomain: Subdominio + restricted_access: "¿Activar?" + access_login: Identificador + access_password: "Clave" + custom_fields: + field: + _alias: Alias + hint: Ayuda + required: Obligatorio + text_formatting: Formato + + pagination: + previous: "« Anterior" + next: "Siguiente »" + + date: + formats: + default: "%d/%m/%Y" + short: "%e-%b" + long: "%e-%B-%Y" + long_ordinal: "%e de %B de %Y" + only_day: "%e" + + day_names: [Domingo, Lunes, Martes, Miércoles, Jueves, Viernes, Sábado] + abbr_day_names: [Dom, Lun, Mar, Mie, Jue, Vie, Sab] + month_names: [~, Enero, Febrero, Marzo, Abril, Mayo, Junio, Julio, Agosto, Setiembre, Octubre, Noviembre, Diciembre] + abbr_month_names: [~, Ene, Feb, Mar, Abr, May, Jun, Jul, Ago, Set, Oct, Nov, Dic] + order: [ :year, :month, :day ] + + time: + formats: + default: "%A, %d de %B de %Y %H:%M:%S %z" + time: "%H:%M" + short: "%d de %b %H:%M" + long: "%d de %B de %Y %H:%M" + long_ordinal: "%A %d %B %Y %H:%M:%S %Z" + only_second: "%S" + am: "am" + pm: "pm" + + + datetime: + distance_in_words: + half_a_minute: "medio minuto" + less_than_x_seconds: + one: "menos de 1 segundo" + other: "menos de %{count} segundos" + x_seconds: + one: "1 segundo" + other: "%{count} segundos" + less_than_x_minutes: + one: "menos de 1 minuto" + other: "menos de %{count} minutos" + x_minutes: + one: "1 minuto" + other: "%{count} minutos" + about_x_hours: + one: "alrededor de 1 hora" + other: "alrededor de %{count} horas" + x_days: + one: "1 día" + other: "%{count} días" + about_x_months: + one: "alrededor de 1 mes" + other: "alrededor de %{count} meses" + x_months: + one: "1 mes" + other: "%{count} meses" + about_x_years: + one: "alrededor de 1 año" + other: "alrededor de %{count} años" + over_x_years: + one: "más de 1 año" + other: "más de %{count} años" + almost_x_years: + one: "casi 1 año" + other: "casi %{count} años" + prompts: + year: "Año" + month: "Mes" + day: "Día" + hour: "Hora" + minute: "Minuto" + second: "Segundo" + + number: + format: + separator: "," + delimiter: "." + precision: 3 + currency: + format: + format: "%n %u" + unit: "€" + separator: "," + delimiter: "." + precision: 2 + percentage: + format: + delimiter: "" + precision: + format: + delimiter: "" + human: + format: + delimiter: "" + precision: 1 + storage_units: + format: "%n %u" + units: + byte: + one: "Byte" + other: "Bytes" + kb: "KB" + mb: "MB" + gb: "GB" + tb: "TB" + + support: + array: + sentence_connector: 'y' + skip_last_comma: true + words_connector: ", " + two_words_connector: " y " + last_word_connector: " y " \ No newline at end of file diff --git a/config/locales/devise.es.yml b/config/locales/devise.es.yml new file mode 100644 index 00000000..b8f05b40 --- /dev/null +++ b/config/locales/devise.es.yml @@ -0,0 +1,63 @@ +es: + errors: + messages: + not_found: "no encontrado" + already_confirmed: "ya estaba confirmado" + not_locked: "no estaba cerrado" + + devise: + failure: + admin: + unauthenticated: 'Debe crear una cuenta o acceder con una cuenta existente para continuar.' + unconfirmed: 'Debe confirmar su cuenta para continuar.' + locked: 'Su cuenta está bloqueada.' + invalid: 'Email o clave no válidos.' + no_membership: 'Su cuenta no es miembro de este sitio. Por favor contacte con su administrador para obtener acceso.' + invalid_token: 'Token de autenticación no válido.' + timeout: 'Su sesión ha expirado. Por favor inicie una nueva sesión para continuar.' + inactive: 'Su cuenta no está activa.' + sessions: + admin: + signed_in: 'Sesión iniciada con éxito.' + signed_out: 'Sesión finalizada con éxito.' + passwords: + admin: + send_instructions: 'Recibirá un email con instrucciones para resetear su clave en unos minutos.' + updated: 'Su clave ha sido cambiada. Se ha iniciado una sesión.' + confirmations: + admin: + send_instructions: 'Recibirá un email con instrucciones para activar su clave en unos minutos.' + confirmed: 'Su cuenta ha sido activada. Se ha iniciado una sesión.' + registrations: + admin: + signed_up: 'Creación de cuenta realizada con éxito.' + updated: 'Se ha actualizado su cuenta con éxito.' + destroyed: '¡Hasta pronto! Su cuenta ha sido eliminada. Esperamos verle de nuevo.' + unlocks: + admin: + send_instructions: 'Recibirá un email con instrucciones para desbloquear su cuenta en unos minutos.' + unlocked: 'Su cuenta ha sido desbloqueada. Se ha iniciado una sesión.' + mailer: + admin: + confirmation_instructions: 'Instrucciones de activación' + reset_password_instructions: 'Instrucciones de reseteo de clave' + unlock_instructions: 'Instrucciones de desbloqueo' + + + admin: + mailer: + common: + hello: Hola + + confirmation_instructions: + you_can_confirm_your_account_through_the_link_below: "Puede activar su cuenta con el siguiente enlace:" + confirm_my_account: "Activar mi cuenta" + reset_password_instructions: + reset_password_instruction: "Alguien ha pedido que se resetee su clave. Puede realizarlo con el siguiente enlace:" + change_my_password: "Cambiar mi clave" + wrong_request_instruction: "Si usted no pidió este cambio, por favor ignore este email." + unchange_password_message: "Su clave no cambiará hasta que acceda al enlace de más arriba para actualizarla." + unlock_instructions: + locked_account_message: "Su clave fue bloqueada debido a un excesivo número de accesos fallidos." + unlock_account_instruction: "Haga click en el siguiente enlace para desbloquear su cuenta:" + unlock_my_account: "Desbloquear mi cuenta" \ No newline at end of file diff --git a/config/locales/flash.es.yml b/config/locales/flash.es.yml new file mode 100644 index 00000000..95a86452 --- /dev/null +++ b/config/locales/flash.es.yml @@ -0,0 +1,116 @@ +es: + flash: + admin: + pages: + create: + notice: "Página creada con éxito." + alert: "La página no se pudo crear." + update: + notice: "La página se actalizó con éxito." + alert: "La página no se pudo actualizar." + sort: + notice: "Las páginas se han reordenado con éxito." + destroy: + notice: "Página borrada con éxito." + + contents: + create: + notice: "Contenido multimedia creado con éxito." + alert: "El contenido multimedia no se pudo crear." + update: + notice: "Contenido multimedia actualizado con éxito." + alert: "El contenido multimedia no se pudo actualizar." + sort: + notice: "Contenido multimedia reordenado con éxito." + destroy: + notice: "Contenido multimedia eliminado con éxito." + + content_types: + create: + notice: "Modelo creado con éxito." + alert: "El modelo no se pudo crear." + update: + notice: "Modelo actualizado con éxito." + alert: "El modelo no se pudo actualizar." + destroy: + notice: "Modelo eliminado con éxito." + + current_sites: + update: + notice: "Sitio actualizado con éxito." + alert: "El sitio se pudo actualizar." + + snippets: + create: + notice: "Fragmento creado con éxito." + alert: "El fragmento no se pudo crear." + update: + notice: "Fragmento actualizado con éxito." + alert: "El fragmento no se pudo actualizar." + destroy: + notice: "Fragmento eliminado con éxito." + + accounts: + create: + notice: "Cuenta creada con éxito." + alert: "La cuenta no se pudo crear." + + my_accounts: + update: + notice: "Información de cuenta actualizada con éxito." + alert: "Mi información de cuenta no se pudo actualizar." + + sites: + create: + notice: "Sitio creado con éxito." + alert: "El sitio no se pudo crear." + destroy: + notice: "Sitio eliminado con éxito." + + memberships: + create: + notice: "Afiliación creada con éxito." + alert: "La afiliaciónMember no se pudo crear." + already_created: "La cuenta ya estaba añadida al sitio web actual." + + asset_collections: + create: + notice: "Colección creada con éxito." + alert: "La colección no se pudo crear." + update: + notice: "Colección actualizada con éxito." + alert: "La colección no se pudo actualizar." + destroy: + notice: "Colección eliminada con éxito." + + assets: + create: + notice: "Contenido multi-media creado con éxito." + alert: "El contenido multi-media no se pudo crear." + update: + notice: "Contenido multi-media actualizado con éxito." + alert: "El contenido multi-media no se pudo actualizar." + + theme_assets: + create: + notice: "Fichero creado con éxito." + alert: "El fichero no se pudo crear." + update: + notice: "Fichero actualizado con éxito." + alert: "El fichero no se pudo actualizar." + destroy: + notice: "Fichero eliminado con éxito." + + custom_fields: + update: + alert: "Campo no actualizado" + + cross_domain_sessions: + create: + alert: "Debe iniciar una sesión" + + imports: + create: + done: "Sitio actualizado con éxito." + notice: "El sitio está siendo actualizado." + alert: "La importación no se ha completado." \ No newline at end of file diff --git a/config/locales/formtastic.es.yml b/config/locales/formtastic.es.yml new file mode 100644 index 00000000..6cb30b8a --- /dev/null +++ b/config/locales/formtastic.es.yml @@ -0,0 +1,84 @@ +es: + formtastic: + titles: + information: Información General + advanced_options: Opciones Avanzadas + meta: Información SEO + code: Código + raw_template: Plantilla + credentials: Credenciales + language: Idioma + sites: Sitios + access_points: Puntos de acceso + memberships: Cuentas + membership_email: Email de cuentas + file: Fichero + preview: Vista previa + options: Opciones avanzadas + custom_fields: Campos personalizados + other_fields: Otra información + presentation: Presentación + attributes: Atributos + upload: Subir + labels: + theme_asset: + plain_text_name: Nombre de fichero + content_type: Tipo de fichero + new: + source: Fichero + edit: + source: Reemplazar fichero + custom_fields: + field: + _alias: Alias + import: + new: + source: Fichero + samples: Ejemplos + reset: Resetear sitio + default_site_template: "Usar la plantilla por defecto. Haga click aquí para subir una plantilla en formato zip en lugar de usar la plantilla por defecto." + content_type: + raw_item_template: Elemento de la plantilla + api_accounts: Cuentas notificadas + account: + edit: + password: Nueva clave + password_confirmation: Repetición de la nueva clave + + hints: + page: + published: "Las páginas no publicadas son únicamente visibles tras iniciar sesión." + cache_strategy: "Utilizar una caché de página para un mejor rendimiento. La opción 'Simple' es un buen compromiso." + templatized: "Usar la página como plantilla de un modelo." + listed: "Controla si la página se enseña o no en los menús." + content_type_id: "El modelo del cual será una plantilla esta página." + meta_keywords: "Reescribir las palabras clave SEO utilizadas en la cabecera de la página. Deben estar separadas por comas." + meta_description: "Reescribir la metadescripción que se utiliza en la cabecera de la página." + snippet: + slug: "Debe conocerlo de antemano para poder insertarlo en una página" + site: + meta_keywords: "Las meta palabras clave se utilizan en la cabecera de la página. Deben estar separadas por coma. Requerido para SEO." + meta_description: "La meta descripción se utiliza en la cabecera de la página. Requerida para SEO." + domain_name: "ej: locomotiveapp.org" + theme_asset: + slug: "No es necesario añadir la extensión del fichero (.css or .js)" + edit: + source: "Puede reemplazarlo por otro fichero con la misma extensión" + asset: + source: "Todos los tipos de fichero son válidos." + edit: + source: "El fichero está disponible aquí: %{url}" + update: + source: "El fichero está disponible aquí: %{url}" + custom_fields: + field: + _alias: "Propiedad disponible en plantillas Liquid" + hint: "Texto mostrado justo debajo del campo en el formulario de creación" + import: + source: "Un fichero zip conteniendo un fichero database.yml con plantillas y contenido multimedia." + samples: "Si se activa, la importación también copiará contenido multimedia y páginas" + reset: "Si se activa, toda la información del sitio será eliminada antes de importar" + content_type: + raw_item_template: "Puede personalizar el texto mostrado para cada elemento de la lista. Simplemente utilice Liquid. Ej: {{ content.name }})" + api_enabled: "Se utiliza para dejar crear elementos a gente externa a la aplicación (ejemplo: mensajes en un formulario de contacto)" + api_accounts: "Un email de notificación será enviado a las cuentas listadas más arriba cuando un nuevo elemento se cree" diff --git a/doc/changelogs/20110704.txt b/doc/changelogs/20110704.txt index d4be2471..03cc0675 100644 --- a/doc/changelogs/20110704.txt +++ b/doc/changelogs/20110704.txt @@ -28,5 +28,5 @@ Here is a pretty exhaustive list of what the BIG MERGE includes: - the robots.txt can be edited directly from the back-office (site settings) (ticket #57) - 2 new languages: - dutch (#92) - - spanish (#??) + - spanish (#103) - a lot of internal refactoring as well as a ton of bug corrections \ No newline at end of file diff --git a/lib/locomotive/configuration.rb b/lib/locomotive/configuration.rb index 7399e8b1..248e93ab 100644 --- a/lib/locomotive/configuration.rb +++ b/lib/locomotive/configuration.rb @@ -7,7 +7,7 @@ module Locomotive :reserved_subdomains => %w{www admin email blog webmail mail support help site sites}, # :forbidden_paths => %w{layouts snippets stylesheets javascripts assets admin system api}, :reserved_slugs => %w{stylesheets javascripts assets admin images api pages edit}, - :locales => %w{en de fr pt-BR it nl}, + :locales => %w{en de fr pt-BR it nl es}, :cookie_key => '_locomotive_session', :enable_logs => false, :hosting => :auto, diff --git a/lib/locomotive/render.rb b/lib/locomotive/render.rb index 8813fe37..4601dbec 100644 --- a/lib/locomotive/render.rb +++ b/lib/locomotive/render.rb @@ -64,7 +64,7 @@ module Locomotive 'current_page' => self.params[:page], 'params' => self.params, 'url' => request.url, - 'now' => Time.now, + 'now' => Time.now.utc, 'today' => Date.today }.merge(flash.stringify_keys) # data from api diff --git a/public/images/admin/icons/flags/sp.png b/public/images/admin/icons/flags/es.png similarity index 100% rename from public/images/admin/icons/flags/sp.png rename to public/images/admin/icons/flags/es.png diff --git a/spec/lib/locomotive/liquid/drops/content_spec.rb b/spec/lib/locomotive/liquid/drops/content_spec.rb index 725b4909..9266f80a 100644 --- a/spec/lib/locomotive/liquid/drops/content_spec.rb +++ b/spec/lib/locomotive/liquid/drops/content_spec.rb @@ -31,7 +31,7 @@ describe Locomotive::Liquid::Drops::Content do end describe 'more recent than' do - subject { @content.published_at = 1.days.since; render_template('{% if content.published_at > today %}In the future{% endif %}') } + subject { @content.published_at = (Time.now + 1.days); render_template('{% if content.published_at > today %}In the future{% endif %}') } it { should == 'In the future' } end