function initMyProjectLayout($role)
{
    $title = hasRole(array(_STUDENT_TYPE)) ? t('My accepted project') : t('My accepted projects');
    drupal_set_title($title);
    switch ($role) {
        case _STUDENT_TYPE:
            getSingleAcceptedProjectView(Agreement::getInstance()->getSingleStudentsAgreement(true));
            break;
        case _SUPERVISOR_TYPE:
        case _INSTADMIN_TYPE:
        case _MENTOR_TYPE:
        case _ORGADMIN_TYPE:
            getListView();
            break;
    }
}
Beispiel #2
0
function showAgreement($agreement = '')
{
    if (!$agreement) {
        $agreement = Agreement::getInstance()->getSingleStudentsAgreement(true);
    }
    $nr = 1;
    $tab_id_prefix = 'agree_page-';
    $data = array();
    $tabs = array("'{$tab_id_prefix}1'");
    //we pass on the buttons=0 since we have the buttons as tabs
    $data[] = array(2, 'Agreement', 'view', _AGREEMENT_OBJ, $agreement->agreement_id, "buttons=0");
    $next_tab = 2;
    //[number of tabs, label start, tab id start, type, data, id, render targets, active target content, active tab]
    echo renderTabs($nr, '', $tab_id_prefix, _AGREEMENT_OBJ, $data, $agreement->agreement_id, TRUE, renderAgreement(_AGREEMENT_OBJ, $agreement, null, "{$tab_id_prefix}1", false), 1, _AGREEMENT_OBJ);
    ?>
	    <script type="text/javascript">
			activatetabs('tab_', [<?php 
    echo implode(',', $tabs);
    ?>
]);
		</script>
	    <?php 
}
                                    // email (mentor) - rejected OFFER - project is therefore reopened and he should choose another proposal
                                    // email this proposal (student & supervisor) to say that the project has reopended and the mentor can choose another, possibly theirs
                                    notify_all_of_project_offer_rejection($single_proposal_for_unaccepted_project, $proposal_id, false);
                                }
                                //Proposal::getInstance()->updateProposal($update_props, $proposal_id); //uncomment to set this after testing *********
                                Project::getInstance()->changeProject($update_props, $project_id);
                                //uncomment to set this after testing *********
                            }
                            // else - the proposal was owned by this student but had not been either set as interim OR OFFER - so do nothing
                            // as we have now set this proposal.state as 'archived' so the mentor cannot choose it in the UI. (TODO - implement that bit)
                        }
                    }
                }
                // next create the initial agreement entity in the db
                $a_props = array();
                $a_props['proposal_id'] = $proposal_id;
                $agreement = Agreement::getInstance()->insertAgreement($a_props);
                echo getAcceptedProjectResponse();
            } else {
                echo t('Only the proposal owner can accept this project offer.');
            }
        } else {
            echo t('No proposal or project Id found in request.');
        }
        break;
    case 'show':
        // THIS IS A PLACEHOLDER
        break;
    default:
        echo "No such action: " . $_GET['action'];
}
        break;
    case 'list_search':
        if (Users::isSuperVisor()) {
            //Return result to jTable
            $recs = Agreement::getInstance()->getAgreementsForSupervisorBySearchCriteria(true, $_GET["jtSorting"], $_GET["jtStartIndex"], $_GET["jtPageSize"]);
            $cnt = Agreement::getInstance()->getProjectAgreementsRowCount($GLOBALS['user']->uid, '');
        } else {
            if (Users::isMentor()) {
                $recs = Agreement::getInstance()->getAgreementsForMentorBySearchCriteria(true, $_GET["jtSorting"], $_GET["jtStartIndex"], $_GET["jtPageSize"]);
                $cnt = Agreement::getInstance()->getProjectAgreementsRowCount('', $GLOBALS['user']->uid);
            }
        }
        jsonGoodResultJT($recs, $cnt);
        break;
    case 'render_project_for_id':
        $id = altSubValue($_POST, 'id');
        $target = altSubValue($_POST, 'target', '');
        $agreement = Agreement::getInstance()->getSingleAgreementById($id, true);
        echo getSingleAcceptedProjectView($agreement);
        break;
    case 'render_agreement_for_id':
        $id = altSubValue($_POST, 'id');
        $target = altSubValue($_POST, 'target', '');
        $agreement = Agreement::getInstance()->getSingleAgreementById($id, true);
        echo "<div id='admin_container' class='tabs_container'>";
        echo showAgreement($agreement);
        echo "</div>";
        break;
    default:
        echo "No such action: " . $_GET['action'];
}