PluginProbe
FluentBoards – Project Management, Task Management, Goal Tracking, Kanban Board, and, Team Collaboration / 1.32
FluentBoards – Project Management, Task Management, Goal Tracking, Kanban Board, and, Team Collaboration v1.32
2.0.15 2.0.12 2.0.10 2.0.4 2.0.1 2.0.0 1.95.3 1.95.2 1.95 1.91.6 trunk 1.11 1.12 1.13 1.20 1.21 1.22 1.23 1.30 1.31 1.32 1.35 1.40 1.41 1.45 All 41 releases
fluent-boards / app / Hooks / actions.php

actions.php in FluentBoards – Project Management, Task Management, Goal Tracking, Kanban Board, and, Team Collaboration 1.32, at app/Hooks/actions.php

158 lines 9.3 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 //if accessed directly exit
3 if (!defined('ABSPATH')) exit;
4
5 use FluentBoards\App\Services\Helper;
6
7 /**
8 * All registered action's handlers should be in app\Hooks\Handlers,
9 * addAction is similar to add_action and addCustomAction is just a
10 * wrapper over add_action which will add a prefix to the hook name
11 * using the plugin slug to make it unique in all WordPress plugins,
12 * ex: $app->addCustomAction('foo', ['FooHandler', 'handleFoo']) is
13 * equivalent to add_action('slug-foo', ['FooHandler', 'handleFoo']).
14 */
15
16 /**
17 * @var $app FluentBoards\Framework\Foundation\Application
18 */
19
20 (new \FluentBoards\App\Hooks\Handlers\AdminMenuHandler())->register();
21
22 //$app->addCustomAction('task_prop_changed', 'ActivityHandler@logActivity', 10, 3);
23 $app->addCustomAction('task_board_changed', 'ActivityHandler@logMoveTaskToAnotherBoardActivity', 10, 2); //will call from service after board change code merged
24 $app->addCustomAction('task_due_date_changed', 'ActivityHandler@logDueDateActivity', 10, 2);
25 $app->addCustomAction('task_start_date_changed', 'ActivityHandler@logStartDateActivity', 10, 2);
26
27 $app->addCustomAction('task_priority_changed', 'ActivityHandler@logPriorityChangeActivity', 10, 2);
28 $app->addCustomAction('comment_created', 'ActivityHandler@logCommentCreateActivity', 10, 1);
29 $app->addCustomAction('comment_updated', 'ActivityHandler@logCommentUpdateActivity', 10, 2);
30 $app->addCustomAction('comment_deleted', 'ActivityHandler@logCommentDeleteActivity', 10, 1);
31 $app->addCustomAction('subtask_added', 'ActivityHandler@logSubtaskAddedActivity', 10, 2);
32 $app->addCustomAction('subtask_deleted_activity', 'ActivityHandler@logSubtaskDeletedActivity', 10, 2);
33 $app->addCustomAction('task_completed_activity', 'ActivityHandler@logTaskCompletedOrReopenActivity', 10, 2);
34 $app->addCustomAction('task_stage_updated', 'ActivityHandler@logTaskStageUpdatedActivity', 10, 2);
35 $app->addCustomAction('task_assignee_added', 'ActivityHandler@logAssigneeAddedActivity', 10, 2);
36 $app->addCustomAction('task_assignee_removed', 'ActivityHandler@logAssigneeRemovedActivity', 10, 2);
37 $app->addCustomAction('task_added_from_fluent_form', 'ActivityHandler@taskAddedFromFluentForms', 10, 1);
38 $app->addCustomAction('task_created', 'ActivityHandler@logTaskCreationActivity', 10, 1);
39 $app->addCustomAction('task_content_updated', 'ActivityHandler@logTaskContentUpdatedActivity', 10, 3);
40 $app->addCustomAction('task_deleted', 'TaskHandler@taskDeleted', 10, 1);
41
42 $app->addCustomAction('board_created', 'BoardHandler@boardCreated', 10, 1);
43 $app->addCustomAction('before_board_deleted', 'BoardHandler@beforeBoardDeleted', 10, 2);
44 $app->addCustomAction('board_deleted', 'BoardHandler@boardDeleted', 10, 1);
45 $app->addCustomAction('board_updated', 'BoardHandler@boardUpdated', 10, 2);
46 $app->addCustomAction('stage_updated', 'BoardHandler@boardStageUpdated', 10, 3);
47 $app->addCustomAction('board_stage_moved', 'BoardHandler@boardStageMoved', 10, 2);
48 $app->addCustomAction('board_stage_dragged', 'BoardHandler@boardStageDragged', 10, 1);
49 $app->addCustomAction('board_stage_added', 'BoardHandler@boardStageAdded', 10, 2);
50 $app->addCustomAction('stage_deleted', 'BoardHandler@boardStageDeleted', 10, 2);
51 $app->addCustomAction('stage_archived', 'BoardHandler@boardStageArchived', 10, 2);
52 $app->addCustomAction('board_stage_restored', 'BoardHandler@boardArchivedStageRestore', 10, 2);
53 $app->addCustomAction('task_created', 'BoardHandler@taskCreatedOnBoard', 10, 1);
54 $app->addCustomAction('before_task_deleted', 'BoardHandler@beforeTaskDeleted', 10, 2);
55 $app->addCustomAction('task_deleted', 'BoardHandler@taskdeleted', 10, 1);
56 $app->addCustomAction('task_moved_from_board', 'BoardHandler@taskMovedFromBoard', 10, 3);
57 $app->addCustomAction('task_archived', 'BoardHandler@taskarchivedOnBoard', 10, 1);
58 $app->addCustomAction('board_member_added', 'BoardHandler@boardMemberAdded', 10, 2);
59 $app->addCustomAction('board_member_removed', 'BoardHandler@boardMemberRemoved', 10, 2);
60 $app->addCustomAction('board_admin_added', 'BoardHandler@boardAdminAdded', 10, 2);
61 $app->addCustomAction('board_admin_removed', 'BoardHandler@boardAdminRemoved', 10, 2);
62 $app->addCustomAction('associate_user_add_change_remove_activity', 'ActivityHandler@associateUserAddChangeRemoveActivity', 10, 3);
63 $app->addCustomAction('task_assignee_leave', 'ActivityHandler@taskAssigneeLeave', 10, 1);
64 $app->addCustomAction('task_assignee_join', 'ActivityHandler@taskAssigneeJoin', 10, 1);
65 $app->addCustomAction('task_label', 'ActivityHandler@taskLabelActivity', 10, 3);
66 $app->addCustomAction('label_manage_for_task_activity', 'ActivityHandler@labelManageForTaskActivity', 10, 2);
67 $app->addCustomAction('board_label_created', 'BoardHandler@boardLabelCreatedActivity', 10, 1);
68 $app->addCustomAction('board_label_updated', 'BoardHandler@boardLabelUpdatedActivity', 10, 1);
69 $app->addCustomAction('board_label_deleted', 'BoardHandler@boardLabelDeletedActivity', 10, 1);
70 $app->addCustomAction('board_stages_reordered', 'BoardHandler@boardStagesReOrdered', 10, 2);
71
72
73 $app->addCustomAction('comment_created', 'NotificationHandler@addCommentNotification', 10, 1);
74 $app->addCustomAction('mention_comment_notification', 'NotificationHandler@mentionInCommentNotification', 10, 2);
75 $app->addCustomAction('subtask_added', 'NotificationHandler@addSubtaskNotification', 10, 2);
76 $app->addCustomAction('task_due_date_changed', 'NotificationHandler@changeDueDateNotification', 10, 2);
77 $app->addCustomAction('task_start_date_changed', 'NotificationHandler@changeStartDateNotification', 10, 2);
78 $app->addCustomAction('task_stage_updated', 'NotificationHandler@changeStageNotification', 10, 2);
79 $app->addCustomAction('task_priority_changed', 'NotificationHandler@changePriorityNotification', 10, 2);
80 $app->addCustomAction('task_archived', 'NotificationHandler@taskArchiveNotification', 10, 1);
81 $app->addCustomAction('task_content_updated', 'NotificationHandler@changeTitleOrDescriptionNotification', 10, 3);
82 //$app->addCustomAction('description_changed_notification', 'NotificationHandler@changeDescriptionNotification', 10, 1);
83 $app->addCustomAction('board_changed_notification', 'NotificationHandler@changeBoardNotification', 10, 2);
84 $app->addCustomAction('task_assignee_added', 'NotificationHandler@assigneeAddedNotification', 10, 2);
85 $app->addCustomAction('task_assignee_removed', 'NotificationHandler@assigneeRemovedNotification', 10, 2);
86
87 $app->addCustomAction('one_time_schedule_send_email_for_comment', 'ScheduleHandler@sendEmailForComment', 10, 3);
88 $app->addCustomAction('one_time_schedule_send_email_for_mention', 'ScheduleHandler@sendEmailForMention', 10, 3);
89 $app->addCustomAction('one_time_schedule_send_email_for_add_assignee', 'ScheduleHandler@sendEmailForAddAssignee', 10, 3);
90 $app->addCustomAction('one_time_schedule_send_email_for_remove_assignee', 'ScheduleHandler@sendEmailForRemoveAssignee', 10, 3);
91 $app->addCustomAction('one_time_schedule_send_email_for_stage_change', 'ScheduleHandler@sendEmailForChangeStage', 10, 3);
92
93 //Todo:: update handler
94 $app->addCustomAction('one_time_schedule_send_email_for_due_date_update', 'ScheduleHandler@sendEmailForDueDateUpdate', 10, 3);
95 $app->addCustomAction('one_time_schedule_send_email_for_task_archived', 'ScheduleHandler@sendEmailForArchivedTask', 10, 3);
96 $app->addCustomAction('one_time_schedule_send_email_for_removed_from_task', 'ScheduleHandler@sendEmailForChangeStage', 10, 3);
97
98 $app->addCustomAction('task_attachment_added', 'ActivityHandler@taskAttachmentAdded', 10, 1);
99 $app->addCustomAction('task_attachment_deleted', 'ActivityHandler@taskAttachmentDeleted', 10, 1);
100 $app->addCustomAction('task_attachment_deleted', 'TaskHandler@taskAttachmentDeleted', 10, 1);
101 $app->addAction('deleted_user', 'BoardHandler@deleteUserRelatedData', 10, 3);
102 $app->addAction('delete_attachment', 'FileHandler@mediaFileDeleted', 10, 1);
103
104 $app->addCustomAction('send_invitation', 'ScheduleHandler@sendInvitationViaEmail', 10, 3);
105 $app->addCustomAction('task_created', 'TaskHandler@onTaskCreated', 10, 1);
106 $app->addCustomAction('comment_created', 'TaskHandler@onCommentCreated', 10, 1);
107 $app->addCustomAction('assign_another_user', 'TaskHandler@onAssignAnotherUser', 10, 2);
108
109
110 if (defined('WP_CLI') && WP_CLI) {
111 \WP_CLI::add_command('fluent_boards', '\FluentBoards\App\Hooks\Cli\Commands');
112 }
113
114
115 add_action('init', function () {
116 if (!isset($_REQUEST['fbs'])) {
117 return;
118 }
119 });
120
121
122 /*
123 * IMPORTANT
124 * External Pages Handler
125 * Each Request must have fbs=1 as a query parameter, then the plugin will handle the request.
126 */
127 if(isset($_GET['fbs']) && $_GET['fbs'] == 1) {
128
129 // For viewing attachment
130 if(isset($_GET['route']) && ($_GET['route'] == 'task')) {
131 add_action('init', function() {
132 (new \FluentBoardsPro\App\Hooks\Handlers\ExternalPages())->handleTaskWebhook();
133 });
134 }
135
136 if(isset($_GET['fbs_comment_image'])) {
137 if(isset($_GET['fbs_type']) == 'public_url') {
138 add_action('init', function() {
139 (new \FluentBoards\App\Hooks\Handlers\ExternalPages())->view_uploaded_comment_image();
140 });
141 } else {
142 add_action('init', function() {
143 (new \FluentBoards\App\Hooks\Handlers\ExternalPages())->view_comment_image();
144 });
145 }
146
147 }
148
149 }
150
151 if(isset($_GET['redirect']) && $_GET['redirect'] == 'to_task') {
152 if (isset($_GET['taskId'])) {
153 add_action('init', function() {
154 (new \FluentBoards\App\Hooks\Handlers\ExternalPages())->redirectToPage();
155 });
156 }
157 }
158