From 38d0a2657b37c4a4f1e093d91e6f40e10442ab42 Mon Sep 17 00:00:00 2001 From: Ricsi Date: Thu, 26 Jan 2017 19:56:43 +0100 Subject: [PATCH] diary updated with money deposit objects --- _class/class_money_deposit.php | 15 +++- _css/default_view.css | 12 ++++ _include/include_diary.php | 51 +++++++++---- template/templates/user_diary.tpl | 114 +++++++++++++++++++++++------- 4 files changed, 148 insertions(+), 44 deletions(-) diff --git a/_class/class_money_deposit.php b/_class/class_money_deposit.php index ae52dee..b05c3f4 100644 --- a/_class/class_money_deposit.php +++ b/_class/class_money_deposit.php @@ -52,8 +52,19 @@ class money_deposit { return $this->mod_date; } - public function get_mod_sum() { - return $this->mod_sum; + public function get_mod_date_day() { + $day = date("d", strtotime($this->mod_date)); + if (substr($day, 0, 1) == '0') return substr($day, 1, 1); + return date("d", strtotime($this->mod_date)); + } + + public function get_mod_sum($formatted = null) { + if (!$formatted) { + return $this->mod_sum; + } + else { + return number_format($this->mod_sum, 0, '', ' '); + } } public function get_mod_deleted() { diff --git a/_css/default_view.css b/_css/default_view.css index 3ef828a..7fe065b 100644 --- a/_css/default_view.css +++ b/_css/default_view.css @@ -28,4 +28,16 @@ ul.topnav li a:hover, ul.topnav li a span:hover { background: transparent; color: #01112b; text-decoration: underline; +} + +div.list div.money_deposit { + background-color: #FD9500; + border-left: 2px solid #002E4C; + color: #020372; +} + +.list .money_deposit:hover { + background-color: #F3BF75; + border-left: 2px solid #000; + color: #002E4C; } \ No newline at end of file diff --git a/_include/include_diary.php b/_include/include_diary.php index 0326232..2a695dc 100644 --- a/_include/include_diary.php +++ b/_include/include_diary.php @@ -7,25 +7,46 @@ if ($this->is_id()) { else { # EDZÉS LISTA - $training_list_query = " - SELECT pr_training_tr_id FROM presence - JOIN training ON tr_id = pr_training_tr_id - WHERE - pr_user_kid_uk_id = ".$user->get_uk_id()." - AND tr_deleted = 0 - ORDER BY tr_date DESC; + $action_list_query = " + SELECT + * + FROM + ((SELECT + pr_training_tr_id as object_id, + tr_date as object_date, + if(pr_training_tr_id is not null, 'training', null) as object_type + FROM + presence + JOIN training ON tr_id = pr_training_tr_id + WHERE + pr_user_kid_uk_id = ". $user->get_uk_id() . " + AND tr_deleted = 0) UNION (SELECT + mod_id, + mod_date, + if(mod_id is not null, 'money_deposit', null) as object_type + FROM + money_deposit + WHERE + mod_user_kid_uk_id = ". $user->get_uk_id() . " and mod_deleted = 0)) actions + order by object_date DESC; "; - $training_assoc_array = $sql->assoc_array($training_list_query); + $action_assoc_array = $sql->assoc_array($action_list_query); - $trainings = array(); - foreach ($training_assoc_array as $training) { - $new_training = new training(); - $new_training->set_training_data_by_id($training['pr_training_tr_id']); - $trainings[] = $new_training; + $actions = array(); + foreach ($action_assoc_array as $action) { + if ($action['object_type'] == 'training') { + $new_training = new training(); + $new_training->set_training_data_by_id($action['object_id']); + $actions[] = $new_training; + } + elseif ($action['object_type'] == 'money_deposit') { + $new_mod = new money_deposit(); + $new_mod->set_mod_data_by_id($action['object_id']); + $actions[] = $new_mod; + } } - - $smarty->assign('training_array', $trainings); + $smarty->assign('actions', $actions); $smarty->display('user_diary.tpl'); } diff --git a/template/templates/user_diary.tpl b/template/templates/user_diary.tpl index 542befc..58223a5 100644 --- a/template/templates/user_diary.tpl +++ b/template/templates/user_diary.tpl @@ -1,44 +1,104 @@
- {foreach $training_array as $training} - - {if - $training@first || - ( - $training_array[$training@index]->get_tr_date()|substr:5:2 != $training_array[$training@index-1]->get_tr_date()|substr:5:2 - ) - - } - {if !$training@first && - $training_array[$training@index]->get_tr_date()|substr:5:2 != $training_array[$training@index-1]->get_tr_date()|substr:5:2 + {foreach $actions as $action} + + {if $action|is_a:'training'} + + {if !$action@first && + $actions[$action@index-1]|is_a:'training' && + $actions[$action@index]->get_tr_date()|substr:5:2 != $actions[$action@index-1]->get_tr_date()|substr:5:2 + + || + + !$action@first && + $actions[$action@index-1]|is_a:'money_deposit' && + $actions[$action@index]->get_tr_date()|substr:5:2 != $actions[$action@index-1]->get_mod_date()|substr:5:2 + } +
- {/if} - {$training_array[$training@index]->get_tr_date()|substr:0:4}. - {$months[$training_array[$training@index]->get_tr_date()|substr:5:2]} - ({$user_login->get_training_number_in_month({$training->get_tr_date()|substr:0:4},{$training->get_tr_date()|substr:5:2})} edzés) - + {$actions[$action@index]->get_tr_date()|substr:0:4}. + {$months[$actions[$action@index]->get_tr_date()|substr:5:2]} + -
+
+ + {elseif $action@first} + {$actions[$action@index]->get_tr_date()|substr:0:4}. + {$months[$actions[$action@index]->get_tr_date()|substr:5:2]} + + +
+ {/if} +
- {$training->get_tr_date()|substr:0:4}. - {$months[$training_array[$training@index]->get_tr_date()|substr:5:2]} - {$training->get_tr_date_day()}. - {$days[$training->get_tr_date_day_of_week()]} - {$training->get_tr_date_time()} + {$action->get_tr_date()|substr:0:4}. + {$months[$actions[$action@index]->get_tr_date()|substr:5:2]} + {$action->get_tr_date_day()}. + {$days[$action->get_tr_date_day_of_week()]} + {$action->get_tr_date_time()}
- {if $training->get_tr_training_type_trt_id()}{$training->get_tr_type_name_by_id()} edzés{/if} - {$training->get_tr_duration()} p - {if $training->is_coach()} - {foreach $training->get_tr_coaches_name() as $coach_name} + {if $action->get_tr_training_type_trt_id()}{$action->get_tr_type_name_by_id()} edzés{/if} + {$action->get_tr_duration()} p + {if $action->is_coach()} + {foreach $action->get_tr_coaches_name() as $coach_name} {if $coach_name@first}({/if}{$coach_name}{if $coach_name@last}){else}, {/if} {/foreach} {/if}
- {if $training@last} + + {elseif $action|is_a:'money_deposit'} + + {if !$action@first && + $actions[$action@index-1]|is_a:'training' && + $actions[$action@index]->get_mod_date()|substr:5:2 != $actions[$action@index-1]->get_tr_date()|substr:5:2 + + || + + !$action@first && + $actions[$action@index-1]|is_a:'money_deposit' && + $actions[$action@index]->get_mod_date()|substr:5:2 != $actions[$action@index-1]->get_mod_date()|substr:5:2 + + } +
+ {$actions[$action@index]->get_mod_date()|substr:0:4}. + {$months[$actions[$action@index]->get_mod_date()|substr:5:2]} + + +
+ + {elseif $action@first} + + {$actions[$action@index]->get_mod_date()|substr:0:4}. + {$months[$actions[$action@index]->get_mod_date()|substr:5:2]} + + +
+ + + {/if} + +
+ + {$action->get_mod_date()|substr:0:4}. + {$months[$actions[$action@index]->get_mod_date()|substr:5:2]} + {$action->get_mod_date_day()}. + +
+ befizetés: {$action->get_mod_sum(true)} Ft +
+ + + + {/if} + + {if $action@last} + +
+ {/if} {/foreach}