svn commit: [2302] trunk/lib/Act/Handler/WebAPI.pm: add a get_events method

maddingue at free.fr maddingue at free.fr
Sun Jun 2 06:44:55 CEST 2013


Revision: 2302
Author:   maddingue
Date:     2013-06-02 06:44:55 +0200 (Sun, 02 Jun 2013)
Log Message:
-----------
add a get_events method

Modified Paths:
--------------
    trunk/lib/Act/Handler/WebAPI.pm

Modified: trunk/lib/Act/Handler/WebAPI.pm
===================================================================
--- trunk/lib/Act/Handler/WebAPI.pm	2013-06-02 04:39:01 UTC (rev 2301)
+++ trunk/lib/Act/Handler/WebAPI.pm	2013-06-02 04:44:55 UTC (rev 2302)
@@ -4,6 +4,7 @@
 use JSON::XS ();
 
 use Act::Config;
+use Act::Event;
 use Act::Talk;
 use Act::Track;
 use Act::User;
@@ -23,6 +24,17 @@
         },
         default => [ qw(public_name email) ],
     },
+
+    get_events => {
+        run => \&_get_events,
+        fields  => {
+           map({ $_ => 0 } qw< event_id title abstract url_abstract duration >),
+           datetime => \&_talk_datetime,
+           room     => \&_talk_room,
+        },
+        default => [ qw(title speaker room datetime) ],
+    },
+
     get_talks => {
         run => \&_get_talks,
         fields  => {
@@ -86,6 +98,16 @@
 }
 
 
+sub _get_events {
+    my ($m, $fields) = @_;
+
+    my $events = Act::Event->get_events( conf_id => $Request{conference} );
+    my @data = map { _get_fields($m, $fields, $_) } @$events;
+
+    return \@data
+}
+
+
 sub _get_talks {
     my ($m, $fields) = @_;
 



More information about the Act-cvs mailing list