File: /var/www/formularioinscripcion.bradford/application/controllers/RefundController.php
<?php
class RefundController extends CI_Controller
{
function __construct()
{
parent::__construct();
define('LAYOUT', 'layout');
}
function index()
{
$this->load->view('shared/' . LAYOUT, [
'bancos' => get_table('bancos', 'id, nombre', array('nombre' => 'asc')),
'parentescos' => get_table('parentescos', 'id, nombre', array('id' => 'asc')),
'ok_email' => $this->session->flashdata('ok_email'),
'main_content' => 'admin/index_view'
]);
}
function get_ruts($rut_apoderado)
{
$rut_apoderado = str_replace(['.', '-'], '', $rut_apoderado);
$apoderado = get_row_by_where('apoderados_alumnos', ['rut_apoderado' => $rut_apoderado]);
if ($apoderado->medio_pago == 'PAT' || $apoderado->medio_pago == 'PAC') {
$hijos = $this->db->query("SELECT * FROM apoderados_alumnos WHERE rut_apoderado = '$rut_apoderado' AND solicita_devolucion < 2")->result();
} else {
$hijos = get_result_by_where('apoderados_alumnos', ['rut_apoderado' => $rut_apoderado, 'solicita_devolucion' => 0]);
}
$response = [];
$response['error'] = '';
if (count($hijos) > 0) {
foreach ($hijos as $key => $value) {
$response['alumnos'] .= '<input name="rut_alumnos[]" id="rut_alumno' . $value->id . '" value="' . $value->id . '" type="checkbox" placeholder="" class="rut_alumnos">
' . format_rut($value->rut_alumno) . " - $value->nombre_alumno<br/>";
}
$response['alumnos'] .= '<br/><span class="text-muted">(*) Seleccione el/los rut de los alumnos para gestionar la solicitud</span>';
} else {
$response['error'] .= 'Ya se ha realizado un proceso previamente para este Rut';
}
$response['validate'] = !empty($apoderado) ? true : false;
$response['create'] = !empty($hijos) ? false : true;
$response['alumnos'] .= '<br/>';
$response['apoderado'] .= $apoderado->nombre_apoderado;
$response['medio_pago'] .= $apoderado->medio_pago;
echo json_encode($response);
}
function register()
{
$post = $this->input->post();
if (!empty($post)) {
$post['rut'] = str_replace('.', '', $post['rut']);
$rut_apoderado = str_replace('-', '', $post['rut']);
$post['rut_cta'] = str_replace('.', '', $post['rut_cta']);
$parentesco = get_row_by_where('parentescos', array('id' => $post['parentesco']));
$banco = get_row_by_where('bancos', array('id' => $post['banco']));
$post['banco_id'] = $banco->id;
$post['parentesco_id'] = $parentesco->id;
$post['ip'] = $_SERVER['REMOTE_ADDR'];
$rut_alumnos = $post['rut_alumnos'];
unset($post['parentesco'], $post['banco'], $post['rut_alumnos']);
$apoderado = get_row_by_where('apoderados_alumnos', ['rut_apoderado' => $rut_apoderado]);
if ($apoderado->medio_pago == 'PAT' || $apoderado->medio_pago == 'PAC') {
$hijos = $this->db->query("SELECT * FROM apoderados_alumnos WHERE rut_apoderado = '$rut_apoderado' AND solicita_devolucion < 2")->result();
} else {
$hijos = get_result_by_where('apoderados_alumnos', ['rut_apoderado' => $rut_apoderado, 'solicita_devolucion' => 0]);
}
foreach ($hijos as $key => $hijo) {
$post['rut_alumno_id'] = $hijo->id;
$contacto_id = insert('contactos', $post);
update_row_by_where('apoderados_alumnos', ['solicita_devolucion' => 2], ['id' => $hijo->id]);
$rut_alumnos[$key] = get_row_by_where('apoderados_alumnos', ['id' => $hijo->id]);
}
/*
if (!empty($_FILES['files'])) {
$ruta_archivo = ROOT_PATH_BASE . "/contact_files/$contacto_id";
$ruta_remota = base_url() . "contact_files/$contacto_id";
if (is_dir($ruta_archivo) === FALSE) {
mkdir($ruta_archivo, 0755, TRUE);
}
foreach ($_FILES['files']['tmp_name'] as $key => $value) {
$files_attach[$key]['file_name'] = $nombre_archivo = clean_str_url($_FILES['files']['name'][$key]);
$files_attach[$key]['local_path'] = "$ruta_archivo/$nombre_archivo";
$files_attach[$key]['remote_path'] = "$ruta_remota/$nombre_archivo";
if (copy($value, "$ruta_archivo/$nombre_archivo")) {
//echo "archivo cargado";
} else {
//echo "Problemas al carga archivo";
}
}
}
update_row_by_where('contactos', array('archivos' => str_replace("\\", '', json_encode($files_attach))), array('id' => $contacto_id));
*/
$saludo = "<br/><p>Estimado Equipo de Administración</p>
<p>Hemos recibido una nueva solicitud de renuncia al mecanismo de financiamiento para la Gira UK a través de nuestro formulario web. A continuación, se detallan los datos:</p>";
$datos = "<p><b>N° operación: </b> $contacto_id</p>
<p><b>Fecha operación : </b>" . (date('d-m-Y H:i:s')) . "</p>
<p>
<li><b>Datos del Apoderado/a:</b>
<ul><b>Nombre apoderado : </b> $post[nombre]</ul>
<ul><b>Rut apoderado: </b> $post[rut]</ul>
<ul><b>Email : </b> $post[email]</ul>
<ul><b>Teléfono : </b> $post[telefono]</ul>
<ul><b>Relación con el Estudiante : </b>$parentesco->nombre</ul>
</li>
</p>
";
if (!empty($rut_alumnos)) {
$datos .= "<p><li><b>Datos del Alumno/s a Solicitar Devolución</b>";
foreach ($rut_alumnos as $key => $value) {
$datos .= "<ul>RUT: " . format_rut($value->rut_alumno) . "</ul>";
}
$datos .= "</li></p>";
}
if (!empty($post['numero_cuenta'])) {
$datos .= "
<p>
<li><b>Datos Bancarios</b>
<ul><b>Banco : </b> $banco->nombre</ul>
<ul><b>Tipo de cuenta : </b> $post[tipo_cuenta]</ul>
<ul><b>Número de cuenta : </b> $post[numero_cuenta]</ul>
<ul><b>Rut cuenta banco : </b> $post[rut_cta]</ul>
</li>
</p>";
}
$data['main_content'] = $saludo . $datos . "<br/>Atentamente.
<br/>
<p style=\"text-align:center\">Sistema de inscripción financiamiento Gira UK</p>
<p style=\"text-align:center\">Bradford School</p>";
$html = $this->load->view('email/contact_view', $data, TRUE);
$data_mail['mensaje'] = $html;
$dataEmail = [
'para' => $_ENV['DESTINATARIO_EMAIL'],
'remitente' => $_ENV['REMITENTE_BASE'],
'usuario' => $_ENV['USUARIO_MAIL_BASE'],
'bcc_remitente' => $_ENV['BCC_REMITENTE'],
'asunto' => 'Notificación de Nueva Solicitud de Renuncia al Mecanismo de Financiamiento Gira UK',
'mensaje' => $html
];
$result = enviarCorreoMailBrevo($dataEmail);
//Correo Apoderado
$dataEmail['asunto'] = 'Confirmación de Recepción: Renuncia al Mecanismo de Financiamiento Gira UK';
$dataEmail['para'] = $post['email'];
unset($dataEmail['bcc_remitente']);
$saludo = "<br/><p>Estimado/a $post[nombre]</p>
<p>Junto con saludar, le informamos que hemos recibido exitosamente su solicitud de renuncia al mecanismo de financiamiento para la Gira UK. A continuación, le proporcionamos los detalles de la operación:</p>";
$data['main_content'] = $saludo . $datos . "
<p>Este correo es la confirmación de su solicitud de renuncia al mecanismo de financiamiento para la Gira UK. </p>
<p>En caso de tener alguna consulta, favor de contactar a matricula2024@bradford.cl</p>
<br/>Reciba cordiales saludos, <br/><br/>
<p style=\"text-align:center\">Equipo de Matrícula </p>
<p style=\"text-align:center\">Bradford School</p>";
$html = $this->load->view('email/contact_view', $data, TRUE);
$dataEmail['mensaje'] = $html;
$result = enviarCorreoMailBrevo($dataEmail); // Correo Apoderado
$this->session->set_flashdata('ok_email', 'Su formulario ha sido registrado con éxito. Le enviaremos un correo electrónico con los detalles de su solicitud.');
redirect(base_url());
} else {
redirect(base_url());
}
}
}