From 97b2ae6eb854cd917d63a29cc1245981e96f438a Mon Sep 17 00:00:00 2001 From: Alexandre Morignot <erdnaxeli@cervoi.se> Date: Sun, 2 Aug 2015 20:52:20 +0200 Subject: [PATCH] support sueurdemetal.com --- Sam/sites/parser.pm | 4 ++++ Sam/sites/sueurdemetal.pm | 36 ++++++++++++++++++++++++++++++++++++ 2 files changed, 40 insertions(+) create mode 100644 Sam/sites/sueurdemetal.pm diff --git a/Sam/sites/parser.pm b/Sam/sites/parser.pm index 4de1a53..815e61b 100644 --- a/Sam/sites/parser.pm +++ b/Sam/sites/parser.pm @@ -10,6 +10,7 @@ use Sam::commands::add; use Sam::commands::edit; use Sam::sites::residentadvisor; +use Sam::sites::sueurdemetal; my $nick; my $irc; @@ -33,6 +34,9 @@ sub exec { if ($msg =~ /^Sam(?:,|:) +https?:\/\/(?:www.residentadvisor.net\/event.aspx\?)([0-9]+)/) { eval { %content = Sam::sites::residentadvisor::get($1) }; } + elsif ($msg =~ /^Sam(?:,|;) +https?:\/\/(?:www.sueurdemetal.com\/detail-concert-metal.php\?c=)([0-9]+)/) { + eval { %content = Sam::sites::sueurdemetal::get($1) }; + } else { return 0; } diff --git a/Sam/sites/sueurdemetal.pm b/Sam/sites/sueurdemetal.pm new file mode 100644 index 0000000..87acbf5 --- /dev/null +++ b/Sam/sites/sueurdemetal.pm @@ -0,0 +1,36 @@ +package Sam::sites::sueurdemetal; + +use Inline Python => 'DATA'; + +sub get { + my $id = shift; + my $content = weboob_get($id); + + return %{$content}; +} + +1; + +__DATA__ +__Python__ + +from weboob.core import Weboob +from weboob.capabilities.calendar import CapCalendarEvent + +def weboob_get(id): + w = Weboob() + backends = w.load_backends(CapCalendarEvent) + + event = backends['sueurdemetal'].get_event(id) + + result = {'title': event.summary, + 'day': event.start_date.strftime('%d'), + 'month': event.start_date.strftime('%m'), + 'year': event.start_date.strftime('%Y'), + 'place': event.location, + 'url': event.url} + + if event.price: + result['desc'] = '%i euros' % event.price + + return result -- GitLab