This change modifies logic slightly as follows:
1) Retry only twice for a connection (speed up the GUI in offline mode)
2) Don't update resource cache when in offline or recovery, you could downgrade yourself
3) Don't flush_boost() function if you are not a remote data collector
4) Better logging for automation to indicate offline or remote
- Graph CSV export NaN with wrong date range if browser timezone is different with web server
- This will ensure that the times in the browser match the backend too.
* Poller Recovery is not predictable
* The checking for recovery needs to come earlier in the call stack to for the logic below it to be reliable
* Fixing some alignment of variables for readability
- Backtrace Errors attempting to run AUTOM8 to Remote Data Collector
- Duplicate Entry error when updating Device
- This missed a new option to limit device sync to single, or multiple hosts
* Revised 'Content-Security-Policy' tested on FF, Chrome, Edge, Opera and no issues found.
* Adding the Multiselect Filter as it's critical for some initial page loads like the Graphs page for Templates which include the 'Search' functionality.
* Cacti scores low on performance audit on lighthouse audit
* This change enables generic caching of pages, but with a very short age for RRDtool generated graphics.
* It increses the SEO score through the use of specialty tags on anchors leveraging the _blank target attribute value
* It removes and unnecessary tooltip on the document element
There may be additional changes forthcoming. However, these changes raised the score from 0 to the mid twenties.
Some of the changes, like minification of JavaScript we do not do due to the nature of the project, but could be done by customers. Once the page is first rendered, it's in the browsers memory and cached for a good time, so this is not a big deal.
* Allow Setting of Cookie 'Cacti' domain edition
* This also allows the Cacti administrator to extend the content security policy to include unsafe-eval for scripts.
Major mods to the CSRF library (which have been submitted upstream but as there's been no activity for a year,
may not get merged)
- Installer now correctly only checks permissions if csrf-secret is set.
- Created new csrf include to make configuration process easier to identify
- Logging can be enabled now for CSRF to debug it
This commit adds a notice when configphp is present but unreadable. It also adds the ability to display any database connection errors that occur within db_connect_real for diagnostic purposes. These notices are only presented to the end user when the appropriate flag is set as most users do not need them.
Closes#3181 and closes#3182
Re-purpose the existing php_snmp_support config value to allow
administrators to disable the built-in SNMP extension.
It can be desirable to force use of the Net-SNMP in some configurations,
particularly when IPv6 is in use. This allows the administrator to set
$php_snmp_support = false in config.php, which will then force use of
the Net-SNMP binaries tools.
This commit corrects a previous unseen issue where the PHP environment at command line level is being populated with environment variables normally only seen when called from a web server.
issue#2304: Installation progress stays at 0%
issue#2311: Unable to update PHP location during installation due to incorrect CLI environment
The new check uses the php_sapi_name() function to verify that we are indeed at 'cli' level. All other values returned by php_sapi_name are considered non-cli including 'cli-server' which is for client/server scenarios.
Most checks have now been replaced by a single defintion ('CACTI_CLI') to define whether in CLI mode. If a script is only to be called from CLI it must either defined 'CACTI_CLI_ONLY' or include include/cli_check.php instead of include/global.php.
- Add external link support in menu (probably need more work)
- Added Support -> Documentation menu item
- Added Support -> Users Community menu item
- Made documentation loading dynamic, if release documentation is
not included it will redirect to Github documenation