Commit Graph

11919 Commits

Author SHA1 Message Date
FusionPBX
e5e63a3846 Update extension_edit.php 2025-03-29 11:29:58 -06:00
chansizzle
590e58c388 Update extension_edit to populate device servers (#7347)
This pull request fixes the code for adding extensions and a device is added to the extension.

These device fields are populated if they are defined and enabled in default setttings. This works if the data types = text (the default) and it works if the data types = array (very useful for server clusters)
2025-03-29 11:27:03 -06:00
FusionPBX
efd9f8979e Use standard time GMT offset 2025-03-28 17:45:13 -06:00
chansizzle
c6ecf73fa6 add firmware for yealink T19P (#7344) 2025-03-28 15:21:40 -06:00
FusionPBX
c6dd43cff0 Update code to use the server_address_secondary 2025-03-28 12:37:01 -06:00
frytimo
0882b148ec Check outbound_proxy and server_address for array with drop-down field (#7343)
- Check the outbound_proxy_primary and outbound_proxy_secondary default value for an array value so the drop-down field on the device edit page can be filled.
- Use a variable to get the value from the settings class for server_address_primary and server_address_secondary instead of calling the settings class three times for each value.
2025-03-28 10:50:43 -06:00
frytimo
0e143764e8 Sets the default value for Limit Max field when adding a new extension (#7342) 2025-03-28 10:49:47 -06:00
FusionPBX
d1d24a0a9c Add yealink_force_voice_ring_volume
Forced ringer volume: 0 - 15
2025-03-27 17:44:10 -06:00
Alex
c305685d23 Fix dashboard edit defaults (#7340)
* Fix dashboard edit defaults

* Update app_defaults.php

* Update config.php
2025-03-27 15:41:38 -06:00
FusionPBX
7fe291dfcf Update xml_cdr.php
Use the permission_exists and is_uuid conditions at the top of the download class method. If false use return to prevent running code without the right permission and a valid uuid.
2025-03-26 18:34:54 -06:00
FusionPBX
288f693c12 Increase the delay when database is not connected 2025-03-26 11:48:18 -06:00
FusionPBX
90b774e86d Add default setting daylight_savings_auto 2025-03-26 11:44:17 -06:00
FusionPBX
67da2f2a3d Make sure the database connection is available 2025-03-26 11:30:34 -06:00
frytimo
2ae77071e2 Fix call recordings maintenance path (#7334) 2025-03-25 14:44:20 -06:00
FusionPBX
9d43254603 Set enabled to true by default 2025-03-24 18:29:09 -06:00
FusionPBX
9ee9aa4023 Update xml_cdr.php 2025-03-22 21:03:19 -06:00
FusionPBX
f58ed065fc cdr http_enabled default to false
Using the file system by default instead of HTTP POST
2025-03-22 17:09:51 -06:00
FusionPBX
7fae8eefca Update xml_cdr.php 2025-03-22 17:03:37 -06:00
FusionPBX
f420a08802 Add grandstream_random_port #6055 2025-03-22 16:34:30 -06:00
FusionPBX
5b77e3d62b Ring Ready support disabling it in dialplan #6536 2025-03-22 16:06:18 -06:00
FusionPBX
48661c3aa6 Update sip_status.php 2025-03-22 15:45:19 -06:00
emak-Corey
efed19ef1c Sort the 'sofia xmlstatus' profiles alphabetically (#6091)
* Sort the 'sofia xmlstatus' profiles alphabetically

Added function to sort the 'sofia xmlstatus' SIP profiles alphabetically to match the sort order lower down in the page.
2025-03-22 15:43:58 -06:00
Ahron Greenberg (agree)
0e2b083807 Fix adding duplicate device error (#6490)
* [extensions] Fix adding duplicate device error
2025-03-22 12:55:15 -06:00
FusionPBX
0706b52427 Update destinations.php 2025-03-22 12:33:45 -06:00
FusionPBX
cd5693dbd4 Update check for duplicate destinations
Account for destination_prefix
2025-03-21 21:00:37 -06:00
frytimo
52d8f436e4 Replace session variables with the settings class (#7271) 2025-03-21 20:11:44 -06:00
FusionPBX
1778963607 Calculate the daylight savings settings 2025-03-21 19:51:27 -06:00
frytimo
d3cedcf17f Add wifi function enabled (#7333)
* add wifi function enabled
2025-03-21 18:02:54 -06:00
Stephen Forster
1f2d7e1ceb Show to superadmin group that has dialplan_all permission (#5458)
If permissions to dialplans is given to anyone other than superadmin then they should not be able to see GLOBAL dialpans unless they have dialplan_all permission as well.

* Update dialplans.php
2025-03-21 10:49:41 -06:00
frytimo
b82d9f17a7 Fix exception thrown for order by used in count devices clause (#7330) 2025-03-21 10:33:22 -06:00
fusionate
e460c4f180 Access Control - Edit: Remove unintended single-quotes when dig domain used as Description. 2025-03-20 17:26:42 -06:00
fusionate
5d37e2a570 Access Control - Edit: Add additional sanitization on dig value. 2025-03-20 17:20:14 -06:00
fusionate
7b8340f021 Access Control - Edit: Escape submitted values in dig command. 2025-03-20 09:51:37 -06:00
FusionPBX
a6a39e6d8a Add fax to the add fax_files table if the file exists 2025-03-19 13:26:31 -06:00
fusionate
42c96239c8 Theme: Set select password fields to monospace font when revealed. New input_text_font_password setting to control default font. 2025-03-18 17:55:41 -06:00
FusionPBX
0bec2b9aef Remove empty XML CDR files 2025-03-18 13:40:47 -06:00
Antonio Fernandez
c8699a5797 bug fix for voicemail edit transcription (#7324)
* bug fix for voicemail edit transcription

* Update voicemail_edit.php
2025-03-18 09:36:24 -06:00
frytimo
0a42d8f198 Add caching to the auto_loader for interfaces (#7320)
* update auto loader to load and cache interfaces

* use new method to update the auto loader cache

* use new interface

* use new interface to trigger a cache flush

* update the console upgrade menu

* update the missing implements syntax

* add the clear_cache to the flush cache button
2025-03-15 09:13:36 -06:00
FusionPBX
8a1421eb97 Fix call timeout for ring strategy enterprise
Call timeout ignored with enterprise adjust the destinaton_timeout to honor the call timeout
2025-03-14 20:31:06 -06:00
Alex
1e96df6e95 Change $setting to $settings (#7318)
* Change $setting to $settings

* Update app_defaults.php

* Update fax_queue.php

* Update xml_cdr.php

* Update email_queue.php

* Update transcribe.php

* Update send.php

* Update fax_queue.php

* Update fax_send.php

* Update app_defaults.php

* Update email_queue.php

* Update app_defaults.php

* Update app_defaults.php

* Update app_defaults.php

* Update app_defaults.php

* Update app_defaults.php

* Update app_defaults.php

* Update app_defaults.php

* Update app_defaults.php

* Update app_defaults.php

* Update app_defaults.php

* Update app_defaults.php
2025-03-14 16:19:49 -06:00
Alex
7639f0755c Update xml_cdr.php (#7315)
* Update xml_cdr.php

* Update css.php

* Update template.php
2025-03-13 14:58:15 -06:00
Alex
5dffd4d6e0 Add CDR column_overflow default setting (#7314)
* Add cdr column_overflow default setting

* Update app_config.php

* Update xml_cdr.php

* Update default_setting_edit.php

* Update template.php

* Update app_languages.php

* Update css.php
2025-03-13 14:49:30 -06:00
FusionPBX
17b938698e Start with the require.php 2025-03-13 13:08:36 -06:00
FusionPBX
b0a630e80a Use no-wrap class 2025-03-13 11:25:15 -06:00
Alex
b5592e84c7 Fix fatal error on fax send (#7313) 2025-03-13 11:04:40 -06:00
FusionPBX
ee28c6d203 Fix Call Detail Records with invalid xml 2025-03-13 10:06:36 -06:00
chansizzle
95761621a6 improve emergency emailing (#7309)
* improve emergency emailing

1. set emergency CID name & number to the outbound CID name & number if emergency CID name & number are not set
2. remove duplicate item in email body
3. change the hardcoded email subject '911 Emergency Call' to be dynamically provided from the event. I do not like seeing the subject '911 Emergency Call' when it is an TEST call.

* improve emergency emailing

1. change the hardcoded email subject '911 Emergency Call' to be dynamically provided from the event. I do not like seeing the subject '911 Emergency Call' when it is an TEST call.
2. fix email template misspelling
3. improved email template with bold fonts
2025-03-12 17:39:05 -06:00
frytimo
08001488f4 Allow namespace in auto loader (#7307)
* remove class_exists wrapper for class definitions

* remove class_exists wrapper for class definitions

* remove class_exists wrapper for class definitions

* remove class_exists wrapper for class definitions

* remove class_exists wrapper for class definitions

* remove class_exists wrapper for class definitions

* remove class_exists wrapper for class definitions

* remove class_exists wrapper for class definitions

* remove class_exists wrapper for class definitions

* remove class_exists wrapper for class definitions

* remove class_exists wrapper for class definitions

* remove class_exists wrapper for class definitions

* remove class_exists wrapper for class definitions

* remove class_exists wrapper for class definitions

* remove class_exists wrapper for class definitions

* remove class_exists wrapper for class definitions

* remove class_exists wrapper for class definitions

* remove class_exists wrapper for class definitions

* remove class_exists wrapper for class definitions

* remove class_exists wrapper for class definitions

* remove class_exists wrapper for class definitions

* remove class_exists wrapper for class definitions

* remove class_exists wrapper for class definitions

* remove class_exists wrapper for class definitions

* remove class_exists wrapper for class definitions

* remove class_exists wrapper for class definitions

* remove class_exists wrapper for class definitions

* remove class_exists wrapper for class definitions

* remove class_exists wrapper for class definitions

* remove class_exists wrapper for class definitions

* remove class_exists wrapper for class definitions

* remove class_exists wrapper for class definitions

* remove class_exists wrapper for class definitions

* remove class_exists wrapper for class definitions

* remove class_exists wrapper for class definitions

* remove class_exists wrapper for class definitions

* remove class_exists wrapper for class definitions

* remove class_exists wrapper for class definitions

* remove class_exists wrapper for class definitions

* remove class_exists wrapper for class definitions

* remove class_exists wrapper for class definitions

* remove class_exists wrapper for class definitions

* remove class_exists wrapper for class definitions

* remove class_exists wrapper for class definitions

* remove class_exists wrapper for class definitions

* remove class_exists wrapper for class definitions

* remove class_exists wrapper for class definitions

* remove class_exists wrapper for class definitions

* remove class_exists wrapper for class definitions

* remove class_exists wrapper for class definitions

* remove class_exists wrapper for class definitions

* remove class_exists wrapper for class definitions

* remove class_exists wrapper for class definitions

* remove class_exists wrapper for class definitions

* remove class_exists wrapper for class definitions

* remove class_exists wrapper for class definitions

* remove class_exists wrapper for class definitions

* remove class_exists wrapper for class definitions

* remove class_exists wrapper for class definitions

* remove class_exists wrapper for class definitions

* remove class_exists wrapper for class definitions

* remove include statement of class file

* remove include statement of class file

* remove include statement of class file

* remove include statement of class file

* remove include statement of class file

* remove include statement of class file

* remove include statement of class file

* remove include statement of class file

* remove include statement of class file

* remove include statement of class file

* remove include statement of class file

* remove include statement of class file

* remove include statement of class file

* remove include statement of class file

* remove include statement of class file

* remove include statement of class file

* remove include statement of class file

* remove include statement of class file

* remove include statement of class file

* remove include statement of class file

* remove include statement of class file

* remove include statement of class file

* remove include statement of class file

* remove include statement of class file

* remove include statement of class file

* remove include statement of class file

* remove include statement of class file

* remove include statement of class file

* remove include statement of class file

* remove include statement of class file

* remove include statement of class file

* remove include statement of class file

* remove include statement of class file

* remove include statement of class file

* remove include statement of class file

* remove include statement of class file

* remove include statement of class file

* remove include statement of class file

* remove include statement of class file

* remove include statement of class file

* remove include statement of class file

* remove include statement of class file

* remove include statement of class file

* remove include statement of class file

* remove include statement of class file

* remove include statement of class file

* remove include statement of class file

* remove include statement of class file

* remove include statement of class file

* remove include statement of class file

* remove closing tag

* remove invalid method params

* remove closing tag

* remove closing tag

* Update auto_loader to load each class file in the project
Update the auto_loader class to use an include statement on each file in the project to load the class within the file. This will allow mismatched names within the file to be loaded and mapped according to the declaration instead of the filename. The class is then checked against the parsed classes from the PHP engine so that namespaces are available and mapped to the file they were declared in. An update was also made to the search algorithm used to find a file that was not already loaded by collapsing the array to have only valid matches to increase performance on a cache miss. Logging within the auto_loader has been moved to a function.
Multiple files were modified to allow the include statement. When the class has the `if(class_exists())` statement, the auto_loader is called to check for the class. This caused an infinite loop scenario so all wrappers have been removed. The auto_loader will now break the loop by directly modifying the internal classes array instead of trying to restart with the 'reload_classes' method.

- APCu is used to cache classes so any loading of the classes is done only once. To clear the APCu cache, restart php-fpm or call the auto_loader::clear_cache() function.
- Cache file is used when APCu is not available. To clear the cache remove it from the tmp folder or call the auto_loader::clear_cache() function.
- All classes must no longer have a class_exists wrapper to benefit from the performance boost.
- Classes should not be directly included when the auto_loader is used.

* remove include statement of class file

* Update destinations.php
2025-03-12 13:55:47 -06:00
Alex
abb95e38bb Add content card to outbound route add and pin number export (#7308)
* Add content card to outbound route add and pin number export

* Add content card
2025-03-12 13:37:26 -06:00
FusionPBX
7a167f70af Get emergency emails from both default and domain settings 2025-03-12 11:37:27 -06:00