diff options
-rw-r--r-- | modules/weblogs.module | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/modules/weblogs.module b/modules/weblogs.module new file mode 100644 index 000000000..5490572cf --- /dev/null +++ b/modules/weblogs.module @@ -0,0 +1,24 @@ +<? + +function weblogs_cron() { + + if (db_num_rows(db_query("SELECT nid FROM node WHERE status = '". node_status("posted") ."' AND timestamp > '". variable_get("weblogs_cron_last", time()) ."'", 1))) { + weblogs_notify(variable_get("site_name", "drupal") , path_uri()); + } + variable_set("weblogs_cron_last", time()); +} + +function weblogs_notify($name, $url) { + + $client = new xmlrpc_client("/RPC2", "rpc.weblogs.com", 80); + + $message = new xmlrpcmsg("weblogUpdates.ping", array(new xmlrpcval($name), new xmlrpcval($url))); + + $result = $client->send($message); + + if (!$result || $result->faultCode()) { + watchdog("error", "failed to notify 'weblogs.com'"); + } +} + +?>
\ No newline at end of file |