Commit Graph

95 Commits

Author SHA1 Message Date
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 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
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 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
Andreas Österreicher 005739a093 Fehler behoben wodurch doppelte oder leere MessageVorlagen angezeigt
wurden
2018-03-05 18:56:06 +01:00
Paolo 7869113396 - FilterWidget: bugfixes
- Added column StgAbgeschickt to formatRaw in system/infocenter/infocenterData.php
2018-02-27 18:48:21 +01:00
Paolo b8c1aae251 Changed FilterWidget to be more responsive with Javascript 2018-02-27 18:37:16 +01:00
Paolo 75d1a60401 - Removed parameter alternativeMarkRowClass from FilterWidget
- 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
2018-02-22 13:54:30 +01:00
Paolo 72bb40e786 - Added method escapeLike to DB_Model to escape strings for LIKE operator
- 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
2018-02-21 17:48:03 +01:00
Paolo c2b328c69f FilterWidget: if "is set" is chosen in the operation dropdown, then the operation value field and the option field will be hidden 2018-02-13 13:52:45 +01:00
Paolo c57c953eaa - Added methods deleteCustomFilter and _fillCustomFilters to controller InfoCenter
- 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
2018-02-09 15:18:44 +01:00
Paolo 2d81758698 FilterWidget now checks if the columnsAliases parameter contains a valid number of elements 2018-02-07 17:01:25 +01:00
Paolo 7af890b44c - 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
2018-02-07 13:36:54 +01:00
Paolo 82f5584385 - Added a new parameter to FilterWidget called columnsAliases to specify aliases for the columns
- If this parameter is given to the FilterWidget than it is used to display the name of the columns
2018-02-06 17:07:54 +01:00
oesi 458f78084c Fixed Filter query 2018-01-30 16:03:25 +01:00
oesi 9e2a02acf7 Fixed Filter compare 2018-01-30 15:55:48 +01:00
Andreas Österreicher cfb4c5ad74 Filter für Infocenter angepasst 2018-01-26 12:44:26 +01:00
Paolo 1ad45e4802 - Renamed widget FHC_navheader as NavigationHeaderWidget
- 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
2018-01-24 15:04:08 +01:00
Paolo 8b28b48ff9 - Merged controller system/infocenter/InfoCenter.php into system/infocenter/InfocenterDetails.php
- 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
2018-01-23 18:49:09 +01:00
alex 9419fe8c3d Added widgets FHC navigation and FHC navheader (as seen in sb admin2 template), bootstrapped filter page, added filter widget to infocenter table 2018-01-18 16:20:59 +01:00
alex 4faa1fbc5b added greater than filter 2018-01-18 15:50:33 +01:00
alex 2b186d0c45 improved infocenter details, added bootstrap and admin theme (sb admin 2) , added zgv pruefung Status, Studiensemester and Ausbildungssemester, contacts in one table, nachzureichen and nachgereicht am columns 2018-01-08 09:55:13 +01:00
Paolo e6d78d6d8d - Changed query to retrive data about persons & logs
- 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
2018-01-04 18:14:52 +01:00
Paolo 628908b9e8 - FilterWidget now loads filter from DB only the first time
- Changed the query statement to load data from logs and person data
2017-12-21 16:26:23 +01:00
Paolo 6aeb96818f - Added new includes to FHC-Header.php
- 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
2017-12-19 10:53:02 +01:00
alex fa3daa7a57 Created infocenter details page showing Person Stammdaten, Dokumente, Prestudent ZGVs, Logs and Notizen. 2017-12-18 14:01:42 +01:00
Paolo aeae34f4e0 - Added parameter hideSave to hide save button and fields
- Correctly saves personal filters
2017-12-13 13:51:38 +01:00
Paolo 47cd9d4137 By default the FilterWidget shows all the columns 2017-12-11 15:44:03 +01:00
Paolo ec58b3eea1 Added full date filter support 2017-12-11 15:12:51 +01:00
Paolo a7582c8868 - Method execReadOnlyQuery of DB_Model has a less strict check about the query statement
- Added a first management of the type date
2017-12-05 17:39:31 +01:00
Paolo e6aba9a3e2 - Renamed controllers/system/Test.php to controllers/system/TestFilterWidget.php
- 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
2017-12-05 15:04:07 +01:00
Paolo 443dc9a7e7 Added method _loadFilter to FilterWidget 2017-12-04 11:15:23 +01:00
Paolo e2908cc1d7 - Sets correctly the selected filter operation
- Use enter to set a filter
- Replaced submit buttons with buttons
2017-12-01 16:57:18 +01:00
Paolo 54f1403054 - Better Js
- Better HTML structure
- Correct dynamic build of the SQL statement
- Stores filters and filters operations in session
- Boolean values are converted as strings inside the table
2017-12-01 15:45:59 +01:00
Paolo 34329edb74 - Better code style
- Clened views structure
- Use session to store the filter state
2017-11-29 18:26:43 +01:00
Paolo c105363fd0 First preview completed 2017-11-22 15:33:44 +01:00
Paolo ee3998f62e - Changed system/dbupdate_3.3.php to create table system.tbl_filters and what its needed
- Added model system/Filters_model to manage system.tbl_filters
- Removed method execQuery from model system/UDF_model
- Added property executedQueryMetaData to DB_Model
- Added property executedQueryListFields to DB_Model
- Added method getExecutedQueryListFields to DB_Model
- Added method getExecutedQueryMetaData to DB_Model
- Added method execReadOnlyQuery to DB_Model to execute read only queries from outside a model
- Changed DB_Model method _toPhp to store infos about an executed query into properties executedQueryMetaData and executedQueryListFields
- Updated library UDFLib to use execReadOnlyQuery
- Added widget FilterWidget to render and manage a filter into VileSci
- Added views widgets/filter/selectFields, widgets/filter/selectFilters and widgets/filter/tableDataset used by FilterWidget
2017-11-22 12:08:54 +01:00
Paolo 0bc0a09bf4 - Removed file system execute permission for all files (no directories)
- application/extensions file system permission now is 775
- application/logs file system permission now is 775
- Added extensions directory in application/: config, controllers, helpers, hooks, libraries, models, views and widgets
- Added view views/extensions/manage.php
- Added controller controllers/system/extensions/Manager.php
- Added library ExtensionsLib to manage extensions
- Added model models/system/Extensions_model.php
- Moved code related to print out info from MigrationLib to EPrintfLib
2017-11-13 10:45:49 +01:00
Paolo 10f263aaa5 Renamed widget vorlage_widget.php into Vorlage_widget.php 2017-08-25 14:17:35 +02:00
Paolo 1a2fce8d1c - Moved property $htmlParameters from HTMLWidget to DropdownWidget
- Moved all the UDF related code from UDFWidget to UDFLib
- UDFWidget is now using UDFLib
2017-08-17 16:33:45 +02:00
Paolo e4160088e8 - Added headers where they were missing
- Added comments where needed
- Beautified the code where needed, more readable and more compliant to CS
- loadResource function in helper fhc_helper.php is not using anymore CI
- Moved all constants from UDFWidget to UDFLib
- Added constant SORT to UDFLib
- Renamed constant REGEX_LANGUAGE to FE_REGEX_LANGUAGE in UDFLib
- Better formatting and indentation of the code of WidgetLib (more compliant to CS)
- Added missing validation attributes to HTML widgets
- Added constant HTML_DEFAULT_VALUE to CheckboxWidget
- Unset parameter multiple in DropdownWidget constructor
- Changed value of constant REQUIRED in widget HTMLWidget
- Added protected property $htmlParameters to widget HTMLWidget
  (it works as alias to $this->_args[HTMLWidget::HTML_ARG_NAME] -> better code)
- Replaced $this->_args[HTMLWidget::HTML_ARG_NAME] with $this->htmlParameters in the widgets
- Changed the CSS class label[udf-required=true]::after to label[required-field=true]::after in widgets.css
- Better use of constants in UDFWidget: constants from HTMLWidget are used only for the HTML parameters,
  while constants from UDFLib are used only for UDF parameters
2017-08-17 11:51:40 +02:00
Paolo f126bca708 - New directory application/widgets/html/ for widgets to render HTML
elements
- All the widgets classes to render HTML elements moved from WidgetLib
to application/widgets/html/
- New directory application/widgets/udf/ for widgets to render UDF
- All the UDF widgets classes moved from WidgetLib to
application/widgets/udf/
- HTMLWidget is now the main class to render HTML widget
- UDFWidget is now the mail class to render UDF
- Removed UDFWidgetTpl
- Added function loadResource to fhc helper
- Changed method widget of WidgetLib (using loadResource)
- Moved UDFWidget method from WidgetLib to UDFLib
- Slimmed down class Widget present in WidgetLib
- Controller system/UDf now uses UDFLib
- View application/views/system/udf.php now uses UDFLib
- Updated udf and html widgets to adapt them to the new libs
2017-08-11 18:41:21 +02:00