Example #1
0
 public function action_form_postulacion()
 {
     if (isset($_GET['postulacion']) && $_GET['postulacion'] == 'nueva' && isset($_POST['postulacion']) && $_POST['postulacion']) {
         $data = $_POST['postulacion'];
         $data['ext_curriculum'] = 'none';
         parent::model('Model_Postulacion')->set_data($data);
         $valid_data = parent::model('Model_Postulacion')->validate();
         if (isset($_FILES) && $_FILES['curriculum']) {
             $fileCurriculum = $_FILES['curriculum'];
             $fileName = explode('.', $fileCurriculum['name']);
             $secciones = count($fileName);
             $upload = Upload::factory('private_files');
             $upload->file($fileCurriculum);
             $upload->set_max_file_size(3);
             $upload->set_allowed_mime_types(array('application/pdf', 'application/vnd.openxmlformats-officedocument.wordprocessingml.document', 'application/msword'));
             if ($upload->check() && parent::model('Model_Postulacion')->valid) {
                 if ($secciones > 1) {
                     $extencion = $fileName[$secciones - 1];
                     parent::model('Model_Postulacion')->ext_curriculum = $extencion;
                     if ($id_postulacion = parent::model('Model_Postulacion')->save()) {
                         $upload->set_filename($id_postulacion . '.' . parent::model('Model_Postulacion')->ext_curriculum);
                         $upload->save();
                         parent::set_mensaje('Gracias, tu postulacion ha sido aceptada y guardada con éxito');
                         // envío correo administrador de nueva postulación
                         $email_admin = get_option('admin_email');
                         parent::model('Correos', array('to' => $email_admin, 'subject' => 'Nueva Postulacion'));
                         // exit();
                         parent::model('Correos')->send('Nueva Postulacion para la oferta "' . get_the_title(parent::model('Model_Postulacion')->id_oferta) . '"');
                         header('Location: ' . get_permalink(parent::model('Model_Postulacion')->id_oferta));
                         exit;
                     } else {
                         parent::set_error('Ha ocurrido un error al guardar los datos, por favor intentalo mas tarde');
                         parent::model('Model_Postulacion')->set_session_data();
                         header('Location: ' . get_permalink(parent::model('Model_Postulacion')->id_oferta));
                         exit;
                     }
                 } else {
                     parent::set_error('Archivo no válido');
                     parent::model('Model_Postulacion')->set_session_data();
                     header('Location: ' . get_permalink(parent::model('Model_Postulacion')->id_oferta));
                     exit;
                 }
             } else {
                 parent::model('Model_Postulacion')->set_session_data();
                 if (!parent::model('Model_Postulacion')->valid) {
                     parent::set_error($valid_data);
                 }
                 parent::set_error($upload->get_errors());
                 header('Location: ' . get_permalink(parent::model('Model_Postulacion')->id_oferta));
                 exit;
             }
         }
     } else {
         // // parent::model('Model_Postulacion')->set_session_data();
         // header('Location: /');
         // exit();
     }
 }