mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-07-03 11:59:29 +00:00
- Better code in NavigationMenuWidget::printNavItem
- Custom filters are now loaded in InfoCenter - filter_kurzbz is automatically generated - Now is saved the filter description - filter description is the same for every language - Added method getCustomFiltersList to system/Filters_model.php
This commit is contained in:
@@ -408,6 +408,17 @@ class InfoCenter extends VileSci_Controller
|
||||
}
|
||||
}
|
||||
|
||||
$customFilters = $this->FiltersModel->getCustomFiltersList('infocenter', 'PersonActions', $this->uid);
|
||||
if (hasData($customFilters))
|
||||
{
|
||||
for ($filtersCounter = 0; $filtersCounter < count($customFilters->retval); $filtersCounter++)
|
||||
{
|
||||
$filter = $customFilters->retval[$filtersCounter];
|
||||
|
||||
$listCustomFilters[$filter->filter_id] = $filter->description[0];
|
||||
}
|
||||
}
|
||||
|
||||
$filtersarray = array(
|
||||
'abgeschickt' => array(
|
||||
'link' => '#',
|
||||
@@ -426,6 +437,18 @@ class InfoCenter extends VileSci_Controller
|
||||
$this->_fillFilters($listFiltersSent, $filtersarray['abgeschickt']);
|
||||
$this->_fillFilters($listFiltersNotSent, $filtersarray['nichtabgeschickt']);
|
||||
|
||||
if (isset($listCustomFilters) && is_array($listCustomFilters) && count($listCustomFilters) > 0)
|
||||
{
|
||||
$filtersarray['personal'] = array(
|
||||
'link' => '#',
|
||||
'description' => 'Personal filters',
|
||||
'expand' => true,
|
||||
'children' => array()
|
||||
);
|
||||
|
||||
$this->_fillFilters($listCustomFilters, $filtersarray['personal']);
|
||||
}
|
||||
|
||||
$this->navigationMenuArray = array(
|
||||
'dashboard' => array(
|
||||
'link' => '#',
|
||||
|
||||
@@ -31,4 +31,24 @@ class Filters_model extends DB_Model
|
||||
|
||||
return $this->FiltersModel->loadWhere($filterParametersArray);
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
public function getCustomFiltersList($app, $dataset_name, $uid)
|
||||
{
|
||||
$this->addSelect('filter_id, description');
|
||||
$this->addJoin('public.tbl_benutzer', 'person_id');
|
||||
$this->addOrder('sort', 'ASC');
|
||||
|
||||
$filterParametersArray = array(
|
||||
'app' => $app,
|
||||
'dataset_name' => $dataset_name,
|
||||
'default_filter' => false,
|
||||
'array_length(description, 1) >' => 0,
|
||||
'uid' => $uid
|
||||
);
|
||||
|
||||
return $this->FiltersModel->loadWhere($filterParametersArray);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<div>
|
||||
Filter short description: <input type="text" id="customFilterKurzbz" name="customFilterKurzbz" value="">
|
||||
Filter description: <input type="text" id="customFilterDescription" name="customFilterDescription" value="">
|
||||
</div>
|
||||
<div>
|
||||
<input type="button" id="saveCustomFilterButton" value="Save filter">
|
||||
|
||||
@@ -816,10 +816,17 @@ class FilterWidget extends Widget
|
||||
}
|
||||
}
|
||||
|
||||
$desc = $_POST['customFilterDescription'];
|
||||
$descPGArray = '{"'.$desc.'", "'.$desc.'", "'.$desc.'", "'.$desc.'"}';
|
||||
|
||||
$resultBenutzer = $this->BenutzerModel->load(getAuthUID());
|
||||
$personId = $resultBenutzer->retval[0]->person_id;
|
||||
|
||||
$result = $this->FiltersModel->loadWhere(array(
|
||||
'app' => $this->app,
|
||||
'dataset_name' => $this->datasetName,
|
||||
'filter_kurzbz' => $_POST['customFilterKurzbz']
|
||||
'description' => $descPGArray,
|
||||
'person_id' => $personId
|
||||
));
|
||||
|
||||
if (hasData($result))
|
||||
@@ -828,35 +835,27 @@ class FilterWidget extends Widget
|
||||
array(
|
||||
'app' => $this->app,
|
||||
'dataset_name' => $this->datasetName,
|
||||
'filter_kurzbz' => $_POST['customFilterKurzbz']
|
||||
'description' => $descPGArray,
|
||||
'person_id' => $personId
|
||||
),
|
||||
array(
|
||||
'description' => '{}',
|
||||
'sort' => null,
|
||||
'default_filter' => false,
|
||||
'filter' => json_encode($objToBeSaved),
|
||||
'oe_kurzbz' => null
|
||||
'filter' => json_encode($objToBeSaved)
|
||||
)
|
||||
);
|
||||
}
|
||||
else
|
||||
{
|
||||
$result = $this->BenutzerModel->load(getAuthUID());
|
||||
|
||||
if (hasData($result))
|
||||
{
|
||||
$this->FiltersModel->insert(array(
|
||||
'app' => $this->app,
|
||||
'dataset_name' => $this->datasetName,
|
||||
'filter_kurzbz' => $_POST['customFilterKurzbz'],
|
||||
'person_id' => $result->retval[0]->person_id,
|
||||
'description' => '{}',
|
||||
'sort' => null,
|
||||
'default_filter' => false,
|
||||
'filter' => json_encode($objToBeSaved),
|
||||
'oe_kurzbz' => null
|
||||
));
|
||||
}
|
||||
$this->FiltersModel->insert(array(
|
||||
'app' => $this->app,
|
||||
'dataset_name' => $this->datasetName,
|
||||
'filter_kurzbz' => uniqid($personId, true),
|
||||
'person_id' => $personId,
|
||||
'description' => $descPGArray,
|
||||
'sort' => null,
|
||||
'default_filter' => false,
|
||||
'filter' => json_encode($objToBeSaved),
|
||||
'oe_kurzbz' => null
|
||||
));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -38,8 +38,26 @@ class NavigationMenuWidget extends Widget
|
||||
public static function printNavItem($item, $depth = 1)
|
||||
{
|
||||
$expanded = isset($item['expand']) && $item['expand'] === true ? ' active' : '';
|
||||
echo '<li class="'.$expanded.'">
|
||||
<a href="'.$item['link'].'"'.$expanded.'>'.(isset($item['icon']) ? '<i class="fa fa-'.$item['icon'].' fa-fw"></i> ' : '').$item['description'].(!empty($item['children']) ? '<span class="fa arrow"></span>':'').'</a>';
|
||||
|
||||
echo '<li class="'.$expanded.'">';
|
||||
|
||||
echo '<a href="'.$item['link'].'"'.$expanded.'>';
|
||||
|
||||
if (isset($item['icon']))
|
||||
{
|
||||
echo '<i class="fa fa-'.$item['icon'].' fa-fw"></i> ';
|
||||
}
|
||||
|
||||
// echo '<span>'.$item['description'].'</span>'.'<span style="">test</span>';
|
||||
echo $item['description'];
|
||||
|
||||
if (!empty($item['children']))
|
||||
{
|
||||
echo '<span class="fa arrow"></span>';
|
||||
}
|
||||
|
||||
echo '</a>';
|
||||
|
||||
if (!empty($item['children']))
|
||||
{
|
||||
$level = '';
|
||||
@@ -53,6 +71,7 @@ class NavigationMenuWidget extends Widget
|
||||
self::printNavItem($child, ++$depth);
|
||||
echo '</ul>';
|
||||
}
|
||||
|
||||
echo '</li>';
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user