Пример #1
0
function test_requests_for_url($url, $context_type, $context_id)
{
    global $signer;
    $insert_result = create_request($url, $signer, $context_type, $context_id, RQ_REQUEST_TYPE::JOIN, 'foobar', '');
    error_log("IR = " . print_r($insert_result, true));
    $request_id = $insert_result;
    $rows = get_requests_for_context($url, $signer, $context_type, $context_id);
    dump_rows($rows);
    $rows = get_requests_by_user($url, $signer, $signer->account_id, $context_type, $context_id);
    dump_rows($rows);
    $row = get_request_by_id($url, $signer, $request_id, $context_type);
    dump_row($row);
    $num_pending = get_number_of_pending_requests_for_user($url, $signer, $signer->account_id, $context_type, $context_id);
    error_log("Num_pending(pre) = " . print_r($num_pending, true));
    $pending = get_pending_requests_for_user($url, $signer, $signer->account_id, $context_type, $context_id);
    dump_rows($pending);
    resolve_pending_request($url, $signer, $context_type, $request_id, RQ_REQUEST_STATUS::APPROVED, 'resolved');
    $num_pending = get_number_of_pending_requests_for_user($url, $signer, $signer->account_id, $context_type, $context_id);
    error_log("Num_pending(post) = " . print_r($num_pending, true));
}
Пример #2
0
         $project_expiration_dt = new DateTime($project_expiration);
         $slice_project_name = $project[PA_PROJECT_TABLE_FIELDNAME::PROJECT_NAME];
     }
     // For printing out "next resource expires in N days"
     $slivers = lookup_sliver_info_by_slice($sa_url, $user, $slice_urn);
     $next_resource_exp_date = get_next_resource_expiration($slivers);
     $max_renewal_days = get_max_renewal_days($project_expiration);
     $slice_boxes .= make_slice_box($slice_name, $slice_id, $slice_owner_id, $slice_owner_name, $slice_project_name, $slice_project_id, count($slivers), $slice_exp_date, $next_resource_exp_date, $max_renewal_days);
 }
 // Get names of all the project leads for the user's projects
 $lead_names = lookup_member_names_for_rows($ma_url, $user, $all_projects, PA_PROJECT_TABLE_FIELDNAME::LEAD_ID);
 // Make and fill dictionary of project join requests
 // Do this for ACTIVE projects only
 $project_request_map = array();
 if (count($project_objects) > 0) {
     $reqlist = get_pending_requests_for_user($sa_url, $user, $user->account_id, CS_CONTEXT_TYPE::PROJECT);
     foreach ($reqlist as $req) {
         if ($req[RQ_REQUEST_TABLE_FIELDNAME::STATUS] != RQ_REQUEST_STATUS::PENDING) {
             continue;
         }
         $context_id = $req[RQ_REQUEST_TABLE_FIELDNAME::CONTEXT_ID];
         if (array_key_exists($context_id, $project_request_map)) {
             $project_request_map[$context_id][] = $req;
         } else {
             $project_request_map[$context_id] = array($req);
         }
     }
 }
 // Make filters for slice section, we'll add project names to this as we go through projects
 $slice_filters = "<ul class='selectorcontainer'>";
 $slice_filters .= "<li class='has-sub selector' style='float:none;' id='slicefilterswitch'>";
Пример #3
0
}
include "tool-lookupids.php";
// Cancel request to join a project
if (!isset($sa_url)) {
    $sa_url = get_first_service_of_type(SR_SERVICE_TYPE::SLICE_AUTHORITY);
}
if (array_key_exists("request_id", $_REQUEST)) {
    $request_id = $_REQUEST["request_id"];
    $request = get_request_by_id($sa_url, $user, $request_id, CS_CONTEXT_TYPE::PROJECT);
} else {
    error_log("cancel-project-request got no project_id");
}
if (!isset($request) || is_null($request)) {
    error_log("No request from request_id");
    if (isset($project_id)) {
        $reqs = get_pending_requests_for_user($sa_url, $user, $user->account_id, CS_CONTEXT_TYPE::PROJECT, $project_id);
        if (isset($reqs) && count($reqs) > 0) {
            if (count($reqs) > 1) {
                error_log("cancel-project-request: Got " . count($reqs) . " pending requests on same project for same member");
            }
            $request = $reqs[0];
            $request_id = $request['id'];
        } else {
            error_log("cancel-p-reqs: no pending reqs for this project, user");
        }
    } else {
        error_log("cancel-p-req: And no project_id. Fail");
    }
    if (!isset($request) || is_null($request)) {
        show_header('GENI Portal: Projects');
        include "tool-breadcrumbs.php";