Skip to content
Snippets Groups Projects
Commit b20f122c authored by Torsten Oppermann's avatar Torsten Oppermann
Browse files

[TASK] Adding limit jobs per page config to the ajax controller

parent 7052b117
No related branches found
No related tags found
No related merge requests found
...@@ -27,11 +27,9 @@ namespace SGalinski\SgJobs\Controller\Ajax; ...@@ -27,11 +27,9 @@ namespace SGalinski\SgJobs\Controller\Ajax;
***************************************************************/ ***************************************************************/
use SGalinski\SgAjax\Controller\Ajax\AbstractAjaxController; use SGalinski\SgAjax\Controller\Ajax\AbstractAjaxController;
use SGalinski\SgJobs\Service\BackendService;
use SGalinski\SgJobs\Service\FrontendFilterService; use SGalinski\SgJobs\Service\FrontendFilterService;
use TYPO3\CMS\Core\Resource\ResourceFactory; use TYPO3\CMS\Core\Resource\ResourceFactory;
use TYPO3\CMS\Core\Utility\GeneralUtility; use TYPO3\CMS\Core\Utility\GeneralUtility;
use TYPO3\CMS\Extbase\Configuration\ConfigurationManagerInterface;
/** /**
* Ajax Controller * Ajax Controller
...@@ -70,7 +68,7 @@ class JoblistController extends AbstractAjaxController { ...@@ -70,7 +68,7 @@ class JoblistController extends AbstractAjaxController {
$this->assignFilterValues($recordPageId); $this->assignFilterValues($recordPageId);
// pagination logic // pagination logic
$jobLimit = (int) $this->settings['jobLimit']; $jobLimit = (int) $_POST['parameters']['limit'];
$offset = 0; $offset = 0;
$currentPageBrowserPage = (int) GeneralUtility::_GP('tx_sgjobs_pagebrowser')['currentPage']; $currentPageBrowserPage = (int) GeneralUtility::_GP('tx_sgjobs_pagebrowser')['currentPage'];
if ($currentPageBrowserPage && $jobLimit) { if ($currentPageBrowserPage && $jobLimit) {
...@@ -94,6 +92,7 @@ class JoblistController extends AbstractAjaxController { ...@@ -94,6 +92,7 @@ class JoblistController extends AbstractAjaxController {
$this->view->assign('selectedLocation', $filters['location']); $this->view->assign('selectedLocation', $filters['location']);
$this->view->assign('selectedArea', $filters['area']); $this->view->assign('selectedArea', $filters['area']);
$this->view->assign('selectedFunction', $filters['function']); $this->view->assign('selectedFunction', $filters['function']);
$this->view->assign('limit', $jobLimit);
} }
/** /**
......
...@@ -85,6 +85,7 @@ class JoblistController extends ActionController { ...@@ -85,6 +85,7 @@ class JoblistController extends ActionController {
$numberOfPages = ($jobLimit <= 0 ? 0 : ceil($jobsCount / $jobLimit)); $numberOfPages = ($jobLimit <= 0 ? 0 : ceil($jobsCount / $jobLimit));
$this->view->assign('jobs', $jobs); $this->view->assign('jobs', $jobs);
$this->view->assign('limit', $jobLimit);
$this->view->assign('numberOfPages', $numberOfPages); $this->view->assign('numberOfPages', $numberOfPages);
} }
......
...@@ -4,4 +4,5 @@ ...@@ -4,4 +4,5 @@
<f:form.select class="sgjobs-select form-control" multiple="0" size="1" value="{selectedCompany}" property="filterCompany" optionValueField="value" options="{companies}" id="filter-companies" /> <f:form.select class="sgjobs-select form-control" multiple="0" size="1" value="{selectedCompany}" property="filterCompany" optionValueField="value" options="{companies}" id="filter-companies" />
<f:form.select class="sgjobs-select form-control" multiple="0" size="1" value="{selectedArea}" property="filterArea" optionValueField="value" options="{areas}" id="filter-areas" /> <f:form.select class="sgjobs-select form-control" multiple="0" size="1" value="{selectedArea}" property="filterArea" optionValueField="value" options="{areas}" id="filter-areas" />
<f:form.select class="sgjobs-select form-control" multiple="0" size="1" value="{selectedFunction}" property="filterFunction" optionValueField="value" options="{functions}" id="filter-functions" /> <f:form.select class="sgjobs-select form-control" multiple="0" size="1" value="{selectedFunction}" property="filterFunction" optionValueField="value" options="{functions}" id="filter-functions" />
<f:form.hidden value="{limit}" id="filter-limit" />
</f:form> </f:form>
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
partial="Filter" partial="Filter"
arguments="{filters: filters, countries: countries, cities: cities, companies: companies, areas: areas, arguments="{filters: filters, countries: countries, cities: cities, companies: companies, areas: areas,
functions: functions, selectedCountry: selectedCountry, selectedCompany: selectedCompany, functions: functions, selectedCountry: selectedCountry, selectedCompany: selectedCompany,
selectedLocation: selectedLocation, selectedArea: selectedArea, selectedFunction: selectedFunction}" selectedLocation: selectedLocation, selectedArea: selectedArea, selectedFunction: selectedFunction, limit: limit}"
/> />
<f:for each="{jobs}" as="job"> <f:for each="{jobs}" as="job">
......
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
<div id="sgjobs-joblist"> <div id="sgjobs-joblist">
<f:render <f:render
partial="Filter" partial="Filter"
arguments="{filters: filters, countries: countries, cities: cities, companies: companies, areas: areas, functions: functions}" arguments="{filters: filters, countries: countries, cities: cities, companies: companies, areas: areas, functions: functions, limit: limit}"
/> />
<f:for each="{jobs}" as="job"> <f:for each="{jobs}" as="job">
......
...@@ -52,6 +52,7 @@ export default class SgJobs { ...@@ -52,6 +52,7 @@ export default class SgJobs {
company: $('#filter-companies').val(), company: $('#filter-companies').val(),
area: $('#filter-areas').val(), area: $('#filter-areas').val(),
function: $('#filter-functions').val(), function: $('#filter-functions').val(),
limit: $('#filter-limit').val()
} }
} }
).done(function(result) { ).done(function(result) {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment