Пример #1
0
 public function testDeleteShouldReturnTrueWhenIdIsProvided()
 {
     $project = new ThriveProject();
     $post_id = $this->factory->post->create(array('post_title' => 'Test C12ase', 'post_type' => 'project'));
     $project->set_id($post_id);
     $this->assertTrue($project->delete(), 'ID');
     $this->assertNotEmpty($project->get_id());
 }
Пример #2
0
function task_breaker_transactions_delete_project()
{
    require_once plugin_dir_path(__FILE__) . '../models/project.php';
    $project = new ThriveProject();
    $project_id = filter_input(INPUT_POST, 'id', FILTER_VALIDATE_INT);
    $project->set_id(absint($project_id));
    $redirect = home_url();
    if (!task_breaker_can_delete_project($project_id)) {
        task_breaker_api_message(array('message' => 'fail', 'response' => __("Permission Denied. Unauthorized.")));
        return;
    }
    if ($project->delete()) {
        // Get the projects page permalink
        $bp_options_pages = get_option('bp-pages');
        if (!empty($bp_options_pages) && is_array($bp_options_pages)) {
            $project_page_id = $bp_options_pages['projects'];
            if (!empty($project_page_id)) {
                $redirect = get_permalink($project_page_id);
            }
        }
        task_breaker_api_message(array('message' => 'success', 'redirect' => $redirect));
    } else {
        task_breaker_api_message(array('message' => 'failure'));
    }
    return;
}