Example #1
0
<?php

$project = BP_GTM_Projects::get_project_by_id($bp->action_variables[2]);
if (empty($project)) {
    echo '<h4>' . __('Error - 404', 'bp_gtm') . '</h4>';
    echo '<p>' . __('There is no project in the database with such ID. Please go to the main projects list.', 'bp_gtm') . '</p>';
    bp_gtm_view_list_button($gtm_link);
}
?>

<?php 
//print_var($project);
?>
<div id="message" class="error"></div>
<div id="topic-meta">
    <h3>#P<?php 
echo $project['0']->id;
?>
 &rarr;<?php 
bp_gtm_view_link($project['0']->id, $project['0']->name, $gtm_link, 'project');
?>
 <?php 
if (!empty($project_done)) {
    echo $project_done;
}
?>
</h3>
    <?php 
bp_gtm_view_list_button($gtm_link);
?>
    <?php 
function bp_gtm_done_item()
{
    global $bp, $wpdb;
    if ($_GET['doneAction'] == 'done') {
        if ($_GET['doneType'] == 'projects') {
            $wpdb->query($wpdb->prepare("UPDATE " . $bp->gtm->table_projects . " SET `done` = '1' WHERE `id` = %d AND `group_id` = %d", $_GET['doneID'], $bp->groups->current_group->id));
            $wpdb->query($wpdb->prepare("UPDATE " . $bp->gtm->table_tasks . " SET `done` = '1' WHERE `project_id` = %d AND `group_id` = %d", $_GET['doneID'], $bp->groups->current_group->id));
            $project = BP_GTM_Projects::get_project_by_id($_GET['doneID']);
            $resps = explode(' ', $project['0']->resp_id);
            foreach ($resps as $resp) {
                if ($resp != '') {
                    $resp_id = bp_core_get_userid($resp);
                    if ($resp_id != $bp->loggedin_user->id) {
                        bp_core_add_notification($_GET['doneID'], $resp_id, $bp->gtm->slug, 'project_done', $bp->groups->current_group->id);
                    }
                }
            }
        } elseif ($_GET['doneType'] == 'tasks') {
            $wpdb->query($wpdb->prepare("UPDATE " . $bp->gtm->table_tasks . " SET `done` = '1' WHERE `id` = %d AND `group_id` = %d", $_GET['doneID'], $bp->groups->current_group->id));
            $wpdb->query($wpdb->prepare("UPDATE " . $bp->gtm->table_tasks . " SET `done` = '1' WHERE `parent_id` = %d AND `group_id` = %d", $_GET['doneID'], $bp->groups->current_group->id));
            $task = BP_GTM_Tasks::get_task_by_id($_GET['doneID']);
            $resps = explode(' ', $task['0']->resp_id);
            foreach ($resps as $resp) {
                if ($resp != '') {
                    $resp_id = bp_core_get_userid($resp);
                    if ($resp_id != $bp->loggedin_user->id) {
                        bp_core_add_notification($_GET['doneID'], $resp_id, $bp->gtm->slug, 'task_done', $bp->groups->current_group->id);
                    }
                }
            }
        }
    } elseif ($_GET['doneAction'] == 'undone') {
        if ($_GET['doneType'] == 'projects') {
            $wpdb->query($wpdb->prepare("UPDATE " . $bp->gtm->table_projects . " SET `done` = '0' WHERE `id` = %d AND `group_id` = %d", $_GET['doneID'], $bp->groups->current_group->id));
            //         $wpdb->query( $wpdb->prepare("UPDATE ".$bp->gtm->table_tasks." SET `done` = '0' WHERE `project_id` = %d AND `group_id` = %d", $_GET['doneID'], $bp->groups->current_group->id));
            $project = BP_GTM_Projects::get_project_by_id($_GET['doneID']);
            $resps = explode(' ', $project['0']->resp_id);
            foreach ($resps as $resp) {
                if ($resp != '') {
                    $resp_id = bp_core_get_userid($resp);
                    if ($resp_id != $bp->loggedin_user->id) {
                        bp_core_add_notification($_GET['doneID'], $resp_id, $bp->gtm->slug, 'project_undone', $bp->groups->current_group->id);
                    }
                }
            }
        } elseif ($_GET['doneType'] == 'tasks') {
            $wpdb->query($wpdb->prepare("UPDATE " . $bp->gtm->table_tasks . " SET `done` = '0' WHERE `id` = %d AND `group_id` = %d", $_GET['doneID'], $bp->groups->current_group->id));
            $task = BP_GTM_Tasks::get_task_by_id($_GET['doneID']);
            $resps = explode(' ', $task['0']->resp_id);
            foreach ($resps as $resp) {
                if ($resp != '') {
                    $resp_id = bp_core_get_userid($resp);
                    if ($resp_id != $bp->loggedin_user->id) {
                        bp_core_add_notification($_GET['doneID'], $resp_id, $bp->gtm->slug, 'task_undone', $bp->groups->current_group->id);
                    }
                }
            }
        }
    }
    return true;
}