work on presence changes (has error)

This commit is contained in:
2020-09-08 15:40:57 +02:00
parent c2c61460b6
commit 6ee00f7514
7 changed files with 75 additions and 20 deletions

View File

@@ -456,16 +456,17 @@ class user_kid extends user_parent {
if (!isset($_user_value_array['uk_is_active'])) $_user_value_array['uk_is_active'] = 0; if (!isset($_user_value_array['uk_is_active'])) $_user_value_array['uk_is_active'] = 0;
if (!isset($_user_value_array['uk_lease'])) $_user_value_array['uk_lease'] = 0; if (!isset($_user_value_array['uk_lease'])) $_user_value_array['uk_lease'] = 0;
$trt_ids = array(); $l_ids = array();
if (isset($_user_value_array['level']) && is_array($_user_value_array['level'])) { if (isset($_user_value_array['level']) && is_array($_user_value_array['level'])) {
foreach ($_user_value_array['level'] as $key => $trt_id) { foreach ($_user_value_array['level'] as $key => $l_id) {
$trt_ids[] = $trt_id; $l_ids[] = $l_id;
} }
unset($_user_value_array['level']); unset($_user_value_array['level']);
} }
$kidId = $sql->insert_into('user_kid', $_user_value_array); $kidId = $sql->insert_into('user_kid', $_user_value_array);
/*
if (!empty($trt_ids)) { if (!empty($trt_ids)) {
foreach ($trt_ids as $key => $trt_id) { foreach ($trt_ids as $key => $trt_id) {
$sql->insert_into('user_kid_training_type', array( $sql->insert_into('user_kid_training_type', array(
@@ -475,6 +476,17 @@ class user_kid extends user_parent {
); );
} }
} }
*/
if (!empty($l_ids)) {
foreach ($l_ids as $key => $l_id) {
$sql->insert_into('user_kid_lease', array(
'ukl_user_kid_uk_id' => $kidId,
'ukl_lease_l_id' => $l_id,
)
);
}
}
return $kidId; return $kidId;
} }
@@ -556,20 +568,20 @@ class user_kid extends user_parent {
if (!isset($_user_value_array['uk_balance_expires'])) $_user_value_array['uk_balance_expires'] = 0; if (!isset($_user_value_array['uk_balance_expires'])) $_user_value_array['uk_balance_expires'] = 0;
if (!isset($_user_value_array['uk_lease'])) $_user_value_array['uk_lease'] = 0; if (!isset($_user_value_array['uk_lease'])) $_user_value_array['uk_lease'] = 0;
$trt_ids = array(); $l_ids = array();
if (isset($_user_value_array['level']) && is_array($_user_value_array['level'])) { if (isset($_user_value_array['level']) && is_array($_user_value_array['level'])) {
foreach ($_user_value_array['level'] as $key => $trt_id) { foreach ($_user_value_array['level'] as $key => $l_id) {
$trt_ids[] = $trt_id; $l_ids[] = $l_id;
} }
unset($_user_value_array['level']); unset($_user_value_array['level']);
} }
$sql->execute_query("DELETE FROM user_kid_training_type WHERE uktt_user_kid_uk_id = {$_user_id}"); $sql->execute_query("DELETE FROM user_kid_lease WHERE ukl_user_kid_uk_id = {$_user_id}");
if (!empty($trt_ids)) { if (!empty($l_ids)) {
foreach ($trt_ids as $key => $trt_id) { foreach ($l_ids as $key => $l_id) {
$sql->insert_into('user_kid_training_type', array( $sql->insert_into('user_kid_lease', array(
'uktt_user_kid_uk_id' => $_user_id, 'ukl_user_kid_uk_id' => $_user_id,
'uktt_training_type_tt_id' => $trt_id, 'ukl_lease_l_id' => $l_id,
) )
); );
} }
@@ -808,5 +820,11 @@ class user_kid extends user_parent {
return $sql->num_of_rows("SELECT DISTINCT uktt_id FROM user_kid_training_type WHERE uktt_user_kid_uk_id = {$_uk_id} AND uktt_training_type_tt_id = {$_trt_id};"); return $sql->num_of_rows("SELECT DISTINCT uktt_id FROM user_kid_training_type WHERE uktt_user_kid_uk_id = {$_uk_id} AND uktt_training_type_tt_id = {$_trt_id};");
} }
public static function has_lease_type($_uk_id, $_l_id) {
global $sql;
return $sql->num_of_rows("SELECT DISTINCT ukl_id FROM user_kid_lease WHERE ukl_user_kid_uk_id = {$_uk_id} AND ukl_lease_l_id = {$_l_id};");
}
} }
?> ?>

View File

