tra('Calendar'), 'documentation' => 'PluginCalendar', 'description' => tra('Display a calendar and its events'), 'prefs' => [ 'feature_calendar', 'wikiplugin_calendar' ], 'iconname' => 'calendar', 'format' => 'html', 'introduced' => 4, 'params' => [ 'calIds' => [ 'name' => tra('Calendar IDs'), 'description' => tra('Comma-separated list of calendar Ids to restrict the events to specified calendars.') . " " . tra('Example values:') . '13, 4,7 ' . tra('Not set by default.'), 'since' => '4.0', 'filter' => 'digits', 'separator' => ',', 'default' => '', 'profile_reference' => 'calendar', ], 'viewlist' => [ 'required' => false, 'name' => tra('View Type'), 'description' => tra('Determines how events.') . ' ' . tr( '%0 (default) shows events in a calendar.', 'table' ), 'since' => '4.0', 'filter' => 'word', 'default' => 'table', 'options' => [ ['text' => '', 'value' => ''], ['text' => tra('List'), 'value' => 'list'], ['text' => tra('Table'), 'value' => 'table'], ['text' => tra('Both'), 'value' => 'both'], ], ], 'viewmode' => [ 'name' => tra('View Time Span'), 'description' => tr('If in calendar (%0) View Type, determines the time span displayed by the calendar.', 'table') . tra('Default is month'), 'since' => '4.0', 'filter' => 'word', 'default' => 'month', 'options' => [ ['text' => '', 'value' => ''], ['text' => tra('Day'), 'value' => 'day'], ['text' => tra('Week'), 'value' => 'week'], ['text' => tra('Month'), 'value' => 'month'], ['text' => tra('Quarter'), 'value' => 'quarter'], ['text' => tra('Semester'), 'value' => 'semester'], ['text' => tra('Year'), 'value' => 'year'], ], ], 'viewnavbar' => [ 'required' => false, 'name' => tra('Navigation Bar'), 'description' => tra('Show or hide the navigation bar (not shown by default)'), 'since' => '4.0', 'filter' => 'alpha', 'default' => 'n', 'options' => [ ['text' => '', 'value' => ''], ['text' => tra('Yes'), 'value' => 'y'], ['text' => tra('No'), 'value' => 'n'] ], ], ], ]; } function wikiplugin_calendar($data, $params) { global $prefs, $tiki_p_admin, $tiki_p_view_calendar; global $dc, $user; $smarty = TikiLib::lib('smarty'); $tikilib = TikiLib::lib('tiki'); $calendarlib = TikiLib::lib('calendar'); if (empty($params['calIds'])) { $params['calIds'] = [1]; } if (empty($params['viewlist'])) { $params['viewlist'] = 'table'; } if (empty($params['viewmode'])) { $params['viewmode'] = 'month'; } if (empty($params['viewnavbar'])) { $params['viewnavbar'] = 'n'; } $module_reference = [ 'moduleId' => null, 'name' => 'calendar_new', 'params' => [ 'calIds' => $params['calIds'], 'viewnavbar' => $params['viewnavbar'], 'viewlist' => $params['viewlist'], 'viewmode' => $params['viewmode'], 'nobox' => 'y' ], 'position' => null, 'ord' => null, ]; $modlib = TikiLib::lib('mod'); $out = ''; if ($params['viewlist'] == 'table' || $params['viewlist'] == 'both') { $out .= $modlib->execute_module($module_reference); } if ($params['viewlist'] == 'list' || $params['viewlist'] == 'both') { $module_reference['params']['viewlist'] = 'list'; $out .= "
" . $modlib->execute_module($module_reference) . "
"; } return "
$out
"; }