public function segmentUpdated($idSegment, $updatedSegment)
{
$reportsUsingSegment = API::getInstance()->getReports(false, false, false, false, $idSegment);
$reportsNeedSegment = array();
if (!$updatedSegment['enable_all_users']) {
// which reports would become invisible to other users?
foreach ($reportsUsingSegment as $report) {
if ($report['login'] == Piwik::getCurrentUserLogin()) {
continue;
}
$reportsNeedSegment[] = $report;
}
}
if ($updatedSegment['enable_only_idsite']) {
// which reports from other websites are set to use this segment restricted to one website?
foreach ($reportsUsingSegment as $report) {
if ($report['idsite'] == $updatedSegment['enable_only_idsite']) {
continue;
}
$reportsNeedSegment[] = $report;
}
}
if (empty($reportsNeedSegment)) {
return;
}
$this->throwExceptionReportsAreUsingSegment($reportsNeedSegment);
}