v2.0.9
-----------------------------------------------------------------------------
* Archived threads are now browseable from the live forums using the archives
date chooser at the top of the thread list
* Archived threads will now load transparently from the live forums when
requested, rather than redirect to a separate archives site
* Archives access is now granted on users' live forums account, so users will
not need to login to a separate site
* Private message counters changed. The count of "new" messages is the count
of messages received since the last time the user checked his PM inbox.
* Considerable speed improvements for viewing private message folder indexes
* Fixed horrible poorly indexed query in 'who posted' feature that was causing
table scans and killing MySQL (only showed up after getting digged)
* Signatures should display in threads again
* The reset button for "last seen" status on threads with non-standard template
sets (SA-Mart, Ask/Tell, etc) has been fixed
* New bbcode tag [fixed]text[/fixed]! Enclosed text is displayed inline in a
fixed-width font.
* Sending email to other users is available again. If user allows emails, you
can email them via the link in their user profile.
* Thumbnail images in quote tags are linked to the full-size image
- Ads are now loaded in iframes after the main window is finished loading
- Forum title is now listed before site name in forumdisplay.php page title
- No preview is required before posting a thread in FYAD
- By default, the "Show Signature" option is checked when posting in FYAD
- Transfer certain fields as base64 during authentication with forums HTTP
gateway (because of problems with deserialized multibyte characters)
- Brand new framework for handling rotations of uploaded user files; this will
first appear as the new FYAD flag system, but can be used elsewhere later
- Altered remaining legacy tables that stored network addresses as strings to
store as integers instead
- Deeper logging of user account actions, user purchase actions now tied to
forums userid instead of username (old store did this)
- Updated user admin tools to allow editing of new archives-related user flags
- Improved important queries in forumdisplay.php to use better index coverage
when atypical sort and filter choices are used
- Fixed bug in forumdisplay.php that would cause number of pages to be
calculated incorrectly when filters applied
- Changed "in forum" tracking to occur after permissions are checked
- Removed a bunch of code related to an ancient vB "report bad post" feature
- Fixed post icons on post/edit forms crowding on single line in Safari
- Improved management of database handles during troubled times
- Changed "Hide email address" user option to "allow user emails", since we
never show a user's email address anyway
- Changed the "goto=lastpost" mechanism of showthread.php to redirect to the
actual last page (eliminated slow query when viewing thread by postid)
- Changed email-related options around in the config; most were not used
- Fixed announcement.php requesting a non-existent template for guest users
- Added code to predict whether or not we will access archived thread data
- Fixed problem where app would spam alerts even when database was down
adminsitratively
- Fixed bug where probation time could be miscalculated when gassing threads
- Debugging timers refactor, separate timers for SQL queries, better EXPLAIN
logging formatting
- Show message on posting screen explaining platinum features before preview
- Added a static template for 'database down' errors since some resources from
normal templates may not be available yet
- New gateway between forums and purchase system (removes database interaction)
- Further cleanup of database classes
- Fixed problem where some error message templates could be output before
header templates were prepared
- Added admin control panel functionality (detailed in r505)
- Tagged pages for tracking via Google Analytics
- Fixed bug in admin icon editor that could cause duplicate key on insert
- Fixed removing user tried to delete data from old non-existant vb table
- New ridiculous requirements for user passwords to hopefully force passwords
to vary between SA and other sites where a user has the same username
- Stronger internal password storage
- Support FAQ updated with information about the account recovery tool
- Added admin control panel functionality (detailed in r522)
- Add authenticator to logout link so users can't embed request in various
places to log out the viewer
- Custom titles can now be treated as bbcode instead of plain HTML
- Added custom title bbcode parser
- Parser modified to cache rendered user titles that have bbcode flag
- Added interface for external services to request data/rpc
- Cleanup of member.php vBulletin debris
- Removed 'Picture' field from user profile
- Made admin announcements look like posts instead of broken trash
- Fixed bug where user with images disabled could cause usertitle bbcode to be
cached with images as links
- Fixed bug where attachments were being shown even if user had images disabled
- Removed the post icon choice field from post edit screen
v2.0.8
-----------------------------------------------------------------------------
- Fixed modqueue loading some js libs more than once
- Fixed modqueue checking wrong state on request decline
- Fixed modqueue displaying wrong forumid for move destination
- If modqueue move thread request is declined, the thread is moved back into
the original forum from whence it came
- Hide advertisements for moderators who get privilege via usergroup
- Fixed problems with dictionary add/append topic
- Removed textad/adbot first reply
- Removed user options related to textads and adbot
- Removed user cp stuff related to showing text ad performance
- Date filter in PM interface no longer considers eternity to be 1000 days
- Added user pet pictures next to ad banners
v2.0.7
-----------------------------------------------------------------------------
- Count of 'users online' should once again be accurate
- Added some javascript for profiling 'interests' based on what forum you are
currently browsing to hopefully make ads more relevant
- Fixed problem with activity tracking code that was resulting in deadlock on
session table under high load
- Added ability to reset "seen" status on threads
- Text ads are no longer for sale
- Fixed issue where browser may not send hidden form values on post/reply,
causing 'forged request' error to appear
- Fixed bug with [img] and [timg] tag parsing that could allow the image url to
contain other tags
- Added ability to set system message at top of screen (ie, for maintenance
warnings)
- Removed some old crud related to vbulletin tracking of max number of users
ever online (used old template system)
v2.0.6
-----------------------------------------------------------------------------
- Bookmark list shows category stars and colorization like the forum threads
listing
- You can now list all posts by a user in a thread by clicking the '?' at the
bottom left of the post (need better place for this in interface)
- Added a » to the anchor title of the next page link in forumdisplay.php
so that Opera's fast forward feature does not get confused by the one on the
last page link (in lieu of adding just to fix this)
- Coloring for "highlight op" option changed from red to a shitty blue (until
someone suggests better)
- Removed straggling code and database schema related to unused stupid vbulettin
features (birthday, avatars, setting system, style system, template)
- Purchasable goon ad on top swapped with rotational ad on bottom, so that
goon-sponsored ads show in both bottom and top positions. Price reduced
accordingly (by $20)
- Search results expire after two hours of non-use (previously expired ten
minutes after search was executed)
- If a requested thread is not found in the live forums, the threadid will be
checked against archived threads
- The 'adjust page position' option will now scroll to the post rather than
adjust window.location to jump to the anchor (fixes history problems with the
latter method)
- [timg] adjustment javascript should now fail more gracefully
- Don't overwrite bookmark category when replying to a thread that is already
bookmarked
v2.0.5
-----------------------------------------------------------------------------
* In showthread.php, you can click on the title of a banned/probationed user to
view his "rap sheet" in the Leper's Colony
* New client-side search highlighting
* Optional "star buttons" in thread list for assigning bookmark categories
* Thread bookmarks can be assigned categories (currently represented as colored
stars)
* The username of the "op" can be highlited when viewing a thread (see usercp
options)
* Showthread.php can now adjust browser position to post anchor after all images
have loaded (optional, enable in usercp)
* Rows for previously viewed threads can be marked a different color (see usercp
options)
* Rating a thread no longer requires you to leave the page (ajax, requires
javascript)
- Rows for bookmarked threads can be colored based on the bookmark category (see
usercp options)
- Smarter sizing of [timg] tagged images via javascript (noscript uses old
behavior)
- Made pagebar first/prev/next/last links more conventional
- If javascript is available, [timg] tagged images with dimensions under size
thresholds will not be enlarged
- If javascript is available, [timg] tagged images are now adjusted for
oversized height (width has precedence)
- Search highlighting uses different color for each search term
- Application will check for X-Ajax-Engine request header, which may influence
the response (ie, some scripts will return JSON if it is set) [extension
developers
- The digg button in the thread rating bar now rates the thread 5 and then opens
the digg url
- Added field/interface for flag states on thread bookmarks (1-byte storage, to
be used in upcoming features)
- Vbulletin output functions can now detect what type of content should be
returned and switch templatesets appropriately
- Added class to encode/decode data structures as json data
- Removed spaces between rating buttons
- Added ugly boring thread rating form for non-javascript users
- FYAD "time*" stylesheets removed from version control since we are not
maintaining those
v2.0.4
-----------------------------------------------------------------------------
* Search rewritten to be as fast as possible given constraints of MySQL
FULLTEXT indexes
* Search: added userid search mode for very fast browsing of posts by userid
* Search: relevance mode ranks threads based on sum of relevance scores of any
matching posts in the thread (when in grouped mode), which should result in
"more relevant" results
* Search: boolean mode "5000 rule" has been removed
* Search: max of 600 results are returned (but full sorting is done)
* Search: keyword filter language added
INTLIST is (INT[^>]INT[^>]...)
DATEDESC is a date description as described by PHP strtotime()
http://www.php.net/manual/en/function.strtotime.php
* User "post history" search rehauled to use new userid search mode (acts just
as any real search mode)
- The old search interfaces (basic/advanced) have been replaced with a single
interface
- Keywords (including filters) can be passed on querystring to pre-populate the
keywords field of the search form (useful for making bookmarks with favorite
filters (ie. /search.php?keywords=%20%3Cnotforum%2026%3E) or namedrop searches
(ie. /search.php?keywords=myusername)
- Repeated searches won't return stale results as a result of caching
- Added "new post" counters on review and ask/tell templates
- Added post penguin back to byob
- Remaining javascript/css resources moved under subversion
- Static resources can now be served from cluster
- Generate pre-compressed versions of text resources to be served by mod_deflate
as part of build process
- Send explicit charset in response headers
- Private message folder jump dropdowns fixed
v2.0.3
-----------------------------------------------------------------------------
* New "seen status" icon at bottom left of each post in showthread.php indicates
if post has been seen or not; can be clicked on to set the seen time for the
thread to the time of that post
* Added a column of checkboxes to the bookmarked threads list to remove a bunch
of bookmarks at once (massremove)
* New add/remove bookmark button on thread header in showthread.php (sorry about
the temporary ugly button, but I don't have this font!)
* Added option to disable the seen status icon on posts
* Added option to disable the coloring of posts already seen in a thread
- Thread seen time won't backtrack if you view posts with times before your
view time for the thread
- Include edit date in cache key name for retrieving rendered posts (threads
should never show pre-edit cached posts after edit anymore)
- Fixed newthread.php and newreply.php so they bookmark the thread if requested
(was broken for some users)
- Fixed stupid bug in a template used by banlist.php that made it return
confusing counts when paging
- Fixed serious problem where jumbled forum information was being retrieved,
causing weird issues like permissions problems and inability to view some
forums; caused by a vBulletin global that conflicted with some new code (this
is exatly why we are getting rid of globals)
- Fixed bug where date limiting was being applied to sticky threads in
forumdisplay.php
- Fixed bug where mods could not move threads (more problems from vB globals)
- Fixed footer not showing correct version number
- Fixed bug where first item in bookmark list was not being shown because I am
retarded
- Fixed signatures not being displayed
- Fixed thread review list on reply screen
- Fixed new posts box adding an extra post to the count of new posts (me dumb)
- Fixed pagenav on threads in bookmark threads list now showing last page
(counting from 1 where 0 expected)
- Added a blank "edited by" template to BYOB so edits don't stamp posts
v2.0.2
-----------------------------------------------------------------------------
* SAMart has a second tag column for sell/buy/trade/auction tags
* Thread view tracking data shown in forumdisplay.php
* New thread bookmark system (replaces subscriptions)
* Each forum keeps statistics on the members/guests browsing it
* Paged list of online members (works globally or per-forum)
- Fixed online status in buddy list (users can choose to be invisible in their
usercp options)
- Subscribed thread feature removed (replaced by thread bookmarks)
- Changed usercp header to have more useful things towards the front
- Changed all occurences of thread subscription system to use the new thread
bookmarks system instead
- Added usercp option to add threads you post in to bookmarks by default
- Individual forums keep track of which users are currently browsing them
- Added checkbox to bookmark/unbookmark the thread of the post you are editing
- Fixed post icons on post screens for Safari (removed leftover nowrap attribute
from vB templates)
- Extended user option storage, allow room for new flags (bookmark own posts,
etc)
- Cleaned up some retarded parts of vbulletin that were doing sensitive things
in global scope (eliminates possibility of tampering via $_REQUEST and scope
confusion)
- BYOB has new "Post Penguin" helper
- Fixed bug with reset account by email (vb globals confusion)
- Template system now allows retrieval of templates outside the current
templateset (to see this in action, subscribe to a normal thread and a thread
in a review forum that both have ratings... the ratings show forum-specific
rate graphics because the templates for the forumid associated with the thread
is used)
- Clarified the password reset process a bit so that dumb people can use it too
- Moved "thread rating" icon to use template rather than hacky "rating bar or
stars" logic based off forumid
- Fixed forumdisplay.php losing last page of threads (had some leftover
accounting from the way stickies used to work)
- Fixed bug in pagenav with "previous page" link (global var caused
unpredictable behavior, yay jelsoft)
- Subscribed threads lists are limited to 40 pages, added pagenav to usercp to
browse beyond this.
- Added "alt+S" shortcut back to posting/mod report screens
- Straggling remains of old vBulletin style system now completely gone forever
- Added beecock buttons back to FYAD threads
- Fixed a few of missing template errors (see priv_*)
- Links in account-related emails updated
- Fixed possible divide-by-zero warning in pager
- Various template fixes
- This changelog now available by clicking the SA version number in the footer
- Fixed typo in template name in modalert.php (was giving missing template
error)
- Mods were getting incorrect "retract" option on queue items
- Fixed thread rate bar javascript and formatting
- Fixed bug in purchase system where cache was not expired on user update when
changing title
- Static resources reorganized, put under version control
- Fixed padding on poll graphics caused by newlines after img elements
- New delete thread templates
- Fixed header in review dumps forumdisplay.php
- Fixed a couple annoying bugs when purchasing text ads
- Don't show "edited by" on byob posts
- Update tag of all templates with id (was previously added by a regex at
runtime)
- Remove remaining vbulletin-specific template tokens (eliminates 200+ regexes
per request)
- Further optimizations to forumdisplay.php (average execution time is now
<100ms)
- More sophisticated stopwatch functionality for profiling timers in debug class
v2.0.0
-----------------------------------------------------------------------------
Core:
- Much faster index.php (fixed several slow queries that could occur on cache
miss)
- Much faster "post history" searches (find posts by userid)
- Thread view statistics now kept per-user (can be used to show user threads
that have new posts since last time viewed)
- Faster calculation of PM statistics (speeds up virtually every page due to
new/unread checks)
- Pulled vbulletin out of register_shutdown_functions()'s ass
- Rehauled how vbulletin builds/serves final response so that MySQL threads no
longer pile up in sleep while apache sends data to slow/many clients (ie,
application no longer needs database to complete response, see r109)
- New faster template storage (templates stored on disk / served from memory
instead of from database)
- New faster offset-based template parser/brains (lower page load times, better
response under high load, scales better with many tokens)
- Tweaked sql/indexes for all minor queries to eliminate places where optimizer
may use filesort or temporary tables
- More tweaks for faster collation of megathreads
- Major speed improvements for banlist.php and moderator queue
- Profiled/optimized indexes and hints for all tables
- Remnants of sloppy old vbulletin login system replaced (was overly complicated
and accident prone)
- Configuration/settings system replaced (no longer lives in MySQL)
- Fixed several instances where queries could go to filesort on post table
- Replaced vbulletin's dooutput() and dovars() with non-shit
- Vbulletin user auth code replaced, authentication totally isolated from
activity session
- Max length of findword/replacement lowered to reasonable limits to allow
better indexing, less room for abuse
- Removed templating functionality from replacement system and cleared out
legacy findword/replacement code/data to reduce scan passes required per
request
- All authentication-related logic moved out of member.php
- More efficient thread view count tracking
- dictionary.php reworked -faster, cleaned up templates
- Fixed bug where any user could stick any thread arbitrarily via GET
- Fixed potential exploits in login form due to the way vbulletin manipulates
HTTP_REFERER prior to processing form data
- Better indexing in forumdisplay.php when filtering by iconid
- Cached announcements in forumdisplay.php (allows fix for unindexable query)
- Fixed preview reply with "show signature" checked doesnt show preview
- Buggy PM read receipt feature removed
- New fancy profiling/debug classes and controls (php version of TitanProf, see
/tags)
-New and improved database classes; fixes problems caused by shitty PHP
references; clearer interface, less overhead
- More aggressive resource management during request (ie, don't wait for PHP
garbage collector, free resources before response sent)
- Vbulletin database error handling removed; database errors now caught by
application error handler; MySQL errno/errmsg go to debug facility
- Project directory restructured, more resources (ie, templates, dependencies)
added to subversion control
- Fixed several places where vbulletin could incorrectly calculate
content-length, making the browser spin at end of response
- Common error facility for all application errors (no more weird unstyled pages
on certain types of exceptions) -Introduced two new staging clusters to
augment forumsdev
- Pruned tons of outdated/unused/stupid/commented-out crap code (see tag
2.0-clean) -Removed invalid response headers vbulletin would send from certain
pages
Interface:
- Cleaned up templates while praying for death; reduced number of templates from
1397 to less than 250
- Pages are much nearer to w3c valid (just a few errors instead of several
hundred, not including broken user custom title html)
- Corrected html script/css tags to be standards-compliant (language/type type
attributes, etc)
- Some changes to miscellaneous error pages to be more clear
- Users on probation will now see an annoying probation message in the header
- Messages displayed at unregistered/no-permission make more sense
- Painstakingly corrected billions of places where URLs were malformed
(unencoded ampersands, etc.)
- Changed all to (since we are HTML4.0 trans)
- Removed all stupid non-standard HTML tags that vbulletin invented (ie,
)
- Some refactoring of user-paid ad system; removed lots of unused/retarded logic
that was adding overhead per-request (counter references, per-forum selects,
see r79)
- Only fifty most recent private messages listed by default on pm indexes
(reduces load times for huge pm boxes)
- Poll results percentage column says "Computing..." but does nothing
- Admin announcements should be more conspicuous now
- Moved most redundant inline javascript out of html head, into external script
- Icons on post/reply screens will wrap properly when page resized
- Icons on post/reply screens align correctly with radio input
- Icons on post/reply screens can be clicked on to select (requires javascript)
- Banlist.php display defaults to last 30 days
- Removed non-standard HTML attributes on tags (target="_new",
align="absmiddle", etc)
- adstats.php changed to fit usercp design
- Post previews in search results will vertically scroll if too tall, horizontal
overflow clipped
- Mods can now retract their own requests in the moderator queue if unprocessed
- Amazing new ban page
- Usercp buddy list constrained horizontally, long names truncated, smaller fonts
- Less dumb form interface in banlist.php
- Fixed floating issues with divs between headnav/content