Commit fd384984b89bc02efc2916c71132f0b9cc41ef8e
1 parent
4b85f536
test
Showing
2 changed files
with
58 additions
and
11 deletions
Show diff stats
common/models/Job.php
| @@ -101,16 +101,63 @@ | @@ -101,16 +101,63 @@ | ||
| 101 | $start = new \DateTime($this->date_start); | 101 | $start = new \DateTime($this->date_start); |
| 102 | $end = new \DateTime($this->date_end); | 102 | $end = new \DateTime($this->date_end); |
| 103 | $interval = $end->diff($start); | 103 | $interval = $end->diff($start); |
| 104 | - if(!empty($interval->y)) { | ||
| 105 | - if($interval->y) { | ||
| 106 | - $result | 104 | + if($interval->y > 0) { |
| 105 | + if($interval->y == 1) { | ||
| 106 | + $result .= $interval->y.' год'; | ||
| 107 | + } elseif($interval->y > 1 && $interval->y <= 4) { | ||
| 108 | + $result .= $interval->y.' года'; | ||
| 109 | + } else { | ||
| 110 | + $result .= $interval->y.' лет'; | ||
| 107 | } | 111 | } |
| 108 | } | 112 | } |
| 113 | + if($interval->m > 0) { | ||
| 114 | + if(!empty($result)) { | ||
| 115 | + $result .= ', '; | ||
| 116 | + } | ||
| 117 | + if($interval->m == 1) { | ||
| 118 | + $result .= $interval->m.' месяц'; | ||
| 119 | + } elseif($interval->m > 1 && $interval->m <= 4) { | ||
| 120 | + $result .= $interval->m.' месяца'; | ||
| 121 | + } else { | ||
| 122 | + $result .= $interval->m.' месяцев'; | ||
| 123 | + } | ||
| 124 | + } | ||
| 125 | + if(empty($result) && $interval->d > 0) { | ||
| 126 | + $result = 'Меньше месяца'; | ||
| 127 | + } | ||
| 109 | } elseif(!empty($this->date_start)) { | 128 | } elseif(!empty($this->date_start)) { |
| 110 | - | 129 | + $result = ''; |
| 130 | + $start = new \DateTime($this->date_start); | ||
| 131 | + $end = new \DateTime(); | ||
| 132 | + $interval = $end->diff($start); | ||
| 133 | + if($interval->y > 0) { | ||
| 134 | + if($interval->y == 1) { | ||
| 135 | + $result .= $interval->y.' год'; | ||
| 136 | + } elseif($interval->y > 1 && $interval->y <= 4) { | ||
| 137 | + $result .= $interval->y.' года'; | ||
| 138 | + } else { | ||
| 139 | + $result .= $interval->y.' лет'; | ||
| 140 | + } | ||
| 141 | + } | ||
| 142 | + if($interval->m > 0) { | ||
| 143 | + if(!empty($result)) { | ||
| 144 | + $result .= ', '; | ||
| 145 | + } | ||
| 146 | + if($interval->m == 1) { | ||
| 147 | + $result .= $interval->m.' месяц'; | ||
| 148 | + } elseif($interval->m > 1 && $interval->m <= 4) { | ||
| 149 | + $result .= $interval->m.' месяца'; | ||
| 150 | + } else { | ||
| 151 | + $result .= $interval->m.' месяцев'; | ||
| 152 | + } | ||
| 153 | + } | ||
| 154 | + if(empty($result) && $interval->d > 0) { | ||
| 155 | + $result = 'Меньше месяца'; | ||
| 156 | + } | ||
| 111 | } else { | 157 | } else { |
| 112 | return false; | 158 | return false; |
| 113 | } | 159 | } |
| 160 | + return $result; | ||
| 114 | // if($this->date_end && $this->date_start) { | 161 | // if($this->date_end && $this->date_start) { |
| 115 | // $date = new \DateTime(date('Y-m-d H:i:s', $this->date_start)); | 162 | // $date = new \DateTime(date('Y-m-d H:i:s', $this->date_start)); |
| 116 | // return \Yii::$app->formatter->asRelativeTime($date->diff(new \DateTime(date('Y-m-d H:i:s', $this->date_end)))); | 163 | // return \Yii::$app->formatter->asRelativeTime($date->diff(new \DateTime(date('Y-m-d H:i:s', $this->date_end)))); |
frontend/views/performer/workplace.php
| @@ -17,13 +17,13 @@ | @@ -17,13 +17,13 @@ | ||
| 17 | <div class="workplace-experience-post-title"><?= $job->name ?></div> | 17 | <div class="workplace-experience-post-title"><?= $job->name ?></div> |
| 18 | <div class="workplace-experience-post-date"> | 18 | <div class="workplace-experience-post-date"> |
| 19 | <?php | 19 | <?php |
| 20 | - if(!empty($job->date_start) && !empty($job->date_end)) { | ||
| 21 | - echo $job->date_start . '-' . $job->date_end . ' (' . $job->expTime . ')'; | ||
| 22 | - } elseif(!empty($job->date_start)) { | ||
| 23 | - echo 'с ' . $job->date_start . ' (' . $job->expTime . ')'; | ||
| 24 | - } elseif(!empty($job->date_end)) { | ||
| 25 | - echo 'до ' . $job->date_end; | ||
| 26 | - } | 20 | + if(!empty( $job->date_start ) && !empty( $job->date_end )) { |
| 21 | + echo \Yii::$app->formatter->asDate(strtotime($job->date_start), 'php:d.m.Y') . ' - ' . \Yii::$app->formatter->asDate(strtotime($job->date_end), 'php:d.m.Y') . ' (' . $job->expTime . ')'; | ||
| 22 | + } elseif(!empty( $job->date_start )) { | ||
| 23 | + echo 'с ' . \Yii::$app->formatter->asDate(strtotime($job->date_start), 'php:d.m.Y') . ' (' . $job->expTime . ')'; | ||
| 24 | + } elseif(!empty( $job->date_end )) { | ||
| 25 | + echo 'до ' . \Yii::$app->formatter->asDate(strtotime($job->date_end), 'php:d.m.Y'); | ||
| 26 | + } | ||
| 27 | ?> | 27 | ?> |
| 28 | </div> | 28 | </div> |
| 29 | <div class="workplace-experience-post-vacancy"><?= $job->position ?></div> | 29 | <div class="workplace-experience-post-vacancy"><?= $job->position ?></div> |