############################################################## ## MOD Title: Small ShoutBox ## MOD Version: 1.4 ## MOD Author: Przemo ## Author email: przemo@przemo.org ## Author Website http://www.przemo.org ## MOD Description: ## Full configurable Shoutbox on main index or another page. ## It allow you to change options via Admin Panel like: ## - Allow users or moderators to edit/delete messages ## - Allow you to decide who can shout ## - Allow you to decide who can view ShoutBox ## - Enable bbcode (only: b, i, u) ## - Enable smilies ## - Enable make links ## - Disable Shoutbox ## - Enable username link profile ## - Shoutbox avaliable for guests ## - Shoutbox only visible for guests ## - Type number of viewed messages ## - Max messages letters ## - Max word letters to protect against horizontal scrolling ## - Enable date before messages ## - Customize date format ## - Customize Shoutbox size ## ## - Protect against flooding (board config flood control) ## - User can hide/show self Shoutbox (cookies) ## ## Tested on phpBB2.0.3 and 2.0.4 ## ## Installation Level: easy ## Installation Time: ~5 Minutes ## Files To Edit: admin/admin_db_utilities.php ## includes/constants.php ## language/lang_english/lang_admin.php ## language/lang_english/lang_main.php ## templates/index_body.tpl ## common.php ## index.php ## Included Files: admin/admin_shoutbox.php ## templates/style/admin/shoutbox_config_body.tpl ## templates/style/shoutbox_send_body.tpl ## templates/style/shoutbox_view_body.tpl ## shoutbox.php ## shoutbox_body.php ## shoutbox_send.php ## shoutbox_view.php ############################################################## ## For Security Purposes, Please Check: http://www.phpbb.com/mods/downloads/ 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/downloads/ ############################################################## ## Note: If you use ShoutBox for not subSilver style change the line: ## ## for your css file it is located in the shoutbox_send_body.tpl and shoutbox_view_body.tpl ############################################################## ## MOD History: ## 1.0 (07-07-03) ## - Initial Release. ## ## 1.1 (16-07-03) ## - Fix encoding problem. ## - Add messages delete days ## ## 1.2 (22-07-03) ## - Add set message time delete ## - Fix important installation instruction (bug in the information ## about inserts lines into lang_main.php) ## ## 1.3, 1.4 (23-10-03) ## - Fix few bugs ############################################################## ## Before Adding This MOD To Your Forum, You Should Back Up All Files Related To This MOD ############################################################## # #-----[COPY]------------------------------------------ # admin/admin_shoutbox.php to /admin/admin_shoutbox.php templates/subSilver/admin/shoutbox_config_body.tpl to /templates/subSilver/admin/shoutbox_config_body.tpl templates/subSilver/shoutbox_send_body.tpl to /templates/style/shoutbox_send_body.tpl templates/subSilver/shoutbox_view_body.tpl to /templates/style/shoutbox_view_body.tpl shoutbox.php to /shoutbox.php shoutbox_body.php to /shoutbox_body.php shoutbox_send.php to /shoutbox_send.php shoutbox_view.php to /shoutbox_view.php Upload and run as forum admin: db_install.php or insert it manually: # #-----[SQL]------------------------------------------ # CREATE TABLE phpbb_shoutbox ( id int(11) NOT NULL auto_increment, sb_user_id int(11) NOT NULL, msg varchar(255) NOT NULL, timestamp int(10) unsigned NOT NULL, sb_username varchar(255) NOT NULL, PRIMARY KEY (id) ); CREATE TABLE phpbb_shoutbox_config ( config_name varchar(255) NOT NULL, config_value varchar(255) NOT NULL, PRIMARY KEY (config_name) ); INSERT INTO phpbb_shoutbox_config (config_name, config_value) VALUES (‘allow_guest_view’,‘1’); INSERT INTO phpbb_shoutbox_config (config_name, config_value) VALUES (‘allow_guest’,‘0’); INSERT INTO phpbb_shoutbox_config (config_name, config_value) VALUES (‘allow_delete_all’,‘0’); INSERT INTO phpbb_shoutbox_config (config_name, config_value) VALUES (‘allow_delete’,‘0’); INSERT INTO phpbb_shoutbox_config (config_name, config_value) VALUES (‘allow_edit_all’,‘0’); INSERT INTO phpbb_shoutbox_config (config_name, config_value) VALUES (‘allow_edit’,‘0’); INSERT INTO phpbb_shoutbox_config (config_name, config_value) VALUES (‘allow_bbcode’,‘1’); INSERT INTO phpbb_shoutbox_config (config_name, config_value) VALUES (‘allow_smilies’,‘1’); INSERT INTO phpbb_shoutbox_config (config_name, config_value) VALUES (‘links_names’,‘1’); INSERT INTO phpbb_shoutbox_config (config_name, config_value) VALUES (‘make_links’,‘1’); INSERT INTO phpbb_shoutbox_config (config_name, config_value) VALUES (‘count_msg’,‘100’); INSERT INTO phpbb_shoutbox_config (config_name, config_value) VALUES (‘delete_days’,‘30’); INSERT INTO phpbb_shoutbox_config (config_name, config_value) VALUES (‘text_lenght’,‘500’); INSERT INTO phpbb_shoutbox_config (config_name, config_value) VALUES (‘word_lenght’,‘90’); INSERT INTO phpbb_shoutbox_config (config_name, config_value) VALUES (‘date_format’,‘D G:i’); INSERT INTO phpbb_shoutbox_config (config_name, config_value) VALUES (‘date_on’,‘1’); INSERT INTO phpbb_shoutbox_config (config_name, config_value) VALUES (‘shoutbox_on’,‘1’); INSERT INTO phpbb_shoutbox_config (config_name, config_value) VALUES (‘shout_width’,‘630’); INSERT INTO phpbb_shoutbox_config (config_name, config_value) VALUES (‘shout_height’,‘130’); INSERT INTO phpbb_shoutbox_config (config_name, config_value) VALUES (‘banned_user_id’,’’); INSERT INTO phpbb_shoutbox_config (config_name, config_value) VALUES (‘banned_user_id_view’,’’); # #-----[OPEN]------------------------------------------ # admin/admin_db_utilities.php # #-----[FIND]------------------------------------------ # $tables = array(‘auth_access’, ‘banlist’, ‘categories’, ‘config’, ‘disallow’, ‘forums’, ‘forum_prune’, ‘groups’, ‘posts’, ‘posts_text’, ‘privmsgs’, ‘privmsgs_text’, ‘ranks’, ‘search_results’, ‘search_wordlist’, ‘search_wordmatch’, ‘sessions’, ‘smilies’, ‘themes’, ‘themes_name’, ‘topics’, ‘topics_watch’, ‘user_group’, ‘users’, ‘vote_desc’, ‘vote_results’, ‘vote_voters’, ‘words’); # #-----[REPLACE WITH]------------------------------------------ # $tables = array(‘auth_access’, ‘banlist’, ‘categories’, ‘config’, ‘disallow’, ‘forums’, ‘forum_prune’, ‘groups’, ‘posts’, ‘posts_text’, ‘privmsgs’, ‘privmsgs_text’, ‘ranks’, ‘search_results’, ‘search_wordlist’, ‘search_wordmatch’, ‘sessions’, ‘smilies’, ‘themes’, ‘themes_name’, ‘topics’, ‘topics_watch’, ‘user_group’, ‘users’, ‘vote_desc’, ‘vote_results’, ‘vote_voters’, ‘words’, ‘shoutbox’, ‘shoutbox_config’); # #-----[OPEN]------------------------------------------ # includes/constants.php # #-----[FIND]------------------------------------------ # define(‘CONFIG_TABLE’, $table_prefix.‘config’); # #-----[AFTER, ADD]------------------------------------------ # // Shoutbox mod define(‘SHOUTBOX_CONFIG_TABLE’, $table_prefix.‘shoutbox_config’); define(‘SHOUTBOX_TABLE’, $table_prefix.‘shoutbox’); # #-----[OPEN]------------------------------------------ # language/lang_english/lang_admin.php # #-----[FIND]------------------------------------------ # // // That’s all Folks! # #-----[BEFORE, ADD]------------------------------------------ # // Shoutbox mod $lang[‘shoutbox_on’] = “ShoutBox on”; $lang[‘date_on’] = “Show date”; $lang[‘sb_make_links’] = “Make links”; $lang[‘sb_links_names’] = “Username link to profile”; $lang[‘sb_allow_edit’] = “Allow administrators and moderators to edit messages”; $lang[‘sb_allow_edit_all’] = “Allow to edit own messages”; $lang[‘sb_allow_delete’] = “Allow administrators and moderators to delete messages”; $lang[‘sb_allow_delete_all’] = “Allow to delete own messages”; $lang[‘sb_allow_guest’] = “Shoutbox avaliable for guests”; $lang[‘sb_allow_guest_view’] = “Shoutbox only visible for guests”; $lang[‘sb_count_msg’] = “Number of viewed messages”; $lang[‘delete_days’] = “Amount of days after messages will be deleted”; $lang[‘sb_text_lenght’] = “Max messages letters”; $lang[‘sb_word_lenght’] = “Max word letters”; $lang[‘setup_shoutbox’] = “Shoutbox Configuration”; $lang[‘shout_size’] = “ShoutBox size”; $lang[‘sb_banned_send’] = “Disallow send messages for user”; $lang[‘sb_banned_send_e’] = “User IDs of users who can’t send messages to ShoutBox. Separate multiple user IDs with commas, for example: 18, 124”; $lang[‘sb_banned_view’] = “Disallow ShoutBox for user”; $lang[‘sb_banned_view_e’] = “User IDs of users who can’t view and use ShoutBox. Separate multiple user IDs with commas, for example: 18, 124”; # #-----[OPEN]------------------------------------------ # language/lang_english/lang_main.php # #-----[FIND]------------------------------------------ # // // That’s all, Folks! # #-----[BEFORE, ADD]------------------------------------------ # // Shoutbox mod $lang[‘gg_mes’] = ‘Message’; $lang[‘login_to_shoutcast’] = “You must be logged in to use shoutbox”; $lang[‘sb_show’] = “show”; $lang[‘sb_hide’] = “SB hide”; $lang[‘sb_hide_done’] = “Done”; $lang[‘too_long_word’] = “Too long word”; $lang[‘sb_banned_send’] = “You can’t send messages”; # #-----[OPEN]------------------------------------------ # templates/style/index_body.tpl # #-----[FIND]------------------------------------------ # {L_FORUM_LOCKED} # Or last or you can choose another place for put shoutbox # #-----[AFTER, ADD]------------------------------------------ # {SHOUTBOX_BODY} # #-----[OPEN]------------------------------------------ # common.php # #-----[FIND]------------------------------------------ # $board_config = array(); # #-----[AFTER, ADD]------------------------------------------ # // Shoutbox mod $shoutbox_config = array(); # #-----[FIND]------------------------------------------ # $board_config[$row[‘config_name’]] = $row[‘config_value’]; } # #-----[AFTER, ADD]------------------------------------------ # // Shoutbox mod $sql = "SELECT * FROM " . SHOUTBOX_CONFIG_TABLE; if( !($result = $db->sql_query($sql)) ) { message_die(CRITICAL_ERROR, “Could not query shoutbox config information”, “”, __LINE__, __FILE__, $sql); } while ( $row = $db->sql_fetchrow($result) ) { $shoutbox_config[$row[‘config_name’]] = $row[‘config_value’]; } # #-----[OPEN]------------------------------------------ # index.php # #-----[FIND]------------------------------------------ # $template->assign_vars(array( ‘TOTAL_POSTS’ => sprintf($l_total_post_s, $total_posts), # #-----[BEFORE, ADD]------------------------------------------ # // Shoutbox mod $shoutbox_config[‘banned_user_id_view’] = $GLOBALS[‘shoutbox_config’][‘banned_user_id_view’]; if( strstr($shoutbox_config[‘banned_user_id_view’], ‘,’) ) { $fids = explode(’,’, $shoutbox_config[‘banned_user_id_view’]); while( list($foo, $id) = each($fids) ) { $fid[] = intval( trim($id) ); } } else { $fid[] = intval( trim($shoutbox_config[‘banned_user_id_view’]) ); } reset($fid); if ( $shoutbox_config[‘shoutbox_on’] && in_array($userdata[‘user_id’], $fid) == false ) { include($phpbb_root_path . ‘shoutbox_body.’.$phpEx); } # #-----[SAVE/CLOSE ALL FILES]------------------------------------------ # # EoM