ACC SHELL
<?
require "./classes/classes.php";
$pripojeni = new CDatabaze ( $conf_uzivatel, $conf_heslodb, $conf_server, $conf_databaze);
$sezeni = new CSezeni();
$vypsat_mesic = $_REQUEST['vypsat_mesic'] ? $_REQUEST['vypsat_mesic'] : date("Y-m");
if($_SESSION['auth_uzivatel_nick']=="" || $_SESSION['auth_uzivatel_id']=="" || $_SESSION['auth_uzivatel_authorisation']=="" ){
echo "nemate potrebne opravneni";
die();
}
header("Content-type: application/vnd-ms-excel");
header("Content-Disposition: attachment; filename=ucastnici_seznam.xls");
?>
<?php
//set_time_limit(10);
require_once "./excel_classes/class.writeexcel_workbook.inc.php";
require_once "./excel_classes/class.writeexcel_worksheet.inc.php";
list($rok, $mesic) = explode("-", $vypsat_mesic);
$cas_prvniho = mktime(0,0,0,$mesic+0, 1, $rok);
$cas_posledniho = mktime(0,0,0,$mesic+1, 1, $rok);
$pocet_dni_v_mesici = ($cas_posledniho-$cas_prvniho)/86400;
$dny_cesky = array(0 => "Ne", 1 => "Po", 2 => "Út", 3 => "St", 4 => "Čt", 5 => "Pá", 6 => "So" );
$mesice_cesky = array( 1 => "Leden", 2 => "Únor", 3 => "Březen", 4 => "Duben", 5 => "Květen", 6 => "Červen", 7 => "Červenec", 8 => "Srpen", 9 => "Září", 10 => "Říjen", 11 => "Listopad", 12 => "Prosinec" );
$pripojeni->dotaz("SET NAMES 'CP1250'");
$dbdata = $pripojeni->dotaz("SELECT K.* FROM ".$GLOBALS['config_db_prefix']."modul_kongresy_kurzy K WHERE K.id='".$_REQUEST['id_kurzu']."' limit 1");
if ($dbdata && $data = $pripojeni->objekt_dotazu($dbdata)){
$nazev_kurzu = $data->nazev;
$typ_kurzu = $data->typ;
}
$fname = tempnam("./tmp", "demo.xls");
$workbook =& new writeexcel_workbook($fname);
$worksheet =& $workbook->addworksheet(''.$mesice_cesky[$mesic+0].' '.$rok.'');
#######################################################################
#
# Write Kontrola prihlasenych
#
$worksheet->set_column('A:B', 10 );
$worksheet->set_column('C:F', 15 );
$heading =& $workbook->addformat(array(
bold => 1,
size => 18
));
$headings = array('Seznam přihlášených', '');
$worksheet->write_row('B1', $headings, $heading);
####################################################################
# write
$heading =& $workbook->addformat(array(
bold => 1,
size => 16
));
$headings = array($nazev_kurzu, '');
$worksheet->write_row('B2', $headings, $heading);
######################################################################
# write v teto tabulce jsou vsichni dopredu ....
$text_format =& $workbook->addformat(array(
bold => 0,
italic => 0,
color => 'black',
size => 12
));
//$worksheet->write('B3', "v této tabulce jsou uvedeny všichni dopředu-přihlášení závodníci na 50 Km");
//$worksheet->write('B4', "závod na 25 je v dalším listě této tabulky");
######################################################################
# write zahlavi tabulky
$text_format =& $workbook->addformat(array(
bold => 1,
italic => 0,
color => 'black',
size => 11
));
$worksheet->write('B4', "Město", $text_format);
$worksheet->write('C4', "Název organizace", $text_format);
$worksheet->write('D4', "Adresa", $text_format);
$worksheet->write('E4', "PSČ", $text_format);
$worksheet->write('F4', "IČ", $text_format);
$worksheet->write('G4', "E-mail", $text_format);
$worksheet->write('H4', "Telefon", $text_format);
$worksheet->write('I4', "Členství", $text_format);
$worksheet->write('J4', "Cena", $text_format);
$worksheet->write('K4', "Jméno", $text_format);
$worksheet->write('L4', "Funkce", $text_format);
//$worksheet->write('H4', "E-mail", $text_format);
//$worksheet->write('I4', "Telefon", $text_format);
if(!$typ_kurzu){
$worksheet->write('M4', "Workshop", $text_format);
$worksheet->write('N4', "Galavečer", $text_format);
}
$i = 6;
$dbdata = $pripojeni->dotaz("SELECT U.*, count(O.id) as pocet_osob FROM ".$GLOBALS['config_db_prefix']."modul_kongresy_ucastnik U LEFT JOIN ".$GLOBALS['config_db_prefix']."modul_kongresy_ucastnik_osoby O ON U.id=O.ucastnik WHERE U.kurz='".$_REQUEST['id_kurzu']."' GROUP BY U.id ORDER BY nazev");
while ($dbdata && $data = $pripojeni->objekt_dotazu($dbdata)){
$dbdata_osoby = $pripojeni->dotaz("SELECT * FROM ".$GLOBALS['config_db_prefix']."modul_kongresy_ucastnik_osoby WHERE ucastnik='".$data->id."' ORDER BY prijmeni,jmeno");
$galavecer =0;
######################################################################
# write obsah tabulky
while($dbdata_osoby && $data_osoby = $pripojeni->objekt_dotazu($dbdata_osoby) ){
/*
$data->obec
$data->nazev
$data->ulice $data->psc $data->obec
$data->ic
"".$data_osoby->titul." ".$data->jmeno." ".$data_osoby->prijmeni." ".$data_osoby->titul_za.""
//$data->funkce v organizaci
//$data->email
//$data->telefon
//$data->podpis účastníka
*/
/* ********************** vypoctena cena ***/
$celkova_cena =0;
$dbdatac = $pripojeni->dotaz("SELECT distinct K.*,C.nazev as nazev_centra,L.jmeno, L.prijmeni, L.titul,L.titul_za, L.detail, S.nazev as nazev_cilove_skupiny FROM ((".$GLOBALS['config_db_prefix']."modul_kongresy_kurzy K LEFT JOIN ".$GLOBALS['config_db_prefix']."modul_kongresy_centrum C ON K.centrum=C.id)LEFT JOIN ".$GLOBALS['config_db_prefix']."modul_kongresy_lektor L ON L.id=K.lektor) LEFT JOIN ".$GLOBALS['config_db_prefix']."modul_kongresy_cilova_skupina S ON S.id=K.cilova_skupina WHERE K.id='".$_REQUEST['id_kurzu']."' limit 1");
if ($dbdatac && $datac = $pripojeni->objekt_dotazu($dbdatac)){
if ($data->clen){
$nastavena_cena = $datac->cena_clen;
}
else{
$nastavena_cena = $datac->cena_neclen;
}
}
if($data->typ_clenstvi){
$dbcenik = $pripojeni->dotaz("SELECT * FROM ".$GLOBALS['config_db_prefix']."modul_kongresy_cenik WHERE id='".$data->typ_clenstvi."'");
if ($dbcenik && $cenik = $pripojeni->objekt_dotazu($dbcenik)){
for ($k=1; $k<=$data->pocet_osob; $k++) {
$cenus = "cena_".$k;
$celkova_cena += $cenik->$cenus?$cenik->$cenus:$cenik->cena_unlim;
}
}
}
else{
$celkova_cena = $data->pocet_osob * $nastavena_cena;
}
$vypoctena_cena = $celkova_cena;
/* ********************** vypoctena cena ***/
if($data->typ_clenstvi)
$clenstvi = ($typy_clenstvi[$data->typ_clenstvi]);
else
$clenstvi = $data->clen?"ČLEN APSS ČR":"";
//$tmp_datum = $vypsat_mesic."-".($j<10?"0":"").$j;
$worksheet->write("B"."$i", $data->obec);
$worksheet->write("C"."$i", $data->nazev);
$worksheet->write("D"."$i", $data->ulice);
$worksheet->write("E"."$i", $data->psc);
$worksheet->write("F"."$i", $data->ic);
$worksheet->write("G"."$i", $data->email);
$worksheet->write("H"."$i", $data->telefon);
$worksheet->write("I"."$i", $clenstvi);
$worksheet->write("J"."$i", $vypoctena_cena);
$worksheet->write("K"."$i", "".($data_osoby->titul?$data_osoby->titul." ":"").($data_osoby->jmeno?$data_osoby->jmeno." ":"").($data_osoby->prijmeni?$data_osoby->prijmeni." ":"").($data_osoby->titul_za?$data_osoby->titul_za:"")."");
$worksheet->write("L"."$i", $data_osoby->misto_narozeni);
if(!$typ_kurzu){
$worksheet->write("M"."$i", $data_osoby->workshop);
$worksheet->write("N"."$i", ($data_osoby->galavecer?"ANO":""));
}
$i++;
}
}
/**************************************************************************************************/
#######################################################################
#
# Write Kontrola prihlasenych
#
#######################################################################
#
# Images
#
//$worksheet->insert_bitmap('E1', 'b52.bmp', 16, 8);
$workbook->close();
//header("Content-Type: application/x-msexcel");
//Header("Content-type: application/vnd.ms-excel");
//Header("Content-Disposition: attachment; filename=demo .xls");
//Header("Pragma: no-cache");
//Header("Expires: 0");
//header("Content-type: image/jpeg");
//header("Content-Type: application/vnd.ms-excel");
//header("Content-type: application/vnd-ms-excel");
//header("Content-Disposition: attachment; filename=textxls.xls");
$fh=fopen($fname, "rb");
fpassthru($fh);
unlink($fname);
$adresar = Dir("./tmp");
while ($polozka=$adresar->Read()){
//echo $polozka."<br>";
@unlink( "./tmp/$polozka");
}
$adresar->Close();
?>
ACC SHELL 2018