Configuración

El Formulario Prontus se configura mediante variables Prontus estándar, a las que se agregan otras de uso reservado.

 

Variables Prontus Estándar

Las variables Prontus estándar utilizadas son las siguientes:

 

_TS

Timestamp de Prontus. Utilizada para ubicar elarchivo XML con los datos ocultos del formulario.

_FILE

Path completo al artículo Prontus. Utilizado para reconocer la extensión del formulario. Esta extensión debe ser la misma en las plantillas de respuesta.

_PRONTUS_ID

Identificador de la instancia de Prontus, el cual corresponde al nombre del directorio Prontus donde reside el formulario. Esta variable está disponible a partir de la versión 10.10rc5.

Estas variables deben ser enviadas como datos dentro del formulario, para lo cual puede recurrirse a campos ocultos (hidden).

Variables Prontus Reservadas

Para que el Formulario Prontus funcione correctamente, existe una serie de variables Prontus que deben definirse en el FID. Estas variables serán almacenadas en el archivo XML correspondiente, siendo leídas desde él por la cgi prontus_form.

form_admin

E-mails de destino del formulario, separadas por comas.

Ejemplo:

acorrea@midominio.com, pfaundez@web.com

Si como parte del formulario se envía un dato con el nombre _admin, entonces ese dato sustituirá a form_admin. Para evitar que direcciones de correo seandetectadas por sniffers, puede usarse el carácter # como sustituto de la arroba (@).

Ejemplo:


gflores#sitio.com

El uso práctico de esta mecánica es publicar tópicos, temas o áreas distintos usando un combo-box (control select) o alternativas (control radio).

form_remitente

E-mail del remitente. Se puede indicar un remitente fijo en el FID con esta variable.

Al marcar el check "chk_form_force_from" se deja con preferencia el campo "form_from" como remitente. Esta variable está disponible a partir de la versión 11.2.93

form_from

E-mail del remitente. Esta variable es sustituida por el dato email, si es que existe en el formulario.

Si el dato email no existe en el formulario, entonces no se enviará un mail de autorrespuesta.

form_subject

 

Subject (asunto) del mensaje que llegará al administrador. Puede contener datos del formulario, para lo cual deben insertarse marcas de la forma %nombre% (Para más información sobre el parseo de marcas, revisar este artículo.).

Ejemplo:

Formulario

de Contacto Prontus - %tipo%

form_subject_auto

 

Subject (asunto) del mensaje de autorrespuesta que se envía al remitente. Puede contener datos del formulario, para lo cual deben insertarse marcas de la forma %nombre% (Para más información sobre el parseo de marcas, revisar este artículo.).

 

 

form_msg_auto

Mensaje de autorrespuesta que se envía al remitente. Puede contener datos del formulario, para lo cual deben insertarse marcas de la forma %nombre% (Para más información sobre el parseo de marcas, revisar este artículo.).

Ejemplo:

Estimado(a) %nombre%,

Gracias por contestar nuestra encuesta.

Pronto nos contactaremos con Ud.

Visite nuestro sitio web en www.misitio.com

 

Atte.,

El Webmaster

 

form_msg_exito

Mensaje de éxito del sistema, en formato html. Puede contener datos del formulario, para lo cual deben insertarse marcas de la forma %nombre% (Para más información sobre el parseo de marcas, revisar este artículo.).

Ejemplo:

Estimado(a) %nombre%,< br >

Gracias por contestar nuestra encuesta.< br >

Pronto nos contactaremos con Ud.< br >

Visite nuestro sitio web en < a href="http://www.misitio.com" >www.misitio.com< /a > < br >

 

Atte.,< br >

El Webmaster< br >

 

form_msg_error

Mensaje de error del sistema, en formato html. Puede contener datos del formulario, para lo cual deben insertarse marcas de la forma %nombre% (Para más informaciób sobre el parseo de marcas, revisar este artículo.).

La marca %err% es sustituida por el mensaje de error del sistema.

Ejemplo:

 

Estimado(a) %nombre%,< br >

Ha cometido el siguiente error:< br >< br >

%err%< br >< br >

Por favor, vuelva < a href='javascript:history.back()' >atrás< /a > y corríjalo.

CHK_form_required_< nombre >

Indica que el dato < nombre > es obligatorio en el formulario.

CHK_form_backup_datos

Si existe, realiza una copia de los datos recibidos dentro del directorio de respaldo, incluyendo los archivos adjuntos.

Datos en el formulario

Los datos ingresados en el formulario (artículo Prontus publicado), incluyendo eventuales archivos adjuntos, son enviados por e-mail al administrador y eventualmente respaldados (todos) de acuerdo a la existencia de la variable CHK_form_backup_datos.

Los datos ingresados en el formulario son enviados y almacenados en mismo orden en que aparecen en él.

Se acepta un solo archivo adjunto. Si hay varios en el formulario, se enviará y almacenará sólo uno de ellos.

Dentro del correo electrónico al administrador, éstos aparecerán con su nombre, un signo igual (=) y su valor. Por ejemplo:

Nombre = Alejandro Pérez
Telefono = 34667467
Pregunta = ¿Pueden informarme dónde está la home page?

Recibido el 31/02/2007 a las 13:54:23 desde el IP 200.34.212.17

Atentamente,
Prontus CMS

Nótese que al final elFormulario Prontus registra la fecha, la hora y el número IP desde donde fueron recibidos los datos.

En el archivo de respaldo(backup.csv), los datos serán escritos en un archivo CSV (compatible con Excel), donde cada columna contendrá un dato en particular. La primera fila corresponderá a los nombres de los datos almacenados.

