Beehive Forum Release Notes What's new in 0.8 (Released 4th November 2007) ================= - Important Notes - Beehive Forum 0.8 fixes a security vulnerability that could allow for user logon and password MD5 hash disclosure. It is recommend all users immediately obtain the newest version of Beehive Forum to protect against this threat. - Changes from 0.7.1 - For detailed change log please read changelog.txt What's new in 0.7.1 (Released 13th October 2006) =================== - Notes - 0.7.1 replaces the original 0.7 release of 1st October. The database schema for 0.7.1 is identical to 0.7. To upgrade from 0.7 to 0.7.1 simply extract the archive over your existing installation and delete the installer files. Upgrades from 0.6.x to 0.7.1 will still require running the installer as normal. - BeehiveForum 0.7 introduces a new thread unread cut-off that helps to increase performance by storing unread thread data for a limited time rather than in previous builds where it was stored indefinitely. You can set up the thread unread cut-off in the Global Forum Settings portion of your Beehive Forum installation but pruning of the USER_THREAD tables must be performed by hand. - Changes from 0.7 - Fixed: Broken links to confirm email script in edit.php, delete.php, create_poll.php and admin_post_approve.php - Fixed: Incorrect error message displayed when accessing pages using user account with un-confirmed email address. - Fixed: Error message "Failed to create forum" appearing when attemping to create additional forums. - Fixed: "Unknown column 'DEFAULT_FORUM' in 'field list'" error when performing new installation. - Fixed: "Unknown error [8] Undefined variable: table_index" error message when performing upgrade from 0.6.x. - Fixed: Errors in English UK and English US language files. - Fixed: Search was sometimes showing no thread titles in results. - Fixed: Extra query in thread_delete which was cleaning the USER_THREAD table twice. - Fixed: Fixed special characters not being encoded correctly in RSS feed. - Added: More intuitive controls for moving folders, forum links and profile sections and items. What's new in 0.7 (Released 1st October 2006) ================= - Notes - BeehiveForum 0.7 introduces a new thread unread cut-off that helps to increase performance by storing unread thread data for a limited time rather than in previous builds where it was stored indefinitely. You can set up the thread unread cut-off in the Global Forum Settings portion of your Beehive Forum installation but pruning of the USER_THREAD tables must be performed by hand. - Changes from 0.6.3 - Fixed: My Forums showing lots of unread messages because it wasn't using the cut-off code. - Fixed: Light mode logon form wasn't redirecting correctly if you had a msg= or folder= url query. - Fixed: Extra unneeded ban check in admin.php - Fixed: Homepage URL and Pic URL were not optional and you couldn't delete the data in them if you wanted to. - Fixed: Homepage URL never showing up on user profile popup. - Fixed: USER_PERM_BANNED wasn't always working correctly. Moved check into main files and out of bh_session_init(). - Fixed: Installer and upgrade scripts now attempt to recreate all the indexes that Beehive has ever had. - Fixed: Erranous word filter tags on email notifications caused by format_user_name using add_wordfilter_tags rather than straight apply_wordfilter. - Fixed: Added missing log entries for deleting RSS Feeds and updating Bans to admin_viewlog.php - Fixed: Potential conflict with RSS feed updates containing the same full story URL. - Fixed: Text stuck to border on admin_folders.php and admin_folder_add.php - Fixed: sprintf() error in admin_rss_feeds.php - Fixed: install_remove_table_keys() wasn't working correctly. It would bail out when it encountered a primary key and not remove any keys after that in the list - Fixed: upgrade-06x-to-07.php now works on all 0.6.x builds including release candidates without complaining about conflicts. - Fixed: Broken links to ban and unban IP and HTTP referer from other pages. - Fixed: Errors in installer when upgrading from 0.5 or doing a new fresh install. - Fixed: Error regarding valid characters in installer help popup (says you can use hyphens when you can't) - Fixed: Error handler not always able to get the MySQL version number so now we don't try to display what we can't get. - Fixed: Error in installer when target database doesn't exist. - Fixed: Always getting logged in as a guest even when you had saved logon. - Fixed: Reloading the frameset with the logon form visible will show it in it's first state. - Fixed: Unread threads showing with read icon on start_left.php - Fixed: Parse errors in edit.php, delete.php and lmessages.php. - Fixed: Movied english language strings in admin_banned.php into en.inc.php - Fixed: Ban check wasn't being applied to guests - Fixed: Ban check wasn't being performed if the session didn't contain some of the data to check. - Fixed: Exploit with $uid possible resulting in lots of failed queries and possibility for code injection. - Fixed: Admin Log was showing 'Unknown' for some recent log entry additions. - Fixed: Stats display wasn't using You and You (Invisible) language strings (from previous rollback maybe?) - Fixed: Layout issues in thread_options.php when viewing a poll. - Fixed: admin_forum_access.php change password button went to default / current instead of selected forum. - Fixed: admin_forum_access.php loaded without a FID in url query resulted in a blank page with no error. - Fixed: admin_forum_set_passwd.php loaded details for default / current forum (from webtag) if no ?fid= in url query or where fid was invalid. - Fixed: incorrect password could be used to enter a password protected forum! - Fixed: admin_forums.php layout issue caused confusion if forum webtag or description were exceptionally long. - Fixed: user became locked out of forum if using a saved forum password and password was changed by owner. - Fixed: missing call to html_draw_top() in admin_forum_access.php - Fixed: Wrong description for forum settings. - Fixed: admin_startpage.php wasn't showing all the correct extensions for upload. - Fixed: Attachments not working in PM correctly. - Fixed: Attachments field being too wide for IE and causing wrapping of text next to it. - Fixed: Function threads_any_unread was finding messages in folders the user didn't have access to. - Fixed: Clicking the "eye" in messages to mark a thread as unread wasn't working, Had been broken with previous update to message_update_read / message_set_read functions - Fixed: Removed if (IE) checks from post.js and made better checks against available JS functions. - Fixed: Made addOverflow function in post.js set the overflowX and overflowY separately for IE so as to not add a vertical scrollbar. - Fixed: Possible to edit someone elses signature without being an Admin by saving the form locally and editing. - Fixed: bh_check_styles.php works correctly to find classes with child tag definitions (e.g. spoiler a:hover) - Fixed: admin_user_groups display looked messed up when no groups created. - Fixed: Reply To All link no longer appears if the user doesn't have permission to reply. - Fixed: bug that allowed users to edit a reply to link to allow them to post in a folder they don't have access to. - Fixed: Sorting on "Referrer" column wasn't possible in admin_users.php - Fixed: Incorrect datatype error when clicking a folder name - Fixed: Errors when viewing PM folders. - Fixed: Word Filter stripslashes issue and filter order kept switching around on save. - Fixed: Attachments add upload field link no longer clears the field if you've already selected a file. - Fixed: Attachments add upload field link only appears if the browser supports document.getElementById. - Fixed: forum_create() wasn't creating all the tables required for a 0.7 forum - Fixed: Installer and upgrade scripts were not working correctly. - Fixed: Installer wasn't loading the 0.7 upgrade scripts correctly. - Fixed: Poll Question was broken. - Fixed: Polls weren't fetching the correct approval or edited data from the database. - Fixed: Inconsistency in display.php, ldisplay.php, messages.php with not showing

header and wrong error message. - Fixed: Editing a post and clicking the hide / show signature box resulted in the text being urlencoded incorrectly. - Fixed: Undefined variable $uid in edit.php - Fixed: Answer count drop down not working. - Fixed: Messages still not marking as read. Restored old code from CVS. - Fixed: Layout changed for edit_profile.php so all the text fields line up. - Fixed: Squiffy layout on edit_profile.php - Fixed: Nicknames were showing as blank on edit_relations.php on first visit (with existing pre 0.7 relationships) - Fixed: Better clean up of global data when deleting forum. - Fixed: Undefined variables $mids_array in pm.inc.php when folders were empty. - Fixed: Missing argument 4 in user_rel.php. - Fixed: Problem with edit_signature stripping out URL where the href is exactly the same as the text to be linked (i.e. a URL) - Fixed: Removed SQL debugging code from admin.inc.php (displays in admin_users.php) - Fixed: Added back the error trapping for invalid regular expressions on word filter. - Fixed: Same issues in edit_wordfilter.php as Admin word filter (stripslashes, filter order) - Fixed: Link in install.php could cause 404 because it sent you to ../index.php - Fixed: Prevent logon.php and other page reloads from being logged as the referer. - Fixed: Recent Messages broken by previous guest user performance boosts. - Fixed: Error when parsing invalid url with parse_url() - Fixed: Upgrade script was completely broken (got stuck in a loop indefinitely) - Fixed: Undefined variable $uid in myforums.inc.php caused by the user session not being initialized in lforums.php - Fixed: Guest users weren't being assigned their perm array so couldn't browse any of the messages. - Fixed: Stray guest session left behind when user finally logged in. - Fixed: Added thread title to page title. - Fixed: Messages not always marking as read under some MySQL versions - Fixed: Error in bh_session_get_folders_by_perm() not checking default folder perms correctly. - Fixed: Missing webatg when logging out meant you wouldn't log back into the same forum if you logged out and straight back in. - Fixed: Adding up the wrong data for USER_TIME_TOTAL (duh brain moment) - Fixed: Bug in MySQL 4 prior to 4.1.16 results in error about ambiguous column names so we now perform a test to check the MySQL version before performing the newer and quicker queries otherwise we fall back to the old much-much slower code. - Fixed: Sort column in Admin -> Users was ambiguous - Fixed: Undefined variable $db_ip_is_banned in banned.inc.php - Fixed: Function forum_create() bought up to date with indexes. - Fixed: Function forum_delete() wasn't removing the new THREAD_STATS table. - Fixed: Undefined variable $spid when marking a thread as unread. - Fixed: Session was tracking user accorss forum changes correctly. - Fixed: Automatic high interest was not working due to changes in query in previous update. - Fixed: Missing missing THREAD_STATS table for conflicting removal on upgrade. - Fixed: Patch to thumbnails in PM export was incorrectly using ?thumb=1 - Fixed: USER_TRACK table turned into a per-forum table to fiux post count and post and search frequency restrictions across multiple forums. - Fixed: Possible for user's to discover nicknames assigned to them by another user by means of a PM with a quoted reply. - Fixed: Stray wordfilter tags on pm_write.php when replying to PM with auto quote enabled. - Fixed: Stary space on end of search results. - Fixed: Emoticons not working in IE7 Beta2. Same fix as used for Safari / KHTML based browsers (added  ) - Fixed: User was logged in when updating RSS feed forcing user to appear as logged in when they hadn't visited a BH forum using the current browser session. - Fixed:: Undefined variable $result_count in searh.inc.php - Fixed: Missing argument 4 for user_rel_update() when unignoring a user using the link in the message display. - Fixed: Not being able to log on when you don't have credentials saved and not being able to logon as a different user to those credentials you have saved. Hopefully this won't break the fix I put in place for Jon at tehforum. - Fixed: Undefined variable in messages_set_read() when marking thread unread. - Fixed: Missing argument 4 in messages_set_read() when marking thread unread. - Fixed: Double encoded HTML entities in RSS feed. - Fixed: RSS feed not working correctly in Internet Explorer. - Fixed: Threads RSS feed was broken if viewing as a guest. - Fixed: User Profile layout was squiffy. - Fixed: html_get_forum_uri() was stripping the path from the URL returned. - Fixed: Layout issue with empty tags and stray - Fixed: Poll being affected by word filter which could break the display of the page. Word filter is applied to the polls option names instead. - Fixed: bh_check_dependencies.php changed output to use BH_INCLUDE_PATH - Fixed: Image attachments which are alpha blended PNG images should now create alpha blended thumbnails (GD >= 2.0) - Fixed: Undefined variable $interest when posting with high interest option set. - Fixed: Removed debugging code from ban_check() function and added check for BEEHIVE_INSTALL_NOWARN - Fixed: Error trapping for text captcha for missing glyphs in selected font. - Fixed: PM XML export was broken. - Fixed: Hyphenated words matched correctly by dictionary. - Fixed: Parse error in errorhandler (the irony is too much) - Fixed: Extra check for $nickname to see if it's an empty string in user_rel.inc.php - Fixed: Guests were able to see folders and posts they didn't have access to. - Fixed: Couldn't log in as a guest if you had a saved user logon. - Fixed: Attachments had a funny layout issue in personal messages. - Fixed: Yet more bh_update_user_time fixes that account for the user not logging out correctly. - Fixed: Dictionary wasn't importing correctly when MySQL FILE permission error encountered. - Fixed: forum_delete() function wasn't removing all references to old forum (missed USER_TRACK and THREAD_TRACK tables and data in global tables. - Fixed: Permissions were being applied incorrectly to new forums when created. - Fixed: USER_TIME column changed to DATETIME type to allow storing session lengths greater than 6 months. - Fixed: bh_cvs_log_parse.php was timing out if the CVS server was slow at responding. - Fixed: Undefined variable $result_fetch in session.inc.php. - Fixed: PM notification popup not firing due to frameset calling html_draw_top and not using a body tag. - Fixed: Potential exploit in install_check_tables. - Fixed: Problem with looping index.php when using light mode. - Fixed: issue with user_passhash check failing and user not being able to login despite BH saving the MD5 hash of their password. - Fixed: 2 or more attachments in message and PM display had an extra line break between them. - Fixed: IP Address comparision was returning empty strings and therefore returning non-matches. - Fixed: Word filter messing up ignored signatures. - Fixed: Prevent hi-jinks by using tag to prevent word filtering. - Fixed: db_affected_rows using wrong variable to check for success. - Fixed: Messages not always marking as read under some MySQL versions STILL - Fixed: Unread to me marker not working correctly. - Fixed: Undefined index MOVED_TID and MOVED_PID when viewing a poll in messages.inc.php caused by error in poll.inc.php. - Fixed: Unknown table name THREAD_TRACKED in thread.inc.php - Fixed: Viewing an old thread marked un-read all the posts on subsequent pages. - Fixed: unread messages on forums.php showing as a negative number - Fixed: Changed permissions check to strict comparision to prevent potential problems. - Fixed: SQL error when editing a PM in Outbox. - Fixed: SQL error when calculating user's post count could occur. - Fixed: Prevent user from being prompted about a PM more than once. Still affected by page reloads. - Fixed: Undefined variable $mid in pm.inc.php - Fixed: Poll question not being affected by word filter. - Fixed: Peer Nickname not working on threads_get_recent() or on polls. - Fixed: Undefined variable in session.inc.php - Fixed: Undefined index ['FID'] in poll.inc.php - Fixed: Call to old perm_is_moderator in poll.inc.php - Fixed: bh_user_time_update() wasn't working properly after the first update. It would subsequently set the time as 0 after successfully working it out the first time. - Fixed: USER_TIME_TOTAL still wasn't working properly if the USER_TIME_TOTAL column was null. - Fixed: User time total was adding the session time up incorrectly and increasing the value artifically. - Fixed: Last Visit on My Forums showing Never Visited if you had browse anonymously switched on. - Fixed: Anonymous users USER_TIME setting was being set incorrectly. - Fixed: USER_TRACK data for USER_TIME wasn't being added if the user didn't already have some data available in the table. - Fixed: USER_TIME not updating when value was NULL. - Fixed: Guests and some users were receiving an error when entering the forum due to having no permissions. - Fixed: Undefined variable $user_sess in session.inc.php when entering the forum as a guest. - Fixed: Function thread_get() wasn't correctly setting the LAST_READ for a thread outside the cut-off which meant that the whole thread appeared unread. - Fixed: Guests weren't able to browse folders in the thread list. - Fixed: Threads not modified since the cut-off were sometimes showing as unread in All Discussions. - Fixed: Thread with no LAST_READ data now automatically mark as read posts older than the cut-off so you don't end up re-reading old posts. - Fixed: If statement error in threads_process_list() - Fixed: Thread list mode drop down wasn't returning the right thread types. - Fixed: Removed debugging code from user_get_aliases() - Fixed: Missing utf8.inc.php from CVS. - Fixed: You and You (Invisible) was hard coded into messages.inc.php. Added to translation files/ - Fixed: Parse error in en-us.inc.php - Fixed: bh_x-hacker_translate.php wasn't always translating all the strings in the english file. - Fixed: bh_check_languages will now find strings which haven't been translated (identical to en.inc.php) - Fixed: Stray comma in new-install.php causes error when creating POST table. - Fixed: Errors installer and upgrader when upgrading multiple forums. - Fixed: Missing remove conflict for SEARCH_ENGINE_BOTS table. - Fixed: Unknown table type error caused by not resetting the $sql variable in upgrade scripts. - Fixed: Updated install / upgrade scripts with schema for new BANNED table. - Fixed: Wrong table format for USER_POLL_VOTES when upgrading from 0.5 - Fixed: Adding indexes to wrong tables. - Fixed: Missing query to add SID column to VISITOR_LOG table when upgrading to 0.6 - Fixed: addOverFlow(): Calculation was off for clientWidth. - Fixed: addOverFlow():Table cells are now set to 98% in pixels (was 100%) - Fixed: addOverFlow(): Added redoOverFlow function to reflow page when window is resized. - Fixed: Type error for .width decleration in post.js in FireFox Javascript console fixed. - Fixed: Better check for attachEvent / addEventListener so they are only called if the browser supports them. - Fixed: Overflow text works for both Gecko browsers and IE browsers now. Not tested on Opera. Opera sucks. - Added: Tehforum style (variation of BH default) so it's easier to maintain and it's somewhere safe to keep it. - Added: Missing image for edit_relations.php - Added: bh_ms_word_spelling_check.php that can spell check the English language translation - Added: .cvsignore files to prevent adding of Attachments and Text Captcha folders and other files. - Added: UTF-8 encoded output via mb_string functions if applicable. - Added: Check button on admin_banned.php when adding a ban. - Added: Column sorting and pages to admin_banned.php (10 items per page). - Added: Ban controls for HTTP referer. - Added: Ban data changes for HTTP referer to admin log. - Added: Options to manage the unread messages cutoff in admin_default_forum_settings.php - Added: Option to hide Guests from Visitor Log both at Global and per-forum level. - Added: Textcaptcha class has new destroy_image function to clean up image after use. - Added: Register.php removes Textcaptcha image after use. - Added: New bh_find_deprecated_consts_and_langs.php that replaced bh_find_deprecated_language_strings.php. Now finds constants and lang strings. - Added: Option to reset all user permissions for the selected folder to match those of the current folder. - Added: Grace period for editing posts where the EDITED BY text doesn't appear. - Added: User's can now alter the nicknames of other user's they've added to the relationships list. (WIP, probably missed loads) - Added: HTTP Referer code for session initialisation and user registration. - Added: Option for Admin to edit a user's profile. - Added: Option to artificially change the user's post count and reset it back to normal. - Added: Mouseover spoiler highlight to lite mode. Not in full mode at the moment. Will change this to user configurable option. - Added: Check for Windows CE powered Smartphones that shows the spoiler so it's readable in Pocket IE. - Added: Functionality to restrict CSS attributes by units (width, height, etc) - Added: 0.6.x to 0.7 upgrade updates thread viewcount with the number of registered users who have read each thread. - Added: Option added to config.inc.php allows you to specify target frame in replace of _top for embedding Beehive in frameset. - Added: Functionality to restrict the USER_THREAD table. No inteface to change the options yet. - Added: By popular request a way to preview the voting form when creating a poll. - Added: By popular request a proper thread delete function that actually removes all trace of a thread. Already deleted threads remain as they were. - Added: Ability to move a thread to a "Deleted Threads" list and recover it back. - Added: Tooltip text to reset button so people know what it actually does. Duh. - Added: Nickname editing to user_rel.php (hand icon on posts) - Added: Export options for each file type added for PM Exporting. - Added: Backend code to forum_options.php and user.inc.php to handle the saving of PM exporting options - Added: PM Export Options interface. Doesn't work yet. - Added: Optional argument to bh_update_visitor_log() so you can specify the forum. - Added: Function install_remove_table_keys() allows installer to remove keys from tables. - Added: Javascript code to resize images larger than the message pane width and add overflow to posts. - Added: USER_TRACK.USER_TIME tracks the length of the user's session. Rather inaccurate at the moment. - Added: Export option to pm.php which creates a zip file of html files (1 for each message) and includes your attachments and your user style. No emoticons because it wouldn't make sense to include all the files! Coming soon some options in My Controls to specify what gets exported. - Added: Thread type drop down list added to top of search.php for display when no results found. - Added: Tooltip for start_left.php and thread_list.php now include the VIEWCOUNT for the thread. - Added: bh_session_check() function now allows a second optional parameter that overrides the cookie MD5 hash. - Added: bh_session_init() now returns the MD5 hash generated / retrieved upon success. - Added: MySQL error code for missing / invalid column name added to prevent error handler from showing some SQL errors. - Added: Search engine bots now show in the visitor log with clickable links to their home pages. - Added: New attachment test code added to start_left.php and threads_get_most_recent() function. - Added: Registered display in user profile. About time we had that somewhere. - Added: Output for user time tracking to profile popup. - Added: Filename to end of get_attachment.php links to try and spoof browsers who ignore the filename= header. - Added: Logging to the DB functions. ooh and eak at the number of queries at messages.php runs!! - Added: Error message when mysql/mysqli extension couldn't be loaded. - Added: Function to iterate through the session perms and return all matches against a perm for a specific forum. - Added: Code to prevent browsers caching style sheets (appends ?[modifiedtime] to end of URL) - Added: Backend code for post view counter. No idea where to display it at the moment. Bottom left of each post? - Added: Function to automatically prune the unread thread data based on the settings picked in Default Forum settings. - Added: bh_update_user_time() function which handles the USER_TIME updates. - Added: USER_TIME update it performed once for each user every time their session needs renewing. - Added: FULLTEXT index added to SEARCH_ENGINE_BOTS to speed up matching. - Added: Query to attempt conversion of SESSIONS table to HEAP if available. - Added: Upgrade scripts now calculate and insert the thread view counts. It's only 1 thread view per registered user and doesn't count guests or multiple views but it's a start at least :) - Changed: Tehforum address changed to co.uk as the .net domain has expired and is being held to ransom. Bastards. - Changed: Probability of forum clean up functions changed to 1 in 50 by default. - Changed: Removed GRANT permission from requirements for MySQL - Changed: Made forum_create() add an index to VIEWED on POST table. - Changed: Installer and upgrade script add index to VIEWED on POST table. - Changed: Updated readme.txt. Removed references to CLI installer and changed some other things. - Changed: Forum clean up functions now return FALSE if they didn't run. - Changed: Readme.txt updated for requirements (now PHP 4.2.0) - Changed: clean_styles was being too conservative at preventing margins and such like. - Changed: Got rid of the index creating loops in the installers because they're too slow. - Changed: Removed a lot of indexes that were causing slow downs just to conflicts (?) with primary keys. - Changed: Moved the current user perm checks into the session array so that there are fewer hits on the database. - Changed: Error message and success messages on admin_banned and admin_rss_feeds now appear for more events. - Changed: Admin Ban controls changed to work like the new Admin RSS controls - Changed: Language-ised admin_banned.php completely. - Changed: New admin_banned.php with more intuitive (well, mostly) layout. - Changed: Updated x-hacker language file. - Changed: Logon and logout forms tidied up a bit. - Changed: Wording in admin_default_forum_settings for textcaptcha waning includes full path now. - Changed: Seperated bh_session_init() into two functions with the second new one handling the guest session creation. - Changed: New RSS Feed Admin panel with easier to understand form and options. - Changed: RSS Feed Prefix is now optional and if used doesn't include square brackets around it. - Changed: Layout of admin_folder_edit.php so it looks a bit better now. - Changed: Search stop words popup changed to 3 column layout to better fit on screen. - Changed: Moved all hyperlinks out of the language files and into the main scripts. - Changed: install_check_tables now allows you to specify an array of tables to check. - Changed: Clicking reset nickname button in edit_relations saves that relationship but not others. - Changed: admin_forums,php width added to main table to prevent it looking bunched up. - Changed: Shrunk logon form slightly to make it look less gash. - Changed: Word filter is now done in output buffering rather than load list and call mutiple times everytime apply_wordfilter is called. - Changed: Removed function messages_get_most_recent_unread function and updated messages_get_most_recent function to find both read and unread messages. - Changed: admin_post_approve.php, delete.php and edit.php to use newer messages_get_most_recent function if the thread that was being modified no longer exists. - Changed: Function thread_get() now checks to see which folders the user can view. - Changed: All calls to thread_get placed within if statements to check the return value for above change. - Changed: Removed useless calls to thread_get_title, thread_get_folder, etc which were being duplicated by calls to thread_get. - Changed: Removed join with THREAD table for message_display. Instead we use the data we alread fetched from thread_get. - Changed: My Controls pages layouts changed to move text away from the table border. - Changed: USER_TIME_LAST now USER_TIME_BEST and stores the user's longest session rather than last session. - Changed: URL truncating in admin_users.php now uses parse_url if possible to shorten URL to scheme and host only. - Changed: Attachments layout changed. - Changed: Poll groups are now seperated by a
again. - Changed: New create_poll.php that is more in fitting with post.php and other scripts. - Changed: Removed db.log debugging from DB functions. - Changed: Removed extra call to messages_get_most_recent() and changed messages_get_most_recent_unread() to also look for read messages as well. - Changed: Removed joins on USER table for approved and edited logon. We now fetch that data seperatly if we need to. - Changed: user_get_prefs() changed query from COUNT to basic SELECT ... LIMIT 0, 1 style query. - Changed: Added Preview Voting Form button to edit_poll.php - Changed: new edit_poll.php that looks like create_poll.php. No change in functionality otherwise. - Changed: Updated fr-ca language. - Changed: The individual light mode scripts now check to see if you have a saved logon cookie and redirect you if you're not logged in. - Changed: Replaced UTC time zones with GMT + country names - Changed: Updated Installer to add the relevant new PM exporting columns to USER_PREFS (global) table. - Changed: Removed redudant final_uri code from light mode as it doesn't do anything at the moment. Will work out a better way to handle it some time, but for now the frame set and the tags and the whole redirecting causes too many headaches. - Changed: Removed lforums.php from robots.txt so that Google and co can index multiple forums under a single BH install. - Changed: Less Resource Intensive way of updating THREAD_STATS table UNREAD_PID, UNREAD_CREATED columns. - Changed: Lack of LAST_READ data is now calculated as threads are viewed and as the USER_THREAD data is pruned rather than working it out on the fly with a join against the POST table. - Changed: Updated en-us and x-hacker language files. - Changed: Moved the invalid username / password prompt in logon.php to be within the frameset (uses a cookie to check if the logon was a failure) - Changed: Gave the Light mode the same functionality as the full thread list with the ability to mark a single folder as read. - Changed: Fixed spelling error "Where moved to" in en.inc.php - Changed: New CSS class for thread_tracking_notice rather than reusing text_captcha_error - Changed: Deleted threads can now be browsed by Moderators. Edit Thread Options link at bottom of page links to thread_options.php to allow undelete. - Changed: Installer updated to reflect changes to USER_PREFS table and USER_TRACK table. - Changed: Removed Reply To links from PM Inbox export. - Changed: UTF-8 encoded files. - Changed: Removed redundant check from thread_list.php which is now handled by thread_get() - Changed: Funky queries for mark as read which literally take 2 to 3 seconds on default MySQl installation with no tuning! Not sure if these will work with MySQL 3.x. They should do because the manual mentions the method is available. Anyone want to test? - Changed: Reduced number of queries required to find threads with attachments for display of paperclip in thread list. - Changed: X-Hacker language doesn't show matching strings anymore like en-us. - Changed: Removed useless joins against GROUP_USER and GROUP_PERM tables from query in user_logon function. - Changed: Probability of forum clean up functions running has been increased by default from 1 in 50 to 1 in 20 - Changed: Only one forum clean up function is run per page load per user if they run at all. Prevents them running all at once and causing long page loads. - Changed: Removed POST table reindexes from upgrade and installer after running tests on Teh Forum. - Changed: All the wasteful SELECT COUNT queries have been changed to basic queries that fetch 1 row (LIMIT 0, 1) and 1 column (primary key) - Changed: PM export HTML now uses verbose date format to include day month and year. - Changed: Mucho faster emoticon class. Shaved over 400ms off the execution time (woo!) - Changed: new-install.php small change to prevent unneccesary processing after removal of conflicts. - Changed: bh_session_get_perms_by_folder() is more efficient. - Changed: Moved test for USER_PERM_GUEST_ACCESS into folder.inc.php. - Changed: folder_get_all() and folder_get_all_by_forum() now use the session data rather than requery the database. - Changed: Converted all BIT_OR SQL calls for selecting or retrieving folders to the new bh_session_check_perm() function. - Changed: Moved VIEWED column from THREAD table into a seperate THREAD_STATS table. - Changed: USER_TRACK table now records both the user's longest single session and their total session time. - Changed: Javascript threaded 'hack' to make the PM notification appear without disrupting the page loading. - Changed: Pluralisation of 'You have %d new PM" so we correctly get "You have 1 new PM" and "You have 2 new PMs" - Changed: Post count now is Thread count. Makes more sense. Duh. - Changed: bh_session_end() now uses current time rather than the session time. - Changed: Option to reset user permissions doesn't affect the user's moderation permission anymore. - Changed: USER_POLL_VOTES table structure changed to work on the primary key to make queries faster. - Changed: Probability code for update_stats(), thread_auto_prune_unread_data(), bh_remove_stale_sessions() and pm_system_prune_folders() now used mt_rand() rather than time() which means the functions are less likely to fire when two users load a page within milliseconds of each other. - Changed: PM Pruning, Stats Updating and Session Expiring code now all use the same probability before processing rather than every 15 minutes. - Changed: Thread pruning now uses a slightly higher probability as it wasn't ever firing on Teh Forum. - Changed: bh_user_update_time() function to use less queries. - Changed: POST_ATTACHMENT_FILES table format changed - Changed: Switched join on thread and pm has_attachment functions to make better use of the primary keys on PM_ATTACHMENT_IDS and POST_ATTACHMENT_IDS. - Changed: Removed join on THREAD table from poll display. - Changed: Removed KEYWORDS column from SEARCH_RESULTS table and moved data to LAST_SEARCH_KEYWORDS in USER_TRACK. - Changed: Call me nuts if you want but I've changed referrer back to referer. Spelt wrongly but correctly according to HTTP specification. - Changed: Limited bh_delete_expired_sessions to 10 at a time to prevent the user who gets lumbered with the delete from waiting for the page to load. - Changed: User session length tracking now works for users who have browse anonymously switched on. - Changed: Removed WHERE from query that updates UNREAD_PID and UNREAD_CREATED columns so they always get updated! - Changed: Prevented guests from spoofing the thread list to get it to load thread types they can't view. - Changed: Added checks for guests and use shorter less complex queries with no relationships, interest or unread data. - Changed: Unread thread views limited to a maximum cut off period allows USER_THREAD table to be pruned. - Changed: Updated English and German languages. - Changed: Updated en-us and x-hacker language files. fr-ca and de to come soon. - Changed: bh_check_languages now orders the problems it finds so it groups together missing strings, untranslated, unneeded, etc. - Changed: More comprehensive bh_check_languages.php script which can selectively turn on or off checking for untranslated strings. - Changed: bh_ms_word_spelling_check.php now writes the changes to en-new.inc.php rather than requiring you to do the changes manually. - Changed: Updated fr-ca translation. - Changed: Format of table key arrays changed so we can create named indexes so we don't create duplicate indexes on tables. - Removed: UTF-8 Page encoding. No idea how to fix the RSS output. Might just give in and flag it as a known issue. - Removed: Guest Auto logon optionas it doesn't work with the new session code where everybody is a guest even if they have a saved logon. - Removed: Unused logon error URL query when invalid username and password. - Removed: Useless call to thread_can_view which was pretty much duplicating the query in thread_get. - Removed: thread_can_view function removed from thread.inc.php. - Removed: Undone the changes in the previous commit to the PM and thread have_attachments functions. - Removed: CGI installer because it didn't work and was never maintained and was unsupported. Sorry peeps. What's new in 0.6.3 (Released 12th February 2006) =================== - Notes - BeehiveForum 0.6.3 fixed a few issues highlighted within the release of 0.6.2. For more detailed features of 0.6.2 please see the 0.6 release notes. - Changes from 0.6.2 - Fixed: html_draw_top() and html_draw_bottom() are now used for the frames pages (admin.php, discussion.php, index.php, start.php and user.php) so we correctly add the forum description and RSS feed links rather than the generic Beehive ones. - Fixed: Second attempt at fixing the error when updating your user prefs. Not even sure that the first patch didn't fix it to be honest. - Fixed: Added some code to disable register_globals to prevent an exploit involving passing values in the URL - Fixed: Links pages weren't filtering the input correctly and were allowing HTML to be posted. - Fixed: potential exploit made available though page url var in admin.php - Fixed: Prevented the use of a hyphen in the forum webtag because it breaks things. - Fixed: Not being able to access restricted forum when access is applied correctly to user account. - Fixed: Clicking Change password / permissions button took you to the permissions page for the wrong forum. - Fixed: Removed align="middle" from images on all pages because they look out of place in the newer Gecko engine builds (FireFox 1.5) - Fixed: Thread list "there are no messages in this mode" text eas stuck to the bottom of the drop down in newer Gecko engine builds (FireFox 1.5) - Fixed: Missing html_draw_top() calls in edit_signature.php when there is an error and also changed basetarget to _blank so that when previewing signature any links open in new window/tab without the HTML needing a target attribute. - Fixed: Added tests for perm_forumtools_access() on post data so people can't send post data to change the user's nickname / password when they don't have access to it. - Fixed: forum settings array is constructed using only two queries now instead of 2 for current forum and another for global settings. - Fixed: Bug in admin_user.php could allow user to loose access to Admin section on individual forums. Global perms were not affected by this bug. - Fixed: form_quick_button() wasn't looking at the right variable when you send it an array of var names and values - Fixed: Inconsistency in dictionary caused "(no suggestions)" to show when the dictionary had finished checking all words. - Fixed: Insert error when processing user post count when viewing a new user's (no posts) profile. - Fixed: Dictionary now works much better. It correctly matches words like couldn't, wouldn't and words in single quotes, it skips URLs, email address and HTML and doesn't corrupt unicode characters what so ever. It also correctly informs the user if there was no match in the dictionary instead of skiping over the word. - Fixed: Unicode characters were being corrupted by Javascript when sending the text back after using the dictionary. - Fixed: Emoticons and signature boxes couldn't be reshown once hidden on post, edit and pm_write pages but reloading them made them show again. - Fixed: edit_attachments.php was showing "Other attachments" in My Controls when it shouldn't. - Fixed: Removed debug code from forums.php - Fixed: Query being executed twice in when fetching forum list for 'My Forums' and potentially undefined variable causing error. - Fixed: user_stats.php no longer fetches the user prefs because it is told what to do by messages.php - Fixed: Undefined variable $install_cgi_mode when using the web interface to install. - Fixed: Attachment view count was incremented each time a thumbnail of an image was seen. - Fixed: load_language_file not working sometimes because of include_once being used rather than include - Fixed: 404 page not found error when you click Continue upon finishing the install because you've just deleted install.php. - Fixed: Table structure for LINKS_FOLDER had been mangled and was no longer allowing NULL on PARENT_FID - Fixed: new-install.php no longer creates the old SEARCH_KEYWORDS, SEARCH_POSTS and SEARCH_MATCH tables. - Fixed: wordwrap plan didn't work because it seems to trim lines it wraps on some OSes and not others? - Added: html_draw_top() now accepts a body_tag argument which stops the function from drawing the body tag, as used in the frames pages. - Added: Favourites checkbox and button to Guest MyForums with an error about needing to login. - Added: Probability test to see if we should clean the stale user sessions. Defaults to 10% probability. - Added: Error out when ever the user's search query is affected by the MySQL full-text stop words - Added: User stats differentiates between you (shown in bold), other users and your friends (shown in italic) and includes tooltips which tell you that you are Invisible or not. - Added: By request search now tells you which words were invalid in your search query. - Added: Relevance to searches. BH doesn't do anything with it, but I might sneak something in before 0.6.2 - Added: Drop down added to search results to allow quick switching of order and removed it from the actual search query. - Added: Post count caching to USER_TRACK table to reduce the load caused by someone opening a user profile. - Changed: user_font.php no longer loads the user's prefs as that part is handled by messages.php. - Changed: Made 06x upgrade script drop the SEARCH_RESULTS table before attempting to create it. - Changed: Slight change to word wrapping in thread list and start page. - Changed: All pages now use our DTD. Can't get the W3 validator to see it though, but FireFox reports it is in Standards Compliance mode. Hmm. - Changed: bh_check_languages.php can now help to find strings which haven't been translated. - Changed: Removed call to threads_any_unread() in discussion.php, admin_post_approve.php, delete.php and edit.php - Changed: Only users who are perm_forumtools_access() can change another user's nickname and password. - Changed: bh_session_remove_stale() is now only called when the user's session is about to expire. - Changed: Removed and / or based drop down from search and allow users to compose their own boolean searches. - Changed: Kick button is now available to global admins rather than just forum tools users - Changed: Dictionary is now case insensitive and with new primary key much quicker. - Changed: Removed count() query from thread_has_attachments and simply made it fetch the AID of the attachment - Changed: Removed count() query from thread_any_unread and made it fetch the TID.PID of the thread instead. - Changed: Encoding on some files changed to UTF-8 PC line endings - Changed: emoticon_get_sets() to have an optional function argument that hides the none and text emoticons - Changed: Attachments now sort alphabetically. Previously updating the attachment to say how many times it has viewed bumped it to the top of the list causing confusion when people pointed towards "attachment #1" rather than naming them by filename. - Changed: More tweaks to search which makes things a heck of a lot quicker! - Changed: Finding an old post to index is more friendly to the server hopefully. - Changed: Removed use of function _in_array() as defined in format.inc.php because it takes too long to process anything. - Changed: Updated language files. - Changed: Guests no longer help to index posts to help reduce load on server. - Changed: thread_list.php and start_left.php now wordwrap thread titles so they don't cause a horizontal scrollbar in the frame. - Changed: upgrade-06RC-to-06.php replaced with a generic script which will upgrade all 0.6 releases thus far to 0.6.2. - Changed: upgrade-05-to-06.php replaced with upgrade-05-to-062.php. - Changed: start_form != start_from. - Changed: robots.txt. 1st stage of Google Friendly Beehive. - Changed: Search now checks to see if it is running MySQL 4 and if so allows a choice between AND and OR based searches - Changed: Guests can no longer perform searches - Changed: Different way to check for results from user search which should be less server intensive. - Changed: Few more changes to the start_main.php example script. - Changed: Removed gmmktime() and changed back to mktime() so we use the server timezone. - Changed: Removed all the search indexing code because it was a bad experiment that didn't work out. Going to concentrate of optimising BH to use MySQL FULLTEXT searches instead. - Changed: _htmlentities now leaves single-quotes alone so they won't get mangled in the database. - Changed: search_index.php now says which post it has just indexed. - Removed: search_min_word_length setting as BH now uses the MySQL defaults (for MySQL < 4.0 the values are fixed at 4 and 84) - Removed: Text at bottom of search dialog is no longer relevant because BH now errors out instead. What's new in 0.6.2 (Released 30th Nov 2005) =================== - Notes - BeehiveForum 0.6.2 fixes a few issues highlighted within the release of 0.6 and 0.6.1. For more detailed features of 0.6.2 please see the 0.6 release notes. - Changes from 0.6.1 - Fixed: Query being executed twice in when fetching forum list for 'My Forums' and potentially undefined variable causing error. - Fixed: Undefined variable $minimum_post_frequency in check_search_frequency() - Fixed: admin_forum_links.php reset button weren't being translated. - Fixed: admin_make_style.php "this colour" and "new" weren't being translated. - Fixed: Undefined index AID in create_poll.php, lpost.php and pm_write.php - Fixed: $page_var not being used correctly in page_links() function - Fixed: page_links() now correctly checks for a URL query before deciding if it needs to use &amp; or ? to add the $page_var - Fixed: Keep reading button wasn't working correctly in polls due to missing </form> tag. - Fixed: Page layout issues in Opera. Crazy stinking browser still center aligns text in a table that has been position within a div?? - Fixed: load_language_file not working sometimes because of include_once being used rather than include - Fixed: UTF-8 encoding in dictionary fixed. - Fixed: Dictionary now skips works that fail the metaphone conversion. - Fixed: Search limiting by username now works again. - Fixed: Regular expression incorrectly matching 9-_ rather than 0-9. - Fixed: URL incorrect for Canadian-Politics.com. Sorry Jo! :) - Fixed: Forum shown was always the default forum even if the webtag was valid. - Fixed: My Forums page was sometimes missing the message count / not showing 0 messages. - Fixed: Missing SEARCH_RESULTS table when performing a new installation of BeehiveForum 0.6 or upgrading from a 0.5 installation. - Fixed: Missing FORUM column in SEARCH_RESULTS table when upgrading from 0.6RC1 / RC2 to 0.6 final. - Fixed: Forum level admins were able to remove the global privilleges of another user without having global forum privilleges themselves. - Fixed: Upgrading from 0.5 to 0.6 sometimes results in an error with primary keys on SEARCH_POST table. - Fixed: Buffer error occured when using MSIE browser and being forced to download the config.inc.php when installing Beehive. - Fixed: admin_banned.php wasn't allowing wildcard in ban list entries - Fixed: Removed align="middle" from images on all pages because they look out of place in the newer Gecko engine builds (FireFox 1.5) - Fixed: Thread list "there are no messages in this mode" text eas stuck to the bottom of the drop down in newer Gecko engine builds (FireFox 1.5) - Fixed: Missing html_draw_top() calls in edit_signature.php when there is an error and also changed basetarget to _blank so that when previewing signature any links open in new window/tab without the HTML needing a target attribute. - Fixed: thread_any_unread not fetching the recent modified unread thread. - Fixed: Missing / undefined language strings in various files. - Fixed: Added tests for perm_forumtools_access() on post data so people can't send post data to change the user's nickname / password when they don't have access to it. - Fixed: Double escaped $forum_name when adding a new forum. - Fixed: forum settings array is constructed using only two queries now instead of 2 for current forum and another for global settings. - Fixed: undefined variable $old_t_sticky / $old_t_closed and related variables. - Fixed: Bug in admin_user.php could allow user to loose access to Admin section on individual forums. Global perms were not affected by this bug. - Fixed: form_quick_button() wasn't looking at the right variable when you send it an array of var names and values - Fixed: Thread list drop down was sticking to the top most folder. - Fixed: Group by thread wasn't working and order by was back to front. - Fixed: Sorting by columns on admin_viewlog.php wasn't working as expected. - Fixed: Inconsistency in dictionary caused "(no suggestions)" to show when the dictionary had finished checking all words. - Fixed: Insert error when processing user post count when viewing a new user's (no posts) profile. - Fixed: Dictionary now works much better. It correctly matches words like couldn't, wouldn't and words in single quotes, it skips URLs, email address and HTML and doesn't corrupt unicode characters what so ever. It also correctly informs the user if there was no match in the dictionary instead of skiping over the word. - Fixed: Unicode characters were being corrupted by Javascript when sending the text back after using the dictionary. - Fixed: Emoticons and signature boxes couldn't be reshown once hidden on post, edit and pm_write pages but reloading them made them show again. - Fixed: Errors in display_emoticons.php when trying to view invalid emoticon sets. - Fixed: edit_attachments.php was showing "Other attachments" in My Controls when it shouldn't. - Fixed: error in checkdate when not entering birthdate. - Fixed: layout issue in forums.php - Fixed: undefined index NUM_MESSAGES when searching for a forum. - Fixed: Problem when trying to upgrade 0.6RC forum to 0.6 final. - Fixed: Missing _htmlentities and _stripslashes in form_hidden_array() - Fixed: Table structure for LINKS_FOLDER had been mangled and was no longer allowing NULL on PARENT_FID - Fixed: Debugging code in session.inc.php - Fixed: new-install.php no longer creates the old SEARCH_KEYWORDS, SEARCH_POSTS and SEARCH_MATCH tables. - Fixed: Array to string conversion in attachments.inc.php - Fixed: Searching for keywords and limiting by user wasn't working as expected. - Fixed: &#037; (single-quote) etc chars not displaying correctly in RSS Feed. - Fixed: Search results not actually sorting by the method picked by the user - Fixed: Missing space in attachment tooltip - Fixed: Search indexing was only ever indexing the first forum created. - Fixed: search_index_old_post() was tripping up over threads which were lost but still had records in the database. - Fixed: wordwrap plan didn't work because it seems to trim lines it wraps on some OSes and not others? - Fixed: Default values in beehive-frameset.dtd needed to be in quotes. - Fixed: Some bugs in the example start_main.php - Fixed: Dictionary now correctly skips over web addresses and email addresses. - Fixed: Missing dependencies on post.inc.php and geshi.inc.php fixed. - Fixed: Old style include('./include/file.inc.php') in search.inc.php replaced with BH_INCLUDE_PATH. - Fixed: Unknown column TID when deleting a message. - Fixed: attachments owned by a moderator / admin were being logged in the admin log when deleted. Changed so that only attachments not owned by the moderator / admin are logged when deleted. - Fixed: Bug in attachments when thumbnail could not be read (i.e. corrupted file, permissions error, locked file, etc). - Fixed: Stream lined the number fo queries that $dictionary->word_get_suggestions() makes by checking that the word we're checking is well formed first. - Fixed: Dictionary would take forever to find and replace all word matches and time out. - Fixed: Dictionary now correctly identifies html tags and doesn't check them. - Fixed: Extra single-quote characters in english.dic - Fixed: Dictionary now correctly splits words in single-quotes but doesn't split words like wouldn't, couldn't aren't, can't, etc. - Fixed: Error when editing a post that has not been indexed yet. - Fixed: Error when folder has no ALLOWED_TYPE set. - Fixed: Upgrading from 0.5 to 0.6 and doing a new install of 0.6 should create 99% identical tables now. - Fixed: Text emoticons wasn't being listed in emoticon drop down on forum_options.php or admin_forum_settings.php - Fixed: Your couldn't select "None" as the default emoticon type in admin_forum_settings.php - Fixed: Some errors with PHP 5.0 with user_update_prefs. - Fixed: top.html and stylesheet not being selected correctly when no default forum / no webtag - Fixed: bug in emoticons caused them not to work correctly for some users and guests. - Fixed: duplicate users in visitor log / recent visitors in drop down on post page. - Fixed: Geshi has some bugs which we need to work around. Stole the old trick that we used to use for Beautifier. - Fixed: Can't post when ALLOWED_TYPES in FOLDER table is null. - Fixed: bh_session_check() was being called twice by the thread list once by itself and again by the RSS feed checker - Fixed: Added an @ on line 153 of forum.inc.php to suppress warning when no default forum and no ?webtag in querystring. This might be a dirty way to fix it, but i can't see why it'd break anything? - Fixed: Uploading a 0 byte startpage causes the admin script to always fail there after. - Fixed: Searching using AND based search was returning no results! - Fixed: Double frequency time being applied to post restriction. - Fixed: Problem with MySQL server being in different timezone to Apache resulted in post and search frequency never allowing a user to post/search or post/search more frequently than they should. - Fixed: POST_COUNT column was being updated twice when a user posted for the very first time. - Fixed: check_post_frequency() and search_check_frequency() were both breaking if the server time changed to be behind the user's last post. Both functions now check to see if the frequency is set to 0 (disabled) before checking. - Fixed: search.inc.php couple of bugs in new frequency test code - line 621 incorrect var name $minimum_post_frequency, assumed it should be $search_min_frequency, changed. Similarly, line 630, $last_search_check, assumed it should be $last_search_stamp, changed. - Fixed: Removed debugging code (oops!) and fixed missing semi-colon from query resulting in error. - Fixed: Relevance wasn't being calculated correctly due to missing IN BOOLEAN MODE in SELECT. - Fixed: thread list was showing unread threads when there were none because threads_any_unread() wasn't accounting for ignored completely users. - Fixed: Incorrect arguments foreach on line 565 - Fixed: parse error in en.inc.php - Fixed: Search tables inconsistencies across different upgrade paths. - Fixed: Added line to create post_count in user_track table, as in new-install.php. - Added: Favourites checkbox and button to Guest MyForums with an error about needing to login. - Added: img { vertical-align: middle } to all CSS files. - Added: English US translation - Added: Script to find lang vars not defined in the default en.inc.php - Added: readme.txt updated with details about MySQL privs - Added: Probability test to see if we should clean the stale user sessions. Defaults to 10% probability. - Added: Error out when ever the user's search query is affected by the MySQL full-text stop words - Added: Link to allow the user to view the MySQL stop word list. - Added: User stats differentiates between you (shown in bold), other users and your friends (shown in italic) and includes tooltips which tell you that you are Invisible or not. - Added: Missing include to server.inc.php in db.inc.php - Added: Link to stop words list on search form. - Added: "Search Results" selection to thread list drop down. - Added: Relevance to searches. BH doesn't do anything with it, but I might sneak something in before 0.6.2 - Added: Drop down added to search results to allow quick switching of order and removed it from the actual search query. - Added: english.dic didn't have I'm in it and lots of people had added it on Teh... - Added: Further explanation to search_index.php about being able to use webtag on the CLI - Added: Return-path header to email functions. Seems to do nothng for tehforum but it has no negative effect either. - Added: Made Beehive check the arv array for a webtag so you can now call BH's scripts from the CLI (webtag must be 1st arg!) - Added: Post count caching to USER_TRACK table to reduce the load caused by someone opening a user profile. - Added: Missing xhtml-lat1.ent, xhtml-special.ent, xhtml-symbol.ent to CVS. Don't really know if I should be including this or if I can reference them in the HTML. Anyone know? - Added: You can now make BH dump a query log for each file by creating a PHP writable directory called db_logs in the forum folder. - Added: The and They to dictionary. - Added: Function to fetch the full text min and max word lengths from the MySQL server itself. - Added: Functions in preperation from thread splitting functionality for 0.7 release. - Added: POST_COUNT column to installer and upgrade script. CVS should work again now! - Added: missing semi-colon on end of height attribute in .pmhead class. - Removed: Text at bottom of search dialog is no longer relevant because BH now errors out instead. - Removed: Unused argument from format_date() function in format.inc.php - Removed: RSS error handler - Removed: Debugging code from dictionary. - Removed: search_min_word_length setting as BH now uses the MySQL defaults (for MySQL < 4.0 the values are fixed at 4 and 84) - Removed: Unneeded install_* classes from the provided stylesheets. - Removed: Copy of put_per_forum_custom_styles_in_here What's new in 0.6.1 (Released 22nd Aug 2005) =================== - Notes - BeehiveForum 0.6.1 fixes a few issues highlighted within the final release of 0.6. There are no functional changes to the software at this time. For more detailed features of 0.6.1 please see the 0.6 release notes. - Changes from 0.6 - Fixed: Forum level admins were able to remove the global privilleges of another user without having global forum privilleges themselves. - Fixed: Upgrading from 0.5 to 0.6 sometimes results in an error with primary keys on SEARCH_POST table. - Fixed: Buffer error occured when using MSIE browser and being forced to download the config.inc.php when installing Beehive. - Fixed: Forum shown was always the default forum even if the webtag was valid. - Fixed: My Forums page would not display the message count on the forum if the forum had no messages or the user had not previously visited the forum. - Fixed: Missing SEARCH_RESULTS table when performing a new installation of BeehiveForum 0.6 or upgrading from a 0.5 installation. - Fixed: Missing FORUM column in SEARCH_RESULTS table when upgrading from 0.6RC1 / RC2 to 0.6 final. What's new in 0.6 ("Honey Lingers", released 18th Aug 2005) ================= - Notes - BeehiveForum 0.6 introduces a new search indexing procedure which will unfortunately skew the search results of your forum while it catches up and performs the indexing. If you have a lot of posts this will take a long time to complete. To help reduce the time required in the indexing your old posts, included is search_index.php which is suitable for running from a cron or schedule job. Posts created after upgrading to 0.6 will be indexed as they are created. - New Admin logging options require 0.6 to clear your current Admin Log before upgrading. This is at the expense of improved logging. If you want to keep your old logs please view and save the HTML output or export the ADMIN_LOG table for each forum. - Brand new features - Installation can now be completed via CLI over telnet / SSH. - RSS Feed propagation allows the replication of an RSS feed into threads on your forum. Useful for news headlines from other sites to promote discussion. - Added constant for the include files path so that developers can reuse the Beehive include files while placing their own scripts outside of the main forum folder. - Post Approval options allows moderators to optionally approve posts before they are displayed to other users. - Email address confirmation for new user registrations. - Text Captcha options for new user registrations to help prevent scripts and bots from creating user accounts. - TinyMCE WYSIWYG integration with BeehiveForum's compose pages. - French Canadian (fr-ca) language file. Thanks to Jo from Canadian Politics Forums (http://www.canadian-politics.com/) - Forums can be opened, closed, restricted or password protected without requiring access to the 'Manage Forums' section. A new option allows a user with access to the 'Manage Forums' section to disable a forum which will hide it from the My Forums list as per 0.5's behaviour. - WikiWiki integration allows Beehive to automatically hyperlink CamalCase words as used by most popular Wiki sites. - Wiki-esq quick links for linking to a specific post using msg:1.1 or to user's profile using user:Logon. - Attachments allow for the creation of thumbnails in posts for supported file types (*.png, *.jpg, *.gif). Requires GD library to be compiled in with PHP. - New option allows all other users to edit a PILLORIED users posts without having to be given moderator privileges. - Added user tracking and limitations to restrict how often users can post and perform searches. - New User Registrations can now be disabled. - Added option to prevent spidering of forums by adding the appropriate noindex,nofollow meta tags to the HTML generated by Beehive. - Added options to enable or disable the links and Personal Messages sections and correctly prevent access to the related pages. - Added option to specify the forum time zone and day light saving mode independently of the server clock and user time zone. - Added option to prevent users from ignoring admin. - Default New User registration settings including email notification PM notification, etc. can be defined in Global Forum Settings. - Added <label for=""> to checkboxes and radio buttons which allow for clickable text to toggle form elements. - Added post stats page to Admin tools which can be used to find the Top 20 posters during specified period. - Enhanced old features - Greatly improved Unicode UTF-8 support which should make it possible to type in different alphabets in the same post. - Improved user permissions handling to be more consistent and less prone to problems. A lot of the niggles you've all encountered with 0.5's permissions should be fixed in 0.6. - Ban controls now allow banning of IP Addresses, Logons, Nicknames and email addresses, all by wildcard matching. - Better search indexing added which generates less load on MySQL server when a user performs a search. - Better Admin log with less possibility for display of Unknown User, Unknown Thread / Post, etc. - Added ability for Admin to change user's password. - Re-added User Alias list on User page, but removed IP banning option as this is now handled by the new Ban Controls section. - Dictionary now skips HTML tags and entities and is otherwise more precise in matching whole words. - Links and Link folders are now sorted alphabetically by default. - Replaced Beautifier with Geshi - Generic Syntax Highlighter. - Improved user permissions allow for separate Links section and Post moderators as well as better global Admin who can optionally moderate over all forums. - Improved emoticons support makes it easier to create and distribute emoticon packs that are easy to install. - Attachments now always open in a new window / tab. - New improved attachments popup with G-mail-a-like multiple file uploads. - Light mode now uses the Forum Name in the logon page to indicate the name of the forum you are visiting. - Images to links option will now convert embedded files including Shockwave and Flash files. - Added Logon and User UID to top of Edit Preferences page. - Removed all inline CSS and replaced it with class names which can be more easily modified in your style sheets. - Greatly improved the start page editor and style sheet editor with more useful error messages and help for write protected files and folders. - Added Deleted by text and time / date stamp on deleted messages. - Prevented users from blocking moderators and stopping them from sending them PMs. - Fixed sending an email to a user via their profile always said "Sent by X from a Beehive Forum" - Better session handling code allows users to logout correctly and appear logged out on the Recent Users display. - Better detection for when a user's session expires, giving them more control over logging back in with minimal fuss. - Fixed all user preference updates so they don't affect all forums. Changing things like post page settings, font size, toggling stats display now only affects the forum a user is currently visiting rather than all of them. - Re-added display of Guests to Recent Visitors list. - General Bug fixes - Fixed call to undefined function user_change_pw() fixed. A patch is also available to fix separately this problem in 0.5 - Fixed call to undefined function gzcompress() when GZIP compression was enabled on a PHP installation that was compiled without ZLIB. - Lots of IIS server fixes. - Lots and lots more! - Known issues - Threads created from RSS Feeds are known to have problems with some characters displaying incorrectly where the character encoding of the feed is different to that of the output generated by the BeehiveForum software. - Incorrect HTML contained within RSS Feeds will be rendered correctly (shown as HTML entities) due to aggressive checking used by BeehiveForum to make sure broken HTML doesn't break the display of the messages. - Changes from 0.6RC2 - Added: 4th table to search (SEARCH_RESULTS) which stores a users search results for quicker retrieval across result pages and to get around the problem with the search frequency. - Added: Upgrade script for 0.6RCx (will work for both RC1 and RC2) to upgrade to 0.6 Final when we release it. - Added: Option to mark as read a selected folder (*) - Fixed: undefined index 6 in attachments.inc.php when creating a thumb nail for unsupported image type. - Fixed: Outer Join error in search query when performing an OR based search. - Fixed: Error with undefined index msg in admin_banned.php when not specifying the URI query correctly. - Fixed: Undefined variable $result_threads in threads.inc.php - Fixed: install.php was not using it's own error message for database connection problems. - Fixed: blank page error when reading emoticon directories on some PHP versions caused by error suppressant being in wrong place. - Fixed: text_captcha class reporting incorrect error message or no error when there was an error. - Fixed: old style include path links for file_exists check on config.inc.php - Fixed: Links drop down still displaying if table was empty / there were no links. - Fixed: forums page showing 0 unread threads if you've never visited the forum in question - Fixed: Differentiated between Downloaded: 1 time and Downloaded: x times for foreign langs. - Fixed: months not displaying correctly as per bug #1227704 - Fixed: edit_prefs.php not accepting a hyphen in PIC_URL and HOMEPAGE_URL. - Fixed: Undefined variable $result in threads.inc.php. - Fixed: Undefined property $this->emoticons. - Fixed: Undefined index PRIVACY and redone how the form checks the checkboxes for privacy - Fixed: final_uri error in forums.php that allowed the exclusion of an foreign web site. - Fixed: Prevented error handler from revealing path of files on server. - Fixed: Prevented direct access to include files. All redirect back to index.php now. - Fixed: webtag is now checked against a regular expression to prevent SQL injection / xss eploits - Fixed: Undefined constant BH_INCLUDE_PATH in search_index.php - Fixed: Undefined index UID in user.inc.php - Fixed: english.dic was corrupted most of the way through. No idea how that happened, but it did. SF to blame maybe? - Fixed: User:Logon and Msg:1.1 WikiLinks were broken - Fixed: Added extra precaution against SQL injections in webtag functions. - Fixed: My Forum page getting folder list for current forum rather than the actual forum we're trying to get unread messages from. - Fixed: My Forum page always showing 0 unread messages when there were some. - Fixed: Password protected forum will now only prompt for password if the password has been entered and is the minimum length. - Fixed: Unknown error [8] ob_flush(): failed to flush buffer. No buffer to flush (maybe) - Fixed: Light mode not saving password correctly. - Fixed: IP address in post not being a link if the user is both a moderator and has access to the Admin tools. - Changed: Path in bh_find_deprecated_language_strings.php changed so it works with a relative path so everyone else can use it. - Changed: Removed scripted file types from upload dialog on admin_startpage.php. It will now only accept *.txt, *.htm and *.html - Changed: Added IP Address display with link to admin_banned.php to admin_user.php - Changed: Added check for unban_ipaddress on URL query which automatically highlights the banned address in admin_banned.php. - Changed: All preg_match calls have been changed to check the number of matches rather than assume true / false - Changed: bh_setcookie() now matches many schemas by using a regular expression. - Changed: Reworded the help text for $cookie_domain and $gzip_compress_output in config.inc.php. - Changed: Updated language files and removed unneeded strings. - Changed: Optimised the visible discussions mark as read so the tidarray contains the TID and LENGTH so we don't have to query to fetch them. - Changed: edit_prefs.php so it keeps the entered user data even if it contains an error so that the user can correct it without having to completely retype it. - Changed: Made admin_user_groups table wider - Changed: Added missing $Id lines from rss_feed.inc.php, htmltools.inc.php and geshi.inc.php - Changed: Added forum ID to search query for future compatibility. - Changed: Removed $admin_nickname and changed query that creates user account to use MySQL's UPPER() function instead. - Changed: SEARCH_RESULTS table added to new-install.php - Changed: Language strings updated. Better grammar and spelling hopefully. - Changed: Mark as read function now fetch all the threads to mark as read first before passing them to message_mark_read. - Changed: Removed redirect on direct access from config.inc.php and constants.inc.php - Changed: Removed _htmlentities_decode calls from threads_rss.php - Changed: Added functions to get a forum's WEBTAG and table prefix. Works the same as get_table_prefix but takes a forum id and queries the table rather than using the webtag URI query. - Changed: Users with forum tools permissions can access password protected forums without entering a password. - Changes from 0.6RC1 - Fixed: error handler falling over itself if the $_POST variables contains an array. Handled by a function in form.inc.php that can be used by other scripts if required. - Fixed: error in get_request_uri which trips over $_GET variable containing an array. Handled by a seperate function to the one in form.inc.php as this one is required to construct a URL query from them. - Fixed: post content preview was being chopped incorrectly in search results - Fixed: search was not working as expected when a user searched for words by a user and the word was in the MySQL stop list. - Fixed: redid all the transparency on all the Default style images and made sure they were 15x15 pixels. - Fixed: Several changes to make Beehive more friendly to non-english translations. - Fixed: attachments being deleted prevents moderators from gaining access to the edit attachments page of a post for another user. - Fixed: Made all edit pages check for and create an AID record in the relevant ATTACHMENTS table in order to prevent replacing it and loosing link between posts and attachments. - Fixed: pm_save_attachment_id() causing problems when a PM already has an attachment ID. It now checks the database first same as post_save_attachment_id does. - Fixed: all final_uri queries now check to make sure the string is longer than 0 chars. - Fixed: exploit in final_uri that allowed people to load another website into the discussion frame of Beehive. - Fixed: grammar error in "You have 1 a new PM" language string. - Fixed: PM's always showing as having attachments. Added a new function to pm.inc.php called pm_has_attachments() which will actually check the POST_ATTACHMENT_FILES table for attachments same as the thread_has_attachments() does. - Fixed: user_get_aliases() no longer include empty IPAddress matches in the check. - Fixed: moved USER_PREF modifications out of 0.5-to-0.6 upgrader foreach loop into main part of installer so they are only performed once. - Fixed: undefined variable $db_post_save_attachment_id on line 722 of pm.inc.php - Fixed: logon drop down not working on expired session page. - Fixed: missing [1 new from thread list. - Fixed: Guest error login link loosing URL query due to it not being encoded correctly. - Fixed: [x new of y] wrapping incorrectly by adding white-space: nowrap to CSS - Fixed: "Ararar" error message in thread_options.php - Fixed: missing rawurlencode call in parse_url function which broke the ?msg thing in email links. - Fixed: emoticon "none" setting not working. - Fixed: session failure page choking on $_POST being a multi-dimensional array. - Fixed: threads_any_unread() not checking if the user had not seen the thread before at all. - Fixed: bug with undefined index PATH_INFO in html.inc.php - Fixed: light mode always remembering password even when tickbox unticked. - Fixed: logging in from light mode and then visiting the full mode triggers showing the logon dialog even though you've never visted it before. - Fixed: static webtag in poll.inc.php and upgrade-05-to-06.php - Fixed: undefined variable $lang in poll.inc.php - Fixed: Removed erranous space from end of constants.inc.php that trips up if the output buffering is disabled. - Fixed: undefined variable $settings_array in forum.inc.php - Fixed: undefined $db_install in forum.inc.php - Fixed: removing a forum didn't remove the RSS_FEEDS and RSS_HISTORY tables for that forum - Fixed: header_redirect problem when msie_buffer_fix() is called producing output before headers - Fixed: undefined variable $chunks_array in format.inc.php - Fixed: undefined variable $chunks in format.inc.php - Changed: Simplified the calls to the email notification functions requiring a msg and splitting it into tid.pid when the function is called by joining the tid & pid! - Changed: RSS feed now duplicates the headline in the quote tag so if it gets truncated by Beehive's 64 char limit on thread titles we still get to see it all. - Changed: All '{$table_data['FID']}' changed to $forum_fid to make things neater and easier to understand. - Changed: Truncating of RSS thread title now works the same as the search results. - Changed: Reformatted user_profile.php page so it should display better. - Changed: Added error checking to installer/upgrade scripts. - Changed: Made the Find button on the Advanced Search form auto-re-enable when the search results have successfully loaded. - Changed: logon.php and logout.php to not use the expired session page. Makes sense, no? - Changed: Removed <bdo> tags from thread_list.php - Changed: Added CDATA tags to the <title> element of the RSS Feed which should help with FireFox not being able to use the output. - Changed: Added an exclude_keys array list to form_input_hidden_array so you can specify named keys to skip. - Changed: Added _array_chunk function which mimics PHP > 4.2.0's own function. - Changed: search indexing to ignore keywords with numerals only (like: '000', '999', '911', '666' etc) - Changed: search indexing now chunks the keywords and performs multiple queries in chunks of 20 keywords in order to stop MySQL failing when the number of words to index in one query is greater than the highest extended query count. - Changed: Removed directory creation functionality from admin_default_forum_settings.php and added a function that is called by the script and all the other attachment scripts to check and create the directory. The text captcha class already does this. - Changed: Removed all the width and height attributes from image tags to stop those images which are larger or smaller from being resized by the browser. - Changed: Added optional UID argument to all the perm_* functions that require it. - Changed: Added optional argument to disable ip address logging as used by the RSS feed - Chamged: Added extra index to USER_POLL_VOTES (TID, OPTION_ID) to improve poll performance - Changed: RSS Feed so it only fetches 10 feed items per update What's new in 0.5 ("What You Have Is Enough", released 10th Dec 2004) ================= - Notes - Beehive Forum 0.5 corrected a very large scale problem with stripslashes which means that content created with prior versions may be subject to erroneous display once you upgrade to 0.5. - Brand new features - Multiple Forum support. Yes, finally you can run more than one forum on your web space using a single Beehive installation, under a 'My Forums' linking system. - Forums can be open/closed/restricted/passworded. - Install/upgrade script simplifies installation process. - Comprehensive user permissions - users can be given/denied access to post/read/moderate etc. in specific folders, as well as having HTML/sig privileges given/denied. - As well as per-folder moderators, a user can be assigned as a 'Global moderator', who can moderate in all folders. - User groups can be created to help moderation of large forums. - New 'Forum Links' drop-down in the top frame allows for linking other Beehive forums and sites easily. - New 'My Controls' replaces the old preferences and profile sections, incorporating them into a single location. - Emoticons. Really fancy emoticons. With per-user options to display any of several graphical sets, or plain-text, or nothing at all. - Emoticon preview pane on post page for quick reference. - Users can now perform basic moderation duties on their own posts on the new 'Thread Options' page, including changing the thread title and moving the thread to different folders. Admins can prevent this functionality by 'edit locking' the thread to prevent it from being changed. - Users can access 'Thread Options' by clicking the icon to the left of every thread title in the thread list frame. From here a thread can be ignored without ever reading it. - Posts can now be marked as unread, for later reading. - New 'Reply as PM' link on every post will quickly create a new PM addressed to the post author, with the thread title as the subject. - Number of PMs per user can be restricted by the admin. - PM auto-pruning - messages not in the 'saved' folder can be automatically deleted after a certain time has passed. - Option to reply a PM with the in-reply-to PM's text quoted. - New user option to change all images embedded into a post by users (inc. signature images) into clickable links. - 'Reply to all' allows a user to reply to an entire thread instead of a specific post. - New tabular polls to compare votes from different poll groups. - Quick search. - Per-user word filter. - Beautifier (www.beautifier.org) integration with BH <code> tag. - <spoiler> tag to hide text which may otherwise spoil that movie you're planning on seeing tonight's killer plot twist. <spoiler>He was dead all along!!</spoiler> - <noemots> tag to prevent anything within it from being converted to an emoticon. - New post page preferences which allow you to toggle the HTML toolbar, the emoticons preview pane and the signature text field. You can also choose an HTML mode by default; you can choose to enable/disable emoticons in your messages by default and so on. - English Language Dictionary available from the HTML Toolbar which can be configured to auto-check spelling each time you post. - Guest account no longer requires cookies, so that search engines can spider Beehive forums. A robots.txt file is also included to help search engines spider the right content. - A user can now set their default start page to be the thread list in the left frame, and the forum start page in the right frame. - New thread_rss.php allows recent Beehive threads to be loaded into an RSS reader. - Previous/next post navigation arrows. - 'Unread Today' threadlist filter option. - Admin tools to delete all a user's posts in a thread, or throughout the whole forum. - Admin option to delete an entire thread. - 'Ignore Completely' option allows you to ignore all posts to/from a user as well as any threads they create. - Enhanced old features - HTML toolbar is now present for post creation; post editing; poll creation; signature editing; PM creation; PM editing; start page editing. Can't get enough of that HTML toolbar. - Slicker HTML integration - <quote>/<code>/<spoiler> tags won't show their innards, for example. - Better editing page. No longer will you have to toggle between a plain-text/HTML version of your post - BH will automatically approximoguesstimate what settings you originally posted your message with. - Polls can now be 'soft-edited' - minor edits which won't reset the votes. - Poll options can either be displayed as radio buttons (as before) or as a drop-down list. - Improved word filter that allows you to find and replace rather than obscure the filtered words with asterix. - Word filter can now be disable without having to clear the filter list of the current entries. Useful if browsing from different places such as home and work. - Many pages have had their output tweaked so they fit in with the overall style of beehive. - Attachments now support the uploading of multiple files at the same time. Useful for dial-up users who want to attach multiple files without having to do each file in turn. - The forum owner can now choose to have deleted attachments still show (with the link removed) in posts. - Alternative attachment method which allows Beehive to make use of the old 0.3 and older attachment retrieval method for servers that can't handle the newer method. - The search page has been remade with a better design and better functionality. - 'Page [1] 2 3 ...' on various pages rewritten a bit posher. - Fixes - Lots and lots! - Known Issues - Content created prior to the installation of 0.5 will be incorrectly escaped (all ' and " characters will appear as \'and \" respectively). This is due to a major bug in versions prior to 0.5 which meant content inserted into the database was double-escaped. What's new in 0.4 ("In The Flesh", released 10th December 2003) ================= - Brand new features - Personal Messages allow users to keep more private matters out of view from the rest of the forum members. - I18N multiple language support is now included with Beehive which allows Beehive to be viewed in a variety of languages. See readme.txt for more information. - New word filter allows forum admins to censor words using Perl Compatible Regular Expressions. - A style creator is now included to help you generate a random coloured style sheet for your forum. - All admin activities are now logged to a table in the database. The log is viewable from the admin options. - Stats display shows some basic stats such as the active users, the maximum number of users ever active, number of total posts and threads made and other such delights. - Enhanced old features - New Post and Edit pages including intelligent HTML toolbar which allows for quick and easy creation of HTML posts without having to worry about paragraphs and other such things. - New Register page includes some basic options that people can set when they sign up. - Preferences page now remembers a users chosen settings if an error occurred on submit. - Preferences page has been restyled to fit in with the profile page better. - Sticky threads can now be created by forum admins. - Search page allows the results to be grouped by thread. - A minimum word length can now be applied to the search dialog. - New navigatable list style view added to the links page. - Attachments can no longer be embedded in posts, making them more narrowband friendly, more secure and less bandwidth hungry. - New cookie domain setting allows Beehive to set it's cookies so that they will work across all sub-domains of a web site. - Users can now choose to display their age and/or birthday in both their profile pop-up and also on the Start page. - Folders can now have a restriction placed upon them which prevents users from posting polls / posts in them. - Folders can now be re-sorted after creation. - Profile items and sections can be re-sorted. - Configurable Profile options allow you to specify some basic options for the profile page including the type of input field. - Groupable poll options allow users to create polls with different groups of answers. - Public Ballot polls allow the creation of a poll which can be used to display the username of each user under the option name they voted for. - Fixes - High Interest, Unread High Interest, most recent discussion and other things which were not working under MySQL 4.0.13 and later are fixed. - Some fixes to make Beehive more palatable with Microsoft IIS. - Folders were showing a thread count of 0 on threads which did actually contain some posts. - User custom selected font size now applies to all on-screen fonts. Smaller fonts are automatically scaled to the main font size used. - Some layout changes make Beehive look better on non MSIE based web browsers. - Known Issues - Folders created under 0.3 or below which contained quotes will now display incorrectly in 0.4. You can fix this by visiting the admin folders option and fixing the folder names. This was due to a bug in previous versions which has now been fixed. What's new in 0.3.1 ("Beemused", released 3rd September 2003) =================== - New features / Enhancements - There are no new features or enhancements in this release. This release is primarily intended to fix some problems that exist in MySQL 4.0.13 and higher. Don't worry 0.4 will be coming soon! - Fixes - Users lost access to restricted folders if they ignored them - Queen could loose her 'Queen' Status and be demoted to a soldier if he/she changed her own permissions through the Admin Users interface. - It was not possible to delete Profile Items and when deleting a Profile Section the wrong one was deleted. - Threads would not be visible at all regardless of folder interest settings under MySQL 4.0.13 and later - Recent discussions list on Start Page would appear empty under MySQL 4.0.13. What's new in 0.3 ("A little Beehind", released 11th February 2003) ================= - Brand new features - All output is now optionally gzip encoded to save bandwidth. - The styles system has changed a bit - the majority of the stylesheet is now static, which saves even more bandwidth. - You can modify the start page directly from the admin interface. - As well as ignoring a user, you can make them your "Friend", and filter the thread list to only show discussions started by Friends if you want. - New poll system, with up to 20 options per poll. - There's a new frame-less light HTML "diet" version of the forum - now you can browse and post from a PDA and some mobile phones. - A links section that allows your users to create a database of useful links. - You can see a list of possible aliases for any user (people who have logged in from the same IP address before) - Banning a user by IP address is now possible. - Option to delete all of a user's posts in the admin interface. - You can now ignore entire folders. - Enhanced old features - Guest access is now optional. - Other changes to polls, such as the ability to post an explanatory message at the same time as you post the poll. - Various new UI stuff - friend / attachment icons in the thread list, link back to the voting form in a poll thread. - Polls are now slightly more anonymous (at least, it's not trivial for someone with database access to see how you voted, but neither is it secure). - Users can choose to be directed straight to the forum (bypassing the start page) when logging in. - The time a user last logged on and the total number of posts they have made on the forum are displayed in their profile. - You can now ignore only someone's signature, or globally ignore all signatures if you want. - Mark as Read has more options (all discussions, visible discussions, next 50 discussions) - Fixes - We've given the code a spring clean - hopefully there are now no PHP errors/warnings/notices at all. - Various fixes to make things work properly with Microsoft-IIS. - Some fixes to properly support PHP 4.3.x. - Some of the database stuff (mainly thread list queries) has been optimised for efficiency. - Database errors are now caught in a nice way. - Some session handling improvements What's new in 0.2 ("Let It Bee", released 12th September 2002) ================= - User Selectable Styles: Forum members can now select from a number of styles to change the appearance of the forum. Pretty much everything can be styled, by editing the CSS files and altering the images. - Polls: Polls are now enabled. They let people vote, and stuff. - Attachments: Forum owners can optionally enable the attachments feature, allowing members to upload files to the forum server. Space available per member can be limited. - Forgot password: Muppets who forget their passwords can now get an e-mail to the address they entered, with a link where they can reset the password. - Guest access: Casual browsers can access forums as guests, but can not post. - Lots of little things: Little enhancements here and there that just generally make things nicer. Like friend icons in the message view, and multiple logins being saveable. - Discontinued undocumented features: Most of the undocumented features from 0.1 have been removed, such as the undocumented feature where fix_html would occasionally loop until PHP timed out, and the famous "time-travelling" undocumented feature where post's creation times were updated when they were read by the user they were addressed to. - New undocumented features: It is possible that the addition of the new documented features has resulted in the accidental addition of new undocumented features. If you believe you have found an undocumented feature, please let us know in the test forum at http://beehiveforum.net/forum - \o/ Domain name \o/: We got the domain name registered, so you can now use http://beehiveforum.net for all your Beehive URL needs. It's still hosted on SourceForge (http://sf.net), lovely people that they are. What's new in 0.1.1 ("Jump This Way", released 28th June 2002) =================== - Some fixes, as a result of the fact that we'd never tested 0.1 on Microsoft IIS :) What's new in 0.1 ("Don't Call Me Baby", released 26th June 2002) ================= - General forum functionality - User administration (gag, ban, promote to moderator) - Moderation (edit/delete/remove posts) - Private folders - Search - HTML posting with full rigourous vaildation (you can't break the page) - Editing posts - Ignoring users/threads - Email post notification