- Added function isEmptyArray to fhc_helper
- Adapted the code in application/* to use as much as possible this two new functions
- Removed the php function empty almost everywhere
- Changed URI of path from system/infocenter/InfoCenter/infocenterFreigegeben to system/infocenter/InfoCenter/freigegeben in navigation config
- Moved the logic from Navigation controller to NavigationLib
- Added private method _loadNavigationLib to Navigation controller to load the NavigationLib with parameters
- Navigation controller now extends FHC_Controller
- Added NavigationLib to collect all the logic used by the NavigationWidget components
- Remove the handle of the fhc_controller_id from the NavigationWidget.js
- NavigationWidget.js now uses better tools that came from the AjaxLib
- Adapted InfoCenter controller to work with the new tools from NavigationWidget
- infocenterPersonDataset.js->refreshSideMenu now uses the parameter navigation_page in the ajax call
- Renamed InfoCenter controller method from infocenterFreigegeben to freigegeben
- Now methods index, freigegeben and showDetails generates their own left menu
- showDetails generate a left menu based on the origin page (index or freigegeben)
- freigegeben uses its own filters now
- Added view infocenterFreigegebenData.php
- Added new core controller called Auth_Controller that extends FHC_Controller and manage the authentication
- All the controllers that were extending the CI_Controller now they extend the FHC_Controller
- All the controllers that were extending the FHC_Controller now they extend the Auth_Controller
- Added the method isAllowed to the FiltersLib to check if the authenticated user has the required permissions
- FilterWidget and controller Filters are using the method isAllowed from the FiltersLib
- Adapted Filters controller and FilterWidget to use this new lib
- Better memory usage in FilterWidget
- PhrasesLib now checks if categories is an empty array, it it is then avoid to call the method to load phrases (avoids an ugly error)
- Renamed the class FHC_PhraseLib to FHC_PhrasesLib (like the filename)
If only the "app" and "dataset_name" parameters are given, at the first loading of the FilterWidget:
1. Try to load the custom filter (person_id = logged user person_id) with the given "app" and "dataset_name" that is set as default filter (default_filter = true)
2. Try to load the global filter (person_id = null) with the given "app" and "dataset_name" that is set as default filter (default_filter = true)
3. Do not load anything to avoid to retrive too many data from DB
- Added public/js/FilterWidget.js and public/js/NavigationWidget.js to collect all the JS for Filter and Navigation widgets
- Added filterwidget and navigationwidget paramaters to FHC-Header to include the new CSS and JS for Filter and Navigation widgets
- Removed all CSS and JS from the views used from Filter and Navigation widgets
- Added method _getFilterUniqueId to controller Filters to generate a unique id for a filter based on fhc_controller_id and the current page
- Adapted the code in controller Filters to use _getFilterUniqueId
- Added method _getFilterUniqueId to widget FilterWidget to generate a unique id for a filter based on fhc_controller_id and the current page
- Adapted the code in widget FilterWidget to use _getFilterUniqueId
- Removed fhc_controller_id from menu generation in InfoCenter controller
- InfoCenter controller now gives as parameter fhc_controller_id to view infocenterDetails
- InfoCenter controller now gives as parameter fhc_controller_id to various redirect
- Views infocenter, infocenterData, infocenterDetails and infocenterFreigegeben:
- including new JS and CSS to work with Navigation and Filter widgets
- including AjaxLib (required by FilterWidget.js and NavigationWidget.js)
- using fhc_controller_id in Details and unlockPerson links
- fhc_controller_id in not anymore a parameter for FilterWidget, adapted the code where FilterWidget is called
- AjaxLib: renamed method _getUrlParameter to getUrlParameter
- Removed function getUrlParameter from public/js/infocenter/infocenterDetails.js, now uses the method from AjaxLib
- Added fhc_controller_id where needed into public/js/infocenter/infocenterDetails.js
- public/js/infocenter/infocenterPersonDataset.js now uses getUrlParameter from AjaxLib
- Added paramater filter_page in infocenterPersonDataset.js when calling Filters/rowNumber
- Added private method _isAllowed to controller system/Filters
- The method _isAllowed is called in the controller constructor and checks if the caller has the permission to read data with this instance of the FilterWidget
- The permission is given as parameter when calling the FilterWidget, the parameter is called requiredPermissions
- Updated the view system/infocenter/infocenterData to give the infocenter permission to the FilterWidget
- Changed the logic into the FilterWidget to manage the requiredPermissions parameter
- Addded controller system/Navigation to retrive menus via ajax
- Renamed method _setNavigationMenuArray to setNavigationMenuArray and set as public in system/infocenter/InfoCenter
- Now the InfoCenter menu is stored in the session
- The menu is generated by the widget NavigationWidget via JS
- No need anymore to give as parameters to the views the menu arrays
- Now the parameter markRow must be a function that returns directly the class to mark records in FilterWidget
- Changed InfoCenter to mark locked record with the new markRow function
- Added JS include jqueryui to InfoCenter
- Added left join to system.tbl_person_lock in infocenterData.php
- Added field LockDate to InfoCenter filter
- Added parameter markRow to InfoCenter filter
- Added DragNDrop to FilterWidget to sort/remove the selected filter fields
- FilterWidget now display the name of the loaded filter if available
- Added the property "name" to the jsonb of filters to display the name of the loaded filter
- Added the static method displayFilterName to the FilterWidget to display the name of the loaded filter
- The collapsible panel in FilterWidget now shows/hides the fields selection, the filter operators and the inputs to save the custom filter
- The GUI remembers if the collapsible panel should be closed or open
- Added the "Apply" button to the filter operators
- Added the markRow parameter to the FilterWidget, used to mark a row if one or more conditions are matched
- Added the alternativeMarkRowClass to use a different class to mark a row
- Added the public static function markRow to the FilterWidget
- Added method deleteCustomFilter to model Filters_model
- Changed parameter filterId to filter_id in FilterWidget, infocenterData
- Changed CSS and JS in views/widgets/navigationMenu.php to allow two links in one menu item
- Changed NavigationMenuWidget to allow two links in one menu item
- 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
- Renamed widget FHC_navigation as NavigationMenuWidget
- Added new widget NavigationWidget to create header and menu
- Renamed view fhcnavheader as navigationHeader
- Renamed view fhcnavigation as navigationMenu
- Added new view navigation
- InfoCenter controller creates the header array
- NavigationHeaderWidget print the header items from an array
- Removed controller application/controllers/system/infocenter/InfocenterDetails.php
- Removed method _getFilterList from controller system/infocenter/InfoCenter.php
- Added method _setNavigationMenuArray to controller system/infocenter/InfoCenter.php to generate the array for the left menu
- Added public method getFilterList to model Filters_model
- Removed view application/views/widgets/navigation.php
- Removed widget application/widgets/navigation.php
- Widget application/widgets/FHC_navigation.php now is usable to print any menu from an array
- Added operator "set" and "not set" to FilterWidget for timestamp type
- FilterWidget store filterId into session
- FilterWidget load a filter from DB only if a different filter is required
- Now FilterWidget is not rendering an entire page but only a div
- Added view infocenterData to show the filter itself
- FilterWidget now is using the new FHC-Header
- Fixed problem with table sorter in views/templates/header.php
- Added checkboxes functionality to FilterWidget to render automatically the select column
- Added additionalColumns functionality to add additional columns to the dataset table
- Added formatRaw functionality to give an anonymous function as parameter to format every single raw of the dataset table
- The filter can be loaded from DB also by filter_id