Commit Graph

133 Commits

Author SHA1 Message Date
Paolo bf9cc35dd5 TableWidget fixed a typo 2020-01-08 15:52:03 +01:00
Paolo c2bc48d320 - Placed a timestamp in the filter/table widget session
- Added a constant as fallback timeout for filter/table widget
- Added a parameter to specify the filter/table widget life time
- Filter/table widget on load removes expired filter/table widgets from session
2019-11-28 16:51:38 +01:00
Cris bd723e234e Changed order of Studiensemester_widget
Now it is ordered chronologically (WS2020-SS2020-WS201-SS2019...), which
fits better to daily usage.
Before it was ordered alphabetically.
2019-11-12 11:56:11 +01:00
Cris 9f3c9d5481 Unified default text displayed in Dropdown-Widgets
Now the dropdown widgets used in lehrauftrags-process have all same
look & feel when nothing is (pre-)selected. It will display
'Ausbildungssemester' or 'Studiengang'.
2019-11-12 11:53:57 +01:00
Paolo 3e5e65bfc4 Merge branch 'feature-4026/TabulatorWidget' into feature-3994/Digitaler_Lehrauftrag 2019-11-04 16:58:19 +01:00
Cris 049820b468 Created Ausbildungssemster DropdownWidget
. returning 10 semester by default
. returning given numer of semester
2019-10-15 08:43:19 +02:00
Paolo ac1f31f31f Added possibility to have same TableWidget in more pages 2019-10-01 12:46:19 +02:00
Cris 3938000cfc Changed Kürzel for Studiengang-Dropdown-Widget to upper(typ||kurzbz) 2019-09-30 14:05:22 +02:00
Paolo 8210c3fdc7 Derived TableWidget from FilterWidget, added:
- libraries/TableWidgetLib
- widgets/TableWidget
- controllers/widgets/Tables
- public/js/TableWidget.js
2019-09-25 17:15:46 +02:00
Cris 62cd1b6317 Adapted widget to receive and display only passed OrgUnits in Dropdown 2019-09-19 13:20:35 +02:00
hainberg 6dcf97c848 Added using of specific, limited studiengang-array in Dropdown-Widget
By passing an array of studiengang_kz the dropdown-menu will only be
populated with them.
2019-08-29 14:22:34 +02:00
hainberg 2daef49e52 Extended usability of Studiengang_widget [PRE-ALPHA-VERSION]
Started: Extended Studiengang_widget to be used with specific given
array of studiengaenge.
2019-08-01 15:34:06 +02:00
Paolo 6752dc649f Now is possible to have more than one FilterWidget in a single page 2019-07-17 11:38:47 +02:00
Paolo 9cb1062275 Added new option hideMenu to FilterWidget 2019-07-11 12:59:30 +02:00
Paolo 73220d8dd6 More options to hide or show filter widget settings panel 2019-07-11 09:42:13 +02:00
Paolo 2daf745ad5 - Moved controller system/Filters to widgets/Filters
- Renamed FiltersLib to FilterWidgetLib
- Adapted code in widgets/FilterWidget, public/js/FilterWidget.js and public/js/infocenter/infocenterPersonDataset.js
2019-07-10 14:39:59 +02:00
Paolo 9fd91c2888 FilterWidget + Tabulator final version 2019-07-09 16:21:08 +02:00
Paolo f0ee8b0161 Added Tabulator to FilterWidget (alpha version) 2019-07-09 11:30:16 +02:00
Paolo d4c7f1f18d Merge branch 'master' into cleanci 2019-04-30 13:14:37 +02:00
Paolo 3b4012798f Fixed some comments typo 2019-04-30 13:13:34 +02:00
Paolo c84c484a2a Fixed models 2019-04-26 12:43:51 +02:00
Paolo 34791c96c4 Merge branch 'master' into ciauth 2019-04-17 15:46:27 +02:00
Andreas Österreicher f05ebf3946 Unlocking in Infocenter now always reloads the Dataset and jumps to the correct Filter 2019-04-17 09:15:41 +02:00
Paolo abf766ce51 - Added session_start() to hlp_session_helper to start a PHP standard session (NOT CI session)
- Added functions cleanSession and cleanSessionElement to hlp_session_helper
- Renamed setElementSession to setSessionElement in hlp_session_helper
- Renamed getElementSession to getSessionElement in hlp_session_helper
- Adapted the code that were using this helper
- Autoload does NOT load anymore helper hlp_session_helper
- Controller controllers/system/Filters now loads the AuthLib
- Removed var_dump from controllers/jobs/ReihungstestJob
2019-03-12 11:16:42 +01:00
Paolo fa9976ec66 - FilterWidget can represents the retrieved data with tablesorter or pivotUI
- Added new constants to FiltersLib
- Added new parameter pivotui to FHC-Header to load JS and CSS for pivotUI
- Renamed constat WIDGET_URL_TABLE_DATASET to WIDGET_URL_DATASET_TABLESORTER in FilterWidget
- Added new constat WIDGET_URL_DATASET_PIVOTUI to FilterWidget
- Added new private properties _datasetRepresentation and _datasetRepresentationOptions to FilterWidget
- Renamed FilterWidget->loadViewTableDataset to loadViewDataset
- FilterWidget->loadViewDataset loads tablesorter or pivotUI view depending on the value of property _datasetRepresentation
- FilterWidget accepts two new parameter: datasetRepresentation and datasetRepOptions
- datasetRepresentation is required
- FilterWidget stores in session the _datasetRepresentation and _datasetRepresentationOptions properties
- Adapted view views/widgets/filter/filter to use loadViewDataset
- All views using FilterWidget have been adapted to use the required parameter datasetRepresentation
- Added new constats DATASET_REP_TABLESORTER and DATASET_REP_PIVOTUI to public/js/FilterWidget.js
- Added new private property _datasetRepresentation to FHC_FilterWidget in public/js/FilterWidget.js
- Based on property _datasetRepresentation FilterWidget.js will represent the FilterWidget data with tablesorter or pivotUI
- Added new private method _renderDataset to FHC_FilterWidget in public/js/FilterWidget.js
- Renamed method _renderTableDataset to _renderDatasetTablesorter in FHC_FilterWidget in public/js/FilterWidget.js
- Added new method _renderDatasetPivotUI to FHC_FilterWidget in public/js/FilterWidget.js
- Added bew method _setDatasetRepresentation to FHC_FilterWidget in public/js/FilterWidget.js
2019-01-11 15:14:53 +01:00
Paolo e0b1c78eef - Bugfix: fixed method generateFilterMenu of FiltersLib to generate the correct link for menu entries
- Bugfix: system/Filters_model is loaded in every methods of FiltersLib and FilterWidget where it is used
2018-12-10 12:24:28 +01:00
Paolo 7a9eda3912 - Added new public method setNavigationMenu to controller system/Filters.php
- Method _setNavigationMenuFreigegeben of system/infocenter/InfoCenter controller now generate only the menu entry "Home"
- Added new const CUSTOM_MENU to FiltersLib to represent new FilterWidget parameter to specify if the menu for this filter is custom
- Added new consts NAV_MENU_FILTER_KEY, NAV_MENU_FILTER_NAME, NAV_MENU_CUSTOM_FILTER_KEY and NAV_MENU_CUSTOM_FILTER_NAME to FiltersLib as name and array keys of the filters menu array
- Added new const NAVIGATION_PAGE to FiltersLib which represents the navigation page parameter name
- Added new public method generateFilterMenu to FiltersLib to generate the filters menu structure array and stores it into the session
- Fixed methods setElementSessionMenu and setElementSessionHeader in NavigationLib
- Added new public method getFiltersByAppDatasetName to Filters_model to load all filters by their app and dataset_name
- Added new private property _customMenu to FilterWidget
- If _customMenu is NOT true then the new private method _setFilterMenu is called
- View infocenter/infocenterData.php: arranged the code differently and set customMenu as true
- View infocenter/infocenterFreigegebenData.php: arranged the code differently
- Added new global function refreshSideMenuHook to FilterWidget.js
- Renamed private method _getNavigationWidgetCalled to getNavigationPage in NavigationWidget.js
- Method refreshSideMenuHook of NavigationWidget.js now can accept parameters to give them to the ajax call
- In infocenterPersonDataset.js the function refreshSideMenuHook is declared only if the page is the index page
2018-11-30 14:58:38 +01:00
Andreas Österreicher 608a86e049 Neue Übersichtsseite für Reihungstests hinzugefügt 2018-11-27 11:04:08 +01:00
Paolo 2cba129076 - Added method hasAtLeastOne to the library PermissionLib
- Adapted the method isAllowed of the library FiltersLib to use hasAtLeastOne
- Corrected/added comments
2018-06-29 11:51:16 +02:00
Paolo 46e85a2317 Merge branch 'master' into permissions 2018-06-28 14:52:09 +02:00
Paolo 25e66bf9dd - Added function isEmptyString to fhc_helper
- 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
2018-06-27 15:06:04 +02:00
Paolo d8bcc25ac2 Now the helper message is loaded only by these controllers and models:
- APIv1_Controller
- FHC_Controller
- MessageToken_model
2018-06-27 11:10:40 +02:00
Paolo 0dde3095b2 Merge branch 'master' into permissions 2018-06-15 11:13:16 +02:00
Paolo 0f798faab5 - Removed navigation left menu entry for page system/infocenter/InfoCenter/showDetails from navigation config
- 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
2018-06-14 18:36:21 +02:00
Paolo 9f7dd9d394 FilterWidget: fixed authentication failure because the required permission was missing in the session 2018-06-11 14:07:21 +02:00
Paolo abcdd37e90 - Now the FilterWidget always store the required permissions into the session to let the Filters controller to provide data even if the dataset is empty
- Now the _renderDropDown method of the FilterWidget.js checks the parameter to avoid errors
2018-06-08 18:28:40 +02:00
Paolo 81e4f2968e Merge branch 'master' into permissions
- 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
2018-06-08 17:53:12 +02:00
Paolo 936cca98e6 Removed backup files 2018-06-08 15:28:29 +02:00
Paolo 7d836a0147 - Added FiltersLib to contain all the shared logic of a FilterWidget
- 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)
2018-06-08 15:17:38 +02:00
Paolo d63a092287 Changes to the FilterWidget III 2018-06-06 11:46:26 +02:00
Paolo 0a71bce547 Changes to the FilterWidget 2018-05-29 18:05:22 +02:00
Paolo 15e350ea3a FilterWidget: extended the functionality of the default_filter flag
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
2018-05-24 12:37:50 +02:00
Paolo b3c81cf2c7 FilterWidget can display the name of the filter using phrases system 2018-05-23 15:44:03 +02:00
Paolo 13beae23cc - Added public/css/FilterWidget.css and public/css/NavigationWidget.css to define CSS for Filter and Navigation widgets
- 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
2018-05-18 12:10:14 +02:00
Paolo 4f993b06f4 Merge branch 'master' into permissions 2018-05-14 13:44:03 +02:00
Cris 1254e8d618 Added translation using phrases
. added translation functionality by
-- adding loadPhrases-method in Controllers
-- replacing hardcoded html-text with $this->p->t(...)
2018-05-09 12:36:35 +02:00
Paolo dba08d4d9e - Added the feature to the Infocenter controller to generate a unique identifier for each call of itself, and to keep using the identifier for the next calls in the same browser/tab
- Added the feature to the FilterWidget to use this identifier to create a different session for each FilterWidget
2018-05-03 12:33:01 +02:00
Paolo 4e90523ccc Removed var_dumps and error_logs where not needed or placed a comment where they are needed 2018-05-03 12:31:56 +02:00
Paolo 49e24b0431 - Controller system/Filters now extends CI_Controller
- 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
2018-03-29 16:53:38 +02:00
Paolo dd610c83d9 - Added navigation.php in application/config to configure menus used by NavigationWidget
- 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
2018-03-09 15:14:16 +01:00