lenta.php 2.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. <?php
  2. use app\models\front\News;
  3. $keyadd = News::keyFilter();
  4. ?>
  5. <a class="news-link" href="/news">Лента новостей</a>
  6. <?php if( Yii::$app->controller->action->id!="index") echo $this->render("@app/views/_etc/banners/desktopLentBannerVideo"); ?>
  7. <div class="lenta">
  8. <?= Yii::$app->cache->getOrSet("main_page_lenta_".(Yii::$app->deviceDetect->isMobile() ?"desktop":"mobile").Yii::$app->controller->action->id.$keyadd,function () {
  9. $lenta = "<div id='list-wrapper' class='list-wrapper'>";
  10. /*
  11. // Фиксированные новости или банера в верху ленты
  12. ## пример "День поля"
  13. */
  14. /* $lenta .= '<style>.lenta .list-wrapper .lenta_fix:hover{background:#60b740;}</style>
  15. <div class="lenta_fix"><h3>
  16. <a href="/story/den_sibirskogo_polya_2023" title="День Сибирского поля-2023"><img src="/img/day_pole.svg" width="275px" height="80px" alt="День Сибирского поля"></a><div class="published_at">28-29 июня</div>
  17. </h3>
  18. </div>
  19. ';
  20. вначало
  21. <div style="text-align: center;font-weight: 600;">До окончания голосования</div>
  22. после a href
  23. <br><span class="timer__seconds"></span>
  24. <div class="count" style="font-size:20px;width:130px;line-height: 24px;"><span class="timer__days"></span><br><span class="timer__hours"></span><br><span class="timer__minutes"></span></div>
  25. */
  26. /*
  27. $lenta .= '<style>.lenta .list-wrapper .lenta_fix:hover{background:#60b740;}</style>
  28. <div class="lenta_fix"><h3>
  29. <a href="/story/new_year_2024" title="Встречаем год дракона"><img src="/img/drgbtn.png?v=0.2" width="200px" height="80px" alt="Дракон кнопка" style="margin-left: 20px;"></a><div class="count" style="font-size:20px;width:130px;line-height: 24px;"><span class="timer__days"></span><br><span class="timer__hours"></span><br><span class="timer__minutes"></span></div>
  30. </h3>
  31. </div>
  32. ';
  33. */
  34. $index = 0;
  35. foreach (News::findFilter()->andWhere(["(flags & 1)"=>0])->limit(70)->all() as $model){
  36. $index++;
  37. $lenta.= \yii\helpers\Html::tag('div',$this->render('_item',["model"=>$model])) ;
  38. if($index==3) $lenta.=$this->render("@app/views/_etc/banners/mobileMainPageLentBanner");
  39. if($index==10 && Yii::$app->controller->action->id!="index") $lenta.=$this->render("@app/views/_etc/banners/desktopLentBanner");
  40. if($index==20 && Yii::$app->controller->action->id!="index") $lenta.=$this->render("@app/views/_etc/banners/desktopLent20Banner");
  41. if($index>20 && ($index % 10)==0 && Yii::$app->controller->action->id!="index" ) $lenta.=$this->render("@app/views/_etc/banners/desktopLent20Banner",["index"=>$index]);
  42. }
  43. $lenta.="</div>";
  44. return $lenta;
  45. },News::$keysCache['main_page_lenta']);
  46. ?>
  47. <div class="all-news">
  48. <a href="/news">Все новости</a>
  49. </div>
  50. </div>
  51. <?
  52. // $this->render('countdown');