export trainings

This commit is contained in:
Tóth Richárd
2019-12-04 22:09:55 +01:00
parent ce25f41a44
commit 0dcae384dd
6 changed files with 147 additions and 50 deletions

View File

@@ -264,6 +264,14 @@ class page {
# GYEREKLISTA EXPORTÁLÁSA # GYEREKLISTA EXPORTÁLÁSA
include('include_export_users.php'); include('include_export_users.php');
break; break;
case 'traininglist':
# EDZÉS ADATLISTA
include('include_traininglist.php');
break;
case 'export_trainings':
# EDZÉSLISTA EXPORTÁLÁSA
include('include_export_trainings.php');
break;
case 'set_credit_to_zero': case 'set_credit_to_zero':
# HITELALKALOM NULLÁZÁS # HITELALKALOM NULLÁZÁS
include('include_set_credit_to_zero.php'); include('include_set_credit_to_zero.php');

View File

@@ -0,0 +1,38 @@
<?php
$trainingAssocArray = $sql->assoc_array("
SELECT
tr_id 'Azonosító',
substring(tr_date,1,16) 'Időpont',
trt_name 'Típus',
GROUP_CONCAT(DISTINCT ua_name) 'Edzők',
COUNT(pr_id) 'Létszám'
FROM
training
JOIN
training_type ON trt_id = tr_training_type_trt_id
JOIN
training_coach ON trc_training_tr_id = tr_id
JOIN
user_coach ON ua_id = trc_coach_uc_id
JOIN
presence ON pr_training_tr_id = tr_id
WHERE
tr_deleted = 0
GROUP BY tr_id
ORDER BY tr_date ASC;
");
$filename = "edzeslista.csv";
$fp = fopen('php://output', 'w');
ob_end_clean();
fputcsv($fp, array_keys(reset($trainingAssocArray)), ';');
header('Content-type: application/csv');
header('Content-Disposition: attachment; filename='.$filename);
foreach($trainingAssocArray as $row) {
fputcsv($fp, $row, ';');
}
exit(1);

View File

@@ -34,8 +34,8 @@ $userAssocArray = $sql->assoc_array("
$filename = "taglista.csv"; $filename = "taglista.csv";
$fp = fopen('php://output', 'w'); $fp = fopen('php://output', 'w');
fputcsv($fp, array_keys(reset($userAssocArray)), ';');
ob_end_clean(); ob_end_clean();
fputcsv($fp, array_keys(reset($userAssocArray)), ';');
header('Content-type: application/csv'); header('Content-type: application/csv');
header('Content-Disposition: attachment; filename='.$filename); header('Content-Disposition: attachment; filename='.$filename);
@@ -43,3 +43,4 @@ header('Content-Disposition: attachment; filename='.$filename);
foreach($userAssocArray as $row) { foreach($userAssocArray as $row) {
fputcsv($fp, $row, ';'); fputcsv($fp, $row, ';');
} }
exit(1);

View File

@@ -0,0 +1,27 @@
<?php
$trainingAssocArray = $sql->assoc_array("
SELECT
tr_id id,
substring(tr_date,1,16) 'date',
trt_name 'name',
GROUP_CONCAT(DISTINCT ua_name) 'coaches',
COUNT(pr_id) 'count'
FROM
training
JOIN
training_type ON trt_id = tr_training_type_trt_id
JOIN
training_coach ON trc_training_tr_id = tr_id
JOIN
user_coach ON ua_id = trc_coach_uc_id
JOIN
presence ON pr_training_tr_id = tr_id
WHERE
tr_deleted = 0
GROUP BY tr_id
ORDER BY tr_date ASC;
");
$smarty->assign("trainings", $trainingAssocArray);
$smarty->display("training_export_list.tpl");

View File

@@ -0,0 +1,26 @@
<div class="buttons">
<a href="/admin/trainings" class="addbutton big">Vissza</a>
<a href="/admin/export_trainings" class="addbutton add-big">Exportálás CSV-be</a>
</div>
<div class="outer export">
<table class="user_export">
<tr>
<th>Azonosító</th>
<th>Időpont</th>
<th>Típus</th>
<th>Edzők</th>
<th>Létszám</th>
</tr>
{foreach $trainings as $training}
<tr>
<td>#{$training['id']}</td>
<td>{$training['date']}</td>
<td>{$training['name']}</td>
<td>{$training['coaches']}</td>
<td>{$training['count']}</td>
</tr>
{/foreach}
</table>
</div>

View File

@@ -1,75 +1,72 @@
<div class="buttons"> <div class="buttons">
<a href="/admin/create/training" class="addbutton add-big">Új edzés hozzáadása</a> <a href="/admin/create/training" class="addbutton add-big">Új edzés hozzáadása</a>
<a href="/admin/training_types" class="addbutton add-big">Edzés típusok szerkesztése</a> <a href="/admin/training_types" class="addbutton add-big">Edzés típusok szerkesztése</a>
<a href="/admin/training_templates" class="addbutton add-big">Edzés sablonok szerkesztése</a> <a href="/admin/training_templates" class="addbutton add-big">Edzés sablonok szerkesztése</a>
<a href="/admin/traininglist" class="addbutton add-big">Lista export</a>
</div> </div>
<div class="list"> <div class="list">
{foreach $training_array as $training} {foreach $training_array as $training}
{if {if
$training@first || $training@first ||
( (
$training_array[$training@index]->get_tr_date()|substr:5:2 != $training_array[$training@index-1]->get_tr_date()|substr:5:2 $training_array[$training@index]->get_tr_date()|substr:5:2 != $training_array[$training@index-1]->get_tr_date()|substr:5:2
) )
} }
{if !$training@first && {if !$training@first &&
$training_array[$training@index]->get_tr_date()|substr:5:2 != $training_array[$training@index-1]->get_tr_date()|substr:5:2 $training_array[$training@index]->get_tr_date()|substr:5:2 != $training_array[$training@index-1]->get_tr_date()|substr:5:2
} }
</div> </div>
{/if} {/if}
<span onclick="block_action('block_{$training->get_tr_date()|substr:0:4}{$training->get_tr_date()|substr:5:2}');" class="date_separator clickable">{$training_array[$training@index]->get_tr_date()|substr:0:4}. <span onclick="block_action('block_{$training->get_tr_date()|substr:0:4}{$training->get_tr_date()|substr:5:2}');" class="date_separator clickable">{$training_array[$training@index]->get_tr_date()|substr:0:4}.
{$months[$training_array[$training@index]->get_tr_date()|substr:5:2]} {$months[$training_array[$training@index]->get_tr_date()|substr:5:2]}
<img src="/_image/open_folder.png"> <img src="/_image/open_folder.png">
</span> </span>
<div id="block_{$training->get_tr_date()|substr:0:4}{$training->get_tr_date()|substr:5:2}" class="month_block"> <div id="block_{$training->get_tr_date()|substr:0:4}{$training->get_tr_date()|substr:5:2}" class="month_block">
{/if} {/if}
<a href="/admin/{if $edit=='edit'}edit_training{elseif $edit=='view'}trainings{else}presence{/if}/{$training->get_tr_id()}"> <a href="/admin/{if $edit=='edit'}edit_training{elseif $edit=='view'}trainings{else}presence{/if}/{$training->get_tr_id()}">
<div class="list_item"> <div class="list_item">
<img src="/_image/training.png"> <img src="/_image/training.png">
{$training->get_tr_date()|substr:0:4}. {$training->get_tr_date()|substr:0:4}.
{$months[$training_array[$training@index]->get_tr_date()|substr:5:2]} {$months[$training_array[$training@index]->get_tr_date()|substr:5:2]}
{$training->get_tr_date_day()}. {$training->get_tr_date_day()}.
{$days[$training->get_tr_date_day_of_week()]} {$days[$training->get_tr_date_day_of_week()]}
{$training->get_tr_date_time()} {$training->get_tr_date_time()}
{if $training->get_tr_training_type_trt_id()}({$training->get_tr_type_name_by_id()}){/if} {if $training->get_tr_training_type_trt_id()}({$training->get_tr_type_name_by_id()}){/if}
</div> </div>
</a> </a>
{if $training@last} {if $training@last}
</div> </div>
{/if} {/if}
{/foreach} {/foreach}
</div> </div>
<script> <script>
function open_block(block_id) { function open_block(block_id) {
$("#"+block_id).slideDown("slow"); $("#"+block_id).slideDown("slow");
} }
function close_block(block_id) { function close_block(block_id) {
$("#"+block_id).slideUp("slow"); $("#"+block_id).slideUp("slow");
} }
function block_action(block_id) { function block_action(block_id) {
if ($("#"+block_id).is(':hidden')) { if ($("#"+block_id).is(':hidden')) {
open_block(block_id); open_block(block_id);
} }
else { else {
close_block(block_id); close_block(block_id);
} }
} }
$( document ).ready(function() { $( document ).ready(function() {
var divs = $( "div[class=month_block]" ); var divs = $( "div[class=month_block]" );
$( ".list" ).find( divs ).hide(); $( ".list" ).find( divs ).hide();
var div_list = $( ".list" ).find( divs ); var div_list = $( ".list" ).find( divs );
open_block(div_list[0].id); open_block(div_list[0].id);
}); });
</script> </script>