/** * Control all status */ function dwqa_question_print_status($question_id, $echo = true) { $status = get_post_meta($question_id, '_dwqa_status', true); if ($status == 'open' || $status == 're-open') { if (dwqa_is_answered($question_id, $status)) { $status = 'answered'; update_post_meta($question_id, '_dwqa_status', 'answered'); } elseif (dwqa_is_new($question_id, $status)) { $status .= ' status-new'; } elseif (dwqa_current_user_can('edit_question') && dwqa_is_overdue($question_id)) { // Add overdue alert for admin $status .= ' status-overdue'; } } if ($echo) { echo '<span data-toggle="tooltip" data-placement="left" title="' . strtoupper($status) . '" class="dwqa-status status-' . $status . '">' . strtoupper($status) . '</span>'; } return '<span data-toggle="tooltip" data-placement="left" class="entry-status title="' . strtoupper($status) . '" status-' . $status . '">' . strtoupper($status) . '</span>'; }
function dwqa_is_overdue($question_id) { global $dwqa_general_settings; $created_date = get_post_time('U', false, $question_id); $days = isset($dwqa_general_settings['question-overdue-time-frame']) ? (int) $dwqa_general_settings['question-new-time-frame'] : 2; $days = -$days; if ($created_date < strtotime($days . ' days') && !dwqa_is_answered($question_id)) { return true; } return false; }