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
← All changes | includes/class-wppm-admin.php +666 -65 1.0.46.0.6 View file →
@@ -10,13 +10,18 @@
10 10 // constructor
11 11 public function __construct() {
12 12 add_action( 'admin_enqueue_scripts', array( $this, 'loadScripts') );
13 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'));
14 17 add_action( 'wp_ajax_wppm_add_new_project',array($this,'wppm_add_new_project'));
15 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'));
16 20 add_action( 'wp_ajax_wppm_get_users',array($this,'wppm_get_users'));
17 21 add_action( 'wp_ajax_wppm_filter_autocomplete',array($this,'wppm_filter_autocomplete'));
18 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'));
19 24 add_action( 'wp_ajax_wppm_get_category_settings',array($this,'wppm_get_category_settings'));
20 25 add_action( 'wp_ajax_wppm_get_add_category',array($this,'wppm_get_add_category'));
21 26 add_action( 'wp_ajax_wppm_set_add_category',array($this,'wppm_set_add_category'));
22 27 add_action( 'wp_ajax_wppm_get_edit_category',array($this,'wppm_get_edit_category'));
@@ -30,12 +35,12 @@
30 35 add_action( 'wp_ajax_wppm_set_edit_status',array($this,'wppm_set_edit_status'));
31 36 add_action( 'wp_ajax_wppm_delete_status',array($this,'wppm_delete_status'));
32 37 add_action( 'wp_ajax_wppm_set_status_order',array($this,'wppm_set_status_order'));
33 38 add_action( 'wp_ajax_wppm_create_project',array($this,'wppm_create_project'));
34 - add_action('wp_ajax_wppm_get_project_list',array($this,'wppm_get_project_list'));
39 + add_action('wp_ajax_wppm_get_project_list',array($this,'wppm_get_project_list'),10,2);
35 40 add_action('wp_ajax_wppm_view_project_tasks',array($this,'wppm_view_project_tasks'));
36 41 add_action('wp_ajax_wppm_add_new_task',array($this,'wppm_add_new_task'));
37 - add_action('wp_ajax_wppm_get_task_list',array($this,'wppm_get_task_list'));
42 + add_action('wp_ajax_wppm_get_task_list',array($this,'wppm_get_task_list'),100,3);
38 43 add_action('wp_ajax_wppm_get_priority_settings',array($this,'wppm_get_priority_settings'));
39 44 add_action('wp_ajax_wppm_add_task_priority',array($this,'wppm_add_task_priority'));
40 45 add_action('wp_ajax_wppm_set_add_priority',array($this,'wppm_set_add_priority'));
41 46 add_action('wp_ajax_wppm_get_edit_priority',array($this,'wppm_get_edit_priority'));
@@ -49,20 +54,22 @@
49 54 add_action('wp_ajax_wppm_set_edit_task_status',array($this,'wppm_set_edit_task_status'));
50 55 add_action('wp_ajax_wppm_delete_task_status',array($this,'wppm_delete_task_status'));
51 56 add_action('wp_ajax_wppm_set_task_status_order',array($this,'wppm_set_task_status_order'));
52 57 add_action('wp_ajax_wppm_create_task',array($this,'wppm_create_task'));
53 - add_action('wp_ajax_wppm_get_task_list_card_view',array($this,'wppm_get_task_list_card_view'));
58 + add_action('wp_ajax_wppm_get_task_list_card_view',array($this,'wppm_get_task_list_card_view'),100,4);
54 59 add_action('wp_ajax_wppm_drag_and_drop_card',array($this,'wppm_drag_and_drop_card'));
55 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'));
56 62 add_action('wp_ajax_wppm_add_new_checklist',array($this,'wppm_add_new_checklist'));
57 63 add_action('wp_ajax_wppm_add_new_checklist_item',array($this,'wppm_add_new_checklist_item'));
58 - add_action('wp_ajax_wppm_delete_checklist',array($this,'wppm_delete_checklist'));
64 + add_action('wp_ajax_wppm_delete_checklist',array($this,'wppm_delete_checklist'),100,4);
59 65 add_action('wp_ajax_wppm_set_checklist_progress',array($this,'wppm_set_checklist_progress'));
60 66 add_action('wp_ajax_wppm_set_project_users',array($this,'wppm_set_project_users'));
61 67 add_action('wp_ajax_wppm_get_task_users',array($this,'wppm_get_task_users'));
62 68 add_action('wp_ajax_wppm_set_task_users',array($this,'wppm_set_task_users'));
63 - add_action('wp_ajax_wppm_submit_task_comment',array($this,'wppm_submit_task_comment'));
69 + add_action('wp_ajax_wppm_submit_task_comment',array($this,'wppm_submit_task_comment'),100,2);
64 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'));
65 72 add_action('wp_ajax_wppm_get_en_general_setting',array($this,'wppm_get_en_general_setting'));
66 73 add_action('wp_ajax_wppm_set_en_general_settings',array($this,'wppm_set_en_general_settings'));
67 74 add_action('wp_ajax_wppm_get_en_task_notifications',array($this,'wppm_get_en_task_notifications'));
68 75 add_action('wp_ajax_wppm_edit_task_status',array($this,'wppm_edit_task_status'));
@@ -71,11 +78,15 @@
71 78 add_action('wp_ajax_wppm_set_change_raised_by',array($this,'wppm_set_change_raised_by'));
72 79 add_action('wp_ajax_wppm_edit_task_details',array($this,'wppm_edit_task_details'));
73 80 add_action('wp_ajax_wppm_set_change_task_details',array($this,'wppm_set_change_task_details'));
74 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'));
75 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'));
76 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'));
77 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'));
78 89 add_action('wp_ajax_wppm_edit_project_details',array($this,'wppm_edit_project_details'));
79 90 add_action('wp_ajax_wppm_set_change_project_details',array($this,'wppm_set_change_project_details'));
80 91 add_action('wp_ajax_wppm_edit_project_status',array($this,'wppm_edit_project_status'));
81 92 add_action('wp_ajax_wppm_set_change_project_status',array($this,'wppm_set_change_project_status'),10,3);
@@ -82,9 +93,9 @@
82 93 add_action('wp_ajax_wppm_edit_project_creator',array($this,'wppm_edit_project_creator'));
83 94 add_action('wp_ajax_wppm_set_change_project_raised_by',array($this,'wppm_set_change_project_raised_by'));
84 95 add_action('wp_ajax_wppm_get_delete_project',array($this,'wppm_get_delete_project'));
85 96 add_action('wp_ajax_wppm_set_delete_project',array($this,'wppm_set_delete_project'));
86 - add_action('wp_ajax_wppm_get_delete_task',array($this,'wppm_get_delete_task'));
97 + add_action('wp_ajax_wppm_get_delete_task',array($this,'wppm_get_delete_task'),100,3);
87 98 add_action('wp_ajax_wppm_set_delete_task',array($this,'wppm_set_delete_task'));
88 99 add_action('wp_ajax_wppm_get_edit_email_notification',array($this,'wppm_get_edit_email_notification'));
89 100 add_action('wp_ajax_wppm_get_templates',array($this,'wppm_get_templates'));
90 101 add_action('wp_ajax_wppm_set_edit_email_notification',array($this,'wppm_set_edit_email_notification'));
@@ -95,17 +106,107 @@
95 106 add_action('wppm_after_task_created',array($this,'wppm_en_task_created'),100,1);
96 107 add_action('wppm_after_project_created',array($this,'wppm_set_project_meta'));
97 108 add_action('wppm_after_project_created',array($this,'wppm_en_project_created'),100,1);
98 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);
99 111 add_action('wp_ajax_wppm_set_general_settings',array($this,'wppm_set_general_settings'));
100 - add_action('wp_ajax_wppm_get_project_tasks',array($this,'wppm_get_project_tasks'));
101 - add_action('wp_ajax_wppm_remove_thread_attachment',array($this,'wppm_remove_thread_attachment'),10,3);
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);
102 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'));
103 186 }
104 187
105 188 // Load admin scripts
106 189 public function loadScripts(){
107 - if(isset($_REQUEST['page']) && preg_match('/wppm-/',sanitize_text_field($_REQUEST['page']))) :
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')) :
108 209 wp_enqueue_script('jquery');
109 210 wp_enqueue_script('jquery-ui-core');
110 211 wp_enqueue_script( 'jquery-ui-sortable' );
111 212 wp_enqueue_script( 'jquery-ui-datepicker' );
@@ -141,22 +242,31 @@
141 242
142 243 //datatable
143 244 wp_enqueue_script('wppm-datatable-js', WPPM_PLUGIN_URL.'asset/lib/DataTables/datatables.min.js?version='.WPPM_VERSION, ['jquery'], null, true);
144 245 wp_enqueue_style('wppm-datatable-css', WPPM_PLUGIN_URL.'asset/lib/DataTables/datatables.min.css?version='.WPPM_VERSION );
145 -
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);
146 249 //localize script
147 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');
148 254 $localize_script_data = apply_filters( 'wppm_admin_localize_script', array(
149 - 'ajax_url' => admin_url( 'admin-ajax.php' ),
255 + 'ajax_url' => esc_url(admin_url( 'admin-ajax.php' )),
150 256 'loading_html' => $loading_html,
151 - 'add_new_category' => __('Add New Category','taskbuilder'),
152 - 'edit_category' =>__('Edit Category','taskbuilder'),
153 - 'please_wait' =>__('Please wait ...','taskbuilder'),
154 - 'confirm' =>__('Are you sure?','taskbuilder'),
155 - 'add_new_status' =>__('Add New Status','taskbuilder'),
156 - 'edit_status' =>__('Edit status','taskbuilder'),
157 - 'add_new_priority' =>__('Add New Priority','taskbuilder'),
158 - 'templates' => __('Templates','taskbuilder')
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,
159 269 ));
160 270 wp_localize_script( 'wppm-admin', 'wppm_admin', $localize_script_data );
161 271 endif;
162 272 }
@@ -162,31 +272,48 @@
162 272 }
163 273
164 274 // Dashboard Menus
165 275 public function wppm_register_dashboard_menu(){
166 - global $current_user,$wpscfunction;
276 + global $current_user,$wppmfunction;
167 277 add_menu_page(
168 - __( 'Projects', 'taskbuilder'),
169 - __( 'Projects','taskbuilder'),
278 + esc_html__( 'Taskbuilder', 'taskbuilder'),
279 + esc_html__( 'Taskbuilder','taskbuilder'),
170 280 'read',
171 - 'wppm-projects',
172 - array($this,'wppm_projects'),
173 - WPPM_PLUGIN_URL.'asset/images/tasklist.svg',
281 + 'wppm-dashboard',
282 + array($this,'wppm_dashboard'),
283 + WPPM_PLUGIN_URL.'asset/images/taskbuilder_logo.svg',
174 284 25
175 285 );
176 286 add_submenu_page(
177 - 'wppm-projects',
178 - __('Project List', 'taskbuilder' ),
179 - __('Projects', 'taskbuilder' ),
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' ),
180 298 'read',
181 299 'wppm-projects',
182 300 array($this,'wppm_projects')
183 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 +
184 311
185 312 add_submenu_page(
186 - 'wppm-projects',
187 - __('Tasks', 'taskbuilder' ),
188 - __('Tasks', 'taskbuilder' ),
313 + 'wppm-dashboard',
314 + esc_html__('Tasks', 'taskbuilder' ),
315 + esc_html__('Tasks', 'taskbuilder' ),
189 316 'read',
190 317 'wppm-tasks',
191 318 array($this,'wppm_tasks')
192 319 );
@@ -191,51 +318,116 @@
191 318 array($this,'wppm_tasks')
192 319 );
193 320
194 321 add_submenu_page(
195 - 'wppm-projects',
196 - __('Email Notifications', 'taskbuilder' ),
197 - __('Email Notifications', 'taskbuilder' ),
198 - 'manage_options',
199 - 'wppm-email-notifications',
200 - array($this,'wppm_email_notifications')
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')
201 328 );
202 329
203 - do_action('wppm_add_submenu_page');
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 + }
204 366
205 - add_submenu_page(
206 - 'wppm-projects',
207 - __('Settings', 'taskbuilder' ),
208 - __('Settings', 'taskbuilder' ),
209 - 'manage_options',
210 - 'wppm-settings',
211 - array($this,'settings')
212 - );
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 + }
213 402
214 - add_submenu_page(
215 - 'wppm-projects',
216 - __('License', 'taskbuilder' ),
217 - __('License', 'taskbuilder' ),
218 - 'manage_options',
219 - 'wppm-license',
220 - array($this,'licenses')
221 - );
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 + }
222 418
223 - add_submenu_page(
224 - 'wppm-projects',
225 - __('Addons', 'taskbuilder' ),
226 - __('Addons', 'taskbuilder' ),
227 - 'manage_options',
228 - 'wppm-addons',
229 - array($this,'wppm_addons')
230 - );
231 -
419 + do_action('wppm_add_submenu_page');
232 420 }
233 -
421 +
234 422 public function wppm_projects(){
235 423 include WPPM_ABSPATH.'includes/admin/projects/projects.php';
236 424 }
237 425
426 + public function wppm_dashboard(){
427 + include WPPM_ABSPATH.'includes/admin/dashboard.php';
428 + }
429 +
238 430 public function wppm_add_new_project(){
239 431 include WPPM_ABSPATH.'includes/admin/projects/wppm_add_new_project.php';
240 432 die();
241 433 }
@@ -243,8 +435,22 @@
243 435 public function wppm_tasks(){
244 436 include WPPM_ABSPATH.'includes/admin/tasks/wppm_tasks.php';
245 437 }
246 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 +
247 453 public function wppm_email_notifications(){
248 454 include WPPM_ABSPATH.'includes/admin/email_notifications/wppm_email_notifications.php';
249 455 }
250 456
@@ -469,8 +675,23 @@
469 675 include WPPM_ABSPATH.'includes/admin/tasks/open_task/checklist/wppm_add_new_checklist.php';
470 676 die();
471 677 }
472 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 +
473 694 public function wppm_add_new_checklist_item(){
474 695 include WPPM_ABSPATH.'includes/admin/tasks/open_task/checklist/wppm_add_new_checklist_item.php';
475 696 die();
476 697 }
@@ -559,23 +780,43 @@
559 780 include WPPM_ABSPATH.'includes/admin/tasks/open_task/wppm_edit_task_thread.php';
560 781 die();
561 782 }
562 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 +
563 789 public function wppm_set_edit_task_thread(){
564 790 include WPPM_ABSPATH.'includes/admin/tasks/open_task/wppm_set_edit_task_thread.php';
565 791 die();
566 792 }
567 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 +
568 799 public function wppm_delete_task_thread(){
569 800 include WPPM_ABSPATH.'includes/admin/tasks/open_task/wppm_delete_task_thread.php';
570 801 die();
571 802 }
572 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 +
573 809 public function wppm_set_delete_thread(){
574 810 include WPPM_ABSPATH.'includes/admin/tasks/open_task/wppm_set_delete_thread.php';
575 811 die();
576 812 }
577 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 +
578 819 public function wppm_edit_project_details(){
579 820 include WPPM_ABSPATH.'includes/admin/projects/open_project/wppm_edit_project_details.php';
580 821 die();
581 822 }
@@ -663,8 +904,12 @@
663 904 public function wppm_en_submit_task_comment($task_id,$comment_id){
664 905 include WPPM_ABSPATH.'includes/admin/email_notifications/wppm_en_submit_task_comment.php';
665 906 }
666 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 +
667 912 public function wppm_en_task_created($task_id){
668 913 include WPPM_ABSPATH.'includes/admin/email_notifications/wppm_en_task_created.php';
669 914 }
670 915
@@ -682,8 +927,13 @@
682 927 include WPPM_ABSPATH.'includes/admin/tasks/open_task/wppm_thread_attachment_remove.php';
683 928 die();
684 929 }
685 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 +
686 936 public function wppm_remove_checklist_item(){
687 937 include WPPM_ABSPATH.'includes/admin/tasks/open_task/checklist/wppm_remove_checklist_item.php';
688 938 die();
689 939 }
@@ -690,9 +940,360 @@
690 940
691 941 public function wppm_addons(){
692 942 include WPPM_ABSPATH.'includes/admin/addons.php';
693 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 + }
694 1296 }
695 -
696 1297 endif;
697 1298
698 1299 new WPPM_Admin();