]> gitweb.fluxo.info Git - lorea/elgg.git/commitdiff
added support for event polls (needs the event_poll plugin)
authorKevin Jardine <kevinjardine@yahoo.com>
Fri, 13 Apr 2012 15:20:49 +0000 (17:20 +0200)
committerKevin Jardine <kevinjardine@yahoo.com>
Fri, 13 Apr 2012 15:20:49 +0000 (17:20 +0200)
actions/event_calendar/edit.php
models/model.php
start.php

index 0cc956d734a005258ce83293e941f6671bb88e9f..aef1a59ccc143173f49090954d33db0cf9c90fab 100644 (file)
@@ -34,6 +34,10 @@ if ($event) {
                add_to_river('river/object/event_calendar/create','create',$user_guid,$event->guid);
                system_message(elgg_echo('event_calendar:add_event_response'));
        }
+       
+       if ($event->schedule_type == 'poll') {
+               forward('event_poll/add/'.$event->guid);
+       }
         
        forward($event->getURL());
 } else {
index b29ad2ad7e5aa1f5e3cfc5c232af68d5227e2f1e..6fe54ab3df8dfe896a3dfe9ac46678838a99dfb4 100644 (file)
@@ -55,7 +55,7 @@ function event_calendar_set_event_from_form($event_guid,$group_guid) {
                        $required_fields[] = 'spots';
                }
        } else {
-               $required_fields = array('title','start_date');
+               $required_fields = array('title');
        }
 
        if ($event_guid) {
@@ -2118,4 +2118,4 @@ function event_calendar_flatten_event_structure($events) {
                }
        }
        return $flattened;
-}
\ No newline at end of file
+}
index 5239871548d31cfd696ff7a3b6bc1d812ebb788e..86a94fbd916fa6483e97e65aa4e100bedf6ca689 100644 (file)
--- a/start.php
+++ b/start.php
@@ -64,7 +64,7 @@ function event_calendar_init() {
        elgg_extend_view('css/elgg', 'event_calendar/css');
        
        $event_calendar_listing_format = elgg_get_plugin_setting('listing_format', 'event_calendar');
-       if ($event_calendar_listing_format == 'full') {
+       if (elgg_plugin_exists('event_poll') || ($event_calendar_listing_format == 'full')) {
                elgg_extend_view('css/elgg', 'fullcalendar/css');
                $plugin_js = elgg_get_simplecache_url('js', 'event_calendar/fullcalendar');
                elgg_register_js('elgg.full_calendar', $plugin_js);
@@ -287,6 +287,16 @@ function event_calendar_entity_menu_setup($hook, $type, $return, $params) {
        if ($handler != 'event_calendar') {
                return $return;
        }
+       if (elgg_plugin_exists('event_poll') && $entity->canEdit() && $entity->schedule_type == 'poll') {
+               $options = array(
+                       'name' => 'schedule',
+                       'text' => elgg_echo('event_poll:schedule_button'),
+                       'title' => elgg_echo('event_poll:schedule_button'),
+                       'href' => 'event_poll/schedule/'.$entity->guid,
+                       'priority' => 150,
+               );
+               $return[] = ElggMenuItem::factory($options);
+       }
        $user_guid = elgg_get_logged_in_user_guid();
        if ($user_guid) {
                $calendar_status = event_calendar_personal_can_manage($entity,$user_guid);