PageRenderTime 39ms CodeModel.GetById 12ms RepoModel.GetById 0ms app.codeStats 1ms

/blog/wp-content/plugins/collabpress/cp-core/cp-core-isset.php

https://github.com/kennethreitz-archive/wordpress-skeleton
PHP | 301 lines | 195 code | 76 blank | 30 comment | 12 complexity | bf5bc9aa667045524677fcf9d1333f94 MD5 | raw file
  1. <?php
  2. // Add Task
  3. if ( isset($_POST['cp_add_task_button']) ) {
  4. check_admin_referer('cp-add-task');
  5. global $wpdb, $current_user, $cp_email_footer;
  6. $cp_auth = $current_user->ID;
  7. $cp_users = esc_html($_POST['user']);
  8. $cp_date = current_time('mysql');
  9. $cp_title = esc_html($_POST['cp_title']);
  10. $cp_details = esc_html($_POST['cp_details']);
  11. $cp_due_date = $_POST['cp_tasks_due_month'] ."-". $_POST['cp_tasks_due_day'] ."-". $_POST['cp_tasks_due_year'];
  12. $cp_add_title = get_cp_project_title($_POST['cp_add_tasks_project']);
  13. $cp_add_tasks_project = esc_html($_POST['cp_add_tasks_project']);
  14. $table_name = $wpdb->prefix . "cp_tasks";
  15. $results = $wpdb->insert($table_name, array('proj_id' => $cp_add_tasks_project, 'auth' => $cp_auth,
  16. 'users' => $cp_users, 'date' => $cp_date, 'title' => $cp_title, 'details' => $cp_details, 'due_date' => $cp_due_date ) );
  17. // Retrieve newly created record ID
  18. $lastid = $wpdb->insert_id;
  19. // Add activity log record
  20. insert_cp_activity($cp_auth, $cp_date, 'added', $cp_title, 'task', $lastid);
  21. // Check if email notifications is enabled
  22. //if (get_option('cp_email_config')) {
  23. if (isset($_POST['notify'])) {
  24. // Send email to user assigned to task
  25. $user_info = get_userdata($cp_users);
  26. $cp_email = $user_info->user_email;
  27. $cp_subject = 'CollabPress: New task assigned to you';
  28. $cp_message = "Project: " .$cp_add_title."\n\n";
  29. $cp_message .= "You have just been assigned the following task by ".$current_user->display_name. "\n\n";
  30. $cp_message .= "Title: " .$cp_title ."\n";
  31. $cp_message .= "Details: " .$cp_details ."\n\n";
  32. $cp_message .= "To view this task visit:\n";
  33. $cp_message .= get_bloginfo('siteurl') . '/wp-admin/admin.php?page=cp-projects-page&view=project&project='.$cp_add_tasks_project;
  34. $cp_message .= $cp_email_footer;
  35. // WP_Mail()
  36. wp_mail($cp_email, $cp_subject, $cp_message);
  37. }
  38. ?>
  39. <div class="updated">
  40. <p><strong><?php _e('Task Added', 'collabpress'); ?></strong></p>
  41. </div>
  42. <?php
  43. }
  44. // Delete Task
  45. if(isset($_GET['delete-task']))
  46. {
  47. check_admin_referer('cp-action-delete_task');
  48. delete_cp_task($_GET['delete-task']);
  49. ?>
  50. <div class="error">
  51. <p><strong><?php _e( 'Task Deleted', 'collabpress' ); ?></strong></p>
  52. </div>
  53. <?php
  54. }
  55. // Complete Task
  56. if(isset($_GET['completed-task']))
  57. {
  58. global $current_user;
  59. $cp_auth = $current_user->ID;
  60. $cp_date = date("Y-m-d H:m:s");
  61. check_admin_referer('cp-action-complete_task');
  62. update_cp_task($_GET['completed-task'], '1');
  63. // Add to activity stream
  64. insert_cp_activity($cp_auth, $cp_date, 'completed', get_cp_task_title($_GET['completed-task']), 'task', get_cp_task_project_id($_GET['completed-task']));
  65. ?>
  66. <div class="updated">
  67. <p><strong><?php _e( 'Task Completed', 'collabpress' ); ?></strong></p>
  68. </div>
  69. <?php
  70. }
  71. // Uncomplete Task
  72. if(isset($_GET['reopened-task']))
  73. {
  74. global $current_user;
  75. $cp_auth = $current_user->ID;
  76. $cp_date = date("Y-m-d H:m:s");
  77. check_admin_referer('cp-action-uncomplete_task');
  78. update_cp_task($_GET['reopened-task'], '0');
  79. // Add to activity stream
  80. insert_cp_activity($cp_auth, $cp_date, 'reopened', get_cp_task_title($_GET['reopened-task']), 'task', get_cp_task_project_id($_GET['reopened-task']));
  81. ?>
  82. <div class="updated">
  83. <p><strong><?php _e( 'Task Status Updated', 'collabpress' ); ?></strong></p>
  84. </div>
  85. <?php
  86. }
  87. // Add Project
  88. if ( isset($_POST['cp_add_project_submit']) ) {
  89. check_admin_referer('cp-add-project');
  90. global $wpdb, $current_user;
  91. $cp_project_auth = $current_user->ID;
  92. $cp_project_date = date("Y-m-d H:m:s");
  93. $cp_project_title = esc_html($_POST['cp_project_title']);
  94. $cp_project_details = esc_html($_POST['cp_project_details']);
  95. $table_name = $wpdb->prefix . "cp_projects";
  96. $results = $wpdb->insert($table_name, array('auth' => $cp_project_auth, 'date' => $cp_project_date,
  97. 'title' => $cp_project_title, 'details' => $cp_project_details ) );
  98. // Retrieve newly created record id
  99. $lastid = $wpdb->insert_id;
  100. // Add activity log record
  101. insert_cp_activity($cp_project_auth, $cp_project_date, 'created', $cp_project_title, 'project', $lastid);
  102. ?>
  103. <div class="updated">
  104. <p><strong><?php _e($cp_project_title.' has been created. Click <a href="admin.php?page=cp-projects-page&view=project&project='.$lastid.'">here</a> to manage this project.', 'collabpress'); ?></strong></p>
  105. </div>
  106. <?php
  107. }
  108. // Edit Project
  109. if ( isset($_POST['cp_edit_project_submit']) ) {
  110. check_admin_referer('cp-edit-project');
  111. global $wpdb, $current_user;
  112. $cp_edit_project_auth = $current_user->ID;
  113. $cp_edit_project_date = date("Y-m-d H:m:s");
  114. $cp_edit_project_id = esc_html($_POST['cp_edit_project_id']);
  115. $cp_edit_project_title = esc_html($_POST['cp_edit_project_title']);
  116. $cp_edit_project_details = esc_html($_POST['cp_edit_project_details']);
  117. $table_name = $wpdb->prefix . "cp_projects";
  118. $results = $wpdb->query("UPDATE $table_name SET title = '".$cp_edit_project_title."', details = '".$cp_edit_project_details."' WHERE id = '".$cp_edit_project_id."'");
  119. // Add activity log record
  120. insert_cp_activity($cp_edit_project_auth, $cp_edit_project_date, 'edited', $cp_edit_project_title, 'project', $cp_edit_project_id);
  121. ?>
  122. <div class="updated">
  123. <p><strong><?php _e( 'Project edited. <a href="admin.php?page=cp-projects-page&view=project&project='.$cp_edit_project_id.'">back</a>', 'collabpress' ); ?></strong></p>
  124. </div>
  125. <?php
  126. }
  127. // Edit Task
  128. if ( isset($_POST['cp_edit_task_button']) ) {
  129. check_admin_referer('cp-edit-task');
  130. global $wpdb, $current_user;
  131. $cp_edit_task_id = esc_html($_POST['cp_edit_task_id']);
  132. $cp_auth = $current_user->ID;
  133. $cp_users = esc_html($_POST['user']);
  134. $cp_date = date("Y-m-d H:m:s");
  135. $cp_title = esc_html($_POST['cp_title']);
  136. $cp_details = esc_html($_POST['cp_details']);
  137. $cp_due_date = $_POST['cp_tasks_due_month'] ."-". $_POST['cp_tasks_due_day'] ."-". $_POST['cp_tasks_due_year'];
  138. $cp_add_tasks_project = esc_html($_POST['cp_add_tasks_project']);
  139. $table_name = $wpdb->prefix . "cp_tasks";
  140. $results = $wpdb->query("UPDATE $table_name SET proj_id = '".$cp_add_tasks_project."', auth = '".$cp_auth."', users = '".$cp_users."', date = '".$cp_date."', title = '".$cp_title."', details = '".$cp_details."', due_date = '".$cp_due_date."' WHERE id = '".$cp_edit_task_id."'");
  141. // Add activity log record
  142. insert_cp_activity($cp_auth, $cp_date, 'edited', $cp_title, 'task', $cp_edit_task_id);
  143. ?>
  144. <div class="updated">
  145. <p><strong><?php _e('Task Edited. <a href="admin.php?page=cp-projects-page&view=project&project=' . $cp_add_tasks_project . '">back</a>', 'collabpress'); ?></strong></p>
  146. </div>
  147. <?php
  148. }
  149. // Delete Project
  150. if(isset($_GET['delete-project']))
  151. {
  152. check_admin_referer('cp-action-delete_project');
  153. delete_cp_project($_GET['delete-project']);
  154. ?>
  155. <div class="error">
  156. <p><strong><?php _e( 'Project Deleted', 'collabpress' ); ?></strong></p>
  157. </div>
  158. <?php
  159. }
  160. // Add a comment
  161. if ( isset($_POST['cp_add_comment_button']) ) {
  162. check_admin_referer('cp-add-task-comment');
  163. global $wpdb, $current_user, $cp_email_footer;
  164. // Load task data
  165. $cp_task_id = intval($_POST['cp_task_id']);
  166. $task_data = get_taskdata($cp_task_id);
  167. // Load project data
  168. $cp_project_id = get_cp_task_project_id($cp_task_id);
  169. $project_data = get_projectdata($cp_project_id);
  170. $cp_task_comment = esc_html($_POST['cp_task_comment']);
  171. $cp_task_title = $task_data->title;
  172. $cp_project_title = $project_data->title;
  173. $cp_date = current_time('mysql');
  174. $cp_auth = $current_user->ID;
  175. $cp_users = esc_html($_POST['cp_author_id']);
  176. $table_name = $wpdb->prefix . "cp_tasksmeta";
  177. $results = $wpdb->insert($table_name, array('task_id' => $cp_task_id, 'auth' => $cp_auth, 'meta_key' => 'comment', 'meta_value' => $cp_task_comment, 'date' => $cp_date ) );
  178. // Add activity log record
  179. insert_cp_activity($cp_auth, $cp_date, 'added', $cp_task_title, 'comment', $cp_task_id);
  180. // Check if email notifications is enabled
  181. if (isset($_POST['notify'])) {
  182. // Send email to user assigned to task
  183. $user_info = get_userdata($cp_users);
  184. $cp_email = $user_info->user_email;
  185. $cp_subject = 'CollabPress: New comment on task';
  186. $cp_message = "Project: " .$cp_project_title."\n";
  187. $cp_message .= "Task: " .$cp_task_title."\n\n";
  188. $cp_message .= $current_user->display_name." commented on a task:\n";
  189. $cp_message .= $cp_task_comment ."\n\n";
  190. $cp_message .= "To view this task visit:\n";
  191. $cp_message .= get_bloginfo('siteurl') . '/wp-admin/admin.php?page=cp-dashboard-page&view=task&task_id='.$cp_task_id;
  192. $cp_message .= $cp_email_footer;
  193. // WP_Mail()
  194. wp_mail($cp_email, $cp_subject, $cp_message);
  195. }
  196. ?>
  197. <div class="updated">
  198. <p><strong><?php _e('Comment Added', 'collabpress'); ?></strong></p>
  199. </div>
  200. <?php
  201. }
  202. // Uninstall CollabPress
  203. if ( isset($_POST['cp_uninstall_task_button']) ) {
  204. check_admin_referer('cp-uninstall');
  205. global $wpdb;
  206. // Delete Options
  207. delete_option('cp_db_version');
  208. delete_option('cp_email_config');
  209. delete_option('cp_user_level');
  210. // Delete Tables
  211. $cp_activity = $wpdb->prefix."cp_activity";
  212. $wpdb->query("DROP TABLE IF EXISTS $cp_activity");
  213. $cp_projects = $wpdb->prefix."cp_projects";
  214. $wpdb->query("DROP TABLE IF EXISTS $cp_projects");
  215. $cp_tasks = $wpdb->prefix."cp_tasks";
  216. $wpdb->query("DROP TABLE IF EXISTS $cp_tasks");
  217. $cp_tasksmeta = $wpdb->prefix."cp_tasksmeta";
  218. $wpdb->query("DROP TABLE IF EXISTS $cp_tasksmeta");
  219. ?>
  220. <div class="updated">
  221. <p><strong><?php _e('CollabPress has been successfully uninstalled. Visit <a href="plugins.php">here</a> to deactivate this plugin.', 'collabpress'); ?></strong></p>
  222. </div>
  223. <?php
  224. }
  225. ?>