PluginProbe
Taskbuilder – Project Management & Task Management Tool With Kanban Board / 3.0.6
Taskbuilder – Project Management & Task Management Tool With Kanban Board v3.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 1.0.6 All 57 releases
← All changes | includes/admin/projects/projects_list.php +64 -178 5.0.03.0.6 View file →
@@ -5,9 +5,8 @@
5 5 global $wpdb,$wppmfunction,$current_user;
6 6 $status = $wpdb->get_results( "SELECT * FROM {$wpdb->prefix}wppm_project_statuses" );
7 7 $categories = $wpdb->get_results( "SELECT * FROM {$wpdb->prefix}wppm_project_categories" );
8 8 $appearance_settings = get_option("wppm-ap-project-list");
9 -$wppm_date_setting = get_option('wppm_date_setting');
10 9 $wppm_current_user_capability = get_user_meta( $current_user->ID, 'wppm_capability', true );
11 10 $proj_per_page = 20;
12 11 $page_no = (isset($_POST['page_no'])) ? intval(sanitize_text_field($_POST['page_no'])): '0';
13 12 $search_tag = isset($_POST['project_search']) ? sanitize_text_field($_POST['project_search']) : '';
@@ -15,16 +14,8 @@
15 14 $sort_by = isset($_POST['sort_by']) ? sanitize_text_field($_POST['sort_by']):"project_name";
16 15 $filter_by = isset($_POST['wppm_project_filter']) ? sanitize_text_field($_POST['wppm_project_filter']) : "all";
17 16 $current_date = date('Y-m-d');
18 17 $wppm_pl_filter = "1=1";
19 -$wppm_hide_completed_status_proj = get_option('wppm_hide_completed_status_proj');
20 -$cu_id = esc_sql($current_user->ID);
21 -$wppm_hide_proj_statuses_from_frontend = get_option('wppm_hide_proj_statuses_from_frontend');
22 -if(!empty($wppm_hide_proj_statuses_from_frontend)){
23 - $wppm_hide_proj_statuses_from_frontend = explode(",",$wppm_hide_proj_statuses_from_frontend);
24 -} else {
25 - $wppm_hide_proj_statuses_from_frontend = '';
26 -}
27 18 $filters = array(
28 19 'sort_by' => $sort_by,
29 20 'order' => $order,
30 21 'search' => $search_tag,
@@ -65,35 +56,23 @@
65 56 }
66 57 if($sort_by=='category'){
67 58 $sort_by = 'proj_categories.name';
68 59 }
69 -if($filter_by=='all'){
70 - if($wppm_hide_completed_status_proj == 0){
71 - $wppm_pl_filter = "status!='4'";
72 - }
73 -}
74 -if($filter_by=='4'){
60 +if($filter_by=='completed'){
75 61 $wppm_pl_filter = "status='4'";
76 62 }elseif($filter_by=='overdue'){
77 63 $wppm_pl_filter = "status!='4' AND (CAST(end_date AS DATE)) < '$current_date'";
78 64 }elseif($filter_by == 'unassigned'){
79 65 $wppm_pl_filter = "users=''";
80 -}elseif($filter_by == '1'){
66 +}elseif($filter_by == 'new'){
81 67 $wppm_pl_filter = "status='1'";
82 -}elseif($filter_by == '2'){
68 +}elseif($filter_by == 'inprogress'){
83 69 $wppm_pl_filter = "status='2'";
84 -}elseif($filter_by == '3'){
70 +}elseif($filter_by == 'hold'){
85 71 $wppm_pl_filter = "status='3'";
86 72 }elseif($filter_by == 'mine'){
87 73 $wppm_pl_filter = "(FIND_IN_SET('$current_user->ID',users)>0)";
88 74 }
89 -
90 -if(!empty($wppm_hide_proj_statuses_from_frontend) && is_array($wppm_hide_proj_statuses_from_frontend) && ((isset($_POST['is_frontend'])) && (sanitize_text_field($_POST['is_frontend'])==1))){
91 - foreach($wppm_hide_proj_statuses_from_frontend as $status){
92 - $wppm_pl_filter .= " AND status != '$status'";
93 - }
94 -}
95 -
96 75 $wppm_project_time = get_option('wppm_project_time');
97 76 $wppm_default_project_date = get_option('wppm_default_project_date');
98 77 $sort_by = apply_filters('wppm_project_list_sort_by_query',$sort_by);
99 78 $order = apply_filters('wppm_project_list_order_query',$order);
@@ -109,9 +88,9 @@
109 88 ");
110 89 if($current_user->has_cap('manage_options') || $wppm_current_user_capability == 'wppm_admin'){
111 90 $where = " where $wppm_pl_filter AND (Project.project_name LIKE '$search_tag_text' OR proj_statuses.name LIKE '$search_tag_text' OR proj_categories.name LIKE '$search_tag_text' OR ( user.display_name LIKE '$search_tag_text'))";
112 91 }else{
113 - $where = " where $wppm_pl_filter AND (Project.project_name LIKE '$search_tag_text' OR proj_statuses.name LIKE '$search_tag_text' OR proj_categories.name LIKE '$search_tag_text' OR ( user.display_name LIKE '$search_tag_text')) AND ((FIND_IN_SET('$current_user->ID',Project.users)>0) OR (Project.id = proj_meta.project_id AND proj_meta.meta_key='public_project' AND proj_meta.meta_value=1) OR Project.created_by='$cu_id')";
92 + $where = " where $wppm_pl_filter AND (Project.project_name LIKE '$search_tag_text' OR proj_statuses.name LIKE '$search_tag_text' OR proj_categories.name LIKE '$search_tag_text' OR ( user.display_name LIKE '$search_tag_text')) AND ((FIND_IN_SET('$current_user->ID',Project.users)>0) OR (Project.id = proj_meta.project_id AND proj_meta.meta_key='public_project' AND proj_meta.meta_value=1) OR Project.created_by='$current_user->ID')";
114 93 }
115 94 }else{
116 95 if($sort_by=='project_name'|| $sort_by=='start_date' || $sort_by=='end_date'){
117 96 $query = ( "SELECT Project.* FROM {$wpdb->prefix}wppm_project AS Project
@@ -126,16 +105,14 @@
126 105 }
127 106 if($current_user->has_cap('manage_options') || $wppm_current_user_capability == 'wppm_admin'){
128 107 $where = " where $wppm_pl_filter";
129 108 }else{
130 - $where = " where ($wppm_pl_filter AND (FIND_IN_SET('$current_user->ID',Project.users)>0 OR (Project.id = proj_meta.project_id AND proj_meta.meta_key='public_project' AND proj_meta.meta_value=1)) OR Project.created_by='$cu_id')";
109 + $where = " where ($wppm_pl_filter AND (FIND_IN_SET('$current_user->ID',Project.users)>0 OR (Project.id = proj_meta.project_id AND proj_meta.meta_key='public_project' AND proj_meta.meta_value=1)) OR Project.created_by='$current_user->ID')";
131 110 }
132 111 }
133 112 $no_of_rows = ( "SELECT count(*) FROM ($query");
134 113 $no_of_rows = apply_filters('wppm_project_list_no_of_rows',$no_of_rows,$wppm_pl_filter,$search_tag);
135 114 $where = apply_filters('wppm_project_list_query_where',$where, $wppm_pl_filter,$search_tag);
136 -$sort_by = esc_sql($sort_by);
137 -$order = esc_sql($order);
138 115 $query .= $where." Group by Project.id ORDER BY $sort_by $order";
139 116 $no_of_rows .= $where." Group by Project.id) AS Project";
140 117 $totalrows = $wpdb->get_var( $no_of_rows );
141 118 $query = apply_filters('wppm_project_list_query',$query);
@@ -142,22 +119,14 @@
142 119 $limit_start=$page_no*$proj_per_page;
143 120 $limit="\n LIMIT ".$limit_start.",".$proj_per_page." ";
144 121 $query = $query.$limit;
145 122 $wppm_fillter = $wpdb->get_results($query);
146 -$new_status_name = $wpdb->get_var( "SELECT name FROM {$wpdb->prefix}wppm_project_statuses where id='".esc_sql(1)."'" );
147 -$inp_status_name = $wpdb->get_var( "SELECT name FROM {$wpdb->prefix}wppm_project_statuses where id='".esc_sql(2)."'" );
148 -$hold_status_name = $wpdb->get_var( "SELECT name FROM {$wpdb->prefix}wppm_project_statuses where id='".esc_sql(3)."'" );
149 -$completed_status_name = $wpdb->get_var( "SELECT name FROM {$wpdb->prefix}wppm_project_statuses where id='".esc_sql(4)."'" );
150 -$new_style = (!empty($new_status_name))? "display:inline" :"display:none;";
151 -$inp_status_style = (!empty($inp_status_name))? "display:inline" :"display:none;";
152 -$hold_status_style = (!empty($hold_status_name))? "display:inline" :"display:none;";
153 -$complete_status_style = (!empty($completed_status_name))? "display:inline" :"display:none;";
154 123 ?>
155 124 <form id="wppm_project_list_frm">
156 125 <div id="wppm-container">
157 126 <div id="wppm_project_list_container" class="wppm_bootstrap">
158 127 <div class="row">
159 - <div class="col-sm-12" id="wppm_heading_inline">
128 + <div class="col-sm-6" id="wppm_heading_inline">
160 129 <span class="wppm-heading-inline">
161 130 <?php echo esc_html_e('Projects','taskbuilder');?>
162 131 </span>
163 132 <?php if($current_user->has_cap('manage_options') || $wppm_current_user_capability == 'wppm_manager'|| $wppm_current_user_capability == 'wppm_admin' ){ ?>
@@ -163,60 +132,62 @@
163 132 <?php if($current_user->has_cap('manage_options') || $wppm_current_user_capability == 'wppm_manager'|| $wppm_current_user_capability == 'wppm_admin' ){ ?>
164 133 <img width="25" height="30" id="wppm_add_new_project_btn" class="wppm_add_new_project_btn" onclick="wppm_add_new_project()" src="<?php echo esc_url( WPPM_PLUGIN_URL . 'asset/images/add.svg'); ?>" alt="add">
165 134 <?php } ?>
166 135 </div>
136 + <div id="wppm_project_and_task_search" class="col-sm-6">
137 + <img width="25px" id="wppm_project_search_filter_img" height="15px" src="<?php echo esc_url( WPPM_PLUGIN_URL . 'asset/images/search.svg'); ?>" alt="search">
138 + <input type="search" id="wppm_project_search_filter" name="wppm_project_search_filter" class="form-control form-control-sm" aria-controls="selection-datatable" placeholder="<?php echo esc_attr__('Search','taskbuilder');?>" value="<?php echo (!empty($search_tag)) ? esc_attr($search_tag) : "" ?>">
139 + </div>
167 140 </div>
168 - <div style="display:flex;justify-content:space-between;margin-top:20px;flex-wrap: wrap;">
169 - <div style="display:flex;flex-wrap: wrap;">
170 - <div id="wppm_project_filter_container">
171 - <div class="wppm-bulk-actions" style="margin-bottom: 10px;">
172 - <button
173 - id="wppm-bulk-actions-btn"
174 - class="wppm-button small secondary"
175 - type="button"
176 - style="display:none;padding:14px;font: 13px Helvetica Neue, Arial, Helvetica, sans-serif !important"
177 - data-popover="wppm-bulk-actions">
178 - <?php esc_attr_e( 'Bulk Actions ', 'taskbuilder' ); ?><img style="color:#313042" src="<?php echo esc_url( WPPM_PLUGIN_URL . 'asset/images/wppm_chevron_down_icon.svg'); ?>" alt="chevron_down">
179 - </button>
180 - <div id="wppm-bulk-actions" class="gpopover wppm-popover-menu wppm-proj-bulk-actions">
181 - <div class="wppm-popover-menu-item" onclick="wppm_bulk_change_status('<?php echo esc_attr( wp_create_nonce( 'wppm_bulk_change_status' ) ); ?>');">
182 - <span><img style="margin-right:5px;" src="<?php echo esc_url( WPPM_PLUGIN_URL . 'asset/images/gps-navigation.svg'); ?>" alt="status"><?php echo esc_html_e('Change Status','taskbuilder'); ?></span>
141 + <div class="row">
142 + <div class="col-sm-6" id="wppm_project_filter_container">
143 + <div class="wppm-filter-item">
144 + <label for="wppm_project_filter"> <?php echo esc_html_e('Filter','taskbuilder');?></label>
145 + <select id="wppm_project_filter" name="wppm_project_filter" onchange="wppm_apply_project_filter()">
146 + <option value="all"<?php echo ($filter_by == "all")? 'selected':""?>><?php echo esc_html_e('All','taskbuilder');?></option>
147 + <option value="new" <?php echo ($filter_by == "new")? 'selected':""?>><?php echo esc_html_e('New','taskbuilder');?></option>
148 + <option value="inprogress" <?php echo ($filter_by == "inprogress")? 'selected':""?>><?php echo esc_html_e('In Progress','taskbuilder');?></option>
149 + <option value="hold" <?php echo ($filter_by == "hold")? 'selected':""?>><?php echo esc_html_e('Hold','taskbuilder');?></option>
150 + <option value="completed" <?php echo ($filter_by == "completed")? 'selected':""?>><?php echo esc_html_e('Completed','taskbuilder');?></option>
151 + <option value="mine" <?php echo ($filter_by == "mine")? 'selected':""?>><?php echo esc_html_e('Mine','taskbuilder');?></option>
152 + <option value="unassigned" <?php echo ($filter_by == "unassigned")? 'selected':""?>><?php echo esc_html_e('Unassigned','taskbuilder');?></option>
153 + <option value="overdue" <?php echo ($filter_by == "overdue")? 'selected':""?>><?php echo esc_html_e('Overdue','taskbuilder');?></option>
154 + </select>
155 + </div>
156 + <div class="wppm_display_submit">
157 + <div class="wppm-filter-actions">
158 + <span class="wppm-link" onclick="wppm_pl_reset_filter()"> <?php echo esc_html_e('Reset','taskbuilder');?></span>
159 + </div>
160 + </div>
161 + </div>
162 + </div>
163 + <div class="row">
164 + <div class="col-sm-12">
165 + <div class="wppm-bulk-actions">
166 + <button
167 + id="wppm-bulk-actions-btn"
168 + class="wppm-button small secondary"
169 + type="button"
170 + style="display:none"
171 + data-popover="wppm-bulk-actions">
172 + <?php esc_attr_e( 'Bulk Actions ', 'taskbuilder' ); ?><img style="color:#313042" src="<?php echo esc_url( WPPM_PLUGIN_URL . 'asset/images/wppm_chevron_down_icon.svg'); ?>" alt="chevron_down">
173 + </button>
174 + <div id="wppm-bulk-actions" class="gpopover wppm-popover-menu wppm-proj-bulk-actions">
175 + <div class="wppm-popover-menu-item" onclick="wppm_bulk_change_status('<?php echo esc_attr( wp_create_nonce( 'wppm_bulk_change_status' ) ); ?>');">
176 + <span><img style="margin-right:5px;" src="<?php echo esc_url( WPPM_PLUGIN_URL . 'asset/images/gps-navigation.svg'); ?>" alt="status"><?php echo esc_html_e('Change Status','taskbuilder'); ?></span>
177 + </div>
178 + <div class="wppm-popover-menu-item" onclick="wppm_bulk_change_category('<?php echo esc_attr( wp_create_nonce( 'wppm_bulk_change_category' ) ); ?>');">
179 + <span><img style="margin-right:5px;" src="<?php echo esc_url( WPPM_PLUGIN_URL . 'asset/images/tags.svg'); ?>" alt="category"><?php echo esc_html_e('Change Category','taskbuilder'); ?></span>
180 + </div>
181 + <div class="wppm-popover-menu-item" onclick="wppm_bulk_assign_users('<?php echo esc_attr( wp_create_nonce( 'wppm_bulk_assign_users' ) ); ?>');">
182 + <span><img style="margin-right:5px;" src="<?php echo esc_url( WPPM_PLUGIN_URL . 'asset/images/users.svg'); ?>" alt="users"><?php echo esc_html_e('Assign Co-workers','taskbuilder'); ?></span>
183 + </div>
184 + <div class="wppm-popover-menu-item" onclick="wppm_bulk_delete_project('<?php echo esc_attr( wp_create_nonce( 'wppm_bulk_assign_users' ) ); ?>');">
185 + <span><img style="margin-right:5px;" src="<?php echo esc_url( WPPM_PLUGIN_URL . 'asset/images/trash-alt-solid.svg'); ?>" alt="delete"><?php echo esc_html_e('Delete','taskbuilder'); ?></span>
186 + </div>
183 187 </div>
184 - <div class="wppm-popover-menu-item" onclick="wppm_bulk_change_category('<?php echo esc_attr( wp_create_nonce( 'wppm_bulk_change_category' ) ); ?>');">
185 - <span><img style="margin-right:5px;" src="<?php echo esc_url( WPPM_PLUGIN_URL . 'asset/images/tags.svg'); ?>" alt="category"><?php echo esc_html_e('Change Category','taskbuilder'); ?></span>
186 - </div>
187 - <div class="wppm-popover-menu-item" onclick="wppm_bulk_assign_users('<?php echo esc_attr( wp_create_nonce( 'wppm_bulk_assign_users' ) ); ?>');">
188 - <span><img style="margin-right:5px;" src="<?php echo esc_url( WPPM_PLUGIN_URL . 'asset/images/users.svg'); ?>" alt="users"><?php echo esc_html_e('Assign Co-workers','taskbuilder'); ?></span>
189 - </div>
190 - <div class="wppm-popover-menu-item" onclick="wppm_bulk_delete_project('<?php echo esc_attr( wp_create_nonce( 'wppm_bulk_assign_users' ) ); ?>');">
191 - <span><img style="margin-right:5px;" src="<?php echo esc_url( WPPM_PLUGIN_URL . 'asset/images/trash-alt-solid.svg'); ?>" alt="delete"><?php echo esc_html_e('Delete','taskbuilder'); ?></span>
192 - </div>
193 - </div>
194 188 </div>
195 - <div class="wppm-filter-item">
196 - <label for="wppm_project_filter"> <?php echo esc_html_e('Filter','taskbuilder');?></label>
197 - <select id="wppm_project_filter" name="wppm_project_filter" onchange="wppm_apply_project_filter()">
198 - <option value="all"<?php echo ($filter_by == "all")? 'selected':""?>><?php echo esc_html_e('All','taskbuilder');?></option>
199 - <option style="<?php echo $new_style ?>" value="1" <?php echo ($filter_by == "1")? 'selected':""?>><?php echo esc_html_e($new_status_name,'taskbuilder');?></option>
200 - <option style="<?php echo $inp_status_style ?>" value="2" <?php echo ($filter_by == "2")? 'selected':""?>><?php echo esc_html_e($inp_status_name,'taskbuilder');?></option>
201 - <option style="<?php echo $hold_status_style ?>" value="3" <?php echo ($filter_by == "3")? 'selected':""?>><?php echo esc_html_e($hold_status_name,'taskbuilder');?></option>
202 - <option style="<?php echo $complete_status_style ?>" value="4" <?php echo ($filter_by == "4")? 'selected':""?>><?php echo esc_html_e($completed_status_name,'taskbuilder');?></option>
203 - <option value="mine" <?php echo ($filter_by == "mine")? 'selected':""?>><?php echo esc_html_e('Mine','taskbuilder');?></option>
204 - <option value="unassigned" <?php echo ($filter_by == "unassigned")? 'selected':""?>><?php echo esc_html_e('Unassigned','taskbuilder');?></option>
205 - <option value="overdue" <?php echo ($filter_by == "overdue")? 'selected':""?>><?php echo esc_html_e('Overdue','taskbuilder');?></option>
206 - </select>
207 - </div>
208 - <div class="wppm_display_submit">
209 - <div class="wppm-filter-actions">
210 - <span class="wppm-link" onclick="wppm_pl_reset_filter()"> <?php echo esc_html_e('Reset','taskbuilder');?></span>
211 - </div>
212 - </div>
213 189 </div>
214 - </div>
215 - <div id="wppm_project_and_task_search" style="display:flex;justify-content:flex-end;">
216 - <img width="25px" id="wppm_project_search_filter_img" style="position: relative;top: 10px;left: 30px;" height="15px" src="<?php echo esc_url( WPPM_PLUGIN_URL . 'asset/images/search.svg'); ?>" alt="search">
217 - <input type="search" id="wppm_project_search_filter" style="margin-right:10px;" name="wppm_project_search_filter" class="form-control form-control-sm" aria-controls="selection-datatable" placeholder="<?php echo esc_attr__('Search','taskbuilder');?>" value="<?php echo (!empty($search_tag)) ? esc_attr($search_tag) : "" ?>">
218 - </div>
219 190 </div>
220 191 <script>
221 192 jQuery('#wppm-more-actions-btn, #wppm-bulk-actions-btn').gpopover({width: 200});
222 193 </script>
@@ -222,9 +193,9 @@
222 193 </script>
223 194 <div class="table-responsive">
224 195 <table id="wppm_project_table" class="wppm_table table">
225 196 <tr>
226 - <th class="wppm_table_header" style="background-color:<?php echo esc_attr($appearance_settings['list-header-background-color'])?>" onchange="wppm_bulk_select_change()">
197 + <th style="width: 45px;" onchange="wppm_bulk_select_change()">
227 198 <div class="checkbox-container">
228 199 <input id="wppm_bulk_select_option" class="wppm-bulk-selector" type="checkbox" onchange="wppm_bulk_select_change();"/>
229 200 <label for="wppm_bulk_select_option"></label>
230 201 </div>
@@ -286,100 +257,21 @@
286 257 FROM {$wpdb->prefix}wppm_task AS Task
287 258 Left join {$wpdb->prefix}wppm_project proj ON Task.project = proj.id
288 259 Left join {$wpdb->prefix}wppm_project_users proj_users ON Task.project = proj_users.proj_id
289 260 Left join {$wpdb->prefix}wppm_project_meta proj_meta ON proj.id = proj_meta.project_id
290 - where Task.project = '$pid' AND ((FIND_IN_SET('$current_user->ID',Task.users)>0) OR (Task.created_by= '$cu_id') OR (proj_users.user_id = '$cu_id' AND proj_users.role_id = 1 ) OR (proj.id = proj_meta.project_id AND proj_meta.meta_key='public_project' AND proj_meta.meta_value=1) OR ( Task.project = proj.id AND proj.created_by='$cu_id')) Group by Task.id ) AS Task");
261 + where Task.project = '$pid' AND ((FIND_IN_SET('$current_user->ID',Task.users)>0) OR (Task.created_by= '$current_user->ID') OR (proj_users.user_id = '$current_user->ID' AND proj_users.role_id = 1 ) OR (proj.id = proj_meta.project_id AND proj_meta.meta_key='public_project' AND proj_meta.meta_value=1) OR ( Task.project = proj.id AND proj.created_by='$current_user->ID')) Group by Task.id ) AS Task");
291 262 $no_of_tasks = $wpdb->get_var($query);
292 263 }
293 264 $no_of_tasks = apply_filters('wppm_no_of_task_proj_list_query',$no_of_tasks,$project->id);
294 265 }
295 266 if($wppm_project_time == 1){
296 - $psDate = new DateTime($project->start_date);
297 - $peDate = new DateTime($project->end_date);
298 - if($project->start_date=='0000-00-00 00:00:00'){
299 - if($wppm_date_setting=='Y-m-d H:i:s'){
300 - $proj_start_date = '0000-00-00 00:00:00';
301 - }elseif($wppm_date_setting=='d-m-Y H:i:s'){
302 - $proj_start_date = '00-00-0000 00:00:00';
303 - }elseif($wppm_date_setting=='m-d-Y H:i:s'){
304 - $proj_start_date = '00-00-0000 00:00:00';
305 - }else{
306 - $proj_start_date = '0000-00-00 00:00:00';
307 - }
308 - }if($project->end_date=='0000-00-00 00:00:00'){
309 - if($wppm_date_setting=='Y-m-d H:i:s'){
310 - $proj_end_date = '0000-00-00 00:00:00';
311 - }elseif($wppm_date_setting=='d-m-Y H:i:s'){
312 - $proj_end_date = '00-00-0000 00:00:00';
313 - }elseif($wppm_date_setting=='m-d-Y H:i:s'){
314 - $proj_end_date = '00-00-0000 00:00:00';
315 - }else{
316 - $proj_end_date = '0000-00-00 00:00:00';
317 - }
318 - }
319 - if($project->start_date!='0000-00-00 00:00:00'){
320 - if(!empty($wppm_date_setting)){
321 - $proj_start_date = $psDate->format($wppm_date_setting);
322 - }else{
323 - $proj_start_date = isset($project->start_date)? $project->start_date:"";
324 - }
325 - }
326 - if($project->end_date!='0000-00-00 00:00:00'){
327 - if(!empty($wppm_date_setting)){
328 - $proj_end_date = $peDate->format($wppm_date_setting);
329 - }else{
330 - $proj_end_date = isset($project->end_date) ? $project->end_date: "" ;
331 - }
332 - }
267 + $proj_start_date = $project->start_date;
268 + $proj_end_date = $project->end_date;
333 269 } elseif($wppm_project_time == 0){
334 270 $psDate = new DateTime($project->start_date);
335 271 $peDate = new DateTime($project->end_date);
336 272 $proj_start_date = $psDate->format('Y-m-d');
337 273 $proj_end_date = $peDate->format('Y-m-d');
338 - if($project->start_date=='0000-00-00 00:00:00'){
339 - if($wppm_date_setting=='Y-m-d H:i:s'){
340 - $proj_start_date = '0000-00-00';
341 - }elseif($wppm_date_setting=='d-m-Y H:i:s'){
342 - $proj_start_date = '00-00-0000';
343 - }elseif($wppm_date_setting=='m-d-Y H:i:s'){
344 - $proj_start_date = '00-00-0000';
345 - }else{
346 - $proj_start_date = '0000-00-00';
347 - }
348 - }
349 - if($project->end_date=='0000-00-00 00:00:00'){
350 - if($wppm_date_setting=='Y-m-d H:i:s'){
351 - $proj_end_date = '0000-00-00';
352 - }elseif($wppm_date_setting=='d-m-Y H:i:s'){
353 - $proj_end_date = '00-00-0000';
354 - }elseif($wppm_date_setting=='m-d-Y H:i:s'){
355 - $proj_end_date = '00-00-0000';
356 - }else{
357 - $proj_end_date = '0000-00-00';
358 - }
359 -
360 - }if($project->start_date!='0000-00-00 00:00:00'){
361 - if($wppm_date_setting=='Y-m-d H:i:s'){
362 - $proj_start_date = $psDate->format('Y-m-d');
363 - }elseif($wppm_date_setting=='d-m-Y H:i:s'){
364 - $proj_start_date = $psDate->format('d-m-Y');
365 - }elseif($wppm_date_setting=='m-d-Y H:i:s'){
366 - $proj_start_date = $psDate->format('m-d-Y');
367 - }else{
368 - $proj_start_date = $psDate->format('Y-m-d');
369 - }
370 - }
371 - if($project->end_date!='0000-00-00 00:00:00'){
372 - if($wppm_date_setting=='Y-m-d H:i:s'){
373 - $proj_end_date = $peDate->format('Y-m-d');
374 - }elseif($wppm_date_setting=='d-m-Y H:i:s'){
375 - $proj_end_date = $peDate->format('d-m-Y');
376 - }elseif($wppm_date_setting=='m-d-Y H:i:s'){
377 - $proj_end_date = $peDate->format('m-d-Y');
378 - }else{
379 - $proj_end_date = $peDate->format('Y-m-d');
380 - }
381 - }
382 274 }
383 275 ?>
384 276 <tr onclick="if(link)wppm_open_project(<?php echo esc_attr($project->id) ?>)">
385 277 <td class="bulk-selector" onmouseover="link=false;" onmouseout="link=true;">
@@ -418,18 +310,12 @@
418 310 </a>
419 311 <?php } ?>
420 312 </td>
421 313 <td onmouseover="link=true;" class="wppm_table_td"><?php echo isset($category) ? esc_html_e($category,'taskbuilder'): "" ?></td>
422 - <?php if($wppm_default_project_date==1){
423 - ?>
314 + <?php if($wppm_default_project_date==1){ ?>
424 315 <td onmouseover="link=true;" class="wppm_table_td"><?php echo isset($proj_start_date) ? esc_html($proj_start_date): "" ?></td>
425 - <?php
426 - if(!empty($proj_end_date) && $project->status!=4 && $proj_end_date < $current_date && ($proj_end_date != '0000-00-00 00:00:00' && $proj_end_date != '00-00-0000 00:00:00' && $proj_end_date != '00-00-0000' && $proj_end_date != '0000-00-00')) {
427 - $style = "color:#FF0000";
428 - } else {
429 - $style = "color:#2C3E50";
430 - } ?>
431 - <td onmouseover="link=true;" class="wppm_table_td"><span style="<?php echo esc_attr($style); ?>"><?php echo isset($proj_end_date) ? esc_html($proj_end_date):"" ?></span></td>
316 + <?php $style = ($project->status!=4 && $proj_end_date < $current_date) ? "color:#FF0000":"color:#2C3E50"; ?>
317 + <td onmouseover="link=true;" class="wppm_table_td"><span style="<?php echo esc_attr($style); ?>"><?php echo isset($proj_end_date) ? esc_html($proj_end_date):"" ?></td></span>
432 318 <?php } ?>
433 319 <td onmouseover="link=true;" class="wppm_table_td"><?php echo isset($no_of_tasks) ? esc_html($no_of_tasks):"" ?></td>
434 320 <td onmouseover="link=true;" class="wppm_delete_action">
435 321 <?php $style = (($current_user->ID && $current_user->has_cap('manage_options')) || ($wppmfunction->has_project_permission('delete_project',esc_attr($project->id))) || $wppm_current_user_capability == 'wppm_admin' || ($proejctdata['created_by']==$current_user->ID && $wppm_current_user_capability == 'wppm_manager') )? "display:inline":"display:none"; ?>