Переглянути джерело

fix some minor pagination issues

ksieren 2 роки тому
батько
коміт
6c475549f2

+ 2 - 2
Classes/Controller/BackendController.php

@@ -132,7 +132,7 @@ class BackendController extends ActionController
         return $this->htmlResponse($this->moduleTemplate->renderContent());
     }
 
-    public function showLastAction(int $daysPast = null)
+    public function showLastAction(int $daysPast = 0)
     {
         $this->utilities = GeneralUtility::makeInstance(Utilities::class);
         $activePagesExpiredInlast30days = $this->activePageRepository->findExpiredRecordsInTheLast30OR90Days($daysPast);
@@ -157,7 +157,7 @@ class BackendController extends ActionController
 
         $this->buildPagination($pageObjectArray, $itemsperpage, $currentPage);
 
-        $this->moduleTemplate->setContent($this->view->assign('days',$daysPast)->render());
+        $this->moduleTemplate->setContent($this->view->assign('daysPast',$daysPast)->render());
         return $this->htmlResponse($this->moduleTemplate->renderContent());
     }
 

+ 7 - 10
Classes/Domain/Repository/ActivePageRepository.php

@@ -57,15 +57,13 @@ class ActivePageRepository extends Repository
     return $result->fetchAllAssociative();
   }
 
-    public function findExpiredRecordsInTheLast30OR90Days(int $daysPast = null)
+    public function findExpiredRecordsInTheLast30OR90Days(int $daysPast = 0)
     {
         $currentDate = new \DateTime("now");
-        $timestamp = $currentDate->getTimestamp();
-        if ($daysPast){
-            $period = ($daysPast == 30) ? 'P30D' : 'P90D';
-            $timeperiod = $currentDate->sub(new \DateInterval($period));
-            $timestamp = $timeperiod->getTimestamp();
-        }
+        $timestampToday = $currentDate->getTimestamp();
+        $period = ($daysPast == 30) ? 'P30D' : 'P90D';
+        $timeperiod = $currentDate->sub(new \DateInterval($period));
+        $timestamp = $timeperiod->getTimestamp();
 
         $queryBuilder = GeneralUtility::makeInstance(ConnectionPool::class)->getQueryBuilderForTable('pages');
         $queryBuilder->getRestrictions()->removeAll(); // Remove all restrictions
@@ -86,12 +84,11 @@ class ActivePageRepository extends Repository
                 $queryBuilder->expr()->eq('p.hidden', $queryBuilder->createNamedParameter(1, \PDO::PARAM_INT))
             )
             ->andWhere(
-                $queryBuilder->expr()->gte('p.endtime', $queryBuilder->createNamedParameter(1, \PDO::PARAM_INT)),
-                $queryBuilder->expr()->lte('p.endtime', $queryBuilder->createNamedParameter($timestamp, \PDO::PARAM_INT))
+                $queryBuilder->expr()->gte('p.endtime', $queryBuilder->createNamedParameter($timestamp, \PDO::PARAM_INT)),
+                $queryBuilder->expr()->lte('p.endtime', $queryBuilder->createNamedParameter($timestampToday, \PDO::PARAM_INT))
             )
             ->groupBy('p.slug')
             ->orderBy('p.endtime', 'ASC');
-
         return $queryBuilder->execute()->fetchAllAssociative();
     }
 

+ 0 - 6
Classes/ViewHelpers/CssBackgroundViewHelper.php

@@ -22,8 +22,6 @@ class CssBackgroundViewHelper extends AbstractViewHelper
         $endtime = intval($this->arguments['endtime']);
 
         $color = $this->getBackgroundColor($endtime);
-        //$data = ['$endtime' => $endtime, '$color' => $color];
-        //DebuggerUtility::var_dump($data);
 
         return $color;
     }
