load($configFileName); // Get the path of subscribe users file $subscribeUsersFile = ""; $messageFile = ""; $message = ""; foreach ($configFile->documentElement->childNodes as $articles) foreach($articles->childNodes as $item) if ($item->nodeName==="system-data-structure") foreach($item->childNodes as $item2) { if ($item2->nodeName==="emailContentFile") foreach($item2->childNodes as $item3) if ($item3->nodeName==="path") $messageFile = $item3->nodeValue; if ($item2->nodeName==="subscribeUsersFile") foreach($item2->childNodes as $item3) if ($item3->nodeName==="path") $subscribeUsersFile = $item3->nodeValue; if ($item2->nodeName==="emailContentText") $message=$item2->nodeValue; } if ($messageFile!=="/") $messageFile = substr($messageFile, strlen($myFolder), strlen($messageFile)-strlen($myFolder)); $subscribeUsersFile = substr($subscribeUsersFile, strlen($myFolder), strlen($subscribeUsersFile)-strlen($myFolder)); // get 'From' address from configuration file $from_node = $configFile->getElementsByTagName('fromAddress'); $from=""; foreach($from_node as $node){$from = $node->nodeValue;} echo "from: ".$from."
\r\n"; // get email message file from configuration file and read the message $message_node = $configFile->getElementsByTagName('path'); if ($messageFile!=="/") { $message = ""; $messageArr = file($messageFile); for($i = 0; $i\r\n"; // get yesterady's time, make header and subject of the email $yesterday = date("U",time()- (24 * 60 * 60)); $headers = "From: $from"; $subject = "Page was updated"; // open the subscribe list file $emailsFile = new domDocument; $emailsFile->load($subscribeUsersFile); $emails = $emailsFile->getElementsByTagName('email'); $urls = $emailsFile->getElementsByTagName('url'); // Go through each subscription, check last modified date and send email if it was modified recently for($i = 0;$i < $emails->length ;$i++) { $pagename = $urls->item($i)->nodeValue; echo "Checking ".$pagename."... "; $pagename = substr($pagename, strlen($myFolder), strlen($pagename)-strlen($myFolder)); $last_modified = filemtime($pagename); $last = date("U", $last_modified); if ($last > $yesterday) { $to = $emails->item($i)->nodeValue; echo $to . ": "; if (mail($to,$subject,$message,$headers)) echo "Mail Sent!"; else echo "Email could not be sent..."; echo("
\r\n"); } else echo "page hasn't been changed.
\r\n"; } ?>