<?php

require_once("../../includes/bootstrap2.php");
$sesion = new sesion();
$academia = bootstrap::initBd($sesion->get('anio'));
/** Error reporting */
error_reporting(E_ALL);
ini_set('display_errors', true);
ini_set('display_startup_errors', true);
date_default_timezone_set('Europe/London');

if (PHP_SAPI == 'cli')
    die('This example should only be run from a Web Browser');

/** Include PHPExcel */
require_once("../../includes/phpExcel/PHPExcel.php");
// Create new PHPExcel object
$objPHPExcel = new PHPExcel();

// Set document properties
$objPHPExcel->getProperties()->setCreator("Academia Web")
        ->setLastModifiedBy(date('Y-m-d H:m:s'))
        ->setDescription("Sabana de desempeños")
        ->setKeywords("Academia 2013")
        ->setCategory("Reportes Academia");
// Add some data

$iduser = $sesion->get('ac_userid');
$configuracion = $sesion->get('configuracion');
$nombre_grupo = $configuracion['nombres_grupos'];


$periodon = $academia->escapar($_GET['per'], 'int');
$nro_est=$academia->escapar($_GET['nro_est']);
$orden=$academia->escapar($_GET['ord']);

switch ($periodon) {
    case 1:
        $periodo = "Primero";
        break;
    case 2:
        $periodo = "Segundo";
        break;
    case 3:
        $periodo = "Tercero";
        break;
    case 4:
        $periodo = "Cuarto";
        break;
    case 5:
        $periodo = "Quinto";
        break;
    case 6:
        $periodo = "Sexto";
        break;
    case 7:
        $periodo = "Séptimo";
        break;
    case 8:
        $periodo = "Octavo";
        break;
    case 9:
        $periodo = "Noveno";
        break;
    case 10:
        $periodo = "Décimo";
        break;
    case 11:
        $periodo = "Décimo Primero";
        break;
    case 12:
        $periodo = "Décimo Segundo";
        break;
}


//echo $sql;
$i = 0;
$cmps = "";

$hojaActiva = $objPHPExcel->getActiveSheet();
//
$dtsColegio = $sesion->get('info_colegio');
$hojaActiva->setCellValue('A1', $dtsColegio['nombre']);
$hojaActiva->setCellValue('A2', "NIT. " . $dtsColegio['nit']);
$hojaActiva->setCellValue('A3', empty($dtsColegio['resolucion']) ? $dtsColegio['decreto'] : $dtsColegio['resolucion'] );
$hojaActiva->setCellValue("A4","Periodo: " . $periodo);

$sql = "call SP_DOS_MEJORES('$periodon','$iduser','$orden',$nro_est,'DESC','$nombre_grupo')";
if($sesion->getVar('ac_tipo_user')=='1'){
	$hojaActiva->setCellValue("A5", $sql);
}


$academia->instruccion($sql, 0, 1);

$mayus_nom = $sesion->getVar('configuracion.format_nom');
$mayus_mat = $sesion->getVar('configuracion.format_mat');

$row = $academia->extraer_registro();
$xy = 1;
$filOrg = 6;
$colOrg = 0;
$col = $colOrg;
$fil = $filOrg;
$hojaActiva->setCellValueByColumnAndRow($col, $fil, 'N°');
$hojaActiva->setCellValueByColumnAndRow(++$col, $fil, 'Sede');
//
$hojaActiva->setCellValueByColumnAndRow(++$col, $fil, 'Jornada');
$hojaActiva->setCellValueByColumnAndRow(++$col, $fil, 'Grupo');

$hojaActiva->setCellValueByColumnAndRow(++$col, $fil, 'Nombres y apellidos');
$hojaActiva->setCellValueByColumnAndRow(++$col, $fil, 'Promedio');



$fil++;
do {
    $hojaActiva->setCellValue('A' . $fil, $xy);
    $hojaActiva->setCellValue('B' . $fil, $row['sede']);
    $hojaActiva->setCellValue('C' . $fil, $row['jornada']);
    $hojaActiva->setCellValue('D' . $fil, $row['grupo']);
    
    $hojaActiva->setCellValue('E' . $fil, formatoPalabras($row['estudiante'], $mayus_nom));
    $hojaActiva->setCellValue('F' . $fil, $row['promedio']);
    $promEst = 0;
    $ax = 0;
       
    $fil++;
    $xy++;
} while ($row = $academia->extraer_registro());


