ID && $current_user->has_cap('manage_options')) || $wppmfunction->has_permission('change_task_details',$task_id))) {exit;} $task_data = $wppmfunction->get_task($task_id); $settings = get_option("wppm-ap-modal"); $orderby_proj_sql = (sanitize_sql_orderby( "project_name" )); $project_data = $wppmfunction->get_project(intval(sanitize_text_field($task_data['project']))); if($current_user->has_cap('manage_options')){ $projects = $wpdb->get_results("SELECT * FROM {$wpdb->prefix}wppm_project ORDER BY $orderby_proj_sql"); }else{ $sql = $wpdb->prepare( "SELECT Proj.* FROM {$wpdb->prefix}wppm_project AS Proj LEFT JOIN {$wpdb->prefix}wppm_project_meta AS proj_meta ON Proj.id = proj_meta.project_id WHERE FIND_IN_SET(%d, Proj.users) OR (proj_meta.meta_key = 'public_project' AND proj_meta.meta_value = 1) GROUP BY Proj.id", $current_user->ID ); // 4️⃣ Append ORDER BY (safe because we whitelisted columns) $sql .= " ORDER BY $orderby_proj_sql"; // 5️⃣ Execute $projects = $wpdb->get_results($sql); } $priority_id = sanitize_text_field($task_data['priority']); $project_id = sanitize_text_field($task_data['project']); $priorities = $wpdb->get_results("SELECT * FROM {$wpdb->prefix}wppm_task_priorities"); ob_start(); ?>
$body, 'footer' => $footer ); echo wp_json_encode( $output ); ?>