OPNSense/core f2f3391src/opnsense/www/js opnsense_ui.js

mvc: setFormData / tokenize - switching back and forth between text edit and tokenize seem to trigger excessive events as well, for https://github.com/opnsense/core/issues/9408

(cherry picked from commit 1129ea9b44d4ec6e64c9f234a4d4b3f8df1eb811)
DeltaFile
+5-0src/opnsense/www/js/opnsense_ui.js
+5-01 files

OPNSense/core b6b61f9src/opnsense/mvc/app/controllers/OPNsense/Kea DhcpController.php

dhcp/kea: Fix Dhcpv6 endpoints in DhcpController.php for cc2fa5f (#9421)

DeltaFile
+4-4src/opnsense/mvc/app/controllers/OPNsense/Kea/DhcpController.php
+4-41 files

OPNSense/core e0ff7c3src/opnsense/mvc/app/controllers/OPNsense/Kea DhcpController.php

dhcp/kea: Fix Dhcpv6 endpoints in DhcpController.php for cc2fa5f
DeltaFile
+4-4src/opnsense/mvc/app/controllers/OPNsense/Kea/DhcpController.php
+4-41 files

OPNSense/core cc2fa5fsrc/opnsense/mvc/app/controllers/OPNsense/Kea DhcpController.php, src/opnsense/mvc/app/controllers/OPNsense/Kea/Api LeasesController.php

dhcp/kea: Add lease commands, tabulator GroupBy, URL hashes (#9409)

This commit introduces the same features to Kea as already available in the Dnsmasq GUI:

- Lease commands added
- GroupBy will allow simpler filtering by subnet
- URL hashes to better reference the individual tabs
- Frontend code same style as Dnsmasq

dhcp/kea: Prepare dhcpv4.volt for URL hash reservation insertion

* dhcp/kea: Also group by subnet
* The group key is different for both grids due to model relation field
* Move data service widget update to apply button
* Refactor dhcpv6.volt the same way to introduce tabulator GroupBy, URL hashes and reservation autofill via hash
* Add lease commands and tabulator groupBy to leases4 and leases6 templates
* baseURL was wrong for reservations
* Add is_reserved key to LeasesController so leases can show different commands based on their reservation status
* Move upload_reservations and download_reservtions into layout_partial for dhcpv6.volt

    [7 lines not shown]
DeltaFile
+122-75src/opnsense/mvc/app/views/OPNsense/Kea/dhcpv6.volt
+100-40src/opnsense/mvc/app/views/OPNsense/Kea/dhcpv4.volt
+47-1src/opnsense/mvc/app/views/OPNsense/Kea/leases4.volt
+46-0src/opnsense/mvc/app/views/OPNsense/Kea/leases6.volt
+25-0src/opnsense/mvc/app/controllers/OPNsense/Kea/Api/LeasesController.php
+3-3src/opnsense/mvc/app/controllers/OPNsense/Kea/DhcpController.php
+343-1191 files not shown
+345-1217 files

OPNSense/core cbb309esrc/opnsense/mvc/app/controllers/OPNsense/Kea/Api LeasesController.php

Style
DeltaFile
+0-1src/opnsense/mvc/app/controllers/OPNsense/Kea/Api/LeasesController.php
+0-11 files

OPNSense/core ebd5622src/opnsense/mvc/app/controllers/OPNsense/Kea/Api LeasesController.php

Apply suggestion from @swhite2

Co-authored-by: Stephan de Wit <stephan.de.wit at deciso.com>
DeltaFile
+1-2src/opnsense/mvc/app/controllers/OPNsense/Kea/Api/LeasesController.php
+1-21 files

OPNSense/core 02b7141src/opnsense/mvc/app/controllers/OPNsense/Kea/Api LeasesController.php

Update src/opnsense/mvc/app/controllers/OPNsense/Kea/Api/LeasesController.php

Co-authored-by: Stephan de Wit <stephan.de.wit at deciso.com>
DeltaFile
+0-2src/opnsense/mvc/app/controllers/OPNsense/Kea/Api/LeasesController.php
+0-21 files

OPNSense/core 42b94e1src/opnsense/mvc/app/controllers/OPNsense/Kea/Api LeasesController.php

Update src/opnsense/mvc/app/controllers/OPNsense/Kea/Api/LeasesController.php

Co-authored-by: Stephan de Wit <stephan.de.wit at deciso.com>
DeltaFile
+1-1src/opnsense/mvc/app/controllers/OPNsense/Kea/Api/LeasesController.php
+1-11 files

OPNSense/core a1a7917src/opnsense/mvc/app/controllers/OPNsense/Kea/Api LeasesController.php

Update src/opnsense/mvc/app/controllers/OPNsense/Kea/Api/LeasesController.php

Co-authored-by: Stephan de Wit <stephan.de.wit at deciso.com>
DeltaFile
+1-1src/opnsense/mvc/app/controllers/OPNsense/Kea/Api/LeasesController.php
+1-11 files

OPNSense/core 16ecd6bsrc/opnsense/mvc/app/controllers/OPNsense/Kea/Api LeasesController.php

LeasesController merge new reservation logic into the already existing records foreach loop
DeltaFile
+26-27src/opnsense/mvc/app/controllers/OPNsense/Kea/Api/LeasesController.php
+26-271 files

OPNSense/core 4cd5e27src/opnsense/mvc/app/views/OPNsense/Dnsmasq leases.volt, src/opnsense/mvc/app/views/OPNsense/Kea leases6.volt leases4.volt

Forgot data-toggle tooltip in buttons
DeltaFile
+2-2src/opnsense/mvc/app/views/OPNsense/Kea/leases6.volt
+2-2src/opnsense/mvc/app/views/OPNsense/Kea/leases4.volt
+2-2src/opnsense/mvc/app/views/OPNsense/Dnsmasq/leases.volt
+6-63 files

OPNSense/core 7deaff1src/etc/inc interfaces.inc util.inc, src/opnsense/mvc/app/controllers/OPNsense/Firewall/forms dialogFilterRule.xml

Merge remote-tracking branch 'origin/master' into kea-lease-button
DeltaFile
+56-24src/etc/inc/interfaces.inc
+59-14src/opnsense/mvc/app/controllers/OPNsense/Firewall/forms/dialogFilterRule.xml
+22-21src/www/interfaces_ppps_edit.php
+21-0src/opnsense/mvc/app/models/OPNsense/Firewall/Filter.xml
+17-4src/etc/inc/util.inc
+12-7src/opnsense/mvc/app/views/OPNsense/Dnsmasq/leases.volt
+187-7019 files not shown
+254-10725 files

OPNSense/core 9697631src/opnsense/mvc/app/controllers/OPNsense/Firewall/forms dialogFilterRule.xml, src/opnsense/mvc/app/library/OPNsense/Firewall FilterRule.php

Firewall: Rules [new]: Add per rule state timeouts for udp.first, udp.multiple and udp.single (#9414)

* Firewall: Rules [new]: Add per rule state timeouts for udp.first, udp.multiple and udp.single

* Add subheaders to base_dialog.volt and use them in dialogFilterRule.xml

* whitespace

* Set a maximum value of 2^31 for all integer fields that handle states

* The list is long, put State into the subheader names to indicate relationship
DeltaFile
+59-14src/opnsense/mvc/app/controllers/OPNsense/Firewall/forms/dialogFilterRule.xml
+21-0src/opnsense/mvc/app/models/OPNsense/Firewall/Filter.xml
+10-0src/opnsense/mvc/app/views/layout_partials/base_dialog.volt
+9-0src/opnsense/mvc/app/library/OPNsense/Firewall/FilterRule.php
+99-144 files

OPNSense/core 1129ea9src/opnsense/www/js opnsense_ui.js

mvc: setFormData / tokenize - switching back and forth between text edit and tokenize seem to trigger excessive events as well, for https://github.com/opnsense/core/issues/9408
DeltaFile
+5-0src/opnsense/www/js/opnsense_ui.js
+5-01 files

OPNSense/core 566d264src/opnsense/mvc/app/views/OPNsense/Dnsmasq leases.volt

dnsmasq: Replace inline onclick handlers with proper DOM event binding in leases grid (#9415)

DeltaFile
+12-7src/opnsense/mvc/app/views/OPNsense/Dnsmasq/leases.volt
+12-71 files

OPNSense/core d3c2eabsrc/opnsense/mvc/app/views/layout_partials base_dialog.volt

whitespace
DeltaFile
+1-0src/opnsense/mvc/app/views/layout_partials/base_dialog.volt
+1-01 files

OPNSense/core d3cc9d1src/opnsense/mvc/app/controllers/OPNsense/Firewall/forms dialogFilterRule.xml, src/opnsense/mvc/app/views/layout_partials base_dialog.volt

Add subheaders to base_dialog.volt and use them in dialogFilterRule.xml
DeltaFile
+27-12src/opnsense/mvc/app/controllers/OPNsense/Firewall/forms/dialogFilterRule.xml
+10-1src/opnsense/mvc/app/views/layout_partials/base_dialog.volt
+37-132 files

OPNSense/core 5aa198asrc/opnsense/mvc/app/views/OPNsense/Dnsmasq leases.volt

dnsmasq: Replace inline onclick handlers with proper DOM event binding in leases grid
DeltaFile
+12-7src/opnsense/mvc/app/views/OPNsense/Dnsmasq/leases.volt
+12-71 files

OPNSense/core 084d3b7src/opnsense/mvc/app/views/OPNsense/Kea leases4.volt leases6.volt

replace inline onclick handlers with proper DOM event binding in leases grids
DeltaFile
+12-6src/opnsense/mvc/app/views/OPNsense/Kea/leases4.volt
+12-6src/opnsense/mvc/app/views/OPNsense/Kea/leases6.volt
+24-122 files

OPNSense/core 725f887src/opnsense/mvc/app/views/OPNsense/Kea dhcpv4.volt dhcpv6.volt

The first tab does not need the active class anymore
DeltaFile
+1-1src/opnsense/mvc/app/views/OPNsense/Kea/dhcpv4.volt
+1-1src/opnsense/mvc/app/views/OPNsense/Kea/dhcpv6.volt
+2-22 files

OPNSense/core 55a2357src/opnsense/mvc/app/controllers/OPNsense/Firewall/forms dialogFilterRule.xml, src/opnsense/mvc/app/library/OPNsense/Firewall FilterRule.php

Firewall: Rules [new]: Add per rule state timeouts for udp.first, udp.multiple and udp.single
DeltaFile
+32-2src/opnsense/mvc/app/controllers/OPNsense/Firewall/forms/dialogFilterRule.xml
+9-0src/opnsense/mvc/app/library/OPNsense/Firewall/FilterRule.php
+9-0src/opnsense/mvc/app/models/OPNsense/Firewall/Filter.xml
+50-23 files

OPNSense/core c22a981src/opnsense/mvc/app/views/OPNsense/Kea dhcpv6.volt dhcpv4.volt

Move upload_reservations and download_reservtions into layout_partial for dhcpv6.volt
DeltaFile
+30-40src/opnsense/mvc/app/views/OPNsense/Kea/dhcpv6.volt
+0-2src/opnsense/mvc/app/views/OPNsense/Kea/dhcpv4.volt
+30-422 files

OPNSense/core 71e1c3esrc/opnsense/mvc/app/controllers/OPNsense/Kea/Api LeasesController.php

Add is_reserved key to LeasesController so leases can show different commands based on their reservation status
DeltaFile
+30-0src/opnsense/mvc/app/controllers/OPNsense/Kea/Api/LeasesController.php
+30-01 files

OPNSense/core 72e37d4src/opnsense/mvc/app/views/OPNsense/Kea leases4.volt leases6.volt

baseURL was wrong for reservations
DeltaFile
+1-1src/opnsense/mvc/app/views/OPNsense/Kea/leases4.volt
+1-1src/opnsense/mvc/app/views/OPNsense/Kea/leases6.volt
+2-22 files

OPNSense/core 00c95b2src/opnsense/mvc/app/views/OPNsense/Kea leases4.volt leases6.volt

Add lease commands and tabulator groupBy to leases4 and leases6 templates
DeltaFile
+41-1src/opnsense/mvc/app/views/OPNsense/Kea/leases4.volt
+40-0src/opnsense/mvc/app/views/OPNsense/Kea/leases6.volt
+81-12 files

OPNSense/core 4a512f1src/opnsense/mvc/app/views/OPNsense/Kea dhcpv6.volt

Refactor dhcpv6.volt the same way to introduce tabulator GroupBy, URL hashes and reservation autofill via hash
DeltaFile
+130-73src/opnsense/mvc/app/views/OPNsense/Kea/dhcpv6.volt
+130-731 files

OPNSense/core 69f47e6src/opnsense/mvc/app/views/OPNsense/Kea dhcpv4.volt

Move data service widget update to apply button
DeltaFile
+1-4src/opnsense/mvc/app/views/OPNsense/Kea/dhcpv4.volt
+1-41 files

OPNSense/core 02c383asrc/opnsense/www/js opnsense.js

mvc: setFormData / tokenize - it looks like targetNode.tokenize2().trigger('tokenize:clear'); fires a change event for all items in the list, since we hook the tokenizers via formatTokenizersUI() later, we can safely drop the event here to avoid an event storm. closes https://github.com/opnsense/core/issues/9408

(cherry picked from commit 31278f220894d1414ffa14b934afc99f137d1230)
DeltaFile
+1-0src/opnsense/www/js/opnsense.js
+1-01 files

OPNSense/core 31278f2src/opnsense/www/js opnsense.js

mvc: setFormData / tokenize - it looks like targetNode.tokenize2().trigger('tokenize:clear'); fires a change event for all items in the list, since we hook the tokenizers via formatTokenizersUI() later, we can safely drop the event here to avoid an event storm. closes https://github.com/opnsense/core/issues/9408
DeltaFile
+1-0src/opnsense/www/js/opnsense.js
+1-01 files

OPNSense/core de09b45src/opnsense/scripts/interfaces setup_hostwatch.sh

interfaces: hostwatch setup refactor
DeltaFile
+4-4src/opnsense/scripts/interfaces/setup_hostwatch.sh
+4-41 files