lenta.php 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  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. $lenta .= '<style>.lenta .list-wrapper .lenta_fix:hover{background:#60b740;}</style>
  27. <div class="lenta_fix"><h3>
  28. <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>
  29. </h3>
  30. </div>
  31. ';
  32. $index = 0;
  33. foreach (News::findFilter()->andWhere(["(flags & 1)"=>0])->limit(70)->all() as $model){
  34. $index++;
  35. $lenta.= \yii\helpers\Html::tag('div',$this->render('_item',["model"=>$model])) ;
  36. if($index==3) $lenta.=$this->render("@app/views/_etc/banners/mobileMainPageLentBanner");
  37. if($index==10 && Yii::$app->controller->action->id!="index") $lenta.=$this->render("@app/views/_etc/banners/desktopLentBanner");
  38. if($index==20 && Yii::$app->controller->action->id!="index") $lenta.=$this->render("@app/views/_etc/banners/desktopLent20Banner");
  39. if($index>20 && ($index % 10)==0 && Yii::$app->controller->action->id!="index" ) $lenta.=$this->render("@app/views/_etc/banners/desktopLent20Banner",["index"=>$index]);
  40. }
  41. $lenta.="</div>";
  42. return $lenta;
  43. },News::$keysCache['main_page_lenta']);
  44. ?>
  45. <div class="all-news">
  46. <a href="/news">Все новости</a>
  47. </div>
  48. </div>
  49. <?
  50. $this->render('countdown');