Commit Graph

48 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
Alex 9fc82c02cb
Add dashboard icon color setting (#7197)
* Add dashboard icon color setting

* Update index.php

* Update app_languages.php

* Update app_defaults.php

* Update app_config.php

* Update dashboard_edit.php

* Update index.php

* Update app_languages.php

* Update app_defaults.php

* Update app_config.php

* Update config.php

* Update domains.php

* Update config.php

* Update config.php

* Update config.php

* Update config.php

* Update config.php

* Update config.php

* Update config.php

* Update config.php

* Update config.php

* Update config.php

* Update registrations.php

* Update config.php

* Update config.php

* Update config.php

* Update config.php

* Update voicemails.php

* Update config.php

* Update missed_calls.php

* Update recent_calls.php

* Update index.php

* Update index.php

* Update index.php
2024-12-11 21:28:45 -07:00
FusionPBX cd8d5302ac
Fix temporary permissions 2024-11-29 13:57:01 -07:00
frytimo 7133d4bff1
parse windows 1256 encoding type in email to fax (#7182) 2024-11-27 14:21:45 -07:00
fusionate 12eead4b4d
Fax Server: Add option for Download Link on received fax notifications, instead of attachment. 2024-08-22 16:11:06 -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
Alex 43d102b51c
Added label enabled dashboard setting (#7096)
* Added label enabled dashboard setting
2024-08-14 17:44:11 -06:00
FusionPBX e9cd4dd1ec
Add fax group to the fax dashboard 2024-08-02 12:51:13 -06:00
FusionPBX 4b04d701ec
Update dashboard permissions 2024-07-30 22:18:29 -06:00
FusionPBX 77dd833b55
Update some of the dashboard icons 2024-07-30 22:15:38 -06:00
FusionPBX 82d1f4eb88
Add more dashboard widgets 2024-07-29 16:32:49 -06:00
fusionate e61868a4ec
Fax Server: Implement Read/Unread Toggle. 2024-06-05 06:34:07 -06:00
fusionate e9281cb0cb
Fax [Class]: Updates for PHP 8.1 2023-05-29 22:24:23 +00: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
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
FusionPBX 225870213b
Change the fax dialplan order
Change to 40 is in case people use a fax number that conflicts with outbound routes
2023-04-24 11:58:52 -06:00
FusionPBX abbaccde9d
Move xml::santize
Need to preserve ${caller_id_number} and ${strftime(%Y-%m-%d-%H-%M-%S)} so moved the xml::santize
2023-03-31 13:25:42 -06:00
Alex 43eb2a5b9d
[security] sanitize the xml (#6595)
* Update call_center_queue_edit.php

* fix typo

* Update call_flow_edit.php

* Update conference_center_edit.php

* Update conference_edit.php

* Update destination_edit.php

* Update fax.php

* Update ivr_menu_edit.php

* Update ring_group_edit.php

* Update app_defaults.php

* Update ivr_menu_copy.php

* Update destination_imports.php

* Update app_defaults.php
2023-03-30 12:46:36 -06:00
FusionPBX a9e534f1fa
Remove playback silence_stream 2022-08-18 17:59:41 -06:00
fusionate c67c8cd4c2 Destination Select - Dynamic: Clear session array on add/toggle/delete of a destination type record. 2020-11-30 14:15:57 -07:00
FusionPBX 81ff164a65
Update fax.php
Change session context to domain_name.
2020-10-22 02:19:08 -06:00
FusionPBX fe284ccebb
Remove the deprecated save_dialplan_xml function. 2020-08-14 00:17:46 -06:00
Nate 5f5a4f5509 Fax Server: Include logs and files in server/extension delete() method. 2020-02-17 20:10:36 -07:00
Nate 1ceccf698e Fax Server: List view, button, bulk delete via class, etc. 2020-01-29 11:41:12 -07:00
Nate d1869c2895 Fax Server: Class updates. 2019-11-30 18:49:08 -07:00
Nate bec5c647c9 List View: Updates to action classes. 2019-11-30 15:18:48 -07:00
Nate ec3e73a9ab Fax Server: List view updates. 2019-11-21 12:58:08 -07:00
Nate fdf28ca6fc Misc: Database class integration. 2019-09-04 12:21:57 -06:00
FusionPBX d5f8027ed1 Update fax.php 2016-10-23 00:20:29 -06:00
FusionPBX 798fe98991 Update fax.php
Update the FAX dialplan to use the updated orm class.
2016-10-08 22:13:46 -06:00
Harry G. Coin cc553a70c5 Cleanups.
Remove default 192.168.42.42/32 allow.
Restore missing app/fax/resources/functions/parse_attachments.php to satisfy pre-existing include
Fix so sql in voicemail app works if var undefined.  Warning: don't know if non Mariadb's like cast(...) .
Cleanup close in event socket.
2016-04-25 22:16:19 -05:00
Harry G. Coin bda6861f88 \r\n --> \n
Cause all the .php files containing lines ending with \r\n to instead end with \n.

DYI with:

find fusionpbx -type f -name '*.php' -exec dos2unix '{}' \;
2016-04-25 20:30:23 -05:00
Alexey Melnichuk eb1a13fc23 Change. `parse_message` do full parse test and attachments.
Change. use only `text/plain` part to build front page.
Change. use only `attachment` but not `inline` files to build fax file.
2016-04-08 12:31:13 +03:00
Alexey Melnichuk c9ba145f1d Fix. get text part of email message with single part email. 2016-04-07 13:11:24 +03:00
mafoo 6eed9935d4 WhitespaceClean-app/batch_2
whitespace pass over files
for reference regex that was used s/[ \t]+(\r?\n)/\1/
2016-03-11 12:01:24 +00:00
markjcrane bc6d44a6c1 Fax add a way to change the inbound fax file name. 2016-02-10 21:44:03 -07:00
Alexey Melnichuk ed781fc8c3 Fix. forgotten images. 2015-12-09 13:51:25 +03:00
markjcrane fb1e3e29f1 Add tabbing to parse_attachments.php. 2015-12-08 21:57:18 -07:00
Alexey Melnichuk c543c42ffa Change. Use path with domain name for faxes for single tenant installation. 2015-12-04 12:57:30 +03:00
Alexey Melnichuk 2f88d1d985 Fix. Decode email message from quoted-printable/base64.
Fix. Allow set custom fonts to support non latin alphabet.
2015-11-20 14:45:06 +03:00
markjcrane 948199497c Add fax_forward_number to the fax class. 2015-08-21 17:10:42 -06:00
markjcrane 7bdd6851fa Add fax prefix tot he fax class. 2015-08-21 17:04:34 -06:00
markjcrane dfa4d1f4b1 Use fax_extension for the directory path needed for outbound faxes. 2015-08-21 16:17:42 -06:00
markjcrane 4201015784 Fix the fax dialplan which prevented inbound faxes from saving using the new fax dialplan. 2015-08-19 12:41:34 -06:00
markjcrane eb95f981a4 Fax variables for inbound, outbound, and both. 2015-08-15 15:26:16 -06:00
markjcrane bb0d6465d8 Add a new fax class to make the fax dialplan. 2015-08-15 14:27:27 -06:00
Nate Jones 2f22585704 Fax Server: Move default FusionPBX cover page logo graphic to resources folder. 2015-02-19 23:55:44 +00:00
Nate Jones 0fec6216ef Fax Server: Send faxes to multiple recipients at once, customizable 'Subject Tag' for Remote Inbox viewing, preparations for Email-to-Fax functionality. 2014-11-29 13:32:42 +00:00