Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Spanish translation: Mail and SMS #44

Merged
merged 18 commits into from Mar 31, 2013
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
4 changes: 4 additions & 0 deletions .gitignore
@@ -1 +1,5 @@
*.DS_Store
*~
*.bak
*.backup

14 changes: 12 additions & 2 deletions sources/29-web2py-english/11.markmin
Expand Up @@ -214,8 +214,6 @@ Here is a list of useful event names:
Here is a list of useful effects defined by jQuery:

##### Effects
- ``jQuery(...).attr(name)``: Returns the name of the attribute value
- ``jQuery(...).attr(name, value)``: Sets the attribute name to value
- ``jQuery(...).show()``: Makes the object visible
- ``jQuery(...).hide()``: Makes the object hidden
- ``jQuery(...).slideToggle(speed, callback)``: Makes the object slide up or down
Expand All @@ -232,6 +230,18 @@ in a view:
{{=DIV('click me!', _onclick="jQuery(this).fadeOut()")}}
``:code

Other useful methods and attributes for handling selected elements

##### Methods and attributes
- ``jQuery(...).attr(name)``: Returns the name of the attribute value
- ``jQuery(...).attr(name, value)``: Sets the attribute name to value
- ``jQuery(...).html()``: Without arguments, it returns the inner html from the selected elements, it accepts a string as argument for replacing the tag content.
- ``jQuery(...).text()``: Without arguments, it returns the inner text of the selected element (without tags), if a string is passed as argument, it replaces the inner text with the new data.
- ``jQuery(...).css(name, value)``: With one parameter, it returns the CSS value of the style attribute specified for the selected elements. With two parameters, it sets a new value for the specified CSS attribute.
- ``jQuery(...).each(function)``: It loops trought the selected elements set and calls function with each item as argument.
- ``jQuery(...).index()``: Without arguments, it returns the index value for the first element selected related to its siblings. (i.e, the index of a LI element). If an element is passed as argument, it returns the element position related to the selected elements set.
- ``jQuery(...).length``: This attribute returns the number of elements selected.

jQuery is a very compact and concise Ajax library; therefore web2py does not need an additional abstraction layer on top of jQuery (except for the ``ajax`` function discussed below). The jQuery APIs are accessible and readily available in their native form when needed.

Consult the documentation for more information about these effects and other jQuery APIs.
Expand Down
27 changes: 18 additions & 9 deletions sources/36-web2py-spanish-translation-in-progress/00.markmin
@@ -1,17 +1,26 @@
``web2py`` fué lanzado en 2007 y ahora, después de cuatro años de continuo desarrollo, hemos llegado a una muy necesaria cuarta edición del libro. Durante este tiempo, ``web2py`` ha logrado la atención de miles de usuarios y más de 100 desarrolladores. Nuestro esfuerzo colectivo ha creado uno de los más completos marcos de desarrollo "de código libre" en existencia.
Creo que la habilidad para crear fácilmente aplicaciones web de alta calidad es de una importancia crítica para el desarrollo de una sociedad abierta y libre. Esto evita que los jugadores más pesados puedan monopolizar la libre circulación de la información.

Originalmente empezé ``web2py`` como una herramienta para enseñar, creo, que la habilidad para construir aplicaciones web de alta calidad es de crítica importancia para la creciente libre y abierta sociedad. Previene que los grandes "jugadores" monopolizen el caudal de información. Esta motivación continúa siendo válida y es mucho más importante hoy en día.

En general, el proposito de cualquier marco de desarrollo orientado a la web, es hacer el desarrollo de manera fácil, rápida y prevenir al desarrollador de cometer equivocaciones, especialmente en materia relacionada a la seguridad. En ``web2py`` abordamos estos inconvenientes con nuestras tres metas principales:
Por esa razón, comencé el proyecto ``web2py`` en 2007, inicialmente como herramienta de aprendizaje con el fin de facilitar el desarrollo web, para que fuera más rápido y más seguro. Con el tiempo, se ha ganado el afecto de miles de usuarios idóneos, y de cientos de desarrolladores. Nuestro esfuerzo colectivo ha creado uno de los marcos de desarrollo de código abierto más completo para el desarrollo web empresarial.

''Fácil uso'' es la meta primaria de ``web2py``. Para nosotros, esto significa reducir el tiempo de desarrollo y aprendizaje. Esto es el porque ``web2py`` es un entorno de desarrollo completo sin dependencias. No requiere instalación y no tiene archivos de configuración. Todo funciona ''out of the box'', incluyendo un servidor web, una base de datos y un IDE entorno de desarrollo basado en web, que da acceso a todas las funciones. La API incluye 12 objetos principales, que son fáciles para trabajar y memorizar. También puede inter-operar con la mayoría de los servidores web, base de datos y todas las librerías de python.

''Rápido'' la rapidez en el desarrollo es nuestra segunda meta. Cada función en ``web2py`` tiene un comportamiento por defecto (que puede ser modificado). Por ejemplo, tan pronto como haya especificado su modelo de datos, va a tener acceso a un panel de administración de base de datos. ``web2py`` también genera automáticamente formularios para sus datos, y permite exponer dichos datos en HTML, XML, JSON, RSS, etc.
Como resultado, en 2011, ``web2py`` ganó el Premio Bossie para el Mejor Sofware de Desarrollo de Código Abierto, y en el 2012 ganó el Premio Anual a las Mejores Tecnologías de InfoWorld.

''Seguridad'' está en el corazón de ``web2py``, y todas nuestra metas aquí son las de mantener bajo llave su sistema y la información de manera segura. Así nuestra capa de abstracción elimina todo posible ataque de "injerto SQL". El lenguaje de plantilla previene contra las vulnerabilidades "Cross Site Scripting". Los formularios generados por ``web2py`` proveen validación de los campos y protege de los ataques "Cross Site Request Forgeries". Las claves siempre son guardadas de forma encriptada. Las sesiones son almacenadas del lado del servidor por defecto para prevenir la manipulación de las mismas, así como también son encriptadas.

``web2py`` siempre ha sido desarrollado desde la perspectiva del usuario, y es constantemente optimizado para lograrlo más ágil y rápido, conservando siempre la compatibilidad hacia atras.
Como verás a lo largo de los capítulos que siguen, ``web2py`` intenta bajar la barrera de ingreso al desarrollo web centrándose en tres metas principales:

``web2py`` es libre para usarlo. Si usted se beneficia del mismo, nosotros esperamos que contribuya a la sociedad de cualquier manera que elija.

En 2011 la revista "Infoworld", evaluó seis de los marcos de desarrollo más populares basados en Python, y eligió a web2py como el mejor. También en 2011, web2py ganó el premio "Bossie" por el mejor software de desarrollo de código abierto.
''Fácil uso''. Esto implica reducir el tiempo empleado en aprender y desplegar así como también los costos de desarrollo y mantenimiento. Es por esto que ``web2py`` es un marco completamente integrado y sin dependencias. No requiere de instalación y no tiene archivos de configuración. Todo funciona instantáneamente, incluyendo un servidor web, la base de datos y un entorno de desarrollo para navegador que provee de acceso a las características principales. La API incluye solamente 12 objetos del núcleo, que son fáciles de usar y memorizar. Puede interactual con la mayor parte de los servidores web y bases de datos y con todas librerías de Python.


''Desarrollo ágil''. Cada función de ``web2py`` tiene un comportamiento por defecto (que se puede sobreescribir). Por ejemplo, ni bien hayas especificado tus modelos de datos, tendrás acceso a la interfaz administrativa de la base de datos para navegador. Además, ``web2py`` genera automáticamente los formularios para tus datos y te permite exponer fácilmente los datos en HTML, XML, JSON, RSS, etc. ``web2py`` provee de algunos widget de nivel alto como la wiki y el grid para crear aplicaciones avanzadas rápidamente.


''Seguridad''. La Capa de Abstracción de la Base de Datos (DAL) elimina las inyecciones de SQL. El lenguaje de plantillas previene las vulnerabilidades de secuencia de comandos en sitios cruzados o (''Cross Site Scripting''). Los formularios generados por ``web2py`` proveen de validación de campos y bloquean las falsificaciones de solicitud en sitios cruzados (CSRF). Las contraseñas siempre se almacenan codificadas. Las sesiones se almacenan del lado del servidor para prevenir la manipulación de los cookie (''Cookie Tampering''). Los cookie se identifican con UUID para evitar el secuestro de sesiones o ''Session Hijacking''.


``web2py`` fue construido pensando en la perspectiva del usuario y es constantemente optimizado internamente para que sea más rápido y ligero, pero siempre conservando la ''compatibilidad hacia atrás''.


Puedes usar ``web2py`` en forma gratuita. Si te beneficias usándolo, espero que eso te incentive a ''agradecerlo'' contribuyendo a la sociedad en la forma que tu elijas.