public static function manageReportDomain($reportId, $userDomainId, $reportDomainId)
 {
     global $db;
     require_once "modules/asol_Domains/AlineaSolDomainsFunctions.php";
     $domainReportQuery = $db->query("SELECT * FROM asol_reports WHERE id='" . $reportId . "' LIMIT 1");
     $domainReportRow = $db->fetchByAssoc($domainReportQuery);
     $reportDomainIsPublished = $domainReportRow['asol_published_domain'] == '1' ? true : false;
     $reportDomainPublishedMode = $domainReportRow['asol_domain_published_mode'];
     $reportDomainPublishedLevels = $domainReportRow['asol_domain_child_share_depth'] === ';;' ? array() : explode(';;', substr($domainReportRow['asol_domain_child_share_depth'], 1, -1));
     $reportDomainPublishedDomains = $domainReportRow['asol_multi_create_domain'] === ';;' ? array() : explode(';;', substr($domainReportRow['asol_multi_create_domain'], 1, -1));
     $isPublished = $domainPublishingInfo;
     $domainPublishingInfo = array('domains' => $reportDomainPublishedDomains, 'levels' => $reportDomainPublishedLevels, 'mode' => $reportDomainPublishedMode, 'mainDomain' => $reportDomainId, 'isPublished' => $reportDomainIsPublished);
     $reportPublishedDomains = asol_manageDomains::getDomainsPublished($domainPublishingInfo);
     $reportParentDomains = asol_manageDomains::getParentDomainsIds($reportDomainId, true);
     return in_array($userDomainId, array_merge($reportPublishedDomains, $reportParentDomains));
 }
示例#2
0
     case "daily":
         $dayWeek = "-1";
         $dayMonth = "-1";
         break;
 }
 if (($currentW == $dayWeek % 7 || $currentJ == $dayMonth || $taskValues[1] == "daily") && $currentH == $hour && ($currentI >= $min && $currentI < $min + $schedulerMinutaryInterval) && $taskValues[5] == "active" && $currentDate <= $taskValues[4]) {
     if (asol_ReportsUtils::isDomainsInstalled()) {
         require_once "modules/asol_Domains/AlineaSolDomainsFunctions.php";
         $reportDomainId = $scheduledReport['asol_domain_id'];
         $reportDomainIsPublished = $scheduledReport['asol_published_domain'] == '1' ? true : false;
         $reportDomainPublishedMode = $scheduledReport['asol_domain_published_mode'];
         $reportDomainPublishedLevels = $scheduledReport['asol_domain_child_share_depth'] === ';;' ? array() : explode(';;', substr($scheduledReport['asol_domain_child_share_depth'], 1, -1));
         $reportDomainPublishedDomains = $scheduledReport['asol_multi_create_domain'] === ';;' ? array() : explode(';;', substr($scheduledReport['asol_multi_create_domain'], 1, -1));
         if ($reportDomainPublishedMode != '0' && $reportDomainIsPublished) {
             $domainPublishingInfo = array('domains' => $reportDomainPublishedDomains, 'levels' => $reportDomainPublishedLevels, 'mode' => $reportDomainPublishedMode, 'mainDomain' => $reportDomainId, 'isPublished' => $reportDomainIsPublished);
             foreach (asol_manageDomains::getDomainsPublished($domainPublishingInfo) as $reportPublishedDomain) {
                 $scheduled_reports[] = array('id' => $scheduledReports[$key]['id'], 'created_by' => $scheduledReports[$key]['created_by'], 'report_type' => $scheduledReports[$key]['report_type'], 'domain_id' => $reportPublishedDomain);
                 asol_ReportsUtils::reports_log('asol', 'Scheduled Report Id: ' . $scheduledReports[$key]['id'] . ' Domain: ' . $reportPublishedDomain . ' ', __FILE__, __METHOD__, __LINE__);
             }
         } else {
             $scheduled_reports[] = array('id' => $scheduledReports[$key]['id'], 'created_by' => $scheduledReports[$key]['created_by'], 'report_type' => $scheduledReports[$key]['report_type'], 'domain_id' => $reportDomainId);
             asol_ReportsUtils::reports_log('asol', 'Scheduled Report Id: ' . $scheduledReports[$key]['id'] . ' Domain: ' . $reportDomainId . ' ', __FILE__, __METHOD__, __LINE__);
         }
     } else {
         $scheduled_reports[] = array('id' => $scheduledReports[$key]['id'], 'created_by' => $scheduledReports[$key]['created_by'], 'report_type' => $scheduledReports[$key]['report_type'], 'domain_id' => null);
         asol_ReportsUtils::reports_log('asol', 'Scheduled Report Id: ' . $scheduledReport['id'], __FILE__, __METHOD__, __LINE__);
     }
     //Se rompe el bucle foreach una vez se haya comprobado que hay que realizar una tarea
     break;
 }
 //Fin de la condicion de que se cumpla la fecha y hora