Commit Graph

185 Commits

Author SHA1 Message Date
FusionPBX
3182a257d5 Use speech get_format to get the greeting format 2025-09-09 17:49:14 -06:00
FusionPBX
d402fc305c Update voicemail_greeting_edit.php 2025-09-09 15:32:58 -06:00
frytimo
eda2aee715 Only enable transcribe and speech if their respective class exists (#7480) 2025-09-09 15:26:35 -06:00
FusionPBX
ccb4b2a5bf Use the settings class get method 2025-08-26 13:02:14 -06:00
frytimo
44e41f52d4 Fix uploaded greetings to use next id for wav,mp3,ogg (#7464)
* Fix uploaded greetings to use the next ID for wav,mp3,ogg

* Update voicemail_greetings.php
2025-08-20 15:13:43 -06:00
FusionPBX
79bbd2719d Add the greeting to the database
If the greeting file exists on the file system but not in the database, then add it to the database.
2025-06-23 14:18:19 -06:00
FusionPBX
ee322d23b6 Fix a syntax issue and remove the optional php close tag 2025-04-22 10:06:03 -06:00
FusionPBX
bd1258b126 Add missing translations 2025-04-22 10:02:19 -06:00
FusionPBX
c3952028b1 Use the settings get method for the buttons 2025-04-14 10:36:21 -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
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
fusionate
03030465d9 Audio Waveform: Boolean adjustments. 2025-03-05 16:09:17 -07:00
frytimo
d529021b3f Use boolean setting as true boolean (#7284)
* use boolean setting as true boolean

* Update settings class to use the php filter_var function for boolean
Using the built-in filter type for boolean seems like a better option as they are faster, already hardened, and more widely tested.
I found this better method used originally by Mark J. Crane in 2022 in the content.php page so I included it here.

* Update settings class to use the php filter_var function for boolean
Using the built-in filter type for boolean seems like a better option as they are faster, already hardened, and more widely tested.
I found this better method used originally by Mark J. Crane in 2022 in the content.php page so I included it here.
2025-03-04 11:25:47 -07:00
Alex
8cfc221da4 Redirect to the correct domain if using show all (#7265)
* Redirect to the correct domain if using show all

* Update bridges.php

* Update call_recordings.php

* Update conference_controls.php

* Update conference_profile_params.php

* Update conference_profiles.php

* Update email_queue.php

* Update event_guard_logs.php

* Update fax_queue.php

* Update user_settings.php

* Update require.php
2025-02-20 16:30:09 -07:00
FusionPBX
cd8d5302ac Fix temporary permissions 2024-11-29 13:57:01 -07:00
FusionPBX
ebaf1f909f Use boolean in conditional statement 2024-10-24 14:37:26 -06:00
fusionate
35d097913f Voicemail Greetings - List: Remove unused parameters from recording_seek() function call, remove additional <td>...</td> tag, add another column count increment. 2024-10-18 19:22:54 -06:00
anthony-ricci
7122ecc154 Recording Seek (#7163) 2024-10-18 18:45:21 -06:00
Alex
84950065aa Add content card to voicemail greetings (#7142)
* Add content card to voicemail greetings

* Update voicemail_greeting_edit.php
2024-09-26 15:57:32 -06:00
FusionPBX
50a1ed145c Fix voicemail greeting for base64
- Use the settings class
- Re-use the database object
- Update the indentation
2024-09-23 18:17:44 -06:00
FusionPBX
f03b5ad8bd Fix voicemail base64 greeting 2024-09-17 17:46:22 -06:00
Alex
b43bcb9a13 Added the heading counter div (#7124) 2024-09-06 16:43:42 -06:00
MarBifrost
906b3edf03 Corrections in Georgian translation (#7113) 2024-08-31 10:02:51 -06:00
NorwayFun
aabc2f33a8 Localization: Add full support for Georgian language (#7110)
* Translating apps to Georgian

* Translating apps to Georgian

* Translating more apps to Georgian

* Translating more apps to Georgian

* Translating more apps to Georgian

* Translating more apps to Georgian

* Translating more apps to Georgian

* Translating theme to Georgian

* Translating core to Georgian

* Translating core to Georgian

* Translating core to Georgian by Marie

* Translating core to Georgian

* Translating resources to Georgian by Marie

* Translating core to Georgian

* fix app_languages.php
2024-08-28 09:59:02 -06:00
frytimo
2cbb4dbc31 remove instances where a pointer is used in a foreach loop for value (#7108) 2024-08-22 12:41:10 -06:00
markjcrane
22ba339505 Allow one line feed at the end of the file 2024-08-05 18:27:59 -06:00
fusionate
d48208456b Voicemail Greetings - Edit: Fix issue where no greetings present. 2024-05-31 15:21:23 -06:00
fusionate
7d105c79e6 Voicemail Greetings: Integrate AI greeting generation, fix waveform image generation for OpenAI audio files. 2024-05-31 15:00:15 -06:00
fusionate
2eb7e7844f Voicemail Greetings: Audio waveform generation integration. 2024-02-09 13:12:34 -07:00
Alex
4004a698c4 Added more Greek and Turkish translations (#6880)
* Update app_menu.php

* Update app_languages.php

* Update app_menu.php

* Update app_languages.php

* Update app_languages.php

* Update app_menu.php

* Update app_languages.php

* Update app_languages.php

* Update app_menu.php

* Update app_languages.php

* Update app_menu.php

* Update app_languages.php

* Update app_languages.php

* Update app_menu.php

* Update app_languages.php

* Update app_languages.php

* Update app_menu.php

* Update app_languages.php

* Update app_menu.php

* Update app_languages.php

* Update app_menu.php

* Update app_languages.php

* Update app_menu.php

* Update app_languages.php

* Update app_menu.php

* Update app_languages.php

* Update app_menu.php

* Update app_languages.php

* Update app_menu.php

* Update app_languages.php

* Update app_menu.php

* Update app_languages.php

* Update app_menu.php

* Update app_languages.php

* Update app_menu.php

* Update app_languages.php

* Update app_menu.php

* Update app_languages.php

* Update app_menu.php

* Update app_languages.php
2024-01-30 16:17:24 -07:00
FusionPBX
9afb69dbda Update voicemail_greetings.php 2024-01-16 08:45:46 -07:00
FusionPBX
4d29fd8a98 Fix the voicemail greeting base64 upload 2024-01-16 08:44:22 -07:00
fusionate
64591e413e Voicemail - Greetings: Margin adjustment on Delete button. 2024-01-03 22:33:46 +00:00
fusionate
365ac1c4ab Voicemail - Greetings: Hide Add button if max greetings reached (9). 2024-01-03 22:31:48 +00:00
FusionPBX
4c60313ed7 Remove deprecated fields id and v_id 2023-12-04 13:27:20 -07:00
frytimo
d7bbcd89f5 Use magic constant dir (#6711)
* use magic constant __DIR__

* use magic constant __DIR__

* use magic constant __DIR__

* use magic constant __DIR__

* use magic constant __DIR__

* use magic constant __DIR__

* use magic constant __DIR__

* use magic constant __DIR__

* use magic constant __DIR__

* use magic constant __DIR__

* use magic constant __DIR__

* use magic constant __DIR__

* use magic constant __DIR__

* use magic constant __DIR__

* use magic constant __DIR__

* use magic constant __DIR__

* use magic constant __DIR__

* use magic constant __DIR__

* use magic constant __DIR__

* use magic constant __DIR__

* use magic constant __DIR__

* use magic constant __DIR__

* use magic constant __DIR__

* use magic constant __DIR__

* use magic constant __DIR__

* use magic constant __DIR__

* use magic constant __DIR__

* use magic constant __DIR__

* use magic constant __DIR__

* use magic constant __DIR__

* use magic constant __DIR__

* use magic constant __DIR__

* use magic constant __DIR__

* use magic constant __DIR__

* use magic constant __DIR__

* use magic constant __DIR__

* use magic constant __DIR__

* use magic constant __DIR__

* use magic constant __DIR__

* use magic constant __DIR__

* use magic constant __DIR__

* use magic constant __DIR__

* use magic constant __DIR__

* use magic constant __DIR__

* use magic constant __DIR__

* use magic constant __DIR__

* use magic constant __DIR__

* use magic constant __DIR__

* use magic constant __DIR__

* use magic constant __DIR__

* use magic constant __DIR__

* use magic constant __DIR__

* use magic constant __DIR__

* use magic constant __DIR__

* use magic constant __DIR__

* use magic constant __DIR__

* use magic constant __DIR__

* use magic constant __DIR__

* use magic constant __DIR__

* use magic constant __DIR__

* use magic constant __DIR__

* use magic constant __DIR__

* use magic constant __DIR__

* use magic constant __DIR__

* use magic constant __DIR__ to load only functions.php

* replace spaces with tab character

* update dirname command to use levels instead of nesting

* use magic constant __DIR__

* update dirname command to use levels instead of nesting

* Update access_control_edit.php

* Update access_control_import.php

* Update access_controls.php

* Update dnd.php

* Update access_controls_reload.php

* Update call_center_agents.php

* Update call_center_agents.php

* Update fax_queue.php

* Update login.php

* Update pdo.php

* Update pdo_vm.php

* Update switch.php

* Update index.php

* Update css.php

* Update v_mailto.php

* Update fax_to_email.php

---------

Co-authored-by: FusionPBX <markjcrane@gmail.com>
2023-06-15 11:28:23 -06:00
fusionate
39cb1c3588 Voicemail Greetings: Updates for PHP 8.1 2023-06-09 16:51:59 +00:00
Alex
fb8d0e2983 fix bugs in php 8.1 changes (#6744)
* Update voicemail_greetings.php

* Update recordings.php

* Update recording_edit.php

* Update phrases.php

* Update phrase_edit.php

* Update music_on_hold_edit.php

* Update fax_queue.php

* Update extensions.php

* Update email_templates.php

* Update email_queue_edit.php

* Update dialplan_inbound_add.php

* Update device_profiles.php

* Update device_profile_copy.php

* Update contact_address_edit.php

* Update call_recordings.php

* Update call_center_agent_edit.php

* Update call_center_agents.php

* Update call_center_queues.php

* Update call_block.php

* Update menu_edit.php

* Update default_setting_edit.php

* Update database_edit.php
2023-06-05 12:41:28 -06:00
Anthony
75ea925753 Update voicemail messages and greetings (#6725)
* Update voicemail_messages.php

* Update voicemail_greetings.php
2023-05-26 16:13:52 -06:00
markjcrane
6d7e125743 Fix all PHP 8.1 messages for upgrade.php 2023-05-17 10:07:49 -06:00
Alex
a46c5dbfc9 Update translations (#6688)
* Update app_languages.php
2023-05-12 15:14:59 -06:00
frytimo
fef8165be2 Frytimo pr patches for php8.1 (#6630)
* Passing null to parameter #2 ($string) of type string is deprecated

* Passing null to parameter #1 ($string) of type string is deprecated

* php 8.1 fixes

* php 8.1 fixes - replace strlen($var) > 0 with !empty($var)

* php 8.1 fixes - replace ${var} with {$var}

* php 8.1 fixes - replace ${var} with {$var}

* php 8.1 fixes - replace ${var} with {$var}

* php 8.1 fixes - replace ${var} with {$var}

* php 8.1 fixes - strlower with null

* php 8.1 fixes - strreplace with null

* php 8.1 fixes - passing null to base64_decode

* php 8.1 fixes - check for false and check for null on $this->dir

* php 8.1 fixes - remove assignment of $db variable to modules object

* php 8.1 fixes - avoid sending null to substr

* php 8.1 fixes - change ${var} to {$var}

* php 8.1 fixes - check for null before preg_replace

* php 8.1 fixes - remove setting db variable on domains object

* php 8.1 fixes - set empty string if $row['domain_setting_subcategory'] is null

* php 8.1 fixes - set empty string if $_REQUEST['show'] is not available

* php 8.1 fixes

* php 8.1 fixes - correct $_POST checking syntax

* php 8.1 fixes - correct $_POST variables

* php 8.1 fixes

* Use brackets consistently

* Update user_setting_edit.php

* Change to not empty

* Update device.php

* Update text.php

---------

Co-authored-by: Tim Fry <tim@voipstratus.com>
Co-authored-by: FusionPBX <markjcrane@gmail.com>
2023-05-05 10:46:37 -06:00
markjcrane
1513bd3301 Add Chinese, Korean, and Japanese translations 2023-05-03 10:36:25 -06:00
frytimo
69bd42af05 remove unneeded destruct methods as GC has higher performance (#6631)
Co-authored-by: Tim Fry <tim@voipstratus.com>
2023-04-27 20:18:53 -06:00
fusionate
0dcc3892da Voicemail Greetings: Add missing language translations. 2023-04-26 22:46:34 +00:00
Daniel C
c57f8fee22 Fix fax queue selection not sending list and some french translation. (#6565)
* Fix sending selected faxes from the queue

* Fix some french translations

---------

Co-authored-by: Daniel <git@myrandor.com>
2023-02-28 00:00:51 -07:00
FusionPBX
a593f567d1 Add the greeting to the database when uploaded 2022-12-09 18:55:49 -07:00
markjcrane
d50bcb476a Replace root.php 2022-10-10 16:35:14 -06:00
markjcrane
eb5c25aa35 Add insert_date, insert_user, update_date, update_user to all tables 2022-09-18 00:54:37 -06:00
nyash
0bc048a634 Add/edit some polish translations (#6327)
* Add/edit some polish translations

* Minor touches to polish translations
2022-03-26 14:30:02 -06:00