timesheet source code
Nie możesz wybrać więcej, niż 25 tematów Tematy muszą się zaczynać od litery lub cyfry, mogą zawierać myślniki ('-') i mogą mieć do 35 znaków.

52 lines
1.5KB

  1. <?php
  2. namespace Biukop;
  3. class NdisPrice{
  4. private $html = '';
  5. private $ndis_table;
  6. public function __construct(int $year=2019) {
  7. global $wpdb;
  8. $this->ndis_table = $wpdb->prefix . 'acare_ndis_price';
  9. $sql = "SELECT * FROM {$this->ndis_table} WHERE year=$year"; //for this year
  10. $results = $wpdb->get_results($sql);
  11. $html = ' <select>';
  12. foreach($results as $r){
  13. $html .= sprintf('<option value="%s" data-level="%d" data-year="%d" data-unit="%s" data-price="%.2f" data-ot="%s">%.2f - %s %s %s</option>',
  14. $r->code,
  15. $r->level,
  16. (int) $r->year,
  17. $r->unit,
  18. (float) $r->price,
  19. $r->ot,
  20. (float) $r->price,
  21. $r->name,
  22. $this->get_level((int) $r->level),
  23. $r->ot
  24. );//end of sprintf
  25. }
  26. $html .=' </select>';
  27. $this->html = $html;
  28. }
  29. private function get_level($level_number){
  30. $levelStr = array(
  31. 0 => '(standard)',
  32. -1 => '', //no level number needed
  33. 1 => '(Level 1)',
  34. 2 => '(Level 2)',
  35. 3 => '(Level 3)'
  36. );
  37. if ( array_key_exists($level_number, $levelStr) )
  38. return $levelStr[$level_number];
  39. else
  40. return '';
  41. }
  42. public function get_html()
  43. {
  44. return $this->html;
  45. }
  46. }