PluginProbe
FluentBoards – Project Management, Task Management, Goal Tracking, Kanban Board, and, Team Collaboration / 1.45
FluentBoards – Project Management, Task Management, Goal Tracking, Kanban Board, and, Team Collaboration v1.45
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.45, at app/Hooks/actions.php

160 lines 9.5 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_viewer_added', 'BoardHandler@boardViewerAdded', 10, 2);
60 $app->addCustomAction('board_member_removed', 'BoardHandler@boardMemberRemoved', 10, 2);
61 $app->addCustomAction('board_admin_added', 'BoardHandler@boardAdminAdded', 10, 2);
62 $app->addCustomAction('board_admin_removed', 'BoardHandler@boardAdminRemoved', 10, 2);
63 $app->addCustomAction('associate_user_add_change_remove_activity', 'ActivityHandler@associateUserAddChangeRemoveActivity', 10, 3);
64 $app->addCustomAction('task_assignee_leave', 'ActivityHandler@taskAssigneeLeave', 10, 1);
65 $app->addCustomAction('task_assignee_join', 'ActivityHandler@taskAssigneeJoin', 10, 1);
66 $app->addCustomAction('task_label', 'ActivityHandler@taskLabelActivity', 10, 3);
67 $app->addCustomAction('label_manage_for_task_activity', 'ActivityHandler@labelManageForTaskActivity', 10, 2);
68 $app->addCustomAction('board_label_created', 'BoardHandler@boardLabelCreatedActivity', 10, 1);
69 $app->addCustomAction('board_label_updated', 'BoardHandler@boardLabelUpdatedActivity', 10, 1);
70 $app->addCustomAction('board_label_deleted', 'BoardHandler@boardLabelDeletedActivity', 10, 1);
71 $app->addCustomAction('board_stages_reordered', 'BoardHandler@boardStagesReOrdered', 10, 2);
72 $app->addCustomAction('default_assignees_updated', 'BoardHandler@defaultAssigneesUpdated', 10, 2);
73
74 $app->addCustomAction('comment_created', 'NotificationHandler@addCommentNotification', 10, 1);
75 $app->addCustomAction('mention_comment_notification', 'NotificationHandler@mentionInCommentNotification', 10, 2);
76 $app->addCustomAction('subtask_added', 'NotificationHandler@addSubtaskNotification', 10, 2);
77 $app->addCustomAction('task_due_date_changed', 'NotificationHandler@changeDueDateNotification', 10, 2);
78 $app->addCustomAction('task_start_date_changed', 'NotificationHandler@changeStartDateNotification', 10, 2);
79 $app->addCustomAction('task_stage_updated', 'NotificationHandler@changeStageNotification', 10, 2);
80 $app->addCustomAction('task_priority_changed', 'NotificationHandler@changePriorityNotification', 10, 2);
81 $app->addCustomAction('task_archived', 'NotificationHandler@taskArchiveNotification', 10, 1);
82 $app->addCustomAction('task_content_updated', 'NotificationHandler@changeTitleOrDescriptionNotification', 10, 3);
83 //$app->addCustomAction('description_changed_notification', 'NotificationHandler@changeDescriptionNotification', 10, 1);
84 $app->addCustomAction('board_changed_notification', 'NotificationHandler@changeBoardNotification', 10, 2);
85 $app->addCustomAction('task_assignee_added', 'NotificationHandler@assigneeAddedNotification', 10, 2);
86 $app->addCustomAction('task_assignee_removed', 'NotificationHandler@assigneeRemovedNotification', 10, 2);
87
88 $app->addCustomAction('one_time_schedule_send_email_for_comment', 'ScheduleHandler@sendEmailForComment', 10, 3);
89 $app->addCustomAction('one_time_schedule_send_email_for_mention', 'ScheduleHandler@sendEmailForMention', 10, 3);
90 $app->addCustomAction('one_time_schedule_send_email_for_add_assignee', 'ScheduleHandler@sendEmailForAddAssignee', 10, 3);
91 $app->addCustomAction('one_time_schedule_send_email_for_remove_assignee', 'ScheduleHandler@sendEmailForRemoveAssignee', 10, 3);
92 $app->addCustomAction('one_time_schedule_send_email_for_stage_change', 'ScheduleHandler@sendEmailForChangeStage', 10, 3);
93
94 //Todo:: update handler
95 $app->addCustomAction('one_time_schedule_send_email_for_due_date_update', 'ScheduleHandler@sendEmailForDueDateUpdate', 10, 3);
96 $app->addCustomAction('one_time_schedule_send_email_for_task_archived', 'ScheduleHandler@sendEmailForArchivedTask', 10, 3);
97 $app->addCustomAction('one_time_schedule_send_email_for_removed_from_task', 'ScheduleHandler@sendEmailForChangeStage', 10, 3);
98
99 $app->addCustomAction('task_attachment_added', 'ActivityHandler@taskAttachmentAdded', 10, 1);
100 $app->addCustomAction('task_attachment_deleted', 'ActivityHandler@taskAttachmentDeleted', 10, 1);
101 $app->addCustomAction('task_attachment_deleted', 'TaskHandler@taskAttachmentDeleted', 10, 1);
102 $app->addAction('deleted_user', 'BoardHandler@deleteUserRelatedData', 10, 3);
103 $app->addAction('delete_attachment', 'FileHandler@mediaFileDeleted', 10, 1);
104
105 $app->addCustomAction('send_invitation', 'ScheduleHandler@sendInvitationViaEmail', 10, 3);
106 $app->addCustomAction('task_created', 'TaskHandler@onTaskCreated', 10, 1);
107 $app->addCustomAction('comment_created', 'TaskHandler@onCommentCreated', 10, 1);
108 $app->addCustomAction('assign_another_user', 'TaskHandler@onAssignAnotherUser', 10, 2);
109
110
111 if (defined('WP_CLI') && WP_CLI) {
112 \WP_CLI::add_command('fluent_boards', '\FluentBoards\App\Hooks\Cli\Commands');
113 }
114
115
116 add_action('init', function () {
117 if (!isset($_REQUEST['fbs'])) {
118 return;
119 }
120 });
121
122
123 /*
124 * IMPORTANT
125 * External Pages Handler
126 * Each Request must have fbs=1 as a query parameter, then the plugin will handle the request.
127 */
128 if(isset($_GET['fbs']) && $_GET['fbs'] == 1) {
129
130 // For viewing attachment
131 if(isset($_GET['route']) && ($_GET['route'] == 'task')) {
132 add_action('init', function() {
133 (new \FluentBoardsPro\App\Hooks\Handlers\ExternalPages())->handleTaskWebhook();
134 });
135 }
136
137 if(isset($_GET['fbs_comment_image'])) {
138 if(isset($_GET['fbs_type']) == 'public_url') {
139 add_action('init', function() {
140 (new \FluentBoards\App\Hooks\Handlers\ExternalPages())->view_uploaded_comment_image();
141 });
142 } else {
143 add_action('init', function() {
144 (new \FluentBoards\App\Hooks\Handlers\ExternalPages())->view_comment_image();
145 });
146 }
147
148 }
149
150 }
151
152 if(isset($_GET['redirect']) && $_GET['redirect'] == 'to_task') {
153 if (isset($_GET['taskId'])) {
154 add_action('init', function() {
155 (new \FluentBoards\App\Hooks\Handlers\ExternalPages())->redirectToPage();
156 });
157 }
158 }
159
160