loadFile("./Cached_Alerts.xml"); $cached_alerts = $doc->getRootDataObject(); // Use the alertService reference $new_alerts = $this->alert_service->getAllNewAlerts(); foreach($new_alerts->alert as $alert){ $new_alert = $cached_alerts->createDataObject('alert'); $new_alert->title = $alert->title; $new_alert->summary = $alert->summary; $new_alert->address = $alert->address; $new_alert->date = $alert->date; $new_alert->sourceid = $alert->sourceid; $new_alert->unread = true; } $return_table = ""; $alert_id_number = 0; foreach($cached_alerts->alert as $alert){ $alert->id = "alert_" . $alert_id_number; $title = substr($alert->title,0,80); $summary = substr($alert->summary,0,40); $unread_string = $alert->unread ? "unread_title" : "read_title"; $return_row = << ALERTROW; $return_table = $return_table . $return_row; $alert_id_number += 1; } $return_table = $return_table . "
$title - $summary ... $alert->date
"; // as php is one shot we have to save away the alerts we want to cache $xmldas->saveFile($doc, "./Cached_Alerts.xml"); return $return_table; } /** * @param string $alert_id * @return string */ public function readAlert($alert_id) { $xmldas = SDO_DAS_XML::create("./Alerter.xsd"); $doc = $xmldas->loadFile("./Cached_Alerts.xml"); $cached_alerts = $doc->getRootDataObject(); $return_summary = ""; foreach($cached_alerts->alert as $alert){ SCA::$logger->log($alert->id . " vs " . $alert_id ); if (strcmp($alert->id,$alert_id) == 0){ SCA::$logger->log("Match"); $alert->unread = false; $return_summary = "
" . $alert->summary . "
"; } } // as php is one shot we have to save away the alerts we want to cache $xmldas->saveFile($doc, "./Cached_Alerts.xml"); return $return_summary; } /** * @return string */ public function getAlertSourcesHTMLTable() { # Use the alertService reference $alert_sources = $this->alert_service->getAlertSources(); // some debug //ob_start(); //print_r( $alert_sources ); //$debug = ob_get_contents(); //ob_end_clean(); //SCA::$logger->log($debug); $return_table = "\n"; foreach ($alert_sources->source as $alert_source){ $source_id = $alert_source->id; $return_row = << SOURCEROW; $return_table = $return_table . $return_row; } $return_table = $return_table . "
  $alert_source->name
\n"; return $return_table; } /** * @param integer $source_id * @return string */ public function deleteAlertSource($source_id){ # Use the alertService reference $this->alertService->removeAlertSource($source_id); //TODO } /** * @param source $alert_source http://tuscany.apache.org/samples/alerter */ public function addAlertSource($alert_source){ # Use the alertService reference $this->alertService->addAlertSource($alert_source); } /** * @param source $alert_source http://tuscany.apache.org/samples/alerter */ public function updateAlertSource($alert_source){ # Use the alertService reference $this->alertService->updateAlertSource($alert_source); } } ?>