Version: 2.0, by Farcaster
Developer Last Online: Jun 2014
Category: Social Group and Album Enhancements -
Version: 4.0.x
Rating:
Released: 03-06-2010
Last Update: Never
Installs: 53
DB Changes Uses Plugins Template Edits
Code Changes Is in Beta Stage
No support by the author.
In short, this modification will allow social groups on your forum have their own calendar area and have upcoming events shown on their group page. Here is a list of features:
Upcoming events for a group are shown on the group's page, grouped by day.
The group's next event is shown in more detail and can be configured to show the entire event description or be trimmed to a certain number of characters.
Members can see events for all the social groups they belong to consolidated into one calendar.
The forum home index page can be setup to show upcoming events for social groups.
Non-members can see upcoming events for a public group by viewing the group's page if the group doesn't require joining to view content. They will not see events for these groups in the calendar view or on the forum homepage, which will help keep the clutter down.
Group's that are moderated, invite only, or must join to view content, will not display their upcoming events to non-members. Their events are also secured, so following a link to an event by a non-member will result in a no permissions error.
Group owners can optionally allow members to be able to post events, or they can set their group up so that only they can post events.
When clicking on the New Event link from the group's page, the event will automatically be assigned to the referring group.
When creating a new event from the calendar view, the creator can assign the event to any group he has permissions to post events. These events will appear in a drop down box on the event.
Admins and moderators can be set to be excluded from all filtering and permissions. This allows the administrator an unfiltered view of the social group calendar, and the ability to move or edit group's events as needed.
Plays nice with Farcaster's Event Attendance v3.0 (RSVP mod).
in my groups I get the Message "This group currently has no upcoming events within the next 15 days."
Where do I have to edit to change that period?
It would be nice to have it variable on a per-group basis. As we have some groups with a lot of events, there the 15 days is fine. then there are others with very few ones where I would like to increase it to 3-6 months ..
in my groups I get the Message "This group currently has no upcoming events within the next 15 days."
Where do I have to edit to change that period?
It would be nice to have it variable on a per-group basis. As we have some groups with a lot of events, there the 15 days is fine. then there are others with very few ones where I would like to increase it to 3-6 months ..
great mod so ... thx
I'd guess it's based on the number in admincp>Forums Home Page Options>Display Calendar Events
If you don't want invite only events showing up in forums (they already are hidden in calendar) this is a quick mod I made.
Note on one problem: The count for this forum will be off. There's no way I've found to get around it - hook_query_where won't work with COUNT(*) since it's joining tables.
Disclaimer: This has only been tested on vb 4.1
Hook: forumdisplay_query_threadid
Code:
global $vbulletin;
$hook_query_fields = ", socialgroup.groupid, socialgroup.type AS grouptype" . ($vbulletin->userinfo['userid'] ? ", socialgroupmember.type AS membertype" : "");
$hook_query_joins = "LEFT JOIN " . TABLE_PREFIX . "event AS event ON event.lv_vb_eventforums_threadid=thread.threadid LEFT JOIN " . TABLE_PREFIX . "socialgroup AS socialgroup ON socialgroup.groupid=event.socialgroupcalendar
LEFT JOIN " . TABLE_PREFIX . "socialgroupmember AS socialgroupmember ON (socialgroupmember.userid = " . $vbulletin->userinfo['userid'] . " AND socialgroupmember.groupid = socialgroup.groupid)";
$hook_query_where = " AND (socialgroupmember.type='member' OR socialgroup.type!='inviteonly' OR ISNULL( socialgroup.groupid) )";
$visiblethreads = str_replace(" AND visible", " AND thread.visible", $visiblethreads);