$styleArrayMat = array(
    'alignment' => array(
        'horizontal' => PHPExcel_Style_Alignment::HORIZONTAL_CENTER,
        'rotation' => 90,
    )
);
$styleArray1 = array(
    'borders' => array(
        'allborders' => array(
            'style' => PHPExcel_Style_Border:: BORDER_THIN,
            'color' => array('argb' => '0000'),
        ),
    ),
);

//
//
///* FOrmateando encabezado */
$hojaActiva->mergeCells('A1:' . $dtsLang['mod_forma_nom_cel'][$col] . '1');
$hojaActiva->mergeCells('A2:' . $dtsLang['mod_forma_nom_cel'][$col] . '2');
$hojaActiva->mergeCells('A3:' . $dtsLang['mod_forma_nom_cel'][$col] . '3');
$hojaActiva->mergeCells('A4:' . $dtsLang['mod_forma_nom_cel'][$col] . '4');
//

//Encabezado en negrita
$rango = $dtsLang['mod_forma_nom_cel'][0] . $filOrg . ':' . $dtsLang['mod_forma_nom_cel'][$col] . $filOrg;
$hojaActiva->getStyle($rango)->getFont()->setBold(true);

//
$hojaActiva->getStyle('A1:' . $dtsLang['mod_forma_nom_cel'][$col] . '5')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
$hojaActiva->getStyle('A1:' . $dtsLang['mod_forma_nom_cel'][$col] . '5')->getFont()->setBold(true);

///* Formateo las notas */
//$rango = $dtsLang['mod_forma_nom_cel'][$colOrg] . ($filOrg + 1) . ':' . $dtsLang['mod_forma_nom_cel'][$col - 1] . $fil;
//$hojaActiva->getStyle($rango)->getNumberFormat()->setFormatCode('#,#0.0');
//

//
//$rango = $dtsLang['mod_forma_nom_cel'][$colOrg] . $filOrg . ':' . $dtsLang['mod_forma_nom_cel'][$col + 1] . $filOrg;
//$rangoAB = $dtsLang['mod_forma_nom_cel'][$colOrg] . ':' . $dtsLang['mod_forma_nom_cel'][$col];
//
//$hojaActiva->getStyle($rango)->applyFromArray($styleArrayMat);
//$hojaActiva->getStyle($rango)->getAlignment()->setWrapText(true);
$rango = $dtsLang['mod_forma_nom_cel'][$colOrg] . $filOrg . ':' . $dtsLang['mod_forma_nom_cel'][$col] . ($fil-1);
$hojaActiva->getStyle($rango)->applyFromArray($styleArray1);
//
//
////formato para colocar en negrita ñlos promedios por materia
//$rango = $dtsLang['mod_forma_nom_cel'][$colOrg - 2] . $fil . ':' . $dtsLang['mod_forma_nom_cel'][$col] . $fil;
//$hojaActiva->getStyle($rango)->getFont()->setBold(true);

//
//$hojaActiva->getRowDimension($filOrg)->setRowHeight(129);
$hojaActiva->getColumnDimension('A')->setAutoSize(true);
$hojaActiva->getColumnDimension('B')->setAutoSize(true);
$hojaActiva->getColumnDimension('C')->setAutoSize(true);
$hojaActiva->getColumnDimension('D')->setAutoSize(true);
$hojaActiva->getColumnDimension('E')->setAutoSize(true);

// Rename worksheet
$objPHPExcel->getActiveSheet()->setTitle('Mejores estudiantes');

// Set active sheet index to the first sheet, so Excel opens this as the first sheet
$objPHPExcel->setActiveSheetIndex(0);

$nomdoc = "Estudiantes.xlsx";
// Redirect output to a client’s web browser (Excel5)
header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');
header('Content-Disposition: attachment;filename="' . $nomdoc . '"');
header('Cache-Control: max-age=0');

$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');
$objWriter->save('php://output');
unset($objPHPExcel);
unset($objWriter);
exit;