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> |