Commit Graph

175 Commits

Author SHA1 Message Date
Marcus Hill c2b6591cda Cron - Send invoices to all billing contacts + primary 2023-05-13 23:10:36 +01:00
johnnyq ccf0d3ab77 Replace all instances of htmlentities() with the new function nullable_htmlentities() thanks @bhopkins0 2023-05-11 18:23:36 -04:00
johnnyq 93d4f3ebce You can now set the number of hours before a ticket is automatically closed if autoclose is set 2023-05-07 21:09:18 -04:00
johnnyq 072c2f9e14 Fix cron stating cron key is always invalid 2023-05-02 13:45:23 -04:00
johnnyq 3f2f663b7b Check to see if args is set 2023-05-01 16:56:29 -04:00
johnnyq f7ee489293 BREAKING CRON CHANGES: must generate a cron key before using cron. Cron will need updated like so php /full/path/to/cron.php [KEY] and same with cron_ticket_parse.php 2023-05-01 16:51:20 -04:00
Marcus Hill dc2293c8dd Add auto close ticket feature 2023-05-01 02:02:45 +01:00
johnnyq d05aa0b829 When clicking on a notificaiton on the dropdown instead of dismissing it takes you to the client page if specified otherwise its an empty click, updated some entity_id for notifications in cron.php 2023-03-18 15:36:19 -04:00
johnnyq 99eaaa71c4 Fix #646 Thanks @Heart1010 2023-03-16 12:39:07 -04:00
johnnyq 48fe49cf77 BREAKING CHANGES - MAKE FULL BACKUP BEFORE PROCEEDING - Requires Manual Intervention on files see Forum Post Make sure you run the Database update directly after update. This Removes Multi-Company Functionality. Fixes issues with Reponsive tables and bunch of other UI and small Fixes 2023-03-11 16:16:46 -05:00
johnnyq 7228d8b6e6 Fix #640 2023-03-02 16:20:03 -05:00
johnnyq 45b686dafc Fix issue with cron not sending recurring emails due to a misspelling 2023-03-01 14:09:58 -05:00
johnnyq 3f005b4c5b Fix Settings Tag page being blank if no tags are specified 2023-02-25 14:16:43 -05:00
johnnyq f7552cd25a Finished up santizeInput Conv and UI updates 2023-02-23 16:09:37 -05:00
johnnyq 95f190c89d More UI work and santitizeInput migrations 2023-02-20 22:02:39 -05:00
johnnyq bf0aaf794d Commented out whois fetch domain data in cron.php while we investigate an issue with it intermitently breaking cron.php 2023-02-20 15:14:27 -05:00
johnnyq b5f815e9f2 Add new santize function to cron.php get rid of unnessesary created at now and updated at now as the database does this now. 2023-02-19 21:18:20 -05:00
Marcus Hill 5bb4296f14 Adjust core files to 4 spaces 2023-02-12 14:40:10 +00:00
Marcus Hill 4da907e8ac Automatically cleanup dismissed notifications after 90 days 2023-02-11 13:40:05 +00:00
Marcus Hill 73f0826369 Re-organize / comment cron 2023-02-10 12:42:34 +00:00
Marcus Hill 615f317d2b General cleanup/formatting 2023-02-09 12:29:12 +00:00
Marcus Hill f92dc108e2 Tidy
- Move some scripts to their own js files
- Move some duplicate code blocks to functions
- General tidy & spacing cleanups (#538)
2023-02-04 22:09:56 +00:00
Marcus Hill 8cc5505184 Readd domain refreshing 2023-02-01 22:36:56 +00:00
Marcus Hill a164e27d3b Spacing 2023-02-01 21:49:43 +00:00
johnnyq ca290120df Added config_telemetry variable to send telemetry to verify if telemetry is on or off when sent. Fixed sending telemetry on update when off these were due to an = sign when it should have been a double == Checked setup since this is the last place where it sends telemetry and it is correct. 2023-01-31 17:18:18 -05:00
johnnyq d1172e512b Fixed and caught an issue where Cron would send telemetry data even with telemetry off 2023-01-31 17:01:09 -05:00
johnnyq 0acd19a5ce Added Telemetry to Cron if enabled in settings, many more telemetry data counts were added 2023-01-28 18:11:00 -05:00
Marcus Hill 23e3a2e8fc - Create custom function (randomString()) for generating cryptographically (and URL) safe strings.
- Replace usages of keygen and bin2hex(random_bytes()) with this function.
2023-01-26 21:35:06 +00:00
Marcus Hill fb6848f508 Add configuration setting to control whether clients should get automatic ticket-related emails (ticket open/close) 2023-01-21 15:47:01 +00:00
Marcus Hill f7d9fe8479 Add email notifications when cron raises a scheduled ticket 2023-01-21 12:29:39 +00:00
Marcus Hill 4c0acc87b1 Change include to require 2023-01-02 16:07:51 +00:00
Marcus Hill fcdeee6321 SQL Escape client name field to prevent potentially breaking SQL queries 2023-01-02 15:06:51 +00:00
Marcus Hill d86285aafd SQL Escape domain/cert/client/ticket fields to prevent them potentially breaking SQL queries 2023-01-02 15:03:56 +00:00
johnnyq d6d908f0b8 Generate longer more secure Keys for shareable URLs using best practice 2022-12-29 16:50:57 -05:00
Marcus Hill 1ea081a175 Move email sending to a function for better error handling and code-deduplication 2022-12-18 14:24:47 +00:00
johnnyq 7c8959c17a Added SMTP Debug 3 to cron.php to diagnose mail issues 2022-11-09 11:30:34 -05:00
johnnyq a20a939b21 updated notification types 2022-10-14 11:24:58 -04:00
johnnyq eb8e40af21 Added Client Link to recurring Invoice notification via cron 2022-10-08 13:45:50 -04:00
Marcus Hill 6529ff8bbf Allow portal contacts to reset their passwords via email 2022-10-01 21:32:19 +01:00
johnnyq 7543957176 Wording Change on Viewing Invoice email template 2022-09-26 18:53:33 -04:00
johnnyq 996c603826 Operation Cleanup Round 4 - Remove config_base_url from settings table in db. This should be in your config.php now, if this is not added this can break things 2022-09-17 18:04:26 -04:00
johnnyq 2ea41ed960 Operation Cleanup Round 3 - Remove automated SQL backups as this should be handled by system level backups which will also backup the files 2022-09-17 17:17:01 -04:00
johnnyq 8192c49a38 Added Cron Job Start to Logging 2022-07-19 14:29:02 -04:00
johnnyq b4417f8e94 Added Cron Successful to the logs in cron.php 2022-07-19 13:27:28 -04:00
johnnyq 1d139fafd3 Added Cron Successful to the logs in cron.php 2022-07-19 13:26:26 -04:00
johnnyq dbea44591c Removed Refresh Domain Whois and DNS and Refresh SSL from cron.php as it was breaking it causing recurrings and invoice reminders not to be sent out. 2022-07-19 13:15:55 -04:00
Marcus Hill cf6bf88e4f Add TXT records under domain records 2022-07-07 20:17:16 +01:00
Marcus Hill 7bf6ea6447 Add auto ssl updater to cron 2022-06-18 19:51:37 +01:00
Marcus Hill f9abe79088 Add domain whois auto updater nightly via cron 2022-05-31 21:13:25 +01:00
Marcus Hill 779153e099 Adjust scheduled ticket behaviour in cron to account for cron being run at 1 AM rather than 11 PM. This is also better for daylight saving 2022-04-15 12:03:52 +01:00
johnnyq ef29a17d49 DB Structure Update - Added SMTP Encryption Type to Mail settings 2022-04-02 16:03:30 -04:00
Marcus Hill cab2cc923a Improve share features: default modal to 1, cleanup expired/used links 2022-04-02 15:37:17 +01:00
johnnyq eac5a53e9e Fix Var name in Cron 2022-03-29 13:04:02 -04:00
johnnyq 8c98163e1c DB Structure Updated 2 new settings config_backup_enable and config_backup_path. This is to fix an issue where not specifying the full backup path would cause cron to error out and not run completely 2022-03-29 12:59:42 -04:00
Marcus Hill 9040fdf847 Misc small changes/fixes 2022-03-27 22:26:22 +01:00
Marcus Hill fb4da53026 Show who else is viewing the same open ticket as you 2022-03-26 18:05:20 +00:00
johnnyq d4a63c14c3 DB Updated removed history_date from history table as this is redundant with history_created_at 2022-03-04 00:41:34 -05:00
Marcus Hill ed9d62b393 Spacing 2022-02-24 19:17:44 +00:00
Marcus Hill b3acfba28d Add automatic database backup functionality 2022-02-24 19:13:45 +00:00
johnnyq 1ed20217d1 Added Department name on client PDF Export and contact CSV export 2022-02-22 11:42:08 -05:00
johnnyq e6b45f9627 Added Notification client id to Past due invoice notifications 2022-02-22 11:32:11 -05:00
johnnyq 7af0c11720 Updated Email template footers to include department and Email for Ticket replies, Invoices, Payment Receipts, Quotes, etc 2022-02-21 23:42:58 -05:00
johnnyq b4114fdad3 DB Structure Update - Added notification_client_id to notifications to link notification to clients to further use in client overview, added asset warranty expiration notification fixed a few DB queries to use join instead of = 2022-02-21 21:42:59 -05:00
johnnyq 05e7b160b1 DB Structure Update table name alerts is now notifications also update the fields accordingly to the notifications table - Reworked Notifications a bit 2022-02-21 21:21:13 -05:00
johnnyq f95a228141 Updated DB Structure, Added Seperate From Name and From Email to Invoices / Quotes and Tickets, seperated Quote and Invoice to their own settings pane 2022-02-18 15:26:16 -05:00
johnnyq 16968e0b97 Added Locale option for company, this works in conjunction with the way the currency is displayed 2022-02-18 11:14:14 -05:00
johnnyq a9346845ab Refactored Currency Display using PHP numfmt_format_currency() function as this is best practice and will put the right currency symbol in the right place based off locale and currency type 2022-02-17 22:20:59 -05:00
Marcus Hill 5c0fe3f2fd Add scheduling frequency options: quarterly, biannually, annually 2022-02-13 15:10:14 +00:00
johnnyq e9b239f9a9 Bump AdminLTE from 3.1 to 3.2, Bump plugins Summernote, phpMailer, clipboardjs, bootstrap, fontawesome-free, fullcalendar, inputmask, JQuery, moment, pdfmake, and more. Removed Unnessesary files from from plugins directories to reduce app size 2022-02-07 19:20:56 -05:00
johnnyq f8e9c2ee5d replicated currency symbol across email communication, updated currency code to reflect the current invoice and or quote's currency code instead of the clients currency code 2022-01-14 14:58:27 -05:00
johnnyq 4636f98ad0 Move scheduled tickets to a more appropriate place in cron 2022-01-07 22:30:34 -05:00
Marcus Hill de152c84ca Add scheduled ticket functionality to cron 2022-01-07 23:56:22 +00:00
johnnyq c88e6b851a DB Structure Change - Removed the useless Low Account Balance alert 2021-12-08 22:32:05 -05:00
johnnyq 6fb0d32b52 Added Certificate Expiration Notification as well as add the client name for both domain and certificate expiring alerts 2021-09-23 10:15:23 -04:00
johnnyq 6908bdcd30 Bumped PHPMailer from 6.4.0 to 6.5.1 2021-09-20 18:33:00 -04:00
johnnyq 2e5e1aee52 Phone numbers are all now formatted correctly per their length 2021-09-11 22:41:50 -04:00
johnnyq f68e1ddca6 Recurring Invoice issue in cron 2021-08-28 02:05:59 -04:00
johnnyq f3053ffbd4 BREAKING CHANGES: Major Backend Code Changes Updated Foreign keys to prepend their table names ex invoice_client_id, switched most queries over to JOIN instead of = Combined contacts and location into client removed client email, phone etc fields, tons of small bug fixes, and other small UI changes all across the board 2021-08-27 23:14:06 -04:00
johnnyq 9a4b82eb6f Bump PhpMailer from 6.2.0 to 6.4.0 2021-04-07 20:55:07 -04:00
johnny@pittpc.com 78c13f6954 Fixed a bug where auito generated Recurring invoices would not put the right Currency code causing it not to accept a payement 2021-02-27 13:03:57 -05:00
johnny@pittpc.com ad5115b345 Added missing var in cron low balance threshold 2021-02-18 16:56:32 -05:00
johnny@pittpc.com 7878420126 Added Enabled Balance Alert Enabled Check before executing low balance alerts in cron 2021-02-18 16:47:55 -05:00
johnny@pittpc.com d41543ea1f Fixed issue where some recurring invoices will total out at 0, if tax rate changes new invoices from recurring will need to be updated to reflect new tax changes which is very rare 2021-02-18 14:51:37 -05:00
johnny@pittpc.com 6a1021bb75 Fix Invoice Prefix not beign applied to alert 2021-02-18 12:49:17 -05:00
johnny@pittpc.com 6f46f2ec87 More Currency Code Updates, would like to do conversions and add currency icons at a later date also set default country so it doesnt have to be selected each time 2021-02-14 18:06:32 -05:00
johnny@pittpc.com 6ff973e7d9 Bump PHPMailer from 6.1.4 to 6.2.0 2021-02-10 11:26:46 -05:00
johnny@pittpc.com 7e1e97c13f Create Alert when recurring invoice was sent 2021-02-08 22:30:52 -05:00
johnny@pittpc.com 59a5d3a44f Added Recurring Auto Increment Number and Prefix DB Structure Updated 2021-02-08 20:01:08 -05:00
johnny@pittpc.com 7d9352c63d Added Invoice and Quote Prefix field to fix sorting issues 2021-02-08 16:57:29 -05:00
johnny@pittpc.com 632714cd17 Added Tax ID to each line item, also if tax % changes the new recurring will automatically get updated and sent with the right tax rate DB Structure updated 2021-02-06 00:18:37 -05:00
johnny@pittpc.com 6d23b87f7c Moved Company info out of settings and into the companies table, updated pdf, invoice, quotes, guest view, post, setup 2021-02-04 21:54:50 -05:00
johnny@pittpc.com 380d3376d1 Added Scope to recurring invoices 2021-01-22 14:21:25 -05:00
johnny@pittpc.com 1ee9fb427c Removed search and company select from sidebar, removed unused plugins 2020-08-29 20:18:35 -04:00
johnny@pittpc.com da9cad0723 Lots of updates, modal design updates, added notes to many tables, added contact relation to location, moved next_date as primary sorted in recurring, updated database tables, few fixes for transfers and other small bug fixes 2020-02-02 01:08:27 -05:00
johnny@pittpc.com cf740d3ce4 upgraded PHPMailer, AdminLTE, chartJS, Select2 Libraries 2020-01-21 00:45:16 -05:00
johnny@pittpc.com 341f1c37a2 updated initial sorting order for some lists 2019-11-29 14:08:32 -05:00
johnny@pittpc.com cac8083279 More updates to the UI 2019-11-24 20:24:21 -05:00
johnny@pittpc.com 0b691f6eec Added Automail overdue invoices to cron, with hardcoded days 2019-11-24 01:26:02 -05:00
johnny@pittpc.com 4492af71d8 Fixed Cron, added alert when cron is run, added new vendors to dashboard, added some UI cleanup to clients 2019-11-19 19:25:22 -05:00
johnny@pittpc.com 42918e90ae Fix for Auto Recurring Duplicate Invoice Numbers 2019-10-06 14:56:22 -04:00