@@ -33,14 +33,18 @@ switch ($this->get_id()) {
$region_assoc_array = $sql->assoc_array($region_query); $region_assoc_array = $sql->assoc_array($region_query);
//training type array //training type array
$tt_assoc_array = $sql->assoc_array("SELECT * FROM training_type WHERE trt_deleted = 0 ORDER by trt_name ASC;"); //$tt_assoc_array = $sql->assoc_array("SELECT * FROM training_type WHERE trt_deleted = 0 ORDER by trt_name ASC;");
//lease assoc array
$l_assoc_array = $sql->assoc_array("SELECT * FROM lease WHERE l_deleted = 0 ORDER BY l_name ASC;");
$smarty->assign('region_assoc_array', $region_assoc_array); $smarty->assign('region_assoc_array', $region_assoc_array);
$smarty->assign('shirt_size_assoc_array', $shirt_size_assoc_array); $smarty->assign('shirt_size_assoc_array', $shirt_size_assoc_array);
$smarty->assign('school_assoc_array', $schools); $smarty->assign('school_assoc_array', $schools);
$smarty->assign('school_city_assoc_array', $school_cities); $smarty->assign('school_city_assoc_array', $school_cities);
$smarty->assign('parent_assoc_array', $parent_assoc_array); $smarty->assign('parent_assoc_array', $parent_assoc_array);
$smarty->assign('tt_assoc_array', $tt_assoc_array); //$smarty->assign('tt_assoc_array', $tt_assoc_array);
$smarty->assign('l_assoc_array', $l_assoc_array);
$smarty->assign('today', date("Y-m-d")); $smarty->assign('today', date("Y-m-d"));
$smarty->display('user_data_create.tpl'); $smarty->display('user_data_create.tpl');

View File

@@ -36,7 +36,10 @@ if ($this->is_id()) {
$region_assoc_array = $sql->assoc_array($region_query); $region_assoc_array = $sql->assoc_array($region_query);
//training type array //training type array
$tt_assoc_array = $sql->assoc_array("SELECT * FROM training_type WHERE trt_deleted = 0 ORDER by trt_name ASC;"); //$tt_assoc_array = $sql->assoc_array("SELECT * FROM training_type WHERE trt_deleted = 0 ORDER by trt_name ASC;");
//lease assoc array
$l_assoc_array = $sql->assoc_array("SELECT * FROM lease WHERE l_deleted = 0 ORDER BY l_name ASC;");
//smarty thingz //smarty thingz
$smarty->assign('school_assoc_array', $schools); $smarty->assign('school_assoc_array', $schools);
@@ -45,7 +48,8 @@ if ($this->is_id()) {
$smarty->assign('user_data', $user_data_assoc_array[0]); $smarty->assign('user_data', $user_data_assoc_array[0]);
$smarty->assign('shirt_size_assoc_array', $shirt_size_assoc_array); $smarty->assign('shirt_size_assoc_array', $shirt_size_assoc_array);
$smarty->assign('parent_assoc_array', $parent_assoc_array); $smarty->assign('parent_assoc_array', $parent_assoc_array);
$smarty->assign('tt_assoc_array', $tt_assoc_array); //$smarty->assign('tt_assoc_array', $tt_assoc_array);
$smarty->assign('l_assoc_array', $l_assoc_array);
$smarty->display('user_data_'.$tpl.'.tpl'); $smarty->display('user_data_'.$tpl.'.tpl');
} }
else { else {

View File

@@ -102,10 +102,12 @@ if ($this->is_id()) {
uk_id, uk_name uk_id, uk_name
FROM FROM
user_kid user_kid
LEFT JOIN user_kid_training_type ON uktt_user_kid_uk_id = uk_id -- LEFT JOIN user_kid_training_type ON uktt_user_kid_uk_id = uk_id
LEFT JOIN user_kid_lease ON ukl_user_kid_uk_id = uk_id
LEFT JOIN lease_training_type ON ltt_lease_l_id = ukl_lease_l_id
WHERE WHERE
(uk_deleted = 0 AND uk_is_active = 1) (uk_deleted = 0 AND uk_is_active = 1)
AND (uktt_training_type_tt_id = {$training->get_tr_training_type_trt_id()} AND (ltt_training_type_tt_id = {$training->get_tr_training_type_trt_id()}
OR uk_lease = 0) UNION SELECT DISTINCT OR uk_lease = 0) UNION SELECT DISTINCT
uk_id, uk_name uk_id, uk_name
FROM FROM

View File

@@ -0,0 +1,7 @@
CREATE TABLE `badminton_coach`.`user_kid_lease` (
`ukl_id` INT NOT NULL AUTO_INCREMENT,
`ukl_user_kid_uk_id` INT NOT NULL,
`ukl_lease_l_id` INT NOT NULL,
PRIMARY KEY (`ukl_id`),
INDEX `index2` (`ukl_user_kid_uk_id` ASC),
INDEX `index3` (`ukl_lease_l_id` ASC));

View File

@@ -85,7 +85,7 @@
</div> </div>
</div> </div>
<div> {* <div>
<label for="level">Szint:</label> <label for="level">Szint:</label>
{foreach $tt_assoc_array as $tt} {foreach $tt_assoc_array as $tt}
<div> <div>
@@ -93,6 +93,16 @@
<span style="position: relative; bottom: 3px;">{$tt['trt_name']}</span> <span style="position: relative; bottom: 3px;">{$tt['trt_name']}</span>
</div> </div>
{/foreach} {/foreach}
</div> *}
<div>
<label for="level">Szint:</label>
{foreach $l_assoc_array as $l}
<div>
<input type="checkbox" name="level[]" value="{$l['l_id']}">
<span style="position: relative; bottom: 2px;">{$l['l_name']}</span>
</div>
{/foreach}
</div> </div>

View File

@@ -120,7 +120,7 @@
</div> </div>
</div> </div>
<div> {* <div>
<label for="level">Szint:</label> <label for="level">Szint:</label>
{foreach $tt_assoc_array as $tt} {foreach $tt_assoc_array as $tt}
<div> <div>
@@ -128,6 +128,16 @@
<span style="position: relative; bottom: 3px;">{$tt['trt_name']}</span> <span style="position: relative; bottom: 3px;">{$tt['trt_name']}</span>
</div> </div>
{/foreach} {/foreach}
</div> *}
<div>
<label for="level">Szint:</label>
{foreach $l_assoc_array as $l}
<div>
<input type="checkbox" name="level[]" value="{$l['l_id']}"{if user_kid::has_lease_type($user_data.uk_id, $l['l_id'])} checked{/if}>
<span style="position: relative; bottom: 3px;">{$l['l_name']}</span>
</div>
{/foreach}
</div> </div>