We really hope this is the latest release of the version 2.0 beta series. We have worked on these series more than 1,5 years, and now see it as very well tested and
stable software for creating smart online community.
This release introduces such new features as case insensitive login, possible email confirmation if changed in Profile, also as many other minor fixes collected within latest months. The big step forward is that this version pretends to be
XHTML Transitional compatible by W3C standarts. We have fixed all templates, and scripts' internal HTML code. This is more important for new users of miniBB; so if you will upgrade your version and don't worry about standarts too much, do not overwrite default templates, specially if you've made some changes to your current stuff. All modern browsers should display correctly even the pages which have incompatibility, so this is the step more oriented on "being smart", rather "important".
XHTML compatibility changes mostly affect the following: a) all values set in quotes; b) <p>, <br>, <li>, <input>, <meta>, <img> tags are closed if opened; c) JavaScript events like onmouseover/onclick etc. now published lowercase d) & must be converted to &. Also, in many templates we've removed "<div align="center>" tags, and now position tables only using CSS.
XHTML compatibility affects currently only MAIN CORE of miniBB. We will continue to work on language packs, skins, and plugins to make them all compatible, in the near future, and not only with XHTML, but also with version 2 of miniBB.
Notice also, that
if you edit the message, your old BB codes will not be available anymore, and sometimes you will need to reformat your message. We hope this is rare case.
There are also posting text routine major updates: now, in most cases, users will get JavaScript "Access denied" message when trying to post empty message or message with empty topic; also when posting anonymously on registered users only forums. Since miniBB allows to sign-in from any message or new topic form, entering login and password, error won't be displayed in that case. This will help new users to catch their errors on-the-fly without losing message information; new options _specially_ useful for those who are using file upload addon. Changes do not affect users who has browsers with JavaScript disabled - they still can submit their messages, but in that case, all errors will be handled via PHP.
Steps to update:
1) Back up and then update the following core script files, overwriting them:
* bb_admin.php - a lot of major fixes, incl. XHTML
* bb_codes.php - new code "[urlc=...]" which allows admin or moderator to add a link without "nofollow" tag; <br> changed to <br />; a lot of XHTML related fixes; new available (form hidden) tag [align(left|center|right)][
/align] allows to position text in desired alignment, incl. nested image tags.
* bb_cookie.php - setMyCookie() - added new variable $encodePass (used when password is already passed encoded - for example, $admin_pwd); login case insensitive implementation
* bb_func_confpwd.php - email confirmation code added
* bb_func_editmsg.php - fixes regarding topic title posted in wrong encoding; posting routine update; XHTML fixes
* bb_func_editprf.php - database lowercase function definition fix; email confirmation on changing email in Prefs, if $closeRegister is set; disabled="disabled"
* bb_func_forums.php - selected="selected"; fixed optgroup procedure
* bb_func_ldisc.php - XHTML
* bb_func_locktop.php - mod_rewrite fix
* bb_func_login.php - login case insensitive implementation
* bb_func_pthread.php - changed <br> to <br />; anchor fix
* bb_func_ptopic.php - fixes regarding topic title posted in wrong encoding
* bb_func_regusr.php - database lowercase function definition fix; XHTML fix
* bb_func_search.php - XHTML issues; anchor fixes
* bb_func_txt.php - fixes regarding topic title posted in wrong encoding; MS Word special symbols fix; changed <br> to <br />
* bb_func_usernfo.php - possibility to force displaying of latest topics, replies and activities
* bb_func_vforum.php - XHTML fixes
* bb_func_viewip.php - XHTML fixes
* bb_func_vthread.php - minor fixes; IMG closing tag (XHTML); onmouseover/onmouseout; anchor fix
* bb_func_vtopic.php - fixed stripping HTML tags in forum description; IMG closing tag (XHTML)
* bb_functions.php - fixes in emailCheckBox() ($main_url), sendMail(); database lowercase function definition fix; quotes in emailCheckBox and makeValueDropDown fncs.; selected="selected"
* index.php - posting routine update; changed user blocking determining (if activity is -1, user is able to change Preferences, if he doesn't received confirmation email upon email change; if activity is 0 that means user is blocked by admin and can not access any areas); admin link fixes
2) Edit setup_options.php file - new (not mandatory) option $loginsCase. If is not set, or set to FALSE, all logins are CASE SENSITIVE (by default). For example, if you have registered username "Paul", you must type "Paul" in your login field. Not "PAUL, and not "paul" - this will not work. If this option is enabled and set to TRUE, you can type anything - "paul", "PAUL", "Paul" etc. - anything will be compared in lowercase. Notice: nobody is able to register "PAUL" or "paul" usernames, if there is already one "Paul" in database - this doesn't depend on setting this option. This option also DOES NOT affect passwords; password must be entered the same manner as via registration.
$post_text_minlength parameter in setup_options.php is now obligate! If it's not specified, set it at least to 1 ($post_text_minlength=1;)
3) The following CRITICAL changes were made to these files, so it's up to you how you upgrade them - update or overwrite, but definitely you must pay attention to:
* templates/form.js - added main functions for handling forms
* templates/main_posts_cell.html - "msg{$cols[6]}" instead of "{$anchor}" now for making anchors in the thread
* templates/main_posts.html,
* main_topics.html,
* tools_edit_post.html
- posting routine updates. Added "tlength" and "anonPost" javascript variables; javascript code for form.js moved BELOW this call; at the bottom of each file, added javascript code which should enable post button after form is submitted, but came with error. Submit button changed to "button" type and named now "subbut"; it's displayed when JavaScript enabled via document.write function. Alternative non-javascript code is suggested for straight submit button.
* templates/main_post_area.html - submit button changes as described above.
* templates/main_topics.html - removed ENCTYPE="multipart/form-data" (not necessary by default)
* templates/tools_edit_topic_title.html - "postTopic" variable changed to "topicTitle".
* main_header.html - added closing slashes in meta tags; the document definition is now: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
* eng.php (Language pack): deleted variable $l_privateForum; added variables $l_emailChangeCode, $l_emailCodeConfirm; closing slash in meta tag for XHTML compatibility; all <br> replaced to <br />
* templates/email_user_confirm_eng.txt - NEW - template for confirming email when changing it in Profile; not mandatory if you have $closeRegister not set
* bb_default_style.css - we have added atrributes like: margin-left: auto; margin-right: auto; vertical-align: top; , also as new classes .tbTransparentCell, .tbTransparentmb, table.forumsmb, img and td
4) Optionally, execute these mySQL commands in order to fix old miniBB's HTML messages format compatible with XHTML:
update minibbtable_posts set post_text=REPLACE(post_text,'<br>','<br />') where POSITION('<br>' IN post_text)>0;
#the command replaces all <br> tags to <br />
update minibbtable_posts set post_text=REPLACE(post_text,concat(char(13),'" target="_new"'),'" target="_blank"') where POSITION('target="_new"' IN post_text)>0;
update minibbtable_posts set post_text=REPLACE(post_text,'" target="_new"','" target="_blank"') where POSITION('target="_new"' IN post_text)>0;
#the commands replaces all _new targets to _blank
update minibbtable_posts set post_text=REPLACE(post_text,' border="0"','') where POSITION(' border="0"' IN post_text)>0;
#the commands removes all image border attributes
update minibbtable_posts set post_text=REPLACE(post_text,' align=""','') where POSITION(' align=""' IN post_text)>0;
#the commands removes all image align attributes
update minibbtable_posts set post_text=REPLACE(post_text,' alt="">',' alt="" />') where POSITION(' alt="">' IN post_text)>0;
#the commands adds image closing tag
5) ALL default miniBB templates were updated for XHTML compatibility, also as https://www.minibb.com/forums variable was inserted in many admin templates (they all are in the /templates/ folder). If XHTML compatibility is not important issue for you, or if you have heavily modified your board layout, you can pass this section; however, you need to make critical changes to the templates mentioned above. If your templates were not modified, you can easily rewrite all default package templates, updating them.
README.txt, _install.php, manual_eng.html were updated also, but this doesn't affect your current installation in any way.
At this moment, we have also updated most popular public addons and solutions (They all are XHTML compatible now, and compatible with the new release):
- Avatars
- Memberlist
- Checker
- Users of the month
- Preview
- Smilies
- Who's Online
- Disclaimer
- Custom ranks
- Signatures
We are continuing work on updating all other plugins, incl. paid addons; also as skins and language packs will be arranged soon to be compatible with this release. After that, we will discontinue support of 1.x series and release a long awaited stable release of miniBB 2.0.