Agregar campo de BCC en formulario de Joomla 2.5

Si, muchos usamos Joomla en mas de una ocasión, ya sea por comodidad, necesidad o cualquier otra, y como el motivo de este POST no será hablar ni bien ni mal de este CMS pasamos a lo que nos mueve en este momento. 
 
Si bien la versión 2.5 es mucho más completa que la eterna 1.5 a la hora de querer agregar un formulario de manera rápida en nuestros sitios contamos con muchas limitantes en la administración de los mismos como el poder enviar un email a varias cuentas de correo al mismo tiempo pero como verán, no es tan complicado cambiar ese inconveniente, pasemos a la materia:
 
Para agregar un campo de envío oculto a un formulario usando el sistema de contactos de Joomla debemos hacer 4 pasos:
 
1.- Crear un campo en la tabla #__contact_details (Nota: #__ cambia por el prefijo que usaste en tu tabla), el campo lo llamaremos email_cc
 
2.- Abrimos el archivo administrator/components/com_contact/models/forms/contact.xml
y agregaremos la siguiente linea, yo la puse en la linea 31.
<field name="email_cc" type="text" label="Envia copia de email" description="Envia una copia del email"  class="inputbox" size="30" />

Esto lo que hace es agregarnos, en nuestro panel de Contacto el campo que veremos llamado Enviar copia de email, si lo pones en la linea 31, aparecerá abajo de la opción Alias





3.- Ahora abriremos el archivo administrator/components/com_contact/views/contact/tmpl/edit.php
En este, nos vamos a la linea 40 y agregamos lo siguiente:
<li><?php echo $this->form->getLabel('email_cc'); ?>

<?php echo $this->form->getInput('email_cc'); ?></li>​

En este caso lo que hacemos es guardar en la base de datos, en el campo creado en el paso 1 la información del formulario que creamos en el paso 2


4.- Hasta aquí  ya tenemos el campo, el formulario para guardar el dato y ya solo nos falta modificar el envío del  email para que se agregue esa información para eso abrimos el archivo components/com_contacto/controllers/contact.php



Y en la linea 149 agregamos lo siguiente
$mail->addBCC($contact->email_cc);​


y Ahora si, listo, aquí agregamos a la función Submit el campo agregado y el header BCC, si quieres que en lugar de campo oculto (BCC) sea campo como copia simple cambia addBCC por addCC


Visualmente el formulario de nuestra pagina no tendrá modificaciones, simplemente de manera transparente se enviará una copia del mismo al email que registremos en el contacto y una copia oculta al que pongamos en nuestro nuevo campo.



@Javi_Mata