############################################################## ## MOD Title: Meeting ## MOD Author: OXPUS < webmaster@oxpus.de > (Karsten Ude) http://www.oxpus.de ## MOD Description: Implement a meeting managemant for example to initiate a board meeting ## with your users ## MOD Version: 1.0.2 ## ## Installation Level: Easy ## Installation Time: 3-5 Minutes ## Files To Edit: 5 ## admin/index.php ## includes/constants.php ## includes/page_header.php ## viewonline.php ## templates/subSilver/overall_header.tpl ## ## Included Files: 9 ## admin/admin_meeting.php ## language/lang_english/lang_meeting.php ## language/lang_german/lang_meeting.php ## templates/subSilver/meeting_comment_body.tpl ## templates/subSilver/meeting_detail_body.tpl ## templates/subSilver/meeting_viewlist_body.tpl ## templates/subSilver/admin/meeting_edit_body.tpl ## templates/subSilver/admin/meeting_manage_body.tpl ## meeting.php ############################################################## ## For Security Purposes, Please Check: http://www.phpbb.com/mods/ for the ## latest version of this MOD. Downloading this MOD from other sites could cause malicious code ## to enter into your phpBB Forum. As such, phpBB will not offer support for MOD's not offered ## in our MOD-Database, located at: http://www.phpbb.com/mods/ ############################################################## ## Author Notes: ## ## Upload the file ## db_update.php ## to your phpbb root directory and run this with your browser. ## This file will do all nessassary changes in the database for you. ## After using this file, please delete it to avoid errors. ## ############################################################## ## MOD History: ## ## 2004-07-25 - Version 1.0.2 ## - Fix statictic on meeting detail ## - Fix delete comments on drop meeting ## For update replace admin/admin_meeting.php and meeting.php ## ## 2004-07-22 - Version 1.0.1 ## - Fix some layout errors. ## For update replace all files comming with this mod. ## ## 2004-07-12 - Version 1.0.0 ## - First release ## ############################################################## ## Before Adding This MOD To Your Forum, You Should Back Up All Files Related To This MOD ############################################################## # #-----[ COPY ]------------------------------------------ # copy admin/admin_meeting.php to admin/admin_meeting.php copy language/lang_english/lang_meeting.php to language/lang_english/lang_meeting.php copy language/lang_german/lang_meeting.php to language/lang_german/lang_meeting.php copy templates/subSilver/meeting_comment_body.tpl to templates/subSilver/meeting_comment_body.tpl copy templates/subSilver/meeting_detail_body.tpl to templates/subSilver/meeting_detail_body.tpl copy templates/subSilver/meeting_viewlist_body.tpl to templates/subSilver/meeting_viewlist_body.tpl copy templates/subSilver/admin/meeting_edit_body.tpl to templates/subSilver/admin/meeting_edit_body.tpl copy templates/subSilver/admin/meeting_manage_body.tpl to templates/subSilver/admin/meeting_manage_body.tpl copy meeting.php to meeting.php # #-----[ OPEN ]------------------------------------------ # admin/index.php # #-----[ FIND ]------------------------------------------ # case PAGE_FAQ: $location = $lang['Viewing_FAQ']; $location_url = "index.$phpEx?pane=right"; break; # #-----[ AFTER, ADD ]------------------------------------------ # case PAGE_MEETING: $location = $lang['Meeting']; $location_url = "meeting.$phpEx"; break; # #-----[ FIND ]------------------------------------------ # case PAGE_FAQ: $location = $lang['Viewing_FAQ']; $location_url = "index.$phpEx?pane=right"; break; # #-----[ AFTER, ADD ]------------------------------------------ # case PAGE_MEETING: $location = $lang['Meeting']; $location_url = "meeting.$phpEx"; break; # #-----[ OPEN ]------------------------------------------ # includes/constants.php # #-----[ FIND ]------------------------------------------ # define('PAGE_GROUPCP', -11); # #-----[ AFTER, ADD ]------------------------------------------ # define('PAGE_MEETING', -12); // Increase -12 to the next free value, if already in use! # #-----[ FIND ]------------------------------------------ # define('SESSIONS_TABLE', $table_prefix.'sessions'); # #-----[ AFTER, ADD ]------------------------------------------ # define('MEETING_COMMENT_TABLE', $table_prefix.'meeting_comment'); define('MEETING_DATA_TABLE', $table_prefix.'meeting_data'); define('MEETING_USER_TABLE', $table_prefix.'meeting_user'); define('MEETING_USERGROUP_TABLE', $table_prefix.'meeting_usergroup'); # #-----[ OPEN ]------------------------------------------ # includes/page_header.php # #-----[ FIND ]------------------------------------------ # $template->pparse('overall_header'); # #-----[ BEFORE, ADD ]------------------------------------------ # // START Meeting Mod if ( $userdata['session_logged_in'] && $userdata['user_id'] != ANONYMOUS && $gen_meeting_header !== FALSE ) { // Get access status for all meetings $sql = "SELECT m.meeting_id, mg.meeting_group FROM " . MEETING_DATA_TABLE . " m, " . MEETING_USERGROUP_TABLE . " mg WHERE mg.meeting_id = m.meeting_id"; if ( !$result = $db->sql_query($sql) ) { message_die(GENERAL_ERROR, 'Could not get meeting usergroups', '', __LINE__, __FILE__, $sql); } $meetings_access_ids = array(); while ( $row = $db->sql_fetchrow($result) ) { $meeting_id = $row['meeting_id']; $meeting_group = $row['meeting_group']; if ( $meeting_group == -1 ) { $meetings_access_ids[] = $meeting_id; } else { $sql_auth_id = "SELECT g.group_id FROM " . GROUPS_TABLE . " g, " . USER_GROUP_TABLE . " ug WHERE g.group_id = $meeting_group AND g.group_id = ug.group_id AND ug.user_pending <> " . TRUE . " AND g.group_single_user <> " . TRUE . " AND ug.user_id = " . $userdata['user_id']; if ( !$result_auth_id = $db->sql_query($sql_auth_id) ) { message_die(GENERAL_ERROR, 'Could not get meeting access data', '', __LINE__, __FILE__, $sql_auth_id); } $count_usergroups = $db->sql_numrows($result_auth_id); $db->sql_freeresult($result_auth_id); if ( $count_usergroups != 0 ) { $meetings_access_ids[] = $meeting_id; } } } $db->sql_freeresult($result); $user_lang = $userdata['user_lang']; include($phpbb_root_path.'language/lang_'.$user_lang.'/lang_meeting.'.$phpEx); if ( count($meetings_access_ids) !== 0 ) { $meeting_ids = ( count($meetings_access_ids) == 1 ) ? $meetings_access_ids[0] : implode(',', $meetings_access_ids); $sql_meeting_access = ' WHERE meeting_id IN ('.$meeting_ids.') AND meeting_time > '.time(); } else { $sql_meeting_access = ' WHERE meeting_time > '.time(); } $sql = "SELECT count(meeting_id) as total_meetings FROM " . MEETING_DATA_TABLE . " $sql_meeting_access"; if ( !$result = $db->sql_query($sql) ) { message_die(GENERAL_ERROR, 'Could not get meeting data', '', __LINE__, __FILE__, $sql); } while ( $row = $db->sql_fetchrow($result) ) { $meeting_active_ids = $row['total_meetings']; } $db->sql_freeresult($result); if ( $meeting_active_ids == 0 ) { $meeting_active_string = $lang['No_active_meetings']; } else if ( $meeting_active_ids == 1 ) { $meeting_active_string = $lang['One_active_meeting']; } else { $meeting_active_string = sprintf($lang['Active_meetings'], $meeting_active_ids); } $meeting_link = ''.$meeting_active_string.''; $template->assign_vars(array( 'MEETING_LINK' => $meeting_link) ); } // END Meeting Mod # #-----[ OPEN ]------------------------------------------ # viewonline.php # #-----[ FIND ]------------------------------------------ # case PAGE_FAQ: $location = $lang['Viewing_FAQ']; $location_url = "faq.$phpEx"; break; # #-----[ AFTER, ADD ]------------------------------------------ # case PAGE_MEETING: $location = $lang['Meeting']; $location_url = "meeting.$phpEx"; break; # #-----[ OPEN ]------------------------------------------ # templates/subSilver/overall_header.tpl # #-----[ FIND ]------------------------------------------ #  {L_PROFILE}{L_PROFILE}   {PRIVATE_MESSAGE_INFO}{PRIVATE_MESSAGE_INFO}   {L_LOGIN_LOGOUT}{L_LOGIN_LOGOUT}  # #-----[ AFTER, ADD ]------------------------------------------ #  {MEETING_LINK}  # #-----[ SAVE/CLOSE ALL FILES ]------------------------------------------ # # EoM