public
Description: This contains various plugins for Feather
Clone URL: git://github.com/eldiablo/feather-plugins.git
Search Repo:
Click here to lend your support to: feather-plugins and make a donation at www.pledgie.com !
Alexander Flatter (author)
Fri Jun 27 08:54:28 -0700 2008
eldiablo (committer)
Fri Jul 18 12:27:38 -0700 2008
commit  f456764010368b085d65e077b640940c93e78624
tree    9d4af39f860c7df28f07593b6ccd362859f5737f
parent  d362d592f50426fcad4aa71c9baa51c08d2875c3
100644 29 lines (26 sloc) 0.917 kb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
require "xmlrpc/client"
require File.join(File.join(File.dirname(__FILE__), "controllers"), "ping_logs")
require File.join(File.join(File.dirname(__FILE__), "controllers"), "ping_services")
require File.join(File.join(File.dirname(__FILE__), "models"), "ping_log")
require File.join(File.join(File.dirname(__FILE__), "models"), "ping_service")
 
Merb::Router.prepend do |r|
  r.namespace :admin do |admin|
    admin.resources :ping_logs
    admin.resources :ping_services
  end
end
 
Hooks::Menu.add_menu_item "Ping Services", "/admin/ping_services"
 
Hooks::Events.register_event(:after_publish_article_request) do |args|
  PingService.all.each do |ping|
    log = PingLog.new
    log.ping_service_id = ping.id
    begin
      log.message = ping.execute(args[0], args[1])
      log.successful = true
    rescue Exception => err
      log.message = err.message
      log.successful = false
    end
    log.save
  end
end