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/frontend/wppm_public_projects_tasks.php +61 -28 5.0.06.0.6 View file →
@@ -96,18 +96,18 @@
96 96 public function wppm_page_inline_script() { ?>
97 97 <script type="text/javascript">
98 98 jQuery( document ).ready( function( jQuery ) {
99 99 <?php if(is_user_logged_in()){
100 - if( (!((isset($_REQUEST['task-id'])) && (!empty(sanitize_text_field($_REQUEST['auth-code'] )))))){
100 + if( (!((isset($_REQUEST['task-id'])) && (!empty(sanitize_text_field(wp_unslash($_REQUEST['auth-code'] ))))))){
101 101 if(get_option('wppm_default_task_list_view')==1){ ?>
102 102 //wppm_get_public_projects_task_list();
103 - wppm_get_task_list()
103 + wppm_get_task_list();
104 104 <?php } else{
105 105 ?> wppm_view_task_search_filter();
106 106 <?php }
107 107 }
108 - if((isset($_REQUEST['task-id'])) && (!empty(sanitize_text_field($_REQUEST['auth-code'] )))){ ?>
109 - wppm_open_task(<?php echo esc_js(sanitize_text_field($_REQUEST['task-id'])); ?>);
108 + if((isset($_REQUEST['task-id'])) && (!empty(sanitize_text_field(wp_unslash($_REQUEST['auth-code'] ))))){ ?>
109 + wppm_open_task(<?php echo (intval(wp_unslash($_REQUEST['task-id']))); ?>);
110 110 <?php }
111 111 }
112 112 else{ ?>
113 113 wppm_task_sign_in();
@@ -117,9 +117,10 @@
117 117 function wppm_get_task_list(page_no){
118 118 jQuery('#wppm_task_container').show();
119 119 jQuery('#wppm_task_container').html(wppm_admin.loading_html);
120 120 var dataform=new FormData(jQuery('#wppm_task_list_frm')[0]);
121 - <?php echo do_action('wppm_task_list_dataform');?>
121 + jQuery(document).trigger('wppm_task_list_dataform', [dataform]);
122 + <?php //echo do_action('wppm_task_list_dataform');?>
122 123 dataform.append("page_no", page_no);
123 124 dataform.append("action", 'wppm_get_task_list');
124 125 dataform.append("public_projects", '1');
125 126 jQuery.ajax( {
@@ -137,9 +138,9 @@
137 138 function wppm_add_new_task(proj_id){
138 139 jQuery('#wppm_task_container').show();
139 140 jQuery('#wppm_task_container').html(wppm_admin.loading_html);
140 141 var dataform=new FormData(jQuery('#wppm_task_list_frm')[0]);
141 - <?php echo do_action('wppm_add_new_task_dataform');?>
142 + jQuery(document).trigger('wppm_add_new_task_dataform', [dataform]);
142 143 dataform.append("proj_id", proj_id);
143 144 dataform.append("action", 'wppm_add_new_task');
144 145 jQuery.ajax( {
145 146 url: wppm_admin.ajax_url,
@@ -153,13 +154,23 @@
153 154 });
154 155 }
155 156
156 157 function wppm_apply_task_filter(){
157 - wppm_task_filter = jQuery('#wppm_task_filter').find(":selected").val();
158 - jQuery('#wppm_task_container').html(wppm_admin.loading_html);
159 - var dataform=new FormData(jQuery('#wppm_task_list_frm')[0]);
160 - <?php echo do_action('wppm_apply_task_filter_dataform');?>
158 + wppm_task_filter = jQuery('#wppm_task_filter').find(":selected").val();
159 + var listFilters = {};
160 + listFilters.created_by = jQuery("#tb-created-by").val();
161 + listFilters.created_by = listFilters.created_by ? listFilters.created_by : [];
162 + listFilters.assigned = jQuery("#tb-assigned").val();
163 + listFilters.assigned = listFilters.assigned ? listFilters.assigned : [];
164 + listFilters.priority = jQuery("#tb-priority").val();
165 + listFilters.priority = listFilters.priority ? listFilters.priority : [];
166 + listFilters.start_date = jQuery("#tb-start-date").val() || "";
167 + listFilters.end_date = jQuery("#tb-end-date").val() || "";
168 + jQuery('#wppm_task_container').html(wppm_admin.loading_html);
169 + var dataform=new FormData(jQuery('#wppm_task_list_frm')[0]);
170 + jQuery(document).trigger('wppm_apply_task_filter_dataform', [dataform]);
161 171 dataform.append("wppm_task_filter", wppm_task_filter);
172 + dataform.append("filters", JSON.stringify(listFilters));
162 173 dataform.append("action", 'wppm_get_task_list');
163 174 dataform.append("public_projects", '1');
164 175 <?php if(!empty($this->shortcode_attr['project'])){ ?>
165 176 dataform.append("wppm_project_attr","<?php echo esc_attr($this->shortcode_attr['project']); ?>");
@@ -172,12 +183,23 @@
172 183 contentType: false
173 184 })
174 185 .done(function( response ) {
175 186 jQuery('#wppm_task_container').html(response);
187 + setListFilterCookie(listFilters);
188 + setTimeout(function(){
189 + syncUIWithFilters(listFilters);
190 + renderActiveFilters(listFilters);
191 + }, 100);
176 192 });
177 193 }
178 194
179 195 function wppm_tl_reset_filter(){
196 + // clear advanced filters + cookie BEFORE requesting the list,
197 + // otherwise this request still sends the stale tb_list_filters
198 + // cookie and the reset only takes effect on the next click
199 + setListFilterCookie({});
200 + resetFilters('list');
201 +
180 202 jQuery('#wppm_task_container').html(wppm_admin.loading_html);
181 203 var dataform=new FormData(jQuery('#wppm_task_list_frm')[0]);
182 204 dataform.append("action", 'wppm_get_task_list');
183 205 dataform.append("wppm_task_filter", 'all');
@@ -188,9 +210,9 @@
188 210 dataform.append("public_projects", '1');
189 211 <?php if(!empty($this->shortcode_attr['project'])){ ?>
190 212 dataform.append("wppm_project_attr","<?php echo esc_attr($this->shortcode_attr['project']); ?>");
191 213 <?php } ?>
192 - <?php echo do_action('wppm_tl_reset_filter_dataform');?>
214 + jQuery(document).trigger('wppm_tl_reset_filter_dataform', [dataform]);
193 215 jQuery.ajax( {
194 216 url: wppm_admin.ajax_url,
195 217 type: 'POST',
196 218 data: dataform,
@@ -195,9 +217,9 @@
195 217 type: 'POST',
196 218 data: dataform,
197 219 processData: false,
198 220 contentType: false
199 - })
221 + })
200 222 .done(function( response ) {
201 223 jQuery('#wppm_task_container').html(response);
202 224 });
203 225 }
@@ -206,9 +228,9 @@
206 228 var task_search = jQuery("#wppm_task_search_filter").val();
207 229 jQuery('#wppm_task_container').show();
208 230 jQuery('#wppm_task_container').html(wppm_admin.loading_html);
209 231 var dataform=new FormData(jQuery('#wppm_task_list_frm')[0]);
210 - <?php echo do_action('wppm_task_search_filter_dataform');?>
232 + jQuery(document).trigger('wppm_task_search_filter_dataform', [dataform]);
211 233 dataform.append("action", 'wppm_get_task_list');
212 234 dataform.append("public_projects", '1');
213 235 <?php if(!empty($this->shortcode_attr['project'])){ ?>
214 236 dataform.append("wppm_project_attr","<?php echo esc_attr($this->shortcode_attr['project']); ?>");
@@ -226,15 +248,16 @@
226 248 });
227 249 }
228 250
229 251 function wppm_display_grid_view(){
230 - var task_search = jQuery("#wppm_view_task_search_filter").val();
252 + var task_search = jQuery("#wppm_view_task_search_filter").val() || '';
231 253 jQuery('#wppm_task_container').show();
232 254 jQuery('#wppm_task_container').html(wppm_admin.loading_html);
233 255 var dataform=new FormData(jQuery('#wppm_view_project_task')[0]);
234 - <?php echo do_action('wppm_display_grid_view_dataform');?>
256 + jQuery(document).trigger('wppm_display_grid_view_dataform', [dataform]);
235 257 dataform.append("action", 'wppm_get_task_list_card_view');
236 258 dataform.append("task_search", task_search);
259 + dataform.append("wppm_task_filter",wppm_task_filter);
237 260 dataform.append("public_projects", '1');
238 261 <?php if(!empty($this->shortcode_attr['project'])){ ?>
239 262 dataform.append("wppm_project_attr","<?php echo esc_attr($this->shortcode_attr['project']); ?>");
240 263 <?php } ?>
@@ -253,9 +276,9 @@
253 276 function wppm_sort_up_task_list(sort_by,order){
254 277 jQuery('#wppm_task_container').show();
255 278 jQuery('#wppm_task_container').html(wppm_admin.loading_html);
256 279 var dataform=new FormData(jQuery('#wppm_task_list_frm')[0]);
257 - <?php echo do_action('wppm_sort_up_task_list_dataform');?>
280 + jQuery(document).trigger('wppm_sort_up_task_list_dataform', [dataform]);
258 281 dataform.append("action", 'wppm_get_task_list');
259 282 dataform.append("sort_by", sort_by);
260 283 dataform.append("order", order);
261 284 dataform.append("public_projects", '1');
@@ -274,18 +297,13 @@
274 297 });
275 298 }
276 299
277 300 function wppm_view_task_search_filter(page_no){
278 - var task_search = jQuery("#wppm_view_task_search_filter").val();
279 - if(typeof task_search == "undefined"){
280 - var task_search ="";
281 - }else{
282 - var task_search =jQuery("#wppm_view_task_search_filter").val();
283 - }
301 + var task_search = jQuery("#wppm_view_task_search_filter").val() || '';
284 302 jQuery('#wppm_task_container').show();
285 303 jQuery('#wppm_task_container').html(wppm_admin.loading_html);
286 304 var dataform=new FormData(jQuery('#wppm_view_project_task')[0]);
287 - <?php echo do_action('wppm_view_task_search_filter_dataform');?>
305 + jQuery(document).trigger('wppm_view_task_search_filter_dataform', [dataform]);
288 306 dataform.append("action", 'wppm_get_task_list_card_view');
289 307 dataform.append("task_search", task_search);
290 308 dataform.append("page_no",page_no);
291 309 dataform.append("public_projects", '1');
@@ -307,9 +325,9 @@
307 325 function wppm_apply_task_filter_grid_view(){
308 326 wppm_task_filter = jQuery('#wppm_task_filter').find(":selected").val();
309 327 jQuery('#wppm_task_container').html(wppm_admin.loading_html);
310 328 var dataform=new FormData(jQuery('#wppm_view_project_task')[0]);
311 - <?php echo do_action('wppm_apply_task_filter_grid_view_dataform');?>
329 + jQuery(document).trigger('wppm_apply_task_filter_grid_view_dataform', [dataform]);
312 330 dataform.append("action", 'wppm_view_project_tasks');
313 331 dataform.append("wppm_task_filter", wppm_task_filter);
314 332 dataform.append("public_projects", '1');
315 333 <?php if(!empty($this->shortcode_attr['project'])){ ?>
@@ -327,11 +345,26 @@
327 345 });
328 346 }
329 347
330 348 function wppm_tl_reset_grid_view_filter(){
349 + // clear advanced filters + cookie BEFORE requesting the list,
350 + // otherwise this request still sends the stale tb_filters cookie
351 + // and the advanced filters never actually get reset
352 + jQuery("#tb-created-by").val(null).trigger("change");
353 + jQuery("#tb-assigned").val(null).trigger("change");
354 + jQuery("#tb-priority").val(null).trigger("change");
355 + jQuery("#tb-start-date").val("");
356 + jQuery("#tb-end-date").val("");
357 + jQuery("#tb-advanced-panel").removeClass("tb-open");
358 + jQuery("#tb-backdrop").removeClass("active");
359 + jQuery("#tb-active-filters").html('');
360 + window.filters = { created_by: [], assigned: [], priority: [], start_date: "", end_date: "" };
361 + document.cookie = "tb_filters=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;";
362 + window.localStorage.removeItem('wppm_task_filter');
363 +
331 364 jQuery('#wppm_task_container').html(wppm_admin.loading_html);
332 365 var dataform=new FormData(jQuery('#wppm_view_project_task')[0]);
333 - <?php echo do_action('wppm_tl_reset_grid_view_filter_dataform');?>
366 + jQuery(document).trigger('wppm_tl_reset_grid_view_filter_dataform', [dataform]);
334 367 dataform.append("action", 'wppm_view_project_tasks');
335 368 dataform.append("task_search", "");
336 369 dataform.append("wppm_task_filter", "all");
337 370 dataform.append("sort_by", "task_name");
@@ -346,9 +379,9 @@
346 379 type: 'POST',
347 380 data: dataform,
348 381 processData: false,
349 382 contentType: false
350 - })
383 + })
351 384 .done(function( response ) {
352 385 jQuery('#wppm_task_container').html(response);
353 386 });
354 387 }
@@ -355,9 +388,9 @@
355 388 function wppm_tasks_by_select_project(){
356 389 wppm_proj_filter = jQuery('#wppm_task_list_proj_filter').find(":selected").val();
357 390 jQuery('#wppm_task_container').html(wppm_admin.loading_html);
358 391 var dataform=new FormData(jQuery('#wppm_task_list_frm')[0]);
359 - <?php echo do_action('wppm_change_proj_tl_filter_dataform');?>
392 + jQuery(document).trigger('wppm_change_proj_tl_filter_dataform', [dataform]);
360 393 dataform.append("action", 'wppm_get_task_list');
361 394 dataform.append("wppm_proj_filter",wppm_proj_filter);
362 395 dataform.append("public_projects", '1');
363 396 jQuery.ajax( {
@@ -375,9 +408,9 @@
375 408 function wppm_tasks_by_select_project_grid_view(){
376 409 wppm_proj_filter = jQuery('#wppm_task_list_proj_filter').find(":selected").val();
377 410 jQuery('#wppm_task_container').html(wppm_admin.loading_html);
378 411 var dataform=new FormData(jQuery('#wppm_view_project_task')[0]);
379 - <?php echo do_action('wppm_change_proj_grid_view_filter_dataform');?>
412 + jQuery(document).trigger('wppm_change_proj_grid_view_filter_dataform', [dataform]);
380 413 dataform.append("action", 'wppm_view_project_tasks');
381 414 dataform.append("wppm_proj_filter",wppm_proj_filter);
382 415 dataform.append("public_projects", '1');
383 416 jQuery.ajax( {