/** * Define constants and load the plugin */ function cleverness_todo_loader() { if (!defined('CTDL_DB_VERSION')) { define('CTDL_DB_VERSION', '3.4'); } // also update in cleverness_todo_activation at the bottom of this file if (!defined('CTDL_PLUGIN_VERSION')) { define('CTDL_PLUGIN_VERSION', '3.4.2'); } if (!defined('CTDL_FILE')) { define('CTDL_FILE', __FILE__); } if (!defined('CTDL_BASENAME')) { define('CTDL_BASENAME', plugin_basename(__FILE__)); } if (!defined('CTDL_PLUGIN_DIR')) { define('CTDL_PLUGIN_DIR', plugin_dir_path(__FILE__)); } if (!defined('CTDL_PLUGIN_URL')) { define('CTDL_PLUGIN_URL', plugins_url('', __FILE__)); } $language_path = plugin_basename(dirname(__FILE__) . '/languages'); load_plugin_textdomain('cleverness-to-do-list', '', $language_path); include_once 'includes/cleverness-to-do-list-loader.class.php'; CTDL_Loader::init(); if (!defined('CTDL_PP')) { if (in_array('post-planner/post-planner.php', apply_filters('active_plugins', get_option('active_plugins'))) && CTDL_Loader::$settings['post_planner'] == 1) { define('CTDL_PP', true); } else { define('CTDL_PP', false); } } $action = ''; if (isset($_GET['action'])) { $action = $_GET['action']; } if (isset($_POST['action'])) { $action = $_POST['action']; } switch ($action) { case 'addtodo': CTDL_Lib::insert_todo(); break; case 'updatetodo': CTDL_Lib::edit_todo(); break; case 'completetodo': $cleverness_todo_complete_nonce = $_REQUEST['_wpnonce']; if (!wp_verify_nonce($cleverness_todo_complete_nonce, 'todocomplete')) { die(__('Security check failed', 'cleverness-to-do-list')); } CTDL_Lib::complete_todo(absint($_GET['id']), 1); break; case 'uncompletetodo': $cleverness_todo_complete_nonce = $_REQUEST['_wpnonce']; if (!wp_verify_nonce($cleverness_todo_complete_nonce, 'todocomplete')) { die(__('Security check failed', 'cleverness-to-do-list')); } CTDL_Lib::complete_todo(absint($_GET['id']), 0); break; case 'purgetodo': CTDL_Lib::delete_all_completed_todos(); break; case 'deletetables': CTDL_Lib::delete_tables(); break; case 'deletealltodos': CTDL_Lib::delete_all_todos(); break; } }
/** * Update to-do list Ajax callback * @static * @since 1.1 */ public static function update_todolist_callback() { check_ajax_referer('postplanner'); $todo_id = absint($_POST['postplanner_item_id']); $todo_status = absint($_POST['postplanner_item_status']); $permission = CTDL_Lib::check_permission('todo', 'complete'); if ($permission === true) { CTDL_Lib::complete_todo(absint($todo_id), $todo_status); $status = 1; } else { $status = -1; } echo $status; die; // this is required to return a proper result }