show users in presence list based on trt array
This commit is contained in:
@@ -455,7 +455,27 @@ 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_lease'])) $_user_value_array['uk_lease'] = 0;
|
||||
|
||||
return $sql->insert_into('user_kid', $_user_value_array);
|
||||
$trt_ids = array();
|
||||
if (isset($_user_value_array['level']) && is_array($_user_value_array['level'])) {
|
||||
foreach ($_user_value_array['level'] as $key => $trt_id) {
|
||||
$trt_ids[] = $trt_id;
|
||||
}
|
||||
unset($_user_value_array['level']);
|
||||
}
|
||||
|
||||
$kidId = $sql->insert_into('user_kid', $_user_value_array);
|
||||
|
||||
if (!empty($trt_ids)) {
|
||||
foreach ($trt_ids as $key => $trt_id) {
|
||||
$sql->insert_into('user_kid_training_type', array(
|
||||
'uktt_user_kid_uk_id' => $kidId,
|
||||
'uktt_training_type_tt_id' => $trt_id,
|
||||
)
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
return $kidId;
|
||||
}
|
||||
|
||||
public static function update_user($_user_value_array, $_user_id) {
|
||||
@@ -535,6 +555,25 @@ 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_lease'])) $_user_value_array['uk_lease'] = 0;
|
||||
|
||||
$trt_ids = array();
|
||||
if (isset($_user_value_array['level']) && is_array($_user_value_array['level'])) {
|
||||
foreach ($_user_value_array['level'] as $key => $trt_id) {
|
||||
$trt_ids[] = $trt_id;
|
||||
}
|
||||
unset($_user_value_array['level']);
|
||||
}
|
||||
|
||||
$sql->execute_query("DELETE FROM user_kid_training_type WHERE uktt_user_kid_uk_id = {$_user_id}");
|
||||
if (!empty($trt_ids)) {
|
||||
foreach ($trt_ids as $key => $trt_id) {
|
||||
$sql->insert_into('user_kid_training_type', array(
|
||||
'uktt_user_kid_uk_id' => $_user_id,
|
||||
'uktt_training_type_tt_id' => $trt_id,
|
||||
)
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
$sql->update_table('user_kid', $_user_value_array, array('uk_id' => $_user_id));
|
||||
}
|
||||
|
||||
@@ -757,5 +796,11 @@ class user_kid extends user_parent {
|
||||
)
|
||||
);
|
||||
}
|
||||
|
||||
public static function has_training_type($_uk_id, $_trt_id) {
|
||||
global $sql;
|
||||
|
||||
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};");
|
||||
}
|
||||
}
|
||||
?>
|
||||
|
||||
@@ -32,11 +32,15 @@ switch ($this->get_id()) {
|
||||
$region_query = "SELECT * FROM region WHERE reg_deleted = 0 ORDER BY reg_name ASC;";
|
||||
$region_assoc_array = $sql->assoc_array($region_query);
|
||||
|
||||
//training type array
|
||||
$tt_assoc_array = $sql->assoc_array("SELECT * FROM training_type WHERE trt_deleted = 0 ORDER by trt_name ASC;");
|
||||
|
||||
$smarty->assign('region_assoc_array', $region_assoc_array);
|
||||
$smarty->assign('shirt_size_assoc_array', $shirt_size_assoc_array);
|
||||
$smarty->assign('school_assoc_array', $schools);
|
||||
$smarty->assign('school_city_assoc_array', $school_cities);
|
||||
$smarty->assign('parent_assoc_array', $parent_assoc_array);
|
||||
$smarty->assign('tt_assoc_array', $tt_assoc_array);
|
||||
$smarty->assign('today', date("Y-m-d"));
|
||||
|
||||
$smarty->display('user_data_create.tpl');
|
||||
|
||||
@@ -34,6 +34,10 @@ if ($this->is_id()) {
|
||||
//REGION ARRAY
|
||||
$region_query = "SELECT * FROM region WHERE reg_deleted = 0 ORDER BY reg_name ASC;";
|
||||
$region_assoc_array = $sql->assoc_array($region_query);
|
||||
|
||||
//training type array
|
||||
$tt_assoc_array = $sql->assoc_array("SELECT * FROM training_type WHERE trt_deleted = 0 ORDER by trt_name ASC;");
|
||||
|
||||
//smarty thingz
|
||||
$smarty->assign('school_assoc_array', $schools);
|
||||
$smarty->assign('school_city_assoc_array', $school_cities);
|
||||
@@ -41,6 +45,7 @@ if ($this->is_id()) {
|
||||
$smarty->assign('user_data', $user_data_assoc_array[0]);
|
||||
$smarty->assign('shirt_size_assoc_array', $shirt_size_assoc_array);
|
||||
$smarty->assign('parent_assoc_array', $parent_assoc_array);
|
||||
$smarty->assign('tt_assoc_array', $tt_assoc_array);
|
||||
$smarty->display('user_data_'.$tpl.'.tpl');
|
||||
}
|
||||
else {
|
||||
|
||||
@@ -72,6 +72,7 @@ if ($this->is_id()) {
|
||||
$exeptions[] = $user->get_uk_id();
|
||||
}
|
||||
|
||||
/*
|
||||
$rest_user_query = "
|
||||
SELECT
|
||||
*
|
||||
@@ -92,6 +93,18 @@ if ($this->is_id()) {
|
||||
GROUP BY uk_id
|
||||
ORDER BY uk_name;
|
||||
";
|
||||
*/
|
||||
$rest_user_query = "
|
||||
SELECT
|
||||
DISTINCT uktt_user_kid_uk_id uk_id
|
||||
FROM
|
||||
user_kid
|
||||
JOIN
|
||||
user_kid_training_type ON uktt_user_kid_uk_id = uk_id
|
||||
WHERE
|
||||
uktt_training_type_tt_id = {$training->get_tr_training_type_trt_id()};
|
||||
";
|
||||
|
||||
//var_dump($rest_user_query);
|
||||
$rest_user_assoc_array = $sql->assoc_array($rest_user_query);
|
||||
foreach ($rest_user_assoc_array as $rest_user) {
|
||||
|
||||
@@ -83,7 +83,7 @@ if (isset($_POST['action'])) {
|
||||
unset($_POST['uk_id']);
|
||||
user_kid::update_user($_POST, $uid);
|
||||
log::register('update_member', $uid);
|
||||
header("Location: /admin/members");
|
||||
header("Location: /admin/members/{$uid}");
|
||||
break;
|
||||
|
||||
default:
|
||||
|
||||
17
queries/20191002_uktt.sql
Normal file
17
queries/20191002_uktt.sql
Normal file
@@ -0,0 +1,17 @@
|
||||
CREATE TABLE `user_kid_training_type` (
|
||||
`uktt_id` INT NOT NULL AUTO_INCREMENT,
|
||||
`uktt_user_kid_uk_id` INT NOT NULL,
|
||||
`uktt_training_type_tt_id` INT NOT NULL,
|
||||
PRIMARY KEY (`uktt_id`),
|
||||
INDEX `fk_user_kid_training_type_1_idx` (`uktt_user_kid_uk_id` ASC),
|
||||
INDEX `fk_user_kid_training_type_2_idx` (`uktt_training_type_tt_id` ASC),
|
||||
CONSTRAINT `fk_user_kid_training_type_1`
|
||||
FOREIGN KEY (`uktt_user_kid_uk_id`)
|
||||
REFERENCES `user_kid` (`uk_id`)
|
||||
ON DELETE CASCADE
|
||||
ON UPDATE CASCADE,
|
||||
CONSTRAINT `fk_user_kid_training_type_2`
|
||||
FOREIGN KEY (`uktt_training_type_tt_id`)
|
||||
REFERENCES `training_type` (`trt_id`)
|
||||
ON DELETE CASCADE
|
||||
ON UPDATE CASCADE);
|
||||
@@ -86,8 +86,13 @@
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<label class="desc" for="uk_level">Szint:</label>
|
||||
<div><input type="text" name="uk_level" id="uk_level"></div>
|
||||
<label for="level">Szint:</label>
|
||||
{foreach $tt_assoc_array as $tt}
|
||||
<div>
|
||||
<input type="checkbox" name="level[]" value="{$tt['trt_id']}">
|
||||
<span style="position: relative; bottom: 3px;">{$tt['trt_name']}</span>
|
||||
</div>
|
||||
{/foreach}
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
@@ -121,8 +121,13 @@
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<label class="desc" for="uk_level">Szint:</label>
|
||||
<div><input type="text" name="uk_level" id="uk_level" value="{$user_data.uk_level}"></div>
|
||||
<label for="level">Szint:</label>
|
||||
{foreach $tt_assoc_array as $tt}
|
||||
<div>
|
||||
<input type="checkbox" name="level[]" value="{$tt['trt_id']}"{if user_kid::has_training_type($user_data.uk_id, $tt['trt_id'])} checked{/if}>
|
||||
<span style="position: relative; bottom: 3px;">{$tt['trt_name']}</span>
|
||||
</div>
|
||||
{/foreach}
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user