/**
  * 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'));
 }