Commit Graph
123 Commits
Author SHA1 Message Date
TheWitness 27919c50d7 Updating Copyrights to 2026 (#6578) 2026-01-28 16:11:10 -05:00
TheWitnessandCopilot b993471579 Fix #6539 - Allow Standard Cacti Log Files to be Rotated on Demand,PHPdoc, and Typing (#6540)
* Fix #6539 - Allow Standard Cacti Log Files to be Rotated on Demand from the Cacti UI

* QA: php-cs-fixer updates and documentation for lib/database.php

* QA: Update .gitignore for composer files

* QA: Update .gitignore for composer files

* QA: Back off .gitignore change its duplicated

* QA: Fix typing of db_has_permissions

* QA: Fixing typing issue in db_format_index_create

* Update lib/clog_webapi.php

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* QA: Fix additional code issues

* QA: Applying more defaults to add device

* QA: Fix at the database layer

* QA: Fixes based upon automated testing

* QA: Fix at the database layer

* QA: After new SQL checking

* QA: Skip MacTrack oui database download warnings

* QA: Fixing type issue

* QA: Recommendation from Copilot

* QA: Recommendation from Copilot

* QA: Recommendation from Copilot

* QA: Recommendation from Copilot

* QA: Some minor changes to avoid errors in testing

* QA: Unused variable

* QA: Recommendation from Copilot

* QA: Recommendation from Copilot

* QA: Recommendation from Copilot

* QA: Minor introduced code defect

* QA: Adding some unifying space around concatination

* QA: Consistent comments and new function alias'

* QA: Multi-line comment corrections

* QA: Fix SQL Style

* QA: Missed one function alias

* QA: PHPStan Level 2 and PHPDoc fixes

* QA: PHPStan Level 2 and PHPDoc Fixes

* QA: PHPStan Level 6 Fixes

* QA: Fix lib/xml.php to PHPStan Level 6

* QA: Wrong grep -v

* PHPStan Level 6 for lib/vdef.php

* PHPStan Level 8 for lib/time.php

* QA: Raise PHPStan to Level 6 for lib/database.php

* QA: Remove @deprecated tag from grv()

* QA: Switch to htmle() alias over html_escape()

* QA: More addressing PHPStan issues at Level 6

* QA: Change recommended by Copilot for Readability

* QA: More PHPStan fixes

* QA: More PHPStan fixes

* QA: More PHPStan fixes for lib/utility.php

* QA: More PHPStan fixes at Level 6

* QA: Raise PHPStan to Level 6 More Functions

* QA: Raise PHPStan to Level 6 More Functions

* QA: Raise PHPStan to Level 6 More Functions

* QA: Raise PHPStan to Level 6 More Functions

* QA: Raise PHPStan to Level 6 More Functions

* QA: More PHPStan fixes at Level 6

* QA: Raise PHPStan to Level 6 More Functions

* QA: Raise PHPStan to Level 6 More Functions

* QA: More PHPStan fixes at Level 6

* QA: More PHPStan fixes at Level 6

* QA: Raise PHPStan to Level 6 More Functions

* QA: Raise PHPStan to Level 6 More Functions

* QA: More PHPStan fixes at Level 6

* QA: Raise PHPStan to Level 6 More Functions

* QA: Raise PHPStan to Level 6 More Functions

* QA: More PHPStan fixes at Level 6

* QA: Raise PHPStan to Level 6 More Functions

* QA: Raise PHPStan to Level 6 More Functions

* QA: More PHPStan fixes at Level 6

* QA: More PHPStan fixes at Level 6

* QA: More PHPStan fixes at Level 6

* QA: Raise PHPStan to Level 6 More Functions

* QA: More PHPStan fixes at Level 6

* QA: Some phpseclib3 fixups to update to latest

* QA: More fixups for graphing for magic strings

* QA: More PHPStan fixes at Level 6

* QA: Fixing order string type on get_allowed_graphs()

* QA: Fixing improper use of print

* QA: Optimization of color_templates

* QA: Copilot recommendation

* QA: Copilot recommendation

* QA: Copilot recommendation

* QA: Copilot recommendation

* QA: Copilot recommendation

* QA: Copilot recommendation

* QA: Copilot recommendation

* QA: Copilot recommendation

* QA: Raise PHPStan to Level 6 More Functions

* QA: Issues insalling Cacti

* QA: Issues insalling Cacti

* QA: Issues insalling Cacti

* QA: Issues insalling Cacti

* QA: Issues insalling Cacti

* QA: Issues testing Cacti

* QA: Copilot recommendation

* QA: More PHPStan fixes at Level 6

* QA: More PHPStan fixes at Level 6

* QA: More PHPStan fixes at Level 6

* QA: More PHPStan fixes at Level 6

* QA: More PHPStan fixes at Level 6

* QA: Installer failing

* Undo ownership changes to remove tar errors

* QA: Updates after php-cs-fixer

* QA: Adding code checks to syntax checking

* QA Change syntax flow language

* QA: Reduce the number of cures

* QA: Use sequentional option

* Change runner to self-hosted for check job

* Fix typo in OS version in workflow file

* Add Git installation step in workflow

Added step to install Git if not already installed.

* Add '-y' flag to apt-get install and update commands

Updated apt-get commands to include '-y' for automatic confirmation.

* Change workflow OS version to 'ubuntu-latest'

Updated the workflow to use 'ubuntu-latest' instead of 'ubuntu:latest' and modified the 'runs-on' configuration.

* Remove sequential option from phpcsfixer script

* Remove PHPCS fixer step from workflow

Removed PHP coding standards check from workflow.

* Move code checks to before plugins

Moving these core checks to before the plugins are installed as we really want to check only the base Cacti here.

* Add Composer validation and caching to start of workflow

* QA: Addressing PHPStan additional

* QA: Restore composer lock file

* QA: Addressing PHPStan additional

* QA: Addressing PHPStan additional

* QA: Complete LDAP Project

* QA: php-cs-fixer doing it's thing

* QA: Syntax is already happening in PHPStan

* QA: The md5 function no longer exists

* QA: Update after ldap changes

* QA: Undo that last password hack

* QA: Attempting to switch to MariaDB 11.8

* QA: Attempting to switch to MariaDB 11.8

* QA: Resolving some issues with PHP8.4

* QA: Resolving some issues with PHP8.4

* QA: Add PHP8.5 to the matrix

* QA: Removing PHP8.5 due to dependency issues

* QA: Add the DB version to the testing output

* QA: Switch back to MySQL for the moment

* QA: More fidelity in reporting

* QA: The pipe must be mixed

* QA: Moving audit_schema.php changes from 1.2.x

* QA: Moving audit_schema.php changes from 1.2.x

* QA: Restore mysql monitoring

* QA: php-cs-fixer issues

* QA: Attempt to roll back to MariaDB 10.6

* QA: Attempt to fix check_all_pages.sh

* QA: Make installer functional again

* QA: Fix installer php-cs-fixer issues

* QA: Type to a string

* QA: Get the database version correctly

* QA: Fix issue with reports in check_all_pages.sh

* QA: Check the server version in the right place

* Feature: Support SHA256 as a new hash for passwords

* QA: Function definition and return typing audit

* QA: Refinement of form types

* QA: Refinement of form types

* QA: Consistency of comments

* QA: Issues with php-cs-fixer and more comments

* QA: More typing issues

* QA: php-cs-fixer on merge conflict resolution

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-01-25 10:13:56 -05:00
Browniebraun 1627c7a150 Font Awesome Icons to Tabler Icons migration 2025-12-16 20:27:05 +01:00
TheWitness b9334a15d9 QA: Updates for files for php-cs-fixer and some php-doc changes 2025-11-18 21:01:15 -05:00
TheWitness 5ac311f310 QA: Support for Legacy Plugin Pages Resoved 2025-08-18 09:24:26 -04:00
TheWitness 70329f817b QA: Attempt to fix buttons issue 2025-08-18 08:27:43 -04:00
TheWitness 9ea7e73c2a QA: Convert from input to buttons 2025-07-13 12:30:30 -04:00
Petr Macek 42aab308be add wrapper (#6216) 2025-04-05 06:19:38 -04:00
TheWitness 685d4b9357 Start addressing PHPStan Issues 2025-03-23 14:09:11 -04:00
TheWitness e5c4015e0e QA: Remove most references to $config
This removes most entries to $config in the base code.  A few new constants were defined to achieve this:

* CACTI_CONNECTION - The status of the current connection
* CACTI_CSRF_SECRET - The path to the csrf secret file
* CACTI_PHP_SNMP - True if php-snmp is installed
* CACTI_WHITELIST - The path to the Cacti Whitelist file if defined

I also moved several $config['poller_id'] to the existing POLLER_ID and move a number of $config['is_web'] to the existing CACTI_WEB constants.

There remain a few artifacts in the code.  They will be handled in a separate commit.
2025-03-22 16:48:59 -04:00
TheWitness 2c779273f9 Copyright Updates and PHP-CS-Fixer updates 2025-03-09 14:34:19 -04:00
TheWitness d68942c84f QA: Remove name space collisions causing vscode issues 2025-03-08 17:54:26 -05:00
TheWitness ad071ac391 QA: Fix: #6169 - Device filter looses state 2025-03-08 16:53:33 -05:00
Jimmy ConnerandTheWitness 65ab16f5cf Start converting to newer PHP Syntax and Functions (#6103)
* Add Rector

* Add Rector

* Fix "Cashed" misspelling

Also harmonize the phrase with the one below it

* Fix implode error in db_table_create

Only relevant when multiple primary keys

* Fix auth issue, parentheses in the wrong location

Was causing too many arguments to be sent to cacti_sizeof which only take 1, instead of get_allowed_devices.

* Fix issue with session_var not properly using class variable

* Fix pass by reference error in get_allowed_devices

get_allowed_devices has a pass by reference on the "total_rows" field.  It is used in several places to pass the total_rows back to a counter.  Here though, we are passing a number directly to the function, which errors out with "Uncaught Error: get_allowed_devices(): Argument #4 ($total_rows) cannot be passed by reference".  So we will just place a dummy variable in front to catch the pass.

This wasn't caught before because the previous parentheses issue.

* Fix undefined variable "field_array" in html_filter

* Fix undefined function 'get_nfilter_filter_request_var'

* Fix undefined variable 'resizable'

I corrected the function parameter, as that was technically the incorrect spelling

* Fix invalid variable $user_id

* Fix undefined vars in spikekill class

* Fix copy and paste error

Oops

* Forgot to use the dummy variables

* Add missing $

Oops

* Start converting to newer PHP Syntax and Functions

* Test fixing the workflow by install composer

* Lets not valid the composer file right now
Seems we have a few things to fix it in

* Validate composer

* Lite formating changes

* lite formatting

* lite formatting

* lite format changes

* lite format changes

* lite format changes

* lite format changes

* lite format changes

* lite format changes

* lite format changes

* lite format changes

---------

Co-authored-by: TheWitness <thewitness@cacti.net>
2025-02-23 15:14:54 -05:00
TheWitness 04f8bcc06f QA: Adjust three bar use in Graphs
* We have to find a better icon
2025-01-15 18:56:58 -05:00
Browniebraun d88d3acd30 reverting FontAwesome till better solution has been identified. 2025-01-15 23:04:14 +01:00
Browniebraun 5be7d7f18b Migrating icons from FontAwesome to Tabler 2025-01-05 20:58:36 +01:00
TheWitness 7d03ddca02 QA: Validation issue in lib/html_graph.php 2024-12-30 16:58:28 -05:00
TheWitness 354ef43442 QA: Hide the column selector on graph pages 2024-12-29 20:37:21 -05:00
TheWitness 647b981697 QA: Restore Realtime Settings 2024-12-29 16:42:27 -05:00
TheWitness d9e2563d0f QA: Stop Auto Refresh on Graph Details Page 2024-12-29 16:12:08 -05:00
TheWitness c93b3547a0 QA: Fixing multiple graph issues below
* Breadcrumbs would become corrupted depending on actions selected from the graph icon-bar
* Converting graph icon-bar to glyphs
* Adding glyph classes to various Glyph actions
* Adding CSS to 'dark' theme only at this time
* Some double to single quote conversion in layout.js
* Removing some Inline html for various icon-bar's
* Removing duplciated fontawesome.css header inclusion
2024-12-29 14:14:32 -05:00
TheWitness b6a78e7075 QA: Correct null setting more correctly 2024-12-27 13:00:25 -05:00
TheWitness b0b3fb7d40 QA: Fix: #6013 - SQL Errors on first view of tree and pre views 2024-12-27 11:57:09 -05:00
TheWitness 8d88411d01 QA: Migrating List View to Filter Class
* There are issues here.  This used to use a post to prevent very long graph lists from erroring out.  But it looks like this has been an issue for a while.
* There is also a bug where the dialog keeps moving up it's z-index ahead of the selectmenus.  Have to trace that.
2024-12-23 13:54:00 -05:00
TheWitness efe329cfd7 QA: Merge the 'preview' page to the Filter Class
* Likely 'List View' is broken.
* Inline Zoom is currently broken.
* Relocating the save button to respect permissions
* Some light renaming and reorganization in files
* Removing deprecated functions
* Stop using deprecated set_graph_config_option() call
* Correcting some misspelling here and there
* New function to down-selecting devices by location and other aspects in callbacks.
* Change 'Metric' to 'Source'
* Use the html_transform_graph_template_ids() function universally
* Remove the prior Sorting Filter code.  Using Filter Class now.
* Prototype filtering logic in graph_view.php for ajax_hosts callback
2024-12-23 12:50:30 -05:00
TheWitness ee56a277c9 QA: Tree and Preview Filter default handling and callback
* Change the global default for preview rows per page
* Change the gathering function for the -1 value
* Change the save function for a -1 value
* Change the way button callbacks work
* Restore the 'Save' function for Tree View after Filter Class light re-design.
2024-12-23 08:22:46 -05:00
TheWitness 7a1e1282f3 QA: Implement Filter Class for Tree View
* Also fixed the default sort order when ordering Graphs.
* Preview it still TBD, but now it should be pretty easy
* Moved the multi-select function to layout.js and out of lib/html.php
2024-12-22 22:22:41 -05:00
TheWitness 4ac45954a5 QA: Minor logic issue 2024-12-16 10:55:49 -05:00
TheWitness a8b3d08224 QA: Unit Testing Graph View 2024-12-15 10:50:50 -05:00
TheWitness 059fecf750 QA: Fixing bad default view function
* Again the user would encounter periods where the Graph View would not render correctly.  Old function with a hack workaround.
2024-12-12 20:28:58 -05:00
TheWitness 984bf183b8 QA: Rework Allowed Graph Views
* There were bugs.  The feature was not even working.  Not it works well.
2024-12-12 19:49:16 -05:00
TheWitness 62f577c76a QA: Make breadcrumbs happier
* Breadcrumbs are now happier, but still missing the Tree Branch in the detail view breadcrump.  Will log it.
2024-12-12 09:53:51 -05:00
TheWitness f4085899ae QA: Phase 2 of API work
* Moving more content out of graph.php into API
* Convert global JavaScript to recognize the change.
* Still thinking through the Tree vs. Preview breadcrumbs.
2024-12-12 09:39:43 -05:00
TheWitness 9d504d605b QA: APIify graph.php and graph_view.php
* Convert these two files into an API for future changes
* There are issues currently navigating to the 'graph.php' page which is considered a 'console' page.  Instead, we should be calling the API.
* This is the first pass of a multiple pass process.
2024-12-12 09:00:18 -05:00
TheWitness fe06476e74 Fix: #5971 - Show Unknown Data Globally
* Fixing the display of unknown data as a global setting
* Re-arrange some RRDtool options such as business hours to be more prominent in both global and user settings.
* Convert colors to drop-color objects
* Add Business Hours as a Checkbox on Graphs Pages
* Make a filter function for both Thumbnails and Business Hours
2024-12-11 21:37:51 -05:00
Jimmy Conner ad07471bb1 Lots of PHPDoc formatting and cleanup
Lots more to go
2024-12-09 02:50:06 -06:00
TheWitness baab17e726 QA: Wrong default on location on preview page 2024-11-29 23:05:59 -05:00
TheWitness b618e9af68 Fix #2572 - Adding advanced DSStats measures
* This change adds sorting measures in addition to average and peak:
  * Percentiles (25th - 95th)
  * Totals/Sum/Bandwidth
* It also allows you to pick from the Consolidation Function (average or max).
2024-11-27 13:35:17 -05:00
TheWitness e8544a4d08 QA: Fix #5882 default's for ordering 2024-10-29 13:09:00 -04:00
TheWitness 8a8541d11d Fixing #2572 - Support Sorting of Tree or Graph View by Data Source (#5873)
* Fixing #2572 - Ordering Graphs by Data Source

* Support Sorting of Tree or Graph View by Data Source
* This feature is not yet complete.  The API modifications for ordering are not yet complete.
* This first commit covers much of the initial front end changes.

* Proposed API changes

* First working prototype of Graph Ordering

* Fixing bugs and applying to tree

* Updating the ChangeLog for #2572

* QA: Fix GitHub Action - Pre-checks
2024-10-21 10:24:00 -04:00
TheWitness 9de57c20a7 QA: Fixing #5591 - Settings seem stuck at 'default'
* Graph item presets and saved views seem to be ignored.
* Some PSR for database calls, alignment and formatting
2024-10-13 16:29:33 -04:00
Browniebraun 5c9d468671 - add data-DefaultLabel tag to all filter related select fields. 2024-09-27 22:27:08 +02:00
TheWitness 1aa72d24c9 QA: Update Copyright to 2024 2024-02-03 14:18:57 -05:00
Mark Brugnoli-Vinten 32ba2f19f4 Update copyright year for 2023 2023-01-03 20:34:26 +00:00
Mark Brugnoli-Vinten 8b29d12cc9 Define cacti system paths as constants for better code checking (#5120)
This also provides a full run of src-fixer against all files to
ensure all code is now in alignment.

Closes #5120
2023-01-01 01:03:15 +00:00
netniV 371f8b5253 Fix issues with backtracing and input validation (#3559, #3560)
- When a developer uses backtracing, HTML output can be seen from command line bug confirmed
- When using `input_validate_xxx`, calls to `die_html_input_error()` do not pass variable name bug confirmed

Closes #3559
Closes #3560
2022-11-26 18:28:29 +00:00
netniV fd44f394a0 Remove the need for header=false
Update loadPage calls to be loadUrl
Update loadPageNoHeader calls to be loadUrl calls

Also includes changes to make logout adhere to new html_auth_xxx functions
2022-11-26 13:58:49 +00:00
TheWitness 76456e64fa Fixing Issue #4860 - Zoom loss
Custom Timespan is lost when clicking other tree branches
2022-07-05 19:52:53 -04:00
TheWitness ac29fd6f5c Additional fixup to #4816 - Regex Filtering
This change harmonizes the various pages and their use of regular expressions.
2022-06-13 08:40:30 -04:00