lenta.php 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  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. /*
  35. if( time() < strtotime( date("2024-06-14 18:00:00") ) ){
  36. $lenta .= '<style>.lenta .list-wrapper .lenta_fix:hover{background:#60b740;}.zonline{background:#b50000;color:#fff;padding: 0px 5px;border-radius: 6px;}</style>
  37. <div class="lenta_fix"><h3>
  38. <a href="https://www.amic.ru/news/544084" title="Градостроительные тенденции на примере Барнаула">Градостроительные тенденции на примере Барнаула <span class="zonline">Онлайн-трансляция<span></a><div class="published_at">14 июня</div>
  39. </h3>
  40. </div>
  41. ';
  42. }
  43. if( time() < strtotime( date("2024-09-02 00:00:00") ) ){
  44. $lenta .= '<style>.lenta .list-wrapper .lenta_fix:hover{background:#60b740;}</style>
  45. <div class="lenta_fix"><h3>
  46. <a href="https://www.amic.ru/tags/barnaul---294-" title="Встречаем день города Барнаул"><img src="/img/barnaul294.png?v=0.2" width="300px" height="80px" alt="Встречаем день города Барнаул" style="margin-left: 20px;"></a>
  47. </h3>
  48. </div>
  49. ';
  50. }
  51. */
  52. $lenta .= '<style>.lenta .list-wrapper .lenta_fix:hover{background:#60b740;}</style>
  53. <div class="lenta_fix"><h3>
  54. <a href="https://%D0%BD%D0%B0%D1%80%D0%BE%D0%B4%D0%BD%D1%8B%D0%B9%D0%B7%D0%BD%D0%B0%D0%BA%D0%BA%D0%B0%D1%87%D0%B5%D1%81%D1%82%D0%B2%D0%B0.%D1%80%D1%84" title="Народный знак качества" style="text-align: right;"><img src="/img/nzkg_button.png" width="275px" height="80px" alt="Народный знак качества"></a><div class="published_at"></div>
  55. </h3>
  56. </div>
  57. ';
  58. $index = 0;
  59. foreach (News::findFilter()->andWhere(["(flags & 1)"=>0])->limit(70)->all() as $model){
  60. $index++;
  61. $lenta.= \yii\helpers\Html::tag('div',$this->render('_item',["model"=>$model])) ;
  62. if($index==3) $lenta.=$this->render("@app/views/_etc/banners/mobileMainPageLentBanner");
  63. if($index==10 && Yii::$app->controller->action->id!="index") $lenta.=$this->render("@app/views/_etc/banners/desktopLentBanner");
  64. if($index==20 && Yii::$app->controller->action->id!="index") $lenta.=$this->render("@app/views/_etc/banners/desktopLent20Banner");
  65. if($index>20 && ($index % 10)==0 && Yii::$app->controller->action->id!="index" ) $lenta.=$this->render("@app/views/_etc/banners/desktopLent20Banner",["index"=>$index]);
  66. }
  67. $lenta.="</div>";
  68. return $lenta;
  69. },News::$keysCache['main_page_lenta']);
  70. ?>
  71. <div class="all-news">
  72. <a href="/news">Все новости</a>
  73. </div>
  74. </div>
  75. <?
  76. // $this->render('countdown');