fixed double presence error
This commit is contained in:
@@ -4,20 +4,21 @@ include('class_sql.php');
|
|||||||
include('class_log.php');
|
include('class_log.php');
|
||||||
/*
|
/*
|
||||||
foreach ($_POST as $key => $value) {
|
foreach ($_POST as $key => $value) {
|
||||||
trigger_error($_SERVER['HTTP_HOST'], E_USER_NOTICE);
|
trigger_error($_SERVER['HTTP_HOST'], E_USER_NOTICE);
|
||||||
}
|
}
|
||||||
*/
|
*/
|
||||||
if ($_SERVER['HTTP_HOST'] == 'badmintoncoach.hu') $sql = new sql('bc_mysql','root','','badminton_coach');
|
if ($_SERVER['HTTP_HOST'] == 'badmintoncoach.hu') $sql = new sql('bc_mysql','root','','badminton_coach');
|
||||||
else $sql = new sql('localhost','tollashodos','uprRscU8bGpJ','tollashodos');
|
else $sql = new sql('localhost','tollashodos','uprRscU8bGpJ','tollashodos');
|
||||||
|
|
||||||
|
$check_query = "SELECT * FROM presence WHERE pr_training_tr_id = " . $_POST['tr_id'] . " AND pr_user_kid_uk_id = " . $_POST['user_id'] . ";";
|
||||||
|
|
||||||
if ($_POST['checked'] == "true") {
|
if (!$sql->num_of_rows($check_query) && $_POST['checked'] == "true") {
|
||||||
$sql->insert_into('presence', array('pr_user_kid_uk_id' => $_POST['user_id'], 'pr_training_tr_id' => $_POST['tr_id']));
|
$sql->insert_into('presence', array('pr_user_kid_uk_id' => $_POST['user_id'], 'pr_training_tr_id' => $_POST['tr_id']));
|
||||||
log::register('new_presence', 'Edzés: ' . $_POST['tr_id'] . ', gyerek: ' . $_POST['user_id'], null, $_POST['admin_id']);
|
log::register('new_presence', 'Edzés: ' . $_POST['tr_id'] . ', gyerek: ' . $_POST['user_id'], null, $_POST['admin_id']);
|
||||||
}
|
}
|
||||||
else {
|
elseif ($sql->num_of_rows($check_query) && $_POST['checked'] != "true") {
|
||||||
$sql->execute_query('delete from presence where pr_user_kid_uk_id = ' . $_POST['user_id'] . ' AND pr_training_tr_id = ' . $_POST['tr_id']);
|
$sql->execute_query('delete from presence where pr_user_kid_uk_id = ' . $_POST['user_id'] . ' AND pr_training_tr_id = ' . $_POST['tr_id']);
|
||||||
log::register('delete_presence', 'Edzés: ' . $_POST['tr_id'] . ', gyerek: ' . $_POST['user_id'], null, $_POST['admin_id']);
|
log::register('delete_presence', 'Edzés: ' . $_POST['tr_id'] . ', gyerek: ' . $_POST['user_id'], null, $_POST['admin_id']);
|
||||||
}
|
}
|
||||||
|
|
||||||
?>
|
?>
|
||||||
@@ -5,159 +5,158 @@
|
|||||||
|
|
||||||
if ($this->is_id()) {
|
if ($this->is_id()) {
|
||||||
|
|
||||||
# GYEREKEK BEJELÖLÉSE
|
# GYEREKEK BEJELÖLÉSE
|
||||||
# lekérjük, hogy az elmúlt 4 héten kik voltak ilyen típusú edzésen [egyeznie kell a dayofweeknek és a type-nak]
|
# lekérjük, hogy az elmúlt 4 héten kik voltak ilyen típusú edzésen [egyeznie kell a dayofweeknek és a type-nak]
|
||||||
|
|
||||||
//alg.: lekérjük, hogy az elmúlt 4 hétben, ezen a napon, ezzel az edzés típussal milyen edzés ID-k vannak
|
//alg.: lekérjük, hogy az elmúlt 4 hétben, ezen a napon, ezzel az edzés típussal milyen edzés ID-k vannak
|
||||||
//presence-ből countoljuk az user_kid ID-kat
|
//presence-ből countoljuk az user_kid ID-kat
|
||||||
|
|
||||||
|
|
||||||
$presence_query = "SELECT * FROM user_kid ORDER BY uk_name;";
|
$presence_query = "SELECT * FROM user_kid ORDER BY uk_name;";
|
||||||
$presence_assoc_array = $sql->assoc_array($presence_query);
|
$presence_assoc_array = $sql->assoc_array($presence_query);
|
||||||
//végig kell menni rajta h legeneráljuk az usereket
|
//végig kell menni rajta h legeneráljuk az usereket
|
||||||
|
|
||||||
$users = array();
|
$users = array();
|
||||||
//var_dump($presence_assoc_array);
|
//var_dump($presence_assoc_array);
|
||||||
/*
|
/*
|
||||||
foreach ($presence_assoc_array as $presence) {
|
foreach ($presence_assoc_array as $presence) {
|
||||||
$user = new user_kid();
|
$user = new user_kid();
|
||||||
$user->set_user_data_by_id($presence['uk_id']);
|
$user->set_user_data_by_id($presence['uk_id']);
|
||||||
$users[] = $user;
|
$users[] = $user;
|
||||||
}
|
}
|
||||||
*/
|
*/
|
||||||
|
|
||||||
//training data
|
//training data
|
||||||
$training = new training();
|
$training = new training();
|
||||||
$training->set_training_data_by_id($this->get_id());
|
$training->set_training_data_by_id($this->get_id());
|
||||||
|
|
||||||
//SZŰRÉS
|
//SZŰRÉS
|
||||||
$tr_ids = array();
|
$tr_ids = array();
|
||||||
for ($i=1; $i <=4 ; $i++) {
|
for ($i=1; $i <=4 ; $i++) {
|
||||||
$actual_date = date("Y-m-d H:i:s" , strtotime($training->get_tr_date() . " - " . $i . " weeks"));
|
$actual_date = date("Y-m-d H:i:s" , strtotime($training->get_tr_date() . " - " . $i . " weeks"));
|
||||||
$tr_ids_query = "SELECT * FROM training WHERE tr_deleted = 0 AND tr_date = '" . $actual_date . "' and tr_training_type_trt_id = " . $training->get_tr_training_type_trt_id() . ";";
|
$tr_ids_query = "SELECT * FROM training WHERE tr_deleted = 0 AND tr_date = '" . $actual_date . "' and tr_training_type_trt_id = " . $training->get_tr_training_type_trt_id() . ";";
|
||||||
$tr_id = $sql->single_variable($tr_ids_query);
|
$tr_id = $sql->single_variable($tr_ids_query);
|
||||||
if ($tr_id) $tr_ids[] = $tr_id;
|
if ($tr_id) $tr_ids[] = $tr_id;
|
||||||
}
|
}
|
||||||
//végigmegyünk az edzésekkel a presencen
|
//végigmegyünk az edzésekkel a presencen
|
||||||
$presence_query = "
|
$presence_query = "
|
||||||
SELECT `pr_user_kid_uk_id` , count( `pr_id` ) AS 'presence'
|
SELECT `pr_user_kid_uk_id` , count( `pr_id` ) AS 'presence'
|
||||||
FROM `presence`
|
FROM `presence`
|
||||||
JOIN user_kid ON uk_id = pr_user_kid_uk_id
|
JOIN user_kid ON uk_id = pr_user_kid_uk_id
|
||||||
JOIN training ON tr_id = pr_training_tr_id
|
JOIN training ON tr_id = pr_training_tr_id
|
||||||
WHERE `pr_training_tr_id`".
|
WHERE `pr_training_tr_id`".
|
||||||
(!empty($tr_ids)?"IN ( " . implode(',', $tr_ids) . " ) ":" ")
|
(!empty($tr_ids)?"IN ( " . implode(',', $tr_ids) . " ) ":" ")
|
||||||
."AND `uk_deleted` = 0
|
."AND `uk_deleted` = 0
|
||||||
AND `tr_deleted` = 0
|
AND `tr_deleted` = 0
|
||||||
AND `uk_is_active` = 1
|
AND `uk_is_active` = 1
|
||||||
GROUP BY `pr_user_kid_uk_id`
|
GROUP BY `pr_user_kid_uk_id`
|
||||||
ORDER BY count( `pr_id` ) DESC, uk_name ASC;
|
ORDER BY count( `pr_id` ) DESC, uk_name ASC;
|
||||||
";
|
";
|
||||||
//echo $presence_query;
|
//echo $presence_query;
|
||||||
//echo $presence_query;
|
if (!empty($tr_ids)) {
|
||||||
if (!empty($tr_ids)) {
|
$presence_assoc_array = $sql->assoc_array($presence_query);
|
||||||
$presence_assoc_array = $sql->assoc_array($presence_query);
|
foreach ($presence_assoc_array as $presence) {
|
||||||
foreach ($presence_assoc_array as $presence) {
|
$user = new user_kid();
|
||||||
$user = new user_kid();
|
$user->set_user_data_by_id($presence['pr_user_kid_uk_id']);
|
||||||
$user->set_user_data_by_id($presence['pr_user_kid_uk_id']);
|
$users[] = $user;
|
||||||
$users[] = $user;
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
//legeneráljuk a maradékot
|
//legeneráljuk a maradékot
|
||||||
$exeptions = array();
|
$exeptions = array();
|
||||||
$rest_users = array();
|
$rest_users = array();
|
||||||
foreach ($users as $user) {
|
foreach ($users as $user) {
|
||||||
$exeptions[] = $user->get_uk_id();
|
$exeptions[] = $user->get_uk_id();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!empty($exeptions)) $rest_user_query = "SELECT * FROM user_kid WHERE uk_id NOT IN (" . implode(',', $exeptions) . ") AND uk_deleted = 0 AND uk_is_active = 1 ORDER BY uk_name ASC;"; //ha vannak kiemelt userek
|
if (!empty($exeptions)) $rest_user_query = "SELECT * FROM user_kid WHERE uk_id NOT IN (" . implode(',', $exeptions) . ") AND uk_deleted = 0 AND uk_is_active = 1 ORDER BY uk_name ASC;"; //ha vannak kiemelt userek
|
||||||
else $rest_user_query = "SELECT * FROM user_kid WHERE uk_deleted = 0 AND uk_is_active = 1 ORDER BY uk_name;"; //ha nincsenek kiemelt userek
|
else $rest_user_query = "SELECT * FROM user_kid WHERE uk_deleted = 0 AND uk_is_active = 1 ORDER BY uk_name;"; //ha nincsenek kiemelt userek
|
||||||
$rest_user_assoc_array = $sql->assoc_array($rest_user_query);
|
$rest_user_assoc_array = $sql->assoc_array($rest_user_query);
|
||||||
foreach ($rest_user_assoc_array as $rest_user) {
|
foreach ($rest_user_assoc_array as $rest_user) {
|
||||||
$user = new user_kid();
|
$user = new user_kid();
|
||||||
$user->set_user_data_by_id($rest_user['uk_id']);
|
$user->set_user_data_by_id($rest_user['uk_id']);
|
||||||
$rest_users[] = $user;
|
$rest_users[] = $user;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
//TRAINING-COACH ARRAY
|
//TRAINING-COACH ARRAY
|
||||||
$trc_query = "SELECT * FROM training_coach JOIN user_coach ON ua_id = trc_coach_uc_id WHERE trc_helper = 0 AND ua_deleted = 0 AND trc_training_tr_id = " . $this->get_id();
|
$trc_query = "SELECT * FROM training_coach JOIN user_coach ON ua_id = trc_coach_uc_id WHERE trc_helper = 0 AND ua_deleted = 0 AND trc_training_tr_id = " . $this->get_id();
|
||||||
$trc_coaches = array();
|
$trc_coaches = array();
|
||||||
$trc_assoc_array = $sql->assoc_array($trc_query);
|
$trc_assoc_array = $sql->assoc_array($trc_query);
|
||||||
foreach ($trc_assoc_array as $trc_data) {
|
foreach ($trc_assoc_array as $trc_data) {
|
||||||
$new_coach = new user();
|
$new_coach = new user();
|
||||||
$new_coach->set_user_data_by_id($trc_data['trc_coach_uc_id']);
|
$new_coach->set_user_data_by_id($trc_data['trc_coach_uc_id']);
|
||||||
$trc_coaches[] = $new_coach;
|
$trc_coaches[] = $new_coach;
|
||||||
}
|
}
|
||||||
|
|
||||||
//TRAINING-HELPER ARRAY
|
//TRAINING-HELPER ARRAY
|
||||||
$trc_query = "SELECT * FROM training_coach JOIN user_coach ON ua_id = trc_coach_uc_id WHERE trc_helper = 1 AND ua_deleted = 0 AND trc_training_tr_id = " . $this->get_id();
|
$trc_query = "SELECT * FROM training_coach JOIN user_coach ON ua_id = trc_coach_uc_id WHERE trc_helper = 1 AND ua_deleted = 0 AND trc_training_tr_id = " . $this->get_id();
|
||||||
$trc_helpers = array();
|
$trc_helpers = array();
|
||||||
$trc_assoc_array = $sql->assoc_array($trc_query);
|
$trc_assoc_array = $sql->assoc_array($trc_query);
|
||||||
foreach ($trc_assoc_array as $trc_data) {
|
foreach ($trc_assoc_array as $trc_data) {
|
||||||
$new_coach = new user();
|
$new_coach = new user();
|
||||||
$new_coach->set_user_data_by_id($trc_data['trc_coach_uc_id']);
|
$new_coach->set_user_data_by_id($trc_data['trc_coach_uc_id']);
|
||||||
$trc_helpers[] = $new_coach;
|
$trc_helpers[] = $new_coach;
|
||||||
}
|
}
|
||||||
|
|
||||||
//var_dump($users);
|
//var_dump($users);
|
||||||
|
|
||||||
//headcount
|
//headcount
|
||||||
$headcount_query = "SELECT * FROM presence WHERE pr_training_tr_id = " . $this->get_id() . ";";
|
$headcount_query = "SELECT * FROM presence WHERE pr_training_tr_id = " . $this->get_id() . ";";
|
||||||
$headcount = $sql->num_of_rows($headcount_query);
|
$headcount = $sql->num_of_rows($headcount_query);
|
||||||
|
|
||||||
|
|
||||||
//csak lista
|
//csak lista
|
||||||
$s_users = array();
|
$s_users = array();
|
||||||
$presence_query = "
|
$presence_query = "
|
||||||
SELECT `pr_user_kid_uk_id`
|
SELECT `pr_user_kid_uk_id`
|
||||||
FROM `presence`
|
FROM `presence`
|
||||||
JOIN user_kid ON uk_id = pr_user_kid_uk_id
|
JOIN user_kid ON uk_id = pr_user_kid_uk_id
|
||||||
WHERE `pr_training_tr_id` = ".$this->get_id()."
|
WHERE `pr_training_tr_id` = ".$this->get_id()."
|
||||||
AND uk_deleted = 0
|
AND uk_deleted = 0
|
||||||
ORDER BY uk_name ASC;
|
ORDER BY uk_name ASC;
|
||||||
";
|
";
|
||||||
|
|
||||||
|
|
||||||
$presence_assoc_array = $sql->assoc_array($presence_query);
|
$presence_assoc_array = $sql->assoc_array($presence_query);
|
||||||
foreach ($presence_assoc_array as $presence) {
|
foreach ($presence_assoc_array as $presence) {
|
||||||
$s_user = new user_kid();
|
$s_user = new user_kid();
|
||||||
$s_user->set_user_data_by_id($presence['pr_user_kid_uk_id']);
|
$s_user->set_user_data_by_id($presence['pr_user_kid_uk_id']);
|
||||||
$s_users[] = $s_user;
|
$s_users[] = $s_user;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
$smarty->assign('training', $training);
|
$smarty->assign('training', $training);
|
||||||
$smarty->assign('trainings', $tr_ids);
|
$smarty->assign('trainings', $tr_ids);
|
||||||
$smarty->assign('headcount', count($presence_assoc_array));
|
$smarty->assign('headcount', count($presence_assoc_array));
|
||||||
$smarty->assign("trc_coaches", $trc_coaches);
|
$smarty->assign("trc_coaches", $trc_coaches);
|
||||||
$smarty->assign("trc_helpers", $trc_helpers);
|
$smarty->assign("trc_helpers", $trc_helpers);
|
||||||
$smarty->assign('presence_assoc_array', $presence_assoc_array);
|
$smarty->assign('presence_assoc_array', $presence_assoc_array);
|
||||||
$smarty->assign('users', $users);
|
$smarty->assign('users', $users);
|
||||||
$smarty->assign('sorted_users', $s_users);
|
$smarty->assign('sorted_users', $s_users);
|
||||||
$smarty->assign('rest_users', $rest_users);
|
$smarty->assign('rest_users', $rest_users);
|
||||||
$smarty->assign('tr_id', $this->get_id());
|
$smarty->assign('tr_id', $this->get_id());
|
||||||
|
|
||||||
$smarty->display("presence.tpl");
|
$smarty->display("presence.tpl");
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
else {
|
else {
|
||||||
$traning_list_query = "SELECT * FROM training WHERE tr_deleted = 0 ORDER BY tr_date DESC;";
|
$traning_list_query = "SELECT * FROM training WHERE tr_deleted = 0 ORDER BY tr_date DESC;";
|
||||||
$training_list_assoc_array = $sql->assoc_array($traning_list_query);
|
$training_list_assoc_array = $sql->assoc_array($traning_list_query);
|
||||||
|
|
||||||
$training_array = array();
|
$training_array = array();
|
||||||
foreach ($training_list_assoc_array as $training_list_array) {
|
foreach ($training_list_assoc_array as $training_list_array) {
|
||||||
$training = new training();
|
$training = new training();
|
||||||
$training->set_training_data_by_id($training_list_array['tr_id']);
|
$training->set_training_data_by_id($training_list_array['tr_id']);
|
||||||
$training_array[] = $training;
|
$training_array[] = $training;
|
||||||
}
|
}
|
||||||
//var_dump($training_array);
|
//var_dump($training_array);
|
||||||
$smarty->assign('edit', $tpl);
|
$smarty->assign('edit', $tpl);
|
||||||
$smarty->assign("training_array", $training_array);
|
$smarty->assign("training_array", $training_array);
|
||||||
$smarty->display("presence_list.tpl");
|
$smarty->display("presence_list.tpl");
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user