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