PluginProbe
Taskbuilder – Project Management & Task Management Tool With Kanban Board / 6.0.6
Taskbuilder – Project Management & Task Management Tool With Kanban Board v6.0.6
6.0.6 6.0.5 6.0.2 6.0.3 6.0.4 6.0.1 6.0.0 5.0.8 5.0.9 4.0.9 5.0.0 5.0.1 5.0.2 5.0.3 5.0.4 5.0.5 5.0.6 5.0.7 trunk 1.0.0 1.0.1 1.0.2 1.0.3 1.0.4 1.0.5 All 58 releases
taskbuilder / includes / class-wppm-admin.php

class-wppm-admin.php in Taskbuilder – Project Management & Task Management Tool With Kanban Board 6.0.6, at includes/class-wppm-admin.php

1,299 lines 53.7 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 if ( ! defined( 'ABSPATH' ) ) {
3 exit; // Exit if accessed directly
4 }
5
6 if ( ! class_exists( 'WPPM_Admin' ) ) :
7
8 final class WPPM_Admin {
9
10 // constructor
11 public function __construct() {
12 add_action( 'admin_enqueue_scripts', array( $this, 'loadScripts') );
13 add_action( 'admin_menu', array($this,'wppm_register_dashboard_menu') );
14 add_action( 'admin_notices', array($this,'wppm_update_admin_notice'));
15 add_action('wp_footer', array($this,'wppm_add_notification_container'));
16 add_action('admin_footer', array($this,'wppm_add_notification_container'));
17 add_action( 'wp_ajax_wppm_add_new_project',array($this,'wppm_add_new_project'));
18 add_action( 'wp_ajax_wppm_open_project',array($this,'wppm_open_project'));
19 add_action( 'wp_ajax_nopriv_wppm_open_project',array($this,'wppm_open_project'));
20 add_action( 'wp_ajax_wppm_get_users',array($this,'wppm_get_users'));
21 add_action( 'wp_ajax_wppm_filter_autocomplete',array($this,'wppm_filter_autocomplete'));
22 add_action( 'wp_ajax_wppm_get_general_setings',array($this,'wppm_get_general_settings'));
23 add_action( 'wp_ajax_wppm_get_page_setings',array($this,'wppm_get_page_settings'));
24 add_action( 'wp_ajax_wppm_get_category_settings',array($this,'wppm_get_category_settings'));
25 add_action( 'wp_ajax_wppm_get_add_category',array($this,'wppm_get_add_category'));
26 add_action( 'wp_ajax_wppm_set_add_category',array($this,'wppm_set_add_category'));
27 add_action( 'wp_ajax_wppm_get_edit_category',array($this,'wppm_get_edit_category'));
28 add_action( 'wp_ajax_wppm_set_edit_category',array($this,'wppm_set_edit_category'));
29 add_action( 'wp_ajax_wppm_delete_category',array($this,'wppm_delete_category'));
30 add_action( 'wp_ajax_wppm_get_proj_status_settings',array($this,'wppm_get_proj_status_settings'));
31 add_action( 'wp_ajax_wppm_get_add_proj_status',array($this,'wppm_get_add_proj_status'));
32 add_action( 'wp_ajax_wppm_set_category_order',array($this,'wppm_set_category_order'));
33 add_action( 'wp_ajax_wppm_set_add_status',array($this,'wppm_set_add_status'));
34 add_action( 'wp_ajax_wppm_get_edit_proj_status',array($this,'wppm_get_edit_proj_status'));
35 add_action( 'wp_ajax_wppm_set_edit_status',array($this,'wppm_set_edit_status'));
36 add_action( 'wp_ajax_wppm_delete_status',array($this,'wppm_delete_status'));
37 add_action( 'wp_ajax_wppm_set_status_order',array($this,'wppm_set_status_order'));
38 add_action( 'wp_ajax_wppm_create_project',array($this,'wppm_create_project'));
39 add_action('wp_ajax_wppm_get_project_list',array($this,'wppm_get_project_list'),10,2);
40 add_action('wp_ajax_wppm_view_project_tasks',array($this,'wppm_view_project_tasks'));
41 add_action('wp_ajax_wppm_add_new_task',array($this,'wppm_add_new_task'));
42 add_action('wp_ajax_wppm_get_task_list',array($this,'wppm_get_task_list'),100,3);
43 add_action('wp_ajax_wppm_get_priority_settings',array($this,'wppm_get_priority_settings'));
44 add_action('wp_ajax_wppm_add_task_priority',array($this,'wppm_add_task_priority'));
45 add_action('wp_ajax_wppm_set_add_priority',array($this,'wppm_set_add_priority'));
46 add_action('wp_ajax_wppm_get_edit_priority',array($this,'wppm_get_edit_priority'));
47 add_action('wp_ajax_wppm_set_edit_priority',array($this,'wppm_set_edit_priority'));
48 add_action('wp_ajax_wppm_delete_task_priority',array($this,'wppm_delete_task_priority'));
49 add_action('wp_ajax_wppm_set_priority_order',array($this,'wppm_set_priority_order'));
50 add_action('wp_ajax_wppm_get_task_status_settings',array($this,'wppm_get_task_status_settings'));
51 add_action('wp_ajax_wppm_get_add_task_status',array($this,'wppm_get_add_task_status'));
52 add_action('wp_ajax_wppm_set_add_task_status',array($this,'wppm_set_add_task_status'));
53 add_action('wp_ajax_wppm_get_edit_task_status',array($this,'wppm_get_edit_task_status'));
54 add_action('wp_ajax_wppm_set_edit_task_status',array($this,'wppm_set_edit_task_status'));
55 add_action('wp_ajax_wppm_delete_task_status',array($this,'wppm_delete_task_status'));
56 add_action('wp_ajax_wppm_set_task_status_order',array($this,'wppm_set_task_status_order'));
57 add_action('wp_ajax_wppm_create_task',array($this,'wppm_create_task'));
58 add_action('wp_ajax_wppm_get_task_list_card_view',array($this,'wppm_get_task_list_card_view'),100,4);
59 add_action('wp_ajax_wppm_drag_and_drop_card',array($this,'wppm_drag_and_drop_card'));
60 add_action('wp_ajax_wppm_open_task',array($this,'wppm_open_task'));
61 add_action( 'wp_ajax_nopriv_wppm_open_task',array($this,'wppm_open_task'));
62 add_action('wp_ajax_wppm_add_new_checklist',array($this,'wppm_add_new_checklist'));
63 add_action('wp_ajax_wppm_add_new_checklist_item',array($this,'wppm_add_new_checklist_item'));
64 add_action('wp_ajax_wppm_delete_checklist',array($this,'wppm_delete_checklist'),100,4);
65 add_action('wp_ajax_wppm_set_checklist_progress',array($this,'wppm_set_checklist_progress'));
66 add_action('wp_ajax_wppm_set_project_users',array($this,'wppm_set_project_users'));
67 add_action('wp_ajax_wppm_get_task_users',array($this,'wppm_get_task_users'));
68 add_action('wp_ajax_wppm_set_task_users',array($this,'wppm_set_task_users'));
69 add_action('wp_ajax_wppm_submit_task_comment',array($this,'wppm_submit_task_comment'),100,2);
70 add_action('wp_ajax_wppm_upload_file',array($this,'wppm_upload_file'));
71 add_action('wp_ajax_wppm_upload_proj_attach_file',array($this,'wppm_upload_file'));
72 add_action('wp_ajax_wppm_get_en_general_setting',array($this,'wppm_get_en_general_setting'));
73 add_action('wp_ajax_wppm_set_en_general_settings',array($this,'wppm_set_en_general_settings'));
74 add_action('wp_ajax_wppm_get_en_task_notifications',array($this,'wppm_get_en_task_notifications'));
75 add_action('wp_ajax_wppm_edit_task_status',array($this,'wppm_edit_task_status'));
76 add_action('wp_ajax_wppm_set_change_task_status',array($this,'wppm_set_change_task_status'));
77 add_action('wp_ajax_wppm_edit_task_creator',array($this,'wppm_edit_task_creator'));
78 add_action('wp_ajax_wppm_set_change_raised_by',array($this,'wppm_set_change_raised_by'));
79 add_action('wp_ajax_wppm_edit_task_details',array($this,'wppm_edit_task_details'));
80 add_action('wp_ajax_wppm_set_change_task_details',array($this,'wppm_set_change_task_details'));
81 add_action('wp_ajax_wppm_edit_task_thread',array($this,'wppm_edit_task_thread'));
82 add_action('wp_ajax_wppm_edit_proj_thread',array($this,'wppm_edit_proj_thread'));
83 add_action('wp_ajax_wppm_set_edit_task_thread',array($this,'wppm_set_edit_task_thread'));
84 add_action('wp_ajax_wppm_set_edit_proj_thread',array($this,'wppm_set_edit_proj_thread'));
85 add_action('wp_ajax_wppm_delete_task_thread',array($this,'wppm_delete_task_thread'));
86 add_action('wp_ajax_wppm_delete_proj_thread',array($this,'wppm_delete_proj_thread'));
87 add_action('wp_ajax_wppm_set_delete_thread',array($this,'wppm_set_delete_thread'));
88 add_action('wp_ajax_wppm_set_delete_proj_thread',array($this,'wppm_set_delete_proj_thread'));
89 add_action('wp_ajax_wppm_edit_project_details',array($this,'wppm_edit_project_details'));
90 add_action('wp_ajax_wppm_set_change_project_details',array($this,'wppm_set_change_project_details'));
91 add_action('wp_ajax_wppm_edit_project_status',array($this,'wppm_edit_project_status'));
92 add_action('wp_ajax_wppm_set_change_project_status',array($this,'wppm_set_change_project_status'),10,3);
93 add_action('wp_ajax_wppm_edit_project_creator',array($this,'wppm_edit_project_creator'));
94 add_action('wp_ajax_wppm_set_change_project_raised_by',array($this,'wppm_set_change_project_raised_by'));
95 add_action('wp_ajax_wppm_get_delete_project',array($this,'wppm_get_delete_project'));
96 add_action('wp_ajax_wppm_set_delete_project',array($this,'wppm_set_delete_project'));
97 add_action('wp_ajax_wppm_get_delete_task',array($this,'wppm_get_delete_task'),100,3);
98 add_action('wp_ajax_wppm_set_delete_task',array($this,'wppm_set_delete_task'));
99 add_action('wp_ajax_wppm_get_edit_email_notification',array($this,'wppm_get_edit_email_notification'));
100 add_action('wp_ajax_wppm_get_templates',array($this,'wppm_get_templates'));
101 add_action('wp_ajax_wppm_set_edit_email_notification',array($this,'wppm_set_edit_email_notification'));
102 add_action('wppm_set_change_project_status',array($this,'wppm_en_change_project_status'),100,3);
103 add_action('wppm_set_project_users',array($this,'wppm_en_set_project_users'),100,1);
104 add_action('wppm_after_set_change_task_status',array($this,'wppm_after_set_change_task_status'),100,3);
105 add_action('wppm_set_task_users',array($this,'wppm_en_set_task_users'),100,1);
106 add_action('wppm_after_task_created',array($this,'wppm_en_task_created'),100,1);
107 add_action('wppm_after_project_created',array($this,'wppm_set_project_meta'));
108 add_action('wppm_after_project_created',array($this,'wppm_en_project_created'),100,1);
109 add_action('wppm_after_submit_task_comment',array($this,'wppm_en_submit_task_comment'),10,2);
110 add_action('wppm_after_submit_proj_comment',array($this,'wppm_en_submit_proj_comment'),10,2);
111 add_action('wp_ajax_wppm_set_general_settings',array($this,'wppm_set_general_settings'));
112 add_action('wp_ajax_wppm_get_project_tasks',array($this,'wppm_get_project_tasks'),100,2);
113 add_action('wp_ajax_wppm_remove_thread_attachment',array($this,'wppm_remove_thread_attachment'),10,5);
114 add_action('wp_ajax_wppm_remove_proj_thread_attachment',array($this,'wppm_remove_proj_thread_attachment'),10,4);
115 add_action('wp_ajax_wppm_remove_checklist_item',array($this,'wppm_remove_checklist_item'),10,4);
116 add_action('wp_ajax_wppm_clone_task',array($this,'wppm_clone_task'),10,2);
117 add_action('wp_ajax_wppm_set_clone_task',array($this,'wppm_set_clone_task'),10,4);
118 add_action('wp_ajax_wppm_get_advanced_settings',array($this,'wppm_get_advanced_settings'));
119 add_action('wp_ajax_wppm_set_advanced_settings',array($this,'wppm_set_advanced_settings'));
120 add_action('wp_ajax_wppm_get_appearance_settings',array($this,'wppm_get_appearance_settings'));
121 add_action('wp_ajax_wppm_get_project_visibility',array($this,'wppm_get_project_visibility'),10,1);
122 add_action('wp_ajax_wppm_change_project_visibility',array($this,'wppm_change_project_visibility'),10,2);
123 add_action('wp_ajax_wppm_submit_proj_comment',array($this,'wppm_submit_proj_comment'));
124 add_action('wp_ajax_wppm_set_change_task_start_date',array($this,'wppm_set_change_task_start_date'));
125 add_action('wp_ajax_wppm_set_change_task_end_date',array($this,'wppm_set_change_task_end_date'));
126 add_action('wp_ajax_wppm_set_change_proj_start_date',array($this,'wppm_set_change_proj_start_date'));
127 add_action('wp_ajax_wppm_set_change_proj_end_date',array($this,'wppm_set_change_proj_end_date'));
128 add_action('wp_ajax_wppm_get_ap_proj_list',array($this,'wppm_get_ap_proj_list'));
129 add_action('wp_ajax_wppm_set_ap_proj_list',array($this,'wppm_set_ap_proj_list'));
130 add_action('wp_ajax_wppm_get_ap_task_list',array($this,'wppm_get_ap_task_list'));
131 add_action('wp_ajax_wppm_set_ap_task_list',array($this,'wppm_set_ap_task_list'));
132 add_action('wp_ajax_wppm_reset_ap_proj_list',array($this,'wppm_reset_ap_proj_list'));
133 add_action('wp_ajax_wppm_reset_ap_task_list',array($this,'wppm_reset_ap_task_list'));
134 add_action('wp_ajax_wppm_get_ap_individual_proj',array($this,'wppm_get_ap_individual_proj'));
135 add_action('wp_ajax_wppm_set_ap_individual_proj',array($this,'wppm_set_ap_individual_proj'));
136 add_action('wp_ajax_wppm_reset_ap_individual_proj',array($this,'wppm_reset_ap_individual_proj'));
137 add_action('wp_ajax_wppm_get_ap_individual_task',array($this,'wppm_get_ap_individual_task'));
138 add_action('wp_ajax_wppm_set_ap_individual_task',array($this,'wppm_set_ap_individual_task'));
139 add_action('wp_ajax_wppm_reset_ap_individual_task',array($this,'wppm_reset_ap_individual_task'));
140 add_action('wp_ajax_wppm_get_ap_modal_popup',array($this,'wppm_get_ap_modal_popup'));
141 add_action('wp_ajax_wppm_set_ap_modal_popup',array($this,'wppm_set_ap_modal_popup'));
142 add_action('wp_ajax_wppm_reset_ap_modal_popup',array($this,'wppm_reset_ap_modal_popup'));
143 add_action('wp_ajax_wppm_get_ap_grid_view',array($this,'wppm_get_ap_grid_view'));
144 add_action('wp_ajax_wppm_set_ap_grid_view',array($this,'wppm_set_ap_grid_view'));
145 add_action('wp_ajax_wppm_reset_ap_grid_view',array($this,'wppm_reset_ap_grid_view'));
146 add_action('wp_ajax_wppm_get_ap_settings',array($this,'wppm_get_ap_settings'));
147 add_action('wp_ajax_wppm_set_ap_settings',array($this,'wppm_set_ap_settings'));
148 add_action('wp_ajax_wppm_reset_ap_settings',array($this,'wppm_reset_ap_settings'));
149 add_action('wp_ajax_wppm_get_bulk_change_proj_status',array($this,'wppm_get_bulk_change_proj_status'));
150 add_action('wp_ajax_wppm_set_bulk_change_project_status',array($this,'wppm_set_bulk_change_project_status'));
151 add_action('wp_ajax_wppm_get_bulk_change_proj_cat',array($this,'wppm_get_bulk_change_proj_cat'));
152 add_action('wp_ajax_wppm_set_bulk_change_project_category',array($this,'wppm_set_bulk_change_project_category'));
153 add_action('wp_ajax_wppm_get_bulk_assign_users',array($this,'wppm_get_bulk_assign_users'));
154 add_action('wp_ajax_wppm_set_bulk_project_users',array($this,'wppm_set_bulk_project_users'));
155 add_action('wp_ajax_wppm_get_bulk_delete_project',array($this,'wppm_get_bulk_delete_project'));
156 add_action('wp_ajax_wppm_set_delete_bulk_projects',array($this,'wppm_set_delete_bulk_projects'));
157 add_action('wp_ajax_wppm_get_bulk_change_task_status',array($this,'wppm_get_bulk_change_task_status'));
158 add_action('wp_ajax_wppm_set_bulk_change_task_status',array($this,'wppm_set_bulk_change_task_status'));
159 add_action('wp_ajax_wppm_get_bulk_change_task_priority',array($this,'wppm_get_bulk_change_task_priority'));
160 add_action('wp_ajax_wppm_set_bulk_change_task_priority',array($this,'wppm_set_bulk_change_task_priority'));
161 add_action('wp_ajax_wppm_get_bulk_delete_task',array($this,'wppm_get_bulk_delete_task'));
162 add_action('wp_ajax_wppm_set_delete_bulk_tasks',array($this,'wppm_set_delete_bulk_tasks'));
163 add_action('wp_ajax_wppm_get_coworker_permission_settings',array($this,'wppm_get_coworker_permission_settings'));
164 add_action('wp_ajax_wppm_set_coworkers_permission_settings',array($this,'wppm_set_coworkers_permission_settings'));
165 add_action('wp_ajax_wppm_get_rich_text_editor_settings',array($this,'wppm_get_rich_text_editor_settings'));
166 add_action('wp_ajax_wppm_set_rich_text_editor_settings',array($this,'wppm_set_rich_text_editor_settings'));
167 // Search WP pages.
168 add_action( 'wp_ajax_wppm_search_wp_pages', array($this, 'wppm_search_wp_pages'));
169 add_action( 'wp_ajax_wppm_set_page_settings',array($this,'wppm_set_page_settings'));
170 add_action( 'wp_ajax_wppm_get_task_pdf', array($this, 'wppm_get_task_pdf'));
171 add_action( 'wp_ajax_wppm_download_pdf', array($this, 'wppm_download_pdf'),100,2);
172 add_action('wp_ajax_wppm_get_print_task_settings',array($this,'wppm_get_print_task_settings'));
173 add_action('wp_ajax_wppm_set_print_task_settings',array($this,'wppm_set_print_task_settings'));
174 add_action('wp_ajax_wppm_update_checklist_order',array($this,'wppm_update_checklist_order'));
175 add_action('wp_ajax_wppm_edit_checklist_item',array($this,'wppm_edit_checklist_item'),10,5);
176 add_action('wp_ajax_wppm_set_checklist_item_name',array($this,'wppm_set_checklist_item_name'),10,3);
177 add_action('wp_ajax_wppm_archive_task',array($this,'wppm_archive_task'));
178 add_action('wp_ajax_wppm_get_project_tasks_kanban_view',array($this,'wppm_get_project_tasks_kanban_view'));
179 add_action('wp_ajax_wppm_get_notifications',array($this,'wppm_get_notifications_callback'));
180 add_action('wp_ajax_wppm_mark_notification_read',array($this,'wppm_mark_notification_as_read'));
181 add_action('wp_ajax_wppm_archive_project',array($this,'wppm_archive_project'));
182 add_action('wp_ajax_wppm_archieve_project_list',array($this,'wppm_archieve_project_list'),100,1);
183 add_action('wp_ajax_wppm_add_new_subtask',array($this,'wppm_add_new_subtask'));
184 add_action('wp_ajax_wppm_remove_subtask',array($this,'wppm_remove_subtask'));
185 add_action('wp_ajax_wppm_convert_subtask_to_task',array($this,'wppm_convert_subtask_to_task'));
186 }
187
188 // Load admin scripts
189 public function loadScripts(){
190 $loading_html = '<div class="wppm_loading_icon"><img src="'.WPPM_PLUGIN_URL.'asset/images/ajax-loading.gif"></div>';
191 wp_enqueue_script(
192 'wppm-notification',
193 WPPM_PLUGIN_URL . 'asset/js/notification.js',
194 array( 'jquery' ),
195 WPPM_VERSION,
196 true
197 );
198
199 wp_localize_script(
200 'wppm-notification',
201 'wppm_notification',
202 array(
203 'ajax_url' => admin_url( 'admin-ajax.php' ),
204 'nonce' => wp_create_nonce( 'wppm_notification_nonce' ),
205 'loading_html' => $loading_html,
206 )
207 );
208 if(isset($_REQUEST['page']) && preg_match('/wppm-/',sanitize_text_field($_REQUEST['page'])) || (isset($_REQUEST['page']) && $_REQUEST['page'] == 'wppm_dashboard')) :
209 wp_enqueue_script('jquery');
210 wp_enqueue_script('jquery-ui-core');
211 wp_enqueue_script( 'jquery-ui-sortable' );
212 wp_enqueue_script( 'jquery-ui-datepicker' );
213 wp_enqueue_script('wp-color-picker');
214 wp_enqueue_style('wp-color-picker');
215 wp_enqueue_editor();
216 //bootstrap
217 wp_enqueue_style('wppm-bootstrap-css', WPPM_PLUGIN_URL.'asset/css/wppm_bootstrap.css?version='.WPPM_VERSION );
218 //admin scripts
219 wp_enqueue_script('wppm-admin', WPPM_PLUGIN_URL.'asset/js/admin.js?version='.WPPM_VERSION, array('jquery'), null, true);
220 //wp_enqueue_script('wppm-public', WPPM_PLUGIN_URL.'asset/js/public.js?version='.WPPM_VERSION, array('jquery'), null, true);
221 wp_enqueue_script('wppm-modal', WPPM_PLUGIN_URL.'asset/js/modal.js?version='.WPPM_VERSION, array('jquery'), null, true);
222
223 // wp_enqueue_style('wppm-public-css', WPPM_PLUGIN_URL . 'asset/css/public.css?version='.WPPM_VERSION );
224 wp_enqueue_style('wppm-admin-css', WPPM_PLUGIN_URL . 'asset/css/admin.css?version='.WPPM_VERSION );
225 wp_enqueue_style('wppm-modal-css', WPPM_PLUGIN_URL . 'asset/css/modal.css?version='.WPPM_VERSION );
226
227 // flatpickr
228 wp_enqueue_script('wppm-flatpickr-js', WPPM_PLUGIN_URL.'asset/lib/flatpickr/flatpickr.js?version='.WPPM_VERSION, ['jquery'], null, true);
229 wp_enqueue_style('wppm-flatpickr-css', WPPM_PLUGIN_URL . 'asset/lib/flatpickr/flatpickr.min.css?version='.WPPM_VERSION );
230
231 //select2
232 wp_enqueue_script('wppm-select2-js', WPPM_PLUGIN_URL.'asset/lib/select2/select2.min.js?version='.WPPM_VERSION, ['jquery'], null, true);
233 wp_enqueue_style('wppm-select2-css', WPPM_PLUGIN_URL . 'asset/lib/select2/select2.min.css?version='.WPPM_VERSION );
234
235 //gpopover
236 wp_enqueue_script('wppm-gpopover-js', WPPM_PLUGIN_URL.'asset/lib/gpopover/jquery.gpopover.js?version='.WPPM_VERSION, ['jquery'], null, true);
237 wp_enqueue_style('wppm-gpopover-css', WPPM_PLUGIN_URL . 'asset/lib/gpopover/jquery.gpopover.css?version='.WPPM_VERSION );
238
239 //dragula
240 wp_enqueue_script('wppm-dragula-js', WPPM_PLUGIN_URL.'asset/lib/dragula/dragula.min.js?version='.WPPM_VERSION, ['jquery'], null, true);
241 wp_enqueue_style('wppm-dragula-css', WPPM_PLUGIN_URL . 'asset/lib/dragula/dragula.min.css?version='.WPPM_VERSION );
242
243 //datatable
244 wp_enqueue_script('wppm-datatable-js', WPPM_PLUGIN_URL.'asset/lib/DataTables/datatables.min.js?version='.WPPM_VERSION, ['jquery'], null, true);
245 wp_enqueue_style('wppm-datatable-css', WPPM_PLUGIN_URL.'asset/lib/DataTables/datatables.min.css?version='.WPPM_VERSION );
246 // selectWoo.
247 wp_enqueue_script( 'selectWoo', WPPM_PLUGIN_URL . 'asset/js/selectWoo/selectWoo.full.min.js', array( 'jquery' ), WPPM_VERSION, true );
248 wp_enqueue_script('chartjs',WPPM_PLUGIN_URL.'asset/lib/chartjs/chart.js?version='.WPPM_VERSION, ['jquery'], null, true);
249 //localize script
250 $loading_html = '<div class="wppm_loading_icon"><img src="'.WPPM_PLUGIN_URL.'asset/images/ajax-loading.gif"></div>';
251 $wppm_rich_text_editor = get_option('wppm_rich_text_editor');
252 $wppm_tinymce_visibility_open_task = get_option('wppm_tinymce_visibility_open_task');
253 $wppm_tinymce_visibility_open_project = get_option('wppm_tinymce_visibility_open_project');
254 $localize_script_data = apply_filters( 'wppm_admin_localize_script', array(
255 'ajax_url' => esc_url(admin_url( 'admin-ajax.php' )),
256 'loading_html' => $loading_html,
257 'add_new_category' => esc_html__('Add New Category','taskbuilder'),
258 'edit_category' => esc_html__('Edit Category','taskbuilder'),
259 'please_wait' => esc_html__('Please wait ...','taskbuilder'),
260 'confirm' => esc_html__('Are you sure?','taskbuilder'),
261 'add_new_status' => esc_html__('Add New Status','taskbuilder'),
262 'edit_status' => esc_html__('Edit status','taskbuilder'),
263 'add_new_priority' => esc_html__('Add New Priority','taskbuilder'),
264 'templates' => esc_html__('Templates','taskbuilder'),
265 'page' => isset($_REQUEST['page']) ? sanitize_text_field($_REQUEST['page']) : '',
266 'rich_text_editor' => !empty($wppm_rich_text_editor) ? (int) $wppm_rich_text_editor : 0,
267 'wppm_tinymce_visibility_open_task' => !empty($wppm_tinymce_visibility_open_task) ? (int) $wppm_tinymce_visibility_open_task : 0,
268 'wppm_tinymce_visibility_open_project' => !empty($wppm_tinymce_visibility_open_project) ? (int) $wppm_tinymce_visibility_open_project : 0,
269 ));
270 wp_localize_script( 'wppm-admin', 'wppm_admin', $localize_script_data );
271 endif;
272 }
273
274 // Dashboard Menus
275 public function wppm_register_dashboard_menu(){
276 global $current_user,$wppmfunction;
277 add_menu_page(
278 esc_html__( 'Taskbuilder', 'taskbuilder'),
279 esc_html__( 'Taskbuilder','taskbuilder'),
280 'read',
281 'wppm-dashboard',
282 array($this,'wppm_dashboard'),
283 WPPM_PLUGIN_URL.'asset/images/taskbuilder_logo.svg',
284 25
285 );
286 add_submenu_page(
287 'wppm-dashboard',
288 esc_html__('Dashboard', 'taskbuilder' ),
289 esc_html__('Dashboard', 'taskbuilder' ),
290 'read',
291 'wppm-dashboard',
292 array($this,'wppm_dashboard')
293 );
294 add_submenu_page(
295 'wppm-dashboard',
296 esc_html__('Project List', 'taskbuilder' ),
297 esc_html__('Projects', 'taskbuilder' ),
298 'read',
299 'wppm-projects',
300 array($this,'wppm_projects')
301 );
302 // add_submenu_page(
303 // 'wppm-dashboard',
304 // esc_html__('Archived Projects', 'taskbuilder' ),
305 // esc_html__('Archived Projects', 'taskbuilder' ),
306 // 'read',
307 // 'wppm-archived-projects',
308 // array($this,'wppm_archived_projects')
309 // );
310
311
312 add_submenu_page(
313 'wppm-dashboard',
314 esc_html__('Tasks', 'taskbuilder' ),
315 esc_html__('Tasks', 'taskbuilder' ),
316 'read',
317 'wppm-tasks',
318 array($this,'wppm_tasks')
319 );
320
321 add_submenu_page(
322 'wppm-dashboard',
323 esc_html__('Archived Tasks', 'taskbuilder' ),
324 esc_html__('Archived Tasks', 'taskbuilder' ),
325 'read',
326 'wppm-archived-tasks',
327 array($this,'wppm_archived_tasks')
328 );
329
330 if(current_user_can('manage_options')){
331 add_submenu_page(
332 'wppm-dashboard',
333 esc_html__('Email Notifications', 'taskbuilder' ),
334 esc_html__('Email Notifications', 'taskbuilder' ),
335 'manage_options',
336 'wppm-email-notifications',
337 array($this,'wppm_email_notifications')
338 );
339 add_submenu_page(
340 'wppm-dashboard',
341 esc_html__('Settings', 'taskbuilder' ),
342 esc_html__('Settings', 'taskbuilder' ),
343 'manage_options',
344 'wppm-settings',
345 array($this,'settings')
346 );
347 add_submenu_page(
348 'wppm-dashboard',
349 esc_html__('License', 'taskbuilder' ),
350 esc_html__('License', 'taskbuilder' ),
351 'manage_options',
352 'wppm-license',
353 array($this,'licenses')
354 );
355
356 add_submenu_page(
357 'wppm-dashboard',
358 esc_html__('Pro Features', 'taskbuilder' ),
359 esc_html__('Pro Features', 'taskbuilder' ),
360 'manage_options',
361 'wppm-addons',
362 array($this,'wppm_addons')
363 );
364
365 }
366
367 if(current_user_can('wppm_admin') && !current_user_can('manage_options')){
368 add_submenu_page(
369 'wppm-dashboard',
370 esc_html__('Email Notifications', 'taskbuilder' ),
371 esc_html__('Email Notifications', 'taskbuilder' ),
372 'wppm_admin',
373 'wppm-email-notifications',
374 array($this,'wppm_email_notifications')
375 );
376 add_submenu_page(
377 'wppm-dashboard',
378 esc_html__('Settings', 'taskbuilder' ),
379 esc_html__('Settings', 'taskbuilder' ),
380 'wppm_admin',
381 'wppm-settings',
382 array($this,'settings')
383 );
384 add_submenu_page(
385 'wppm-dashboard',
386 esc_html__('License', 'taskbuilder' ),
387 esc_html__('License', 'taskbuilder' ),
388 'manage_options',
389 'wppm-license',
390 array($this,'licenses')
391 );
392
393 add_submenu_page(
394 'wppm-dashboard',
395 esc_html__('Addons', 'taskbuilder' ),
396 esc_html__('Addons', 'taskbuilder' ),
397 'wppm_admin',
398 'wppm-addons',
399 array($this,'wppm_addons')
400 );
401 }
402
403 if ( current_user_can('manage_options') || current_user_can('wppm_admin') ) {
404 foreach ( wppm_get_locked_pro_addons_by_placement('menu') as $wppm_addon_key => $wppm_addon ) {
405 add_submenu_page(
406 'wppm-dashboard',
407 $wppm_addon['label'],
408 $wppm_addon['label'] . ' <span class="wppm-pro-badge" title="' . esc_attr__('Pro feature', 'taskbuilder') . '">' . wppm_pro_badge_svg() . '</span>',
409 'read',
410 'wppm-pro-' . $wppm_addon_key,
411 function() use ( $wppm_addon ) {
412 $addon = $wppm_addon;
413 include WPPM_ABSPATH . 'includes/admin/wppm_pro_addon_teaser.php';
414 }
415 );
416 }
417 }
418
419 do_action('wppm_add_submenu_page');
420 }
421
422 public function wppm_projects(){
423 include WPPM_ABSPATH.'includes/admin/projects/projects.php';
424 }
425
426 public function wppm_dashboard(){
427 include WPPM_ABSPATH.'includes/admin/dashboard.php';
428 }
429
430 public function wppm_add_new_project(){
431 include WPPM_ABSPATH.'includes/admin/projects/wppm_add_new_project.php';
432 die();
433 }
434
435 public function wppm_tasks(){
436 include WPPM_ABSPATH.'includes/admin/tasks/wppm_tasks.php';
437 }
438
439 public function wppm_archived_tasks(){
440 include WPPM_ABSPATH.'includes/admin/tasks/wppm_tasks.php';
441 }
442
443 // public function wppm_archived_projects(){
444 // include WPPM_ABSPATH.'includes/admin/projects/projects.php';
445 // }
446
447 public function wppm_archieve_project_list(){
448 $is_archieved = 1;
449 include WPPM_ABSPATH.'includes/admin/projects/projects.php';
450 die();
451 }
452
453 public function wppm_email_notifications(){
454 include WPPM_ABSPATH.'includes/admin/email_notifications/wppm_email_notifications.php';
455 }
456
457 public function settings(){
458 include WPPM_ABSPATH.'includes/admin/settings.php';
459 }
460
461 public function licenses(){
462 include WPPM_ABSPATH.'includes/admin/licenses.php';
463 }
464
465 public function wppm_open_project(){
466 include WPPM_ABSPATH.'includes/admin/projects/wppm_open_project.php';
467 die();
468 }
469
470 public function wppm_get_users(){
471 include WPPM_ABSPATH.'includes/admin/projects/get_users.php';
472 die();
473 }
474
475 public function wppm_filter_autocomplete(){
476 include WPPM_ABSPATH.'includes/admin/projects/wppm_filter_autocomplete.php';
477 die();
478 }
479
480 public function wppm_get_general_settings(){
481 include WPPM_ABSPATH.'includes/admin/settings/wppm_get_general_settings.php';
482 die();
483 }
484
485 public function wppm_get_category_settings(){
486 include WPPM_ABSPATH.'includes/admin/settings/wppm_get_category_settings.php';
487 die();
488 }
489
490 public function wppm_get_add_category(){
491 include WPPM_ABSPATH.'includes/admin/settings/wppm_get_add_category.php';
492 die();
493 }
494
495 public function wppm_set_add_category(){
496 include WPPM_ABSPATH.'includes/admin/settings/wppm_set_add_category.php';
497 die();
498 }
499
500 public function wppm_get_edit_category(){
501 include WPPM_ABSPATH.'includes/admin/settings/wppm_get_edit_category.php';
502 die();
503 }
504
505 public function wppm_set_edit_category(){
506 include WPPM_ABSPATH.'includes/admin/settings/wppm_set_edit_category.php';
507 die();
508 }
509
510 public function wppm_delete_category(){
511 include WPPM_ABSPATH.'includes/admin/settings/wppm_delete_category.php';
512 die();
513 }
514
515 public function wppm_get_proj_status_settings(){
516 include WPPM_ABSPATH.'includes/admin/settings/wppm_get_proj_status_settings.php';
517 die();
518 }
519
520 public function wppm_get_add_proj_status(){
521 include WPPM_ABSPATH.'includes/admin/settings/wppm_get_add_proj_status.php';
522 die();
523 }
524
525 public function wppm_set_category_order(){
526 include WPPM_ABSPATH.'includes/admin/settings/wppm_set_category_order.php';
527 die();
528 }
529
530 public function wppm_set_add_status(){
531 include WPPM_ABSPATH.'includes/admin/settings/wppm_set_add_status.php';
532 die();
533 }
534
535 public function wppm_get_edit_proj_status(){
536 include WPPM_ABSPATH.'includes/admin/settings/wppm_get_edit_proj_status.php';
537 die();
538 }
539
540 public function wppm_set_edit_status(){
541 include WPPM_ABSPATH.'includes/admin/settings/wppm_set_edit_status.php';
542 die();
543 }
544
545 public function wppm_delete_status(){
546 include WPPM_ABSPATH.'includes/admin/settings/wppm_delete_status.php';
547 die();
548 }
549
550 public function wppm_set_status_order(){
551 include WPPM_ABSPATH.'includes/admin/settings/wppm_set_status_order.php';
552 die();
553 }
554
555 public function wppm_create_project(){
556 include WPPM_ABSPATH.'includes/admin/projects/wppm_create_project.php';
557 die();
558 }
559
560 public function wppm_en_project_created($project_id){
561 include WPPM_ABSPATH.'includes/admin/email_notifications/wppm_en_project_created.php';
562 }
563
564 public function wppm_get_project_list(){
565 include WPPM_ABSPATH.'includes/admin/projects/projects_list.php';
566 die();
567 }
568
569 public function wppm_view_project_tasks(){
570 include WPPM_ABSPATH.'includes/admin/projects/open_project/wppm_view_project_tasks.php';
571 die();
572 }
573
574 public function wppm_add_new_task(){
575 include WPPM_ABSPATH.'includes/admin/tasks/wppm_add_new_task.php';
576 die();
577 }
578
579 public function wppm_get_task_list(){
580 include WPPM_ABSPATH.'includes/admin/tasks/wppm_tasks_list.php';
581 die();
582 }
583
584 public function wppm_get_priority_settings(){
585 include WPPM_ABSPATH.'includes/admin/settings/wppm_get_priority_settings.php';
586 die();
587 }
588
589 public function wppm_add_task_priority(){
590 include WPPM_ABSPATH.'includes/admin/settings/wppm_add_task_priority.php';
591 die();
592 }
593
594 public function wppm_set_add_priority(){
595 include WPPM_ABSPATH.'includes/admin/settings/wppm_set_add_priority.php';
596 die();
597 }
598
599 public function wppm_get_edit_priority(){
600 include WPPM_ABSPATH.'includes/admin/settings/wppm_get_edit_priority.php';
601 die();
602 }
603
604 public function wppm_set_edit_priority(){
605 include WPPM_ABSPATH.'includes/admin/settings/wppm_set_edit_priority.php';
606 die();
607 }
608
609 public function wppm_delete_task_priority(){
610 include WPPM_ABSPATH.'includes/admin/settings/wppm_delete_task_priority.php';
611 die();
612 }
613
614 public function wppm_set_priority_order(){
615 include WPPM_ABSPATH.'includes/admin/settings/wppm_set_priority_order.php';
616 die();
617 }
618
619 public function wppm_get_task_status_settings(){
620 include WPPM_ABSPATH.'includes/admin/settings/wppm_get_task_status_settings.php';
621 die();
622 }
623
624 public function wppm_get_add_task_status(){
625 include WPPM_ABSPATH.'includes/admin/settings/wppm_get_add_task_status.php';
626 die();
627 }
628
629 public function wppm_set_add_task_status(){
630 include WPPM_ABSPATH.'includes/admin/settings/wppm_set_add_task_status.php';
631 die();
632 }
633
634 public function wppm_get_edit_task_status(){
635 include WPPM_ABSPATH.'includes/admin/settings/wppm_get_edit_task_status.php';
636 die();
637 }
638
639 public function wppm_set_edit_task_status(){
640 include WPPM_ABSPATH.'includes/admin/settings/wppm_set_edit_task_status.php';
641 die();
642 }
643
644 public function wppm_delete_task_status(){
645 include WPPM_ABSPATH.'includes/admin/settings/wppm_delete_task_status.php';
646 die();
647 }
648
649 public function wppm_set_task_status_order(){
650 include WPPM_ABSPATH.'includes/admin/settings/wppm_set_task_status_order.php';
651 die();
652 }
653
654 public function wppm_create_task(){
655 include WPPM_ABSPATH.'includes/admin/tasks/wppm_create_task.php';
656 die();
657 }
658
659 public function wppm_get_task_list_card_view(){
660 include WPPM_ABSPATH.'includes/admin/projects/open_project/wppm_view_project_tasks.php';
661 die();
662 }
663
664 public function wppm_drag_and_drop_card(){
665 include WPPM_ABSPATH.'includes/admin/projects/open_project/wppm_drag_and_drop_card.php';
666 die();
667 }
668
669 public function wppm_open_task(){
670 include WPPM_ABSPATH.'includes/admin/tasks/open_task/wppm_open_task.php';
671 die();
672 }
673
674 public function wppm_add_new_checklist(){
675 include WPPM_ABSPATH.'includes/admin/tasks/open_task/checklist/wppm_add_new_checklist.php';
676 die();
677 }
678
679 public function wppm_add_new_subtask(){
680 include WPPM_ABSPATH.'includes/admin/tasks/open_task/subtask/wppm_add_new_subtask.php';
681 die();
682 }
683
684 public function wppm_remove_subtask(){
685 include WPPM_ABSPATH.'includes/admin/tasks/open_task/subtask/wppm_remove_subtask.php';
686 die();
687 }
688
689 public function wppm_convert_subtask_to_task(){
690 include WPPM_ABSPATH.'includes/admin/tasks/open_task/subtask/wppm_convert_subtask_to_task.php';
691 die();
692 }
693
694 public function wppm_add_new_checklist_item(){
695 include WPPM_ABSPATH.'includes/admin/tasks/open_task/checklist/wppm_add_new_checklist_item.php';
696 die();
697 }
698
699 public function wppm_delete_checklist(){
700 include WPPM_ABSPATH.'includes/admin/tasks/open_task/checklist/wppm_delete_checklist.php';
701 die();
702 }
703
704 public function wppm_set_checklist_progress(){
705 include WPPM_ABSPATH.'includes/admin/tasks/open_task/checklist/wppm_set_checklist_progress.php';
706 die();
707 }
708
709 public function wppm_set_project_users(){
710 include WPPM_ABSPATH.'includes/admin/projects/open_project/wppm_set_project_users.php';
711 die();
712 }
713
714 public function wppm_get_task_users(){
715 include WPPM_ABSPATH.'includes/admin/tasks/wppm_get_task_users.php';
716 die();
717 }
718
719 public function wppm_set_task_users(){
720 include WPPM_ABSPATH.'includes/admin/tasks/open_task/wppm_set_task_users.php';
721 die();
722 }
723
724 public function wppm_submit_task_comment(){
725 include WPPM_ABSPATH.'includes/admin/tasks/open_task/wppm_submit_task_comment.php';
726 die();
727 }
728
729 public function wppm_upload_file(){
730 include WPPM_ABSPATH.'includes/admin/tasks/open_task/wppm_upload_file.php';
731 die();
732 }
733
734 public function wppm_get_en_general_setting(){
735 include WPPM_ABSPATH.'includes/admin/email_notifications/wppm_get_en_general_setting.php';
736 die();
737 }
738
739 public function wppm_set_en_general_settings(){
740 include WPPM_ABSPATH.'includes/admin/email_notifications/wppm_set_en_general_setting.php';
741 die();
742 }
743
744 public function wppm_get_en_task_notifications(){
745 include WPPM_ABSPATH.'includes/admin/email_notifications/wppm_get_en_task_notifications.php';
746 die();
747 }
748
749 public function wppm_edit_task_status(){
750 include WPPM_ABSPATH.'includes/admin/tasks/open_task/wppm_edit_task_status.php';
751 die();
752 }
753
754 public function wppm_set_change_task_status(){
755 include WPPM_ABSPATH.'includes/admin/tasks/open_task/wppm_set_change_task_status.php';
756 die();
757 }
758
759 public function wppm_edit_task_creator(){
760 include WPPM_ABSPATH.'includes/admin/tasks/open_task/wppm_edit_task_creator.php';
761 die();
762 }
763
764 public function wppm_set_change_raised_by(){
765 include WPPM_ABSPATH.'includes/admin/tasks/open_task/wppm_set_change_raised_by.php';
766 die();
767 }
768
769 public function wppm_edit_task_details(){
770 include WPPM_ABSPATH.'includes/admin/tasks/open_task/wppm_edit_task_details.php';
771 die();
772 }
773
774 public function wppm_set_change_task_details(){
775 include WPPM_ABSPATH.'includes/admin/tasks/open_task/wppm_set_change_task_details.php';
776 die();
777 }
778
779 public function wppm_edit_task_thread(){
780 include WPPM_ABSPATH.'includes/admin/tasks/open_task/wppm_edit_task_thread.php';
781 die();
782 }
783
784 public function wppm_edit_proj_thread(){
785 include WPPM_ABSPATH.'includes/admin/projects/open_project/wppm_edit_project_thread.php';
786 die();
787 }
788
789 public function wppm_set_edit_task_thread(){
790 include WPPM_ABSPATH.'includes/admin/tasks/open_task/wppm_set_edit_task_thread.php';
791 die();
792 }
793
794 public function wppm_set_edit_proj_thread(){
795 include WPPM_ABSPATH.'includes/admin/projects/open_project/wppm_set_edit_proj_thread.php';
796 die();
797 }
798
799 public function wppm_delete_task_thread(){
800 include WPPM_ABSPATH.'includes/admin/tasks/open_task/wppm_delete_task_thread.php';
801 die();
802 }
803
804 public function wppm_delete_proj_thread(){
805 include WPPM_ABSPATH.'includes/admin/projects/open_project/wppm_delete_proj_thread.php';
806 die();
807 }
808
809 public function wppm_set_delete_thread(){
810 include WPPM_ABSPATH.'includes/admin/tasks/open_task/wppm_set_delete_thread.php';
811 die();
812 }
813
814 public function wppm_set_delete_proj_thread(){
815 include WPPM_ABSPATH.'includes/admin/projects/open_project/wppm_set_delete_proj_thread.php';
816 die();
817 }
818
819 public function wppm_edit_project_details(){
820 include WPPM_ABSPATH.'includes/admin/projects/open_project/wppm_edit_project_details.php';
821 die();
822 }
823
824 public function wppm_set_project_meta($project_id){
825 include WPPM_ABSPATH.'includes/admin/projects/wppm_set_project_meta.php';
826 }
827
828 public function wppm_set_change_project_details(){
829 include WPPM_ABSPATH.'includes/admin/projects/open_project/wppm_set_change_project_details.php';
830 die();
831 }
832
833 public function wppm_edit_project_status(){
834 include WPPM_ABSPATH.'includes/admin/projects/open_project/wppm_edit_project_status.php';
835 die();
836 }
837
838 public function wppm_set_change_project_status(){
839 include WPPM_ABSPATH.'includes/admin/projects/open_project/wppm_set_change_project_status.php';
840 die();
841 }
842
843 public function wppm_edit_project_creator(){
844 include WPPM_ABSPATH.'includes/admin/projects/open_project/wppm_edit_project_creator.php';
845 die();
846 }
847
848 public function wppm_set_change_project_raised_by(){
849 include WPPM_ABSPATH.'includes/admin/projects/open_project/wppm_set_change_project_raised_by.php';
850 die();
851 }
852
853 public function wppm_get_delete_project(){
854 include WPPM_ABSPATH.'includes/admin/projects/wppm_get_delete_project.php';
855 die();
856 }
857
858 public function wppm_set_delete_project(){
859 include WPPM_ABSPATH.'includes/admin/projects/wppm_set_delete_project.php';
860 die();
861 }
862
863 public function wppm_get_delete_task(){
864 include WPPM_ABSPATH.'includes/admin/tasks/wppm_get_delete_task.php';
865 die();
866 }
867
868 public function wppm_set_delete_task(){
869 include WPPM_ABSPATH.'includes/admin/tasks/wppm_set_delete_task.php';
870 die();
871 }
872
873 public function wppm_get_edit_email_notification(){
874 include WPPM_ABSPATH.'includes/admin/email_notifications/wppm_get_edit_email_notification.php';
875 die();
876 }
877
878 public function wppm_get_templates(){
879 include WPPM_ABSPATH.'includes/admin/email_notifications/wppm_get_templates.php';
880 die();
881 }
882
883 public function wppm_set_edit_email_notification(){
884 include WPPM_ABSPATH.'includes/admin/email_notifications/wppm_set_edit_email_notification.php';
885 die();
886 }
887
888 public function wppm_en_change_project_status($project_id, $status_id, $prev_status){
889 include WPPM_ABSPATH.'includes/admin/email_notifications/wppm_en_change_project_status.php';
890 }
891
892 public function wppm_en_set_project_users($project_id){
893 include WPPM_ABSPATH.'includes/admin/email_notifications/wppm_en_set_project_users.php';
894 }
895
896 public function wppm_after_set_change_task_status($task_id,$status_id,$prev_status ){
897 include WPPM_ABSPATH.'includes/admin/email_notifications/wppm_en_set_change_task_status.php';
898 }
899
900 public function wppm_en_set_task_users($task_id){
901 include WPPM_ABSPATH.'includes/admin/email_notifications/wppm_en_set_task_users.php';
902 }
903
904 public function wppm_en_submit_task_comment($task_id,$comment_id){
905 include WPPM_ABSPATH.'includes/admin/email_notifications/wppm_en_submit_task_comment.php';
906 }
907
908 public function wppm_en_submit_proj_comment($proj_id,$comment_id){
909 include WPPM_ABSPATH.'includes/admin/email_notifications/wppm_en_submit_proj_comment.php';
910 }
911
912 public function wppm_en_task_created($task_id){
913 include WPPM_ABSPATH.'includes/admin/email_notifications/wppm_en_task_created.php';
914 }
915
916 public function wppm_set_general_settings(){
917 include WPPM_ABSPATH.'includes/admin/settings/wppm_set_general_settings.php';
918 die();
919 }
920
921 public function wppm_get_project_tasks(){
922 include WPPM_ABSPATH.'includes/admin/projects/open_project/wppm_get_project_tasks.php';
923 die();
924 }
925
926 public function wppm_remove_thread_attachment(){
927 include WPPM_ABSPATH.'includes/admin/tasks/open_task/wppm_thread_attachment_remove.php';
928 die();
929 }
930
931 public function wppm_remove_proj_thread_attachment(){
932 include WPPM_ABSPATH.'includes/admin/projects/open_project/wppm_proj_thread_attachment_remove.php';
933 die();
934 }
935
936 public function wppm_remove_checklist_item(){
937 include WPPM_ABSPATH.'includes/admin/tasks/open_task/checklist/wppm_remove_checklist_item.php';
938 die();
939 }
940
941 public function wppm_addons(){
942 include WPPM_ABSPATH.'includes/admin/addons.php';
943 }
944
945 public function wppm_clone_task(){
946 include WPPM_ABSPATH.'includes/admin/tasks/open_task/wppm_clone_task.php';
947 die();
948 }
949
950 public function wppm_set_clone_task($task_id){
951 include WPPM_ABSPATH.'includes/admin/tasks/open_task/wppm_set_clone_task.php';
952 die();
953 }
954
955 public function wppm_get_advanced_settings(){
956 include WPPM_ABSPATH.'includes/admin/settings/wppm_get_advanced_settings.php';
957 die();
958 }
959
960 public function wppm_set_advanced_settings(){
961 include WPPM_ABSPATH.'includes/admin/settings/wppm_set_advanced_settings.php';
962 die();
963 }
964
965 public function wppm_get_appearance_settings(){
966 include WPPM_ABSPATH.'includes/admin/settings/wppm_get_appearance_settings.php';
967 die();
968 }
969
970 public function wppm_get_ap_proj_list(){
971 include WPPM_ABSPATH.'includes/admin/settings/wppm_get_ap_proj_list.php';
972 die();
973 }
974
975 public function wppm_get_ap_individual_proj(){
976 include WPPM_ABSPATH.'includes/admin/settings/wppm_get_ap_individual_proj.php';
977 die();
978 }
979
980 public function wppm_get_ap_individual_task(){
981 include WPPM_ABSPATH.'includes/admin/settings/wppm_get_ap_individual_task.php';
982 die();
983 }
984
985 public function wppm_set_ap_proj_list(){
986 include WPPM_ABSPATH.'includes/admin/settings/wppm_set_ap_proj_list.php';
987 die();
988 }
989
990 public function wppm_reset_ap_proj_list(){
991 include WPPM_ABSPATH.'includes/admin/settings/wppm_reset_ap_proj_list.php';
992 die();
993 }
994
995 public function wppm_get_project_visibility(){
996 include WPPM_ABSPATH.'includes/admin/projects/open_project/wppm_get_project_visibility.php';
997 die();
998 }
999
1000 public function wppm_change_project_visibility(){
1001 include WPPM_ABSPATH.'includes/admin/projects/open_project/wppm_change_project_visibility.php';
1002 die();
1003 }
1004
1005 public function wppm_submit_proj_comment(){
1006 include WPPM_ABSPATH.'includes/admin/projects/open_project/wppm_submit_project_comment.php';
1007 die();
1008 }
1009
1010 public function wppm_set_change_task_start_date(){
1011 include WPPM_ABSPATH.'includes/admin/tasks/open_task/wppm_set_change_task_start_date.php';
1012 die();
1013 }
1014
1015 public function wppm_set_change_task_end_date(){
1016 include WPPM_ABSPATH.'includes/admin/tasks/open_task/wppm_set_change_task_end_date.php';
1017 die();
1018 }
1019
1020 public function wppm_set_change_proj_start_date(){
1021 include WPPM_ABSPATH.'includes/admin/projects/open_project/wppm_set_change_proj_start_date.php';
1022 die();
1023 }
1024
1025 public function wppm_set_change_proj_end_date(){
1026 include WPPM_ABSPATH.'includes/admin/projects/open_project/wppm_set_change_proj_end_date.php';
1027 die();
1028 }
1029
1030 public function wppm_get_ap_task_list(){
1031 include WPPM_ABSPATH.'includes/admin/settings/wppm_get_ap_task_list.php';
1032 die();
1033 }
1034
1035 public function wppm_set_ap_task_list(){
1036 include WPPM_ABSPATH.'includes/admin/settings/wppm_set_ap_task_list.php';
1037 die();
1038 }
1039
1040 public function wppm_reset_ap_task_list(){
1041 include WPPM_ABSPATH.'includes/admin/settings/wppm_reset_ap_task_list.php';
1042 die();
1043 }
1044
1045 public function wppm_set_ap_individual_proj(){
1046 include WPPM_ABSPATH.'includes/admin/settings/wppm_set_ap_individual_proj.php';
1047 die();
1048 }
1049
1050 public function wppm_set_ap_individual_task(){
1051 include WPPM_ABSPATH.'includes/admin/settings/wppm_set_ap_individual_task.php';
1052 die();
1053 }
1054
1055 public function wppm_reset_ap_individual_proj(){
1056 include WPPM_ABSPATH.'includes/admin/settings/wppm_reset_ap_individual_proj.php';
1057 die();
1058 }
1059
1060 public function wppm_reset_ap_individual_task(){
1061 include WPPM_ABSPATH.'includes/admin/settings/wppm_reset_ap_individual_task.php';
1062 die();
1063 }
1064
1065 public function wppm_reset_ap_modal_popup(){
1066 include WPPM_ABSPATH.'includes/admin/settings/wppm_reset_ap_modal_popup.php';
1067 die();
1068 }
1069
1070 public function wppm_get_ap_modal_popup(){
1071 include WPPM_ABSPATH.'includes/admin/settings/wppm_get_ap_modal_popup.php';
1072 die();
1073 }
1074
1075 public function wppm_set_ap_modal_popup(){
1076 include WPPM_ABSPATH.'includes/admin/settings/wppm_set_ap_modal_popup.php';
1077 die();
1078 }
1079
1080 public function wppm_get_ap_grid_view(){
1081 include WPPM_ABSPATH.'includes/admin/settings/wppm_get_ap_grid_view.php';
1082 die();
1083 }
1084
1085 public function wppm_set_ap_grid_view(){
1086 include WPPM_ABSPATH.'includes/admin/settings/wppm_set_ap_grid_view.php';
1087 die();
1088 }
1089
1090 public function wppm_reset_ap_grid_view(){
1091 include WPPM_ABSPATH.'includes/admin/settings/wppm_reset_ap_grid_view.php';
1092 die();
1093 }
1094
1095 public function wppm_get_ap_settings(){
1096 include WPPM_ABSPATH.'includes/admin/settings/wppm_get_ap_settings.php';
1097 die();
1098 }
1099
1100 public function wppm_set_ap_settings(){
1101 include WPPM_ABSPATH.'includes/admin/settings/wppm_set_ap_settings.php';
1102 die();
1103 }
1104
1105 public function wppm_reset_ap_settings(){
1106 include WPPM_ABSPATH.'includes/admin/settings/wppm_reset_ap_settings.php';
1107 die();
1108 }
1109
1110 public function wppm_get_bulk_change_proj_status($proj_ids){
1111 include WPPM_ABSPATH.'includes/admin/projects/wppm_get_bulk_change_proj_status.php';
1112 die();
1113 }
1114
1115 public function wppm_set_bulk_change_project_status(){
1116 include WPPM_ABSPATH.'includes/admin/projects/wppm_set_bulk_change_proj_status.php';
1117 die();
1118 }
1119
1120 public function wppm_get_bulk_change_proj_cat($proj_ids){
1121 include WPPM_ABSPATH.'includes/admin/projects/wppm_get_bulk_change_proj_cat.php';
1122 die();
1123 }
1124
1125 public function wppm_set_bulk_change_project_category(){
1126 include WPPM_ABSPATH.'includes/admin/projects/wppm_set_bulk_change_project_category.php';
1127 die();
1128 }
1129
1130 public function wppm_get_bulk_assign_users($proj_ids){
1131 include WPPM_ABSPATH.'includes/admin/projects/wppm_get_bulk_assign_users.php';
1132 die();
1133 }
1134
1135 public function wppm_set_bulk_project_users(){
1136 include WPPM_ABSPATH.'includes/admin/projects/wppm_set_bulk_project_users.php';
1137 die();
1138 }
1139
1140 public function wppm_get_bulk_delete_project($proj_ids){
1141 include WPPM_ABSPATH.'includes/admin/projects/wppm_get_bulk_delete_project.php';
1142 die();
1143 }
1144
1145 public function wppm_set_delete_bulk_projects(){
1146 include WPPM_ABSPATH.'includes/admin/projects/wppm_set_delete_bulk_projects.php';
1147 die();
1148 }
1149
1150 public function wppm_get_bulk_change_task_status($task_ids){
1151 include WPPM_ABSPATH.'includes/admin/tasks/wppm_get_bulk_change_task_status.php';
1152 die();
1153 }
1154
1155 public function wppm_set_bulk_change_task_status(){
1156 include WPPM_ABSPATH.'includes/admin/tasks/wppm_set_bulk_change_task_status.php';
1157 die();
1158 }
1159
1160 public function wppm_get_bulk_change_task_priority($task_ids){
1161 include WPPM_ABSPATH.'includes/admin/tasks/wppm_get_bulk_change_task_priority.php';
1162 die();
1163 }
1164
1165 public function wppm_set_bulk_change_task_priority(){
1166 include WPPM_ABSPATH.'includes/admin/tasks/wppm_set_bulk_change_task_priority.php';
1167 die();
1168 }
1169
1170 public function wppm_get_bulk_delete_task($task_ids){
1171 include WPPM_ABSPATH.'includes/admin/tasks/wppm_get_bulk_delete_task.php';
1172 die();
1173 }
1174
1175 public function wppm_set_delete_bulk_tasks(){
1176 include WPPM_ABSPATH.'includes/admin/tasks/wppm_set_delete_bulk_tasks.php';
1177 die();
1178 }
1179
1180 public function wppm_get_coworker_permission_settings(){
1181 include WPPM_ABSPATH.'includes/admin/settings/wppm_get_coworker_permission_settings.php';
1182 die();
1183 }
1184
1185 public function wppm_set_coworkers_permission_settings(){
1186 include WPPM_ABSPATH.'includes/admin/settings/wppm_set_coworkers_permission_settings.php';
1187 die();
1188 }
1189
1190 public function wppm_get_rich_text_editor_settings(){
1191 include WPPM_ABSPATH.'includes/admin/settings/wppm_get_rich_text_editor_settings.php';
1192 die();
1193 }
1194
1195 public function wppm_set_rich_text_editor_settings(){
1196 include WPPM_ABSPATH.'includes/admin/settings/wppm_set_rich_text_editor_settings.php';
1197 die();
1198 }
1199
1200 public function wppm_get_page_settings(){
1201 include WPPM_ABSPATH.'includes/admin/settings/wppm_get_page_settings.php';
1202 die();
1203 }
1204
1205 public function wppm_search_wp_pages(){
1206 include WPPM_ABSPATH.'includes/admin/settings/wppm_search_wp_pages.php';
1207 die();
1208 }
1209
1210 public function wppm_set_page_settings(){
1211 include WPPM_ABSPATH.'includes/admin/settings/wppm_set_page_settings.php';
1212 die();
1213 }
1214
1215 public function wppm_get_task_pdf(){
1216 include WPPM_ABSPATH.'includes/admin/wppm_get_task_pdf.php';
1217 die();
1218 }
1219
1220 public function wppm_download_pdf(){
1221 include WPPM_ABSPATH.'includes/admin/wppm_download_pdf.php';
1222 die();
1223 }
1224
1225 public function wppm_get_print_task_settings(){
1226 include WPPM_ABSPATH.'includes/admin/settings/wppm_get_print_task_settings.php';
1227 die();
1228 }
1229
1230 public function wppm_set_print_task_settings(){
1231 include WPPM_ABSPATH.'includes/admin/settings/wppm_set_print_task_settings.php';
1232 die();
1233 }
1234
1235 public function wppm_update_checklist_order(){
1236 include WPPM_ABSPATH.'includes/admin/tasks/open_task/checklist/wppm_update_checklist_order.php';
1237 die();
1238 }
1239
1240 public function wppm_edit_checklist_item(){
1241 include WPPM_ABSPATH.'includes/admin/tasks/open_task/checklist/wppm_edit_checklist_item.php';
1242 die();
1243 }
1244
1245 public function wppm_set_checklist_item_name(){
1246 include WPPM_ABSPATH.'includes/admin/tasks/open_task/checklist/wppm_set_checklist_item_name.php';
1247 die();
1248 }
1249
1250 public function wppm_archive_task(){
1251 include WPPM_ABSPATH.'includes/admin/tasks/open_task/wppm_update_archive_task.php';
1252 die();
1253 }
1254
1255 public function wppm_update_admin_notice(){
1256 include WPPM_ABSPATH.'includes/admin/wppm_update_admin_notice.php';
1257 }
1258
1259 public function wppm_get_project_tasks_kanban_view(){
1260 include WPPM_ABSPATH.'includes/admin/projects/open_project/wppm_get_project_tasks_kanban_view.php';
1261 die();
1262 }
1263
1264 public function wppm_get_notifications_callback(){
1265 include WPPM_ABSPATH.'includes/admin/email_notifications/wppm_get_notifications.php';
1266 die();
1267 }
1268
1269 public function wppm_add_notification_container(){
1270 $mention_notification = get_option('wppm_default_global_mention_comment_notification',1);
1271 if ( ! $mention_notification ) {
1272 return;
1273 }
1274 echo
1275 ' <div id="wppm_notification_bell">
1276 <i class="dashicons dashicons-bell"></i>
1277 <span class="wppm-badge">0</span>
1278 </div>
1279 <div id="wppm-notification-container"></div>';
1280 }
1281
1282 public function wppm_mark_notification_as_read(){
1283 global $wpdb;
1284 $id = isset($_POST['id']) ? intval(sanitize_text_field($_POST['id'])) : 0;
1285 $wpdb->update(
1286 $wpdb->prefix . 'wppm_notifications',
1287 array('is_read' => 1),
1288 array('id' => $id)
1289 );
1290 wp_send_json_success();
1291 }
1292 public function wppm_archive_project(){
1293 include WPPM_ABSPATH.'includes/admin/projects/open_project/wppm_update_archive_project.php';
1294 die();
1295 }
1296 }
1297 endif;
1298
1299 new WPPM_Admin();