/** * Show category heading only if it's the first item from that category * @param $categories * @param $list_type * @param int $completed */ protected function show_category_headings($categories, $list_type, $completed = 0) { $class = $completed == 0 ? 'todolist' : 'todolist todolist-completed'; static $i = 0; if (CTDL_Loader::$settings['categories'] == 1 && $categories != false) { foreach ($categories as $category) { $cat = CTDL_Categories::get_category_name($category->term_id); if ($this->cat_id != $category->term_id && $cat != '') { if ($this->cat_id != '') { $this->list .= '</' . $list_type . '>'; } $this->list .= '<h4 class="todo-category-heading">' . esc_html($cat) . '</h4><' . $list_type . ' class="' . $class . '">'; $this->cat_id = $category->term_id; } } } elseif ($categories == false && $i == 0) { if ($this->cat_id != '') { $this->list .= '</' . $list_type . '>'; } $this->list .= '<' . $list_type . ' class="' . $class . '">'; $i++; } elseif ($categories == false && $completed == 1 && $i == 1) { if ($this->cat_id != '') { $this->list .= '</' . $list_type . '>'; } $this->list .= '<' . $list_type . ' class="' . $class . '">'; $i++; } }
/** * Send an email to assigned user * @static * @param $assign * @param $deadline * @param int $category * @param int $planner */ protected static function email_user($assign, $deadline, $category = 0, $planner = 0) { global $current_user; get_currentuserinfo(); add_filter('wp_mail_content_type', array('CTDL_Lib', 'set_html_email')); $priority = $_POST['cleverness_todo_priority']; $todo_text = $_POST['cleverness_todo_description']; $priority_array = array(0 => CTDL_Loader::$settings['priority_0'], 1 => CTDL_Loader::$settings['priority_1'], 2 => CTDL_Loader::$settings['priority_2']); if ($category != 0 && $category != -1) { $category_name = CTDL_Categories::get_category_name($category); } if (is_array($assign)) { foreach ($assign as $assign_value) { if (current_user_can(CTDL_Loader::$settings['assign_capability']) && $assign_value != '' && $assign_value != '-1' && $assign_value != '0') { $headers = 'From: ' . CTDL_Loader::$settings['email_from'] . ' <' . CTDL_Loader::$settings['email_from_email'] . '>' . "\r\n\\"; $subject = CTDL_Loader::$settings['email_subject']; if (CTDL_Loader::$settings['email_category'] == 1 && $category != 0 && $category != -1) { $subject .= ' - ' . $category_name; } $assign_user = get_userdata($assign_value); $email = $assign_user->user_email; $email_message = CTDL_Loader::$settings['email_text'] . "<br>"; $email_message .= "<br>" . __('Priority', 'cleverness-to-do-list') . ': ' . $priority_array[$priority] . "<br>"; if (CTDL_Loader::$settings['email_show_assigned_by'] == 1) { $email_message .= "<br>" . __('From', 'cleverness-to-do-list') . ': ' . $current_user->display_name . ' (' . $current_user->user_email . ')' . "<br>"; } if ($category != 0 && $category != -1) { $email_message .= __('Category', 'cleverness-to-do-list') . ': ' . $category_name . "<br>"; } if ($deadline != '' && $deadline != 0) { $email_message .= __('Deadline:', 'cleverness-to-do-list') . ' ' . date(CTDL_Loader::$settings['date_format'], strtotime($deadline)) . "<br>"; } if (CTDL_Loader::$settings['post_planner'] == 1 && $planner != 0) { $url = admin_url('post.php?post=' . absint($planner) . '&action=edit'); $email_message .= esc_html__('Post Planner', 'post-planner') . ': <a href="' . $url . '">' . esc_html__('View', 'cleverness-to-do-list') . "</a><br>"; } $email_message .= __('To-Do:', 'cleverness-to-do-list') . ' ' . $todo_text . "<br>"; wp_mail($email, $subject, $email_message, $headers); } } } else { if (current_user_can(CTDL_Loader::$settings['assign_capability']) && $assign != '' && $assign != '-1' && $assign != '0') { $headers = 'From: ' . CTDL_Loader::$settings['email_from'] . ' <' . get_bloginfo('admin_email') . '>' . "\r\n\\"; $subject = CTDL_Loader::$settings['email_subject']; if (CTDL_Loader::$settings['email_category'] == 1 && $category != 0 && $category != -1) { $subject .= ' - ' . $category_name; } $assign_user = get_userdata($assign); $email = $assign_user->user_email; $email_message = CTDL_Loader::$settings['email_text'] . "<br>"; $email_message .= "<br>" . __('Priority', 'cleverness-to-do-list') . ': ' . $priority_array[$priority] . "<br>"; if (CTDL_Loader::$settings['email_show_assigned_by'] == 1) { $email_message .= "<br>" . __('From', 'cleverness-to-do-list') . ': ' . $current_user->display_name . ' (' . $current_user->user_email . ')' . "<br>"; } if ($category != 0 && $category != -1) { $email_message .= __('Category', 'cleverness-to-do-list') . ': ' . $category_name . "<br>"; } if ($deadline != '') { $email_message .= __('Deadline:', 'cleverness-to-do-list') . ' ' . date(CTDL_Loader::$settings['date_format'], strtotime($deadline)) . "<br>"; } if (CTDL_Loader::$settings['post_planner'] == 1 && $planner != 0) { $url = admin_url('post.php?post=' . absint($planner) . '&action=edit'); $email_message .= esc_html__('Post Planner URL', 'post-planner') . ': ' . $url . "<br>"; } $email_message .= __('To-Do:', 'cleverness-to-do-list') . ' ' . $todo_text . "<br>"; wp_mail($email, $subject, $email_message, $headers); } } remove_filter('wp_mail_content_type', array('CTDL_Lib', 'set_html_email')); }