} $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');
} $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;