示例#1
0
}
$vGroupId = new Valid_GroupId();
$vGroupId->required();
if ($request->valid($vGroupId)) {
    $groupId = $request->get('group_id');
    $project = ProjectManager::instance()->getProject($groupId);
} else {
    header('Location: ' . get_server_url());
}
// Grant access only to project admins
$user = UserManager::instance()->getCurrentUser();
if (!$project->userIsAdmin($user)) {
    header('Location: ' . get_server_url());
}
$duMgr = new Statistics_DiskUsageManager();
$vServices = new Valid_WhiteList('services', array_keys($duMgr->getProjectServices(false)));
$vServices->required();
if ($request->validArray($vServices)) {
    $services = $request->get('services');
} else {
    $services = array_keys($duMgr->getProjectServices(false));
}
$vStartDate = new Valid('start_date');
$vStartDate->addRule(new Rule_Date());
$vStartDate->required();
if ($request->valid($vStartDate)) {
    $startDate = $request->get('start_date');
} else {
    $startDate = '';
}
$vEndDate = new Valid('end_date');
示例#2
0
}
$vGroupId = new Valid_UInt('group_id');
$vGroupId->required();
if ($request->valid($vGroupId)) {
    $groupId = $request->get('group_id');
} else {
    $groupId = '';
}
$vUserId = new Valid_UInt('user_id');
$vUserId->required();
if ($request->valid($vUserId)) {
    $userId = $request->get('user_id');
} else {
    $userId = '';
}
$vServices = new Valid_WhiteList('services', array_keys($duMgr->getProjectServices()));
$vServices->required();
if ($request->validArray($vServices)) {
    $selectedServices = $request->get('services');
} else {
    switch ($func) {
        case 'show_service':
        case 'show_one_project':
            $selectedServices = array(Statistics_DiskUsageManager::SVN);
            break;
        case 'show_top_projects':
            $selectedServices = array_keys($duMgr->getProjectServices());
            break;
        default:
    }
}
if ($request->valid($vGroupId)) {
    $groupId = $request->get('group_id');
    $project = ProjectManager::instance()->getProject($groupId);
} else {
    header('Location: ' . get_server_url());
}
$func = $request->getValidated('func', new Valid_WhiteList('usage', 'progress'), '');
//Get dates for start and end period to watch statistics
$duMgr = new Statistics_DiskUsageManager();
$statPeriod = $duMgr->getProperty('statistics_period');
if (!$statPeriod) {
    $statPeriod = 3;
}
$endDate = date('Y-m-d');
$startDate = date('Y-m-d', mktime(0, 0, 0, date('m') - $statPeriod, date('d'), date('y')));
$services = $duMgr->getProjectServices();
// Display graph
$graph = new Statistics_DiskUsageGraph($duMgr);
if ($func == 'usage') {
    //Retreive the config param & convert it to bytes
    $quota = $duMgr->getProperty('allowed_quota');
    $pqm = new ProjectQuotaManager();
    $customQuota = $pqm->getProjectCustomQuota($groupId);
    if ($customQuota) {
        $quota = $customQuota;
    }
    $allowed = $quota * (1024 * 1024 * 1024);
    $used = $request->get('size');
    //In case of over usage
    if ($used > $allowed) {
        $used = $allowed;