Commit Graph

91 Commits

Author SHA1 Message Date
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
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
FusionPBX cd8d5302ac
Fix temporary permissions 2024-11-29 13:57:01 -07: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
FusionPBX 873f431f80
Operator Panel prevent warnings
- Prevent PHP Warnings
- Save vertical space by removing extra br tags
  - Important to fit as many extensions on the page as possible for mid-sized businesses.
2024-05-29 17:09:18 -06:00
FusionPBX 4f70217802
Operator panel group extensions default false 2024-05-29 17:05:04 -06:00
FusionPBX 3ceea47824
Update content.php 2024-05-29 14:08:09 -06:00
fusionate 05cd649a73
Operator Panel: Mitigate PHP 8.x warnings. 2024-05-13 11:03:09 -06:00
fusionate c0d26a9279
Operator Panel: Permission check adjustment. 2024-02-28 13:12:15 -07:00
fusionate 3f6fa8d2f9
Operator Panel: Add permission to show or hide (default) unregistered extensions. 2024-02-28 12:59:49 -07:00
fusionate 07f532afab
Operator Panel: Restore drag/drop calling and transfer. 2024-02-27 11:18:44 -07:00
Anthony 80c670d945
Added bulk Turkish translations to app_languages.php files (#6901)
* Added Turkish translations to access_controls/app_languages.php

* Added Turkish translations to basic_operator_panel/app_languages.php

* Added Turkish translations to bridges/app_languages.php

* Added Turkish translations to call_block/app_languages.php

* Added Turkish translations to call_broadcast/app_languages.php

* Added Turkish translations to call_flows/app_languages.php
2024-02-20 21:59:53 -07:00
fusionate b33487a437
Operator Panel: Fix mispelling in code. 2024-02-03 05:22:32 +00:00
fusionate c1ad629d95
Operator Panel - Consistify refresh button, minor adjustments. 2023-12-08 01:41:01 +00:00
frytimo 3a4c2f72e2
Event socket bug fix and more docs (#6823)
* Add documentation to methods. Use is_resource for added type detection

* Allow connect to specify timeout in microseconds with default 30,000

* Update calling mechanism for event sockets

* Update project for new singleton event sockets

* remove unused variable

* catch errors on closing the socket
2023-12-02 17:16:18 -07:00
Anthony 8b39073265
Added Greek translations to app_languages.php under fusionpbx/apps (#6810)
* Added Greek translations to access_controls/app_language.php

* Added Greek translations to basic_operator_panel/app_language.php

* Added Greek translations to bridges/app_languages.php
2023-10-09 22:23:59 -06:00
fusionate d9d17a6917
Misc: Remove parameters from event_socket_create() calls. 2023-09-20 18:43:17 +00:00
Anthony 4cc864d29a
Fixing/Adding missing translations in app_languages and app_menu files (#6795) 2023-08-30 13:18:55 -06: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 4ac06a9194
Operator Panel: Updates for PHP 8.1 2023-06-08 19:32:39 +00:00
fusionate 1b3af9fb36
Operator Panel: Simplify and enhance filter, updates for PHP 8.1. 2023-06-08 19:16:38 +00:00
Anthony fae05e5341
Fixed Warnings for Recordings, Ring Group Edit and Operator Panel (#6739)
* Update ring_group_edit.php

* Update recordings.php

* Update recording_edit.php

* Update content.php
2023-06-02 14:37:30 -06:00
Anthony 9c650a29b1
Fixed Errors for Phrases, Recordings, Operator Panel and Music on Hold. (#6735) 2023-06-01 15:21:29 -06:00
Alex ac38507462
Update translations (#6682)
* Update translations

* Update app_menu.php

* Update app_languages.php
2023-05-10 18:20:44 -06:00
Alex 3e0ec8b752
Add missing translations (#6673) 2023-05-09 11:39:02 -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
markjcrane 28fe89066e Add Chinese, Korean, and Japanese translations 2023-05-02 22:05:16 -06:00
FusionPBX ee10e9c23a
Fix Ukranian translations 2023-04-29 23:35:26 -06:00
FusionPBX acf05f470a
Remove broken language characters 2023-04-29 21:45:54 -06:00
lyleatFusionPBX ff944683b8
Update app_menu.php (#6646) 2023-04-29 18:29:31 -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
Alex e40749a18b
Add missing translations (#6619)
* Update app_languages.php
2023-04-26 21:08:48 -06:00
markjcrane d50bcb476a Replace root.php 2022-10-10 16:35:14 -06:00
FusionPBX dd1b315101
Add valet park and line feeds. 2022-05-09 15:32:10 -06:00
FusionPBX ca16c0b622
Fixed hidden calls after picking up a parked call.
Also improved code indentation.
2022-05-07 12:46:14 -06:00
FusionPBX 4d18f598b2
Use a css class for the sub category labels. 2022-05-06 14:14:29 -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
AlexC 0fbecfa4ac
Update css.php (#6188)
* Update css.php

* Update app_config.php
2021-12-14 10:38:46 -07:00
Anthony d62130cf1f
Add theme default settings for operator panel (#6187)
* Add theme default settings for operator panel
2021-12-13 17:11:38 -07:00
markjcrane e429756307 Change error/user_busy to USER_BUSY 2021-09-18 23:26:21 -06:00
markjcrane 0f34a7c732 Use the escape function on name_filter to prevent XSS 2021-07-25 08:23:11 -06:00
mhoogveld bcf2366dbd
Redirect to login page when auto-refreshing a (part of a) page while being logged out (#5951) 2021-05-28 22:45:11 -06:00
Andrew Querol 42b421e646 Add a setting to control the grouping behavior if people want it back the old way. 2021-03-25 09:16:12 -05:00
Andrew Querol c16a4f60b5 Group extensions by their call_group when viewing all extensions. 2021-03-25 09:16:12 -05:00
Andrew Querol 88be4e0094 Fix user status setting. 2020-12-28 19:45:05 -06:00
FusionPBX d0be8bf379
Fix recording icon so that it would indicate the call being recorded. 2020-12-09 10:42:21 -07:00
Nate df88702ec1 Operator Panel: Enforce minimum refresh rate value. 2020-10-14 14:22:35 -06:00