@@ -31,13 +29,9 @@ class CssBackgroundViewHelper extends AbstractViewHelper
     protected function getBackgroundColor($endtime)
     {
          $between1And7 = strtotime('7 days');
-        // echo '$betwwen1And7: '.$between1And7.'<br>';
          $between8And14 = strtotime('14 days');
-        // echo '$betwwen8And14: '.$between8And14.'<br>';
          $between15And30 = strtotime('30 days');
-        // echo '$between15And30: '.$between15And30.'<br>';
         $between31And42 = strtotime('42 days');
-        // echo '$between15And30: '.$between31And42.'<br>';
 
         $color = '';
         if($endtime <= $between1And7) {

+ 5 - 5
Resources/Private/Partials/Paging.html

@@ -8,13 +8,13 @@
     <f:if condition="{paging.previousPageNumber} && {paging.previousPageNumber} >= {paging.firstPageNumber}">
       <f:then>
         <li class="waves-effect list-group">
-          <a href="{f:uri.action(action: actionName, arguments:{currentPage: 1})}"
+          <a href="{f:uri.action(action: actionName, arguments:{currentPage: 1, daysPast: daysPast})}"
             title="{f:translate(key:'pagemanager.paging.first')}">
             <i class="material-icons">first_page</i>
           </a>
         </li>
         <li class="waves-effect list-group">
-          <a href="{f:uri.action(action: actionName, arguments:{currentPage: paging.previousPageNumber})}"
+          <a href="{f:uri.action(action: actionName, arguments:{currentPage: paging.previousPageNumber, daysPast: daysPast})}"
             title="{f:translate(key:'pagemanager.paging.prevoius')}">
             <i class="material-icons">chevron_left</i>
           </a>
@@ -33,20 +33,20 @@
     <li><span class="pageNumbers">Seite {paginator.currentPageNumber} von {paging.lastPageNumber} |</span></li>
     <f:for each="{pages}" as="page">
       <li class="{f:if(condition: '{page} == {paginator.currentPageNumber}', then:'active', else: 'waves-effect')}">
-        <a class="hide" href="{f:uri.action(action: actionName, arguments:{currentPage: page})}">{page}</a>
+        <a class="hide" href="{f:uri.action(action: actionName, arguments:{currentPage: page, daysPast: daysPast})}">{page}</a>
       </li>
     </f:for>
 
     <f:if condition="{paging.nextPageNumber} && {paging.nextPageNumber} <= {paging.lastPageNumber}">
       <f:then>
         <li class="waves-effect list-group">
-          <a href="{f:uri.action(action: actionName, arguments:{currentPage: paging.nextPageNumber})}"
+          <a href="{f:uri.action(action: actionName, arguments:{currentPage: paging.nextPageNumber, daysPast: daysPast})}"
             title="{f:translate(key:'pagemanager.paging.next')}">
             <i class="material-icons">chevron_right</i>
           </a>
         </li>
         <li class="waves-effect list-group">
-          <a href="{f:uri.action(action: actionName, arguments:{currentPage: paging.lastPageNumber})}"
+          <a href="{f:uri.action(action: actionName, arguments:{currentPage: paging.lastPageNumber, daysPast: daysPast})}"
           title="{f:translate(key:'pagemanager.paging.last')}">
             <i class="material-icons">last_page</i>
           </a>

+ 2 - 3
Resources/Private/Templates/Backend/ShowLast.html

@@ -5,7 +5,7 @@
 
 <f:section name="Content">
  
-    <h1>Liste Beiträge, die in den letzten {days} Tagen ausgelaufen sind</h1>
+    <h1>Liste Beiträge, die in den letzten {daysPast} Tagen ausgelaufen sind</h1>
 
     <f:flashMessages />
     
@@ -46,6 +46,5 @@
           <f:else>Kein Daten Gefunden</f:else>
         </f:if>
     </table>
-    <!-- Render your paging -->
-    <f:render partial="Paging.html" arguments="{totalrecords: totalRecords, cpage: cPage, paging: paging, pages: pages, paginator: paginator, actionName: actionName}" />
+    <f:render partial="Paging.html" arguments="{totalrecords: totalRecords, cpage: cPage, paging: paging, pages: pages, paginator: paginator, actionName: actionName, daysPast: daysPast}" />
 </f:section>