summaryrefslogtreecommitdiff
path: root/modules/weblogs.module
diff options
context:
space:
mode:
Diffstat (limited to 'modules/weblogs.module')
-rw-r--r--modules/weblogs.module24
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