Los nombres de los archivos adjuntos son alterados de manera que no se repitan dentro del directorio del formulario.

Validación de datos

El formulario Prontus valida automáticamente los datos cuyos atributos name comiencen con:

  • email o e-mail (se asume que es una dirección de correo electrónico)
  • rut (se asume que es un RUT)
  • telefono, phone, fax, celular o cellphone (se asume que es un número telefónico)

Los datos que comienzan con un underscore (_) no son enviados ni almacenados.

Es decir, el siguiente código hará que Prontus procese el dato enviado como rut:

<input type="text" name="rutCliente" value="" id="rutCliente">

Datos Reservados

Con el fin de relacionar el formulario con sucorrespondiente artículo Prontus, dentro de éste (el formulario) sedeben incluir los siguientes datos:

 

_TS

Timestamp de Prontus. Utilizada para ubicar el archivo XML con los datos ocultos del formulario.

Ejemplo:

< input

type="hidden" name="_TS" value="%%_TS%%" >

_FILE

Path completo al artículo Prontus. Utilizado para reconocer la extensión del formulario. Esta extensión debeser la misma en las plantillas de respuesta.

Ejemplo:

< input

type="hidden" name="_FILE" value="%%_FILE%%" >

_PRONTUS_ID

Identificador de la instancia de Prontus, el cual corresponde al nombre del directorio Prontus donde reside elformulario. Esta variable está disponible a partir de la versión10.10rc5.

Ejemplo:

< input

type="hidden" name="_PRONTUS_ID"

value="%%_PRONTUS_ID%%" >

Para versiones de Prontus anteriores a ésta, debe ingresarse manualmente.

Ejemplo:

< input

type="hidden" name="_PRONTUS_ID"

value="prontus_noticias" >

_pag_exito

Plantilla de éxito del sistema (sólo el nombre del archivo, sin extensión. La extensión se deduce del nombre del archivo que contiene el formulario).

Si no se especifica, entonces se usa:

/< prontus_id >/plantillas/extra/form/pags/exito.< ext >

_pag_error

Plantilla de error del sistema (sólo el nombre del archivo, sin extensión. La extensión se deduce del nombre del archivo que contiene el formulario).

Si no se especifica, entonces se usa:

/< prontus_id >/plantillas/extra/form/pags/error.< ext >

Plantillas

Si no se especifican las plantillas de éxito y error mediante los datos _pag_exito y _pag_error, el Formulario Prontus empleará las plantillas por defecto:

/< prontus_id >/plantillas/extra/form/pags/exito.< ext >

# Plantilla de éxito.

/< prontus_id >/plantillas/extra/form/pags/error.< ext >

# Plantilla de error.

para entregar una respuesta al visitante una vez que ha enviado el formulario.

Dentro de ellos, la marca %%MSG%% será sustituida por el mensaje de resultado del formulario Prontus (ver "parseo de variables").

Para permitir el empleo de php, SSIs y otras formas de contenido dinámico, el Formulario Prontus crea un archivo temporal en el directorio:

/< prontus_id >/site/cache/form/pags

y luego lo entrega al visitante mediante un header "Location".

Es posible enviar los mensajes con el nombre del remitente y destinatario en el FROM y TO, respectivamente, agregando dos variables al formulario de envío. Se deben agregar los dos campos reservados _TO_NOMBRE y _FROM_NOMBRE en el formulario, que usualmente se ubica en /prontus_< nombre >/stat/enviar/formulario.html

Servidor SMTP

El Formulario Prontus utiliza el servidor SMTP indicado en el archivo de configuración prontus_nn-var.cf para realizar los envíos (parámetro SERVER_SMTP).

Estructura de directorios

Los directorios donde se alojan las componentes del Formulario Prontus son los siguientes:

Programas

Los programas se ubican en:

/cgi-bin
prontus_form.cgi # CGI que procesa el formulario.

/cgi-px
o /cgi-cpn
prontus_form_delete.cgi # CGI que elimina un archivo de respaldo de datos.
prontus_form_admin.cgi # Programa visor de datos, usado para ver,
#descargar y/o eliminar los datos recibidos.

Plantillas de artículo

Un formulario Prontus corresponde a un artículo Prontus y por lo tanto sus plantillas se encuentran en:

/< prontus_id >/plantillas/artic/fecha/pags

Las plantillas multivistas se encuentran en:

/< prontus_id >/plantillas/artic/fecha/pags-vvv

Artículo Formulario

El artículo generado se encontrará junto alresto de los artículos publicados, en un directorio de la forma:

/< prontus_id >/site/artic/< aaaammdd >/pags

y

/< prontus_id >/site/artic/< aaaammdd >/pags-vvv

Donde "vvv" corresponde al nombre de cada vista.

Plantillas de éxito y error

Las plantillas de las páginas de éxito y error se encuentran en:

/< prontus_id >/plantillas/extra/form/pags

Las plantillas multivistas se encuentran en:

/< prontus_id >/plantillas/extra/form/pags-vvv

Donde "vvv" corresponde al nombre de cada vista.

Respaldo de datos

El respaldo de los datos recibidos se encuentra en:

/< prontus_id >/cpan/procs/form/< ts >

El archivo de respaldo se llama backup.csv. A los archivos adjuntos se les antepone un número aleatorio para evitar que sean sobreescritos.

Archivos temporales

Los archivos temporales utilizados para entregar la respuesta al visitante se encuentran en:

/< prontus_id >/site/cache/form/pags

y

/< prontus_id >/site/cache/form/pags-vvv

Donde "vvv" corresponde al nombre de cada vista.