Terbidium - Changelog _________________________________________________________________________________________________________________________ - 8.4.2 - Fixed more bad DB indexes (I seriously don't know what I was thinking when I created these) - 8.4.1 - Added special vars to allow caching of existing, opened DB connections - Added better tracking/debugging of SQL commands and queries - Fixed some bad DB indexes that were causing a MAJOR slowdown - 8.4.0 - Began rebuilding "smart tag" system with a better tagging engine - Revamped code in photo album for picking tags for photos (standardized formatting) - Added table for master list of tags (formerly called keywords within the system) - Began changing "keywords" to "tags" to be more consistent (will eventually change table fields) - Added search box to all screens within the photo system (album/slide display pages) - Changed layout of the slides page slightly (all special controls at the bottom of the page) - 8.3.4 - Adjusted some styles in select boxes to allow finer control over displayed content - Updated copyright dates on all code for 2007 (Happy New Year!) - Minor bugfixes for pages with "undefined variable" errors - 8.3.3 - Converted all tabs to spaces in code, reformatted and reorganized javascript libraries - Cleaned up some variables/constants used by the photo album system - Added a new preview image for the photo albums when resizing the main image - Added new display pane (by Album Name) for the main photo index page - 8.3.2 - Changed codebase to work WITHOUT magic quotes--all php installations should have this turned off - 8.3.1 - Fixed a MAJOR security flaw that could give access to your entire DB variables file!!! - Minor bugfixes, including major fixes to the music search/admin and photo album systems - Fixed a DIE statement that was totally hosing up the RSS feed download/parsing routines - Added a history list of all bargain notifications for only logged-in users - 8.3.0 - Fixed more XML logic for RSS feeds, added return array of raw data (for later processing) - More bugfixes all around (still attempting to fix the timeout errors for the URL download function) - New Feature! Added a "bargains" aggregator to the RSS system, which can notify users of new deals *Allows a user to search for deals by keyword, and emails new entries to users as items are found *Sends the user to the originating deal site, so as not to imply that the deals are mine *Attempts to figure out the product offered, and adds a link to Froogle (http://froogle.google.com/) - 8.2.3 - Fixed some logic in the minibox code, added template support for ad banners - Just about fixed the bottom-aligned ad banner placement in the new Observers theme - 8.2.2 - Fixed some invalid XHML code, re-validated through W3C - Had some additional problems with the media manipulation library, fixed - 8.2.1 - Happy New Year, Welcome to 2006!!! - General bugfixes, mostly UI related, and anything that still throws an error on a regular basis - Re-wrote the photo album system with more efficient queries (normalized the database) - NOTICE: If upgrading from a prior version, see DB.Normalize_Photos.txt and DB.CHANGELOG - Added more UI feedback when resizing images, to indicate that the system is actually doing something - Cleaned up some CSS and other unused variables (after the query update, some stuff was unnecessary) - Adjusted the Session and WebHit cleanup routines, added Sysevent cleanup (and logging of when these run) - 8.2.0 - Completed creating a voting/survey system *Will be different from a simple poll, as it will allow for multiple questions & multiple choices *Allow only 1 answer per question (though there will be an option for write-in's) *One vote per person, so system must track if someone voted (really only effective if access > 0) *Will NOT allow for back-tracking voters to votes, but will have to track who voted and when *User must be registered & logged in before they can actually vote, due to 1 vote rule above *Allow all users to vote, or a minimum class of users (ie. Registered Users, Level 1, and higher) *Allow users to answer using one of the given choices, or provide a write-in *For write-ins, allow selection of prior suggestions (ie. from other users) *When voting, allow for "return and edit" and final preview of questions/answers to user *When casting votes, a checksum of current questions and answers is saved, for later tamper-checking Table Descriptions: Ballot: Primary table which holds all vote/surveys BallotSection: Holds each question for each ballot BallotChoice: Holds each answer choice for each question (allows for write-ins to be a new record) BallotVoter: Tracks a user's username, the date they voted, and which ballot they completed (nothing else) - 8.1.0 - Began implementing the online voting/survey system - Added some input value checking to functions recently throwing errors - Added a URL ping function to allow checking if a particular port for a website responds - Added the new ping function to the URL download function (used for RSS feeds) - Corrected RSS system to stop timing out on pages that do not respond - Added support for RSS 2.0 in newsfeeds (basically made header parsing more fault-tolerant) - Added an auto-backup feature for newsfeeds, in case the current newsfeed is corrupted - Added support for Google's new Analystics feature - Fixed some minor bugs with the preference/userlinks features - Added a new theme, Observers (from OSWD), and added support for additional template vars - 8.0.9 - Updated photo album system to display dynamic preview for selected category - Corrected logic in XML newsfeed system--now properly displays the selected icon - 8.0.8 - Created a user sync page for updating PHPBB accounts in the local database - Added additional templates for user profile page (gallery style setup) - Fixed template for summary page (added additional sections) - General bug fixes throughout the site - 8.0.7 - Fixed a few bugs in the navigation boxes, mass email system, and template system - Fixed a few DB indices and added some new ones - 8.0.6 - Added ability to set menu items as hidden from view on menu (default is "on menu") - 8.0.5 - Updated the events page (fixed formatting), added flag for approval of events, and rating system - Fixed some minor annoyances and bugs (found some mis-matched fields in SQL queries) - Added events to the summary news page (fixed some formatting as well) - Fixed up the poll maintenance, now displays 6 option lines instead of just 1 - 8.0.4 - Changed smart tags system to automatically look up content and photos from within the website - Added logic to log the page execution time (for performance profiling later) - Added report to display the min, max, avg execution times - 8.0.3 - Added a search table to track search terms used within the site (anonymous stats) - Added fulltext indices to content table, and verified presence of index on other key tables - 8.0.2 - Added reports to display system events (security notices, etc) - Added reports to show user sessions and their related hit logs - Made some minor mods to the photo gallery system (proper text formatting) - Fixing minor bugs and inconsistencies between forms - 8.0.1 - Added new icons for maintenance screens, and reorganized the links into groups - Added a report for viewing sessions and related webhits (still needs fine-tuning) - Added tables for upcoming functionality: vote/survey system - 8.0.0 - Happy New Year, again! Welcome 2005 - This is an all-new release, using OOP code instead of procedural, function-based code. - Basically the same site, with major changes in how data is accessed--all former code is not compatible! - Please refer to the README for more information about installing or upgrading. - User table has been expanded to include "real-life" info, such as name, address, etc. - Removed reliance on local PHPBB code for session management (now using cookies and getting vars from DB). - Normalized the database, using non-plural names, added more fields for tracking last-update time & by user. - Re-wrote the photo album system, now using a boolean keyword search system and a new layout. - Added more security to user accounts (users get locked out for X seconds after Y bad login attempts). - Set up a template system for the main site (instead of the earlier function-based outputs). - Allow for different templates for each theme, if desired (also made theme system more customizable). - Better error checking and logging--more fault-tolerant of major DB problems, etc. - More changes on the way! _________________________________________________________________________________________________________________________ - 7.0.0 - Changed project name to "Terbidium" (something un-used and not as common as "websource") - Final (planned) major release before new system is rolled out sometime in 2005 - 6.8.6 - Fixed randphoto to be 10x faster (see next item) - Changed photo sub-system to create an ini with a list of photos - 6.8.5 - Added auto-resize feature to rotation picture upload - Corrected table names in image maintenance system - Added logic to handle phpbb in newsletter system - 6.8.0 - Changed the PHPBB level mapping to use real rank names instead of numbers - Added a date limit to the trial member listing, plus ability to disable - 6.7.0 - Added a lot of integration with PHPBB, removed integration with Phorum. - Can now sync user accounts from this system to PHPBB if not already using the forum as the main datasource. - 6.6.0 - Fixed a LOT of XHTML compliance issues, validated each page - Changed all form fields and buttons to use classes from a custom stylesheet - 6.5.0 - Added a bunch of stuff that I forgot to include earlier from other sites using this code - Added a roster system (very simple, very crude) for keeping up with "club" data (if that's what you need) - Fixed several bugs, mainly with CSS layout (still need to convert pages properly to XHTML) - 6.4.0 - Added maintenance for ad banner rotation (add link/banner line to config file) - Added php code that can actually download RSS feeds (instead of system script) - Started on scheduled task system, for a php-based crontab system - Changed method for storing user data per session (ala PHPBB style) - Made use of a sessionvar table that can be expanded easily without recoding - 6.3.2 - Added simple, random ad rotation system (flat file + image directory) - 6.3.1 - Added dropshadow to the photo album system (using 3rd party script) - Changed format of album display to be similar to Picasa/iPhoto - 6.3.0 - FINALLY added the upload ability for the photo album system - Finished converting all $db calls to fix the bug found earlier - Added a session table for future expansion and var tracking - Changed the cached vars to use the new session table - 6.2.0 - Dammit, found a BIG problem with database connections...trying to fix it - Single DB connection is fine, but adding another to the mix really seems to mess things up - 6.1.2 - Fixed some of the binaries...god I need to find a way to keep CVS from f*ing these up - Added a text translation/transformation routine to the basic library - 6.1.1 - Added some additional search options to admin pages - 6.1.0 - Added differentiation between News and Blog XML feeds - Fixed a few minor bugs, added a few more defaults to sitevars - 6.0.1 - Added ability to list movie files in the photo album - Minor bugfixes, as reported by ACTUAL USERS! Thanks folks! - Updated all copyright notices (new year) - 6.0.0 - Updated the music search and photo album libraries (major changes in both). - Fixed a bunch of minor bugs, prepped for the big 6.0 public release. _________________________________________________________________________________________________________________________ - 5.8.5 - Added a new feature for the announcements feature: dynamic countdown timer (x days until event). - 5.8.4 - Set admin pages up to use the account-level access like the rest of the site. - Also set a minimum level of account access for the admin pages, in case the dynamic level is too low. - 5.8.3 - Fixed the content admin page to not overwrite anything within disallowed directories (ie. /administration/) - 5.8.2 - Set up system to disallow users to edit certain information in their profile (ie. restrict bio/notes/title update). - Set up vars to hold user levels/titles for the basic access groups. - Updated the user account listings/detail screen (show based on access or title groupings). - 5.8.1 - Fixed a bunch of serious bugs (namely new accounts were being assigned the password in the wrong field. - Added a variable set for menu options, such as displaying either a long or short menu. - 5.8.0 - Added/created a product review system (ala Anandtech, Tom's Hardware, etc) - Fixed comment page to work with the new review system, plus allowed anonymous postings. - Added maintenance screens for the new review system. - Minor bugfixes due to new system (also put in automatic save of last news page). - Reworked the news pages to display a single header, and display articles as CSS boxes, not tables. - 5.7.7 - Allowed new user registration to be turned on and off. - Changed the function of the user catalogs (more dynamic as far as list of uses). - 5.7.6 - Fixed the RSS feeds to only display xml files that exist. - Changed image selection in RSS maintenance to use a dropdown instead of an input field. - Fixed the deletion procedure for clearing php error log files. - 5.7.5 - Made some security fixes (SQL injection points were secured). Looking for more. - Fixed some pages that apparently became broken over time. - Added text substitutions (for both page text and email messages). - 5.7.4 - Changed the static RSS/XML newsfeeds to a dynamic DB driven system. - Once RSS feeds are added to the cron-download, they can be updated and ordered dynamically. - Added an external RSS feed for headlines on the local site (for others to download). - Updated addon libraries for photo albulm and media search systems. - 5.7.3 - Added some new features to the admin pages, mainly a few navigation changes. - Set up the links to the images pages to "remember" what the last calling admin page was. - Added a PHP error log viewer to the admin info section (can view/clear site error logs). - 5.7.2 - Changed the search page to only lookup Useful Files if user is logged in. - Added images to the admin pages (nice icons to associate with pages). - Added slideshow display for photo albulm addon. - 5.7.1 - Added an image maintenance page (for uploading images for use on the news page). - Modified the image maintenance to also allow updating of banners, site info, and icons (news topics). - Fixed some minor variable inconsistencies, and minor formatting issues. - Began working on further securing more pages dealing with user-entered data. - 5.7.0 - Completed conversion of admin pages to new dynamic format. - Converted all pages that called on the old DB structure for content. - Fixed all dynamic menu config screens (for users). - Finished setting up new DB var file. - 5.6.3 - Started conversion of admin pages to a more dynamic format. - Fixed minor bugs remaining from the PHP server variables redo. - 5.6.2 - Added ability to turn off each of the news pages and admin screens. - Began re-building the news admin pages from teh ground up. - Re-organized the admin menu options, and removed some addon programs. - 5.6.1 - Modified the layout as needed from usability standpoint. - Updated text messages on emails to site members. - Added an opt-in feature for emails. - Updated copyrights and general text on site as needed. - 5.6.0 - Converted all pages to make use of new W3C compliant structures (CSS2). - Themes now make use of dedicated style sheets, one for each theme. - Changed option boxes to dynamically change sides of the scree, as configured for the theme. - 5.5.0 - Set up SSL to log in securely and set cookie if user wants to be remembered (only need SSL for login). - Set up content system to allow management from web interface (content eval'd by PHP). - New content folders are dynamically created, and a template page is copied into place if it doesn't already exist. - Allow all user content to be filtered, so post processing can be done (all content store in DB). - Added dynamic content system. Basically rewrote the old content admin system. - Set up authentication levels as numeric, rather than hard-coded strings. - 5.2.0 - Dubbed latest version the "Graduate" release ^_^ (no pun intended) [May 2002] - Rewrote all code to use non-global variables (php.ini has registerglobals = off now) - 5.1.0 - Added an author field to the news article table, and all related pages. - Added a library for file-system calls. - Rewrote the browser script to use the new file-system library. - Changed links page to be user-updatable. - User can also decide to share their own links or even add them to their own links menu on the side of the screen. - 5.0.1 - Made first release of WebSource/RAIDO to Freshmeat.net - 5.0.0 - Second MAJOR public release (under GPL). _________________________________________________________________________________________________________________________ - 4.9.9 - Updated distrobution packages from CVS. - 4.9.8 - Did final CVS export to main site for testing. - 4.9.7 - Included a very basic theme layout template (in psd format). - 4.9.6 - Final system QA & bug hunt on development branch. - 4.9.5 - Finished 'Technical' theme, which will be included with the public release. - 4.9.4 - Fixed a few minor bugs. - 4.9.3 - Happy New Year! Welcome to 2002! - 4.9.2 - Tested site for bugs and major flaws. - 4.9.1 - Updated distro code base. Preparing for public release. - 4.9.0 - Replaced mini-box images with standard text (images are a bit of a bottleneck). - Added more CSS custom styles; reformatted all others (allow for inheritable properties). - Cleaned up code for database connections; added more error checking. - Made some minor cosmetic changes (made a bullet function--still need to test on other systems). - Added optional arguments to section generation functions. - Fixed formatting of XML newsfeeds (don't "stick together" any more). - Made syntax highlighting variables able to be changed on the fly. - Made DB connections scripts for MainDB and PhorumDB more compact. - Made function that includes option boxes, after checking that file exists. - Removed all DB connection calls from pages; put 1 call in prepend (reduces amount of connection calls). - Made highlighting system case-insensitive. - Streamlined a LOT of code after reading my PHP book ^_^ (still planning to clean up a lot more later). - More cosmetic changes; cleaned up code for several functions (fewer parameters needed/made some optional). - Made function to list all available functions. - Made function to build poll results. - Made function to generate image tags for dynamic images (started replacing old links with new function call). - Prettied up some of the source code (so it looks nice when you view the HTML source ^_^). - Started abstracting database calls (get rid of all MySQL specific calls in code) by making new wrapper functions. - Replaced all MySQL calls in core code with calls to new functions. Will work on administration pages later. - Redid path menu in admin section (doesn't barf anymore when updating poll info--it was a strange bug). - Added more error checks on user data-entry & output for illegal code (preventative measures). - Fixed bug in poll tally system. - Fixed color bug in source view, and some page text. - 4.8.0 - Add admin screen for customizable minibox for logged-in users. - Redid user-news submission system ala /. style. (user must preview first, final submit sends email to admins). - Added customizable minibox for logged-in users on left side of screen. - Made topics into a dynamic list (from available images) instead of a database table. - Fixed all security scripts to work with new login system. - Made Netscape properly and completely delete old cookies (still only randomly works correctly, but still better). - Make more modular (have a config page for user-changeable site vars)--done, just need to make an admin screen for it. - Comment all functions in code, allow comments and prototypes of functions to be extracted (on-going process). - User gets a simple confirmation email when personal information is changed (ala /. style). - User must get an email and use a confirmation code to reset account (because passwords will be encrypted). - Fixed login/logout system (see note about session variables below)--now just need to make NS kill cookies properly. - Use session var instead of cookie for user control. - Added more security by using a random seed to build userid hash value on each account-info change. (Reduced chance of grabbing old cookie value once someone made a change). - If wanting to use cookies, only grab cookie once, or when user info changed. - Make userid (hash) a session var, but still set cookie, if user desires. - Killed a nasty bug that stored your username and password in the browser history, in plain text! ACK! - Make function to set all session variables (REMOVED--this just brought up bugs in non-NS browsers). - 4.7.0 - Finish hyperlink search and replace function (smart tags) in news article system. - Make highlighter function for search page (to highlight search terms in results). - Detect if cookies are enabled or not on client side (made a function, now just need to use it). - Converted variables for images, etc. to an associative array (then only 1 var gets passed as a global). - Fix CSS to work with browsers other than IE and Netscape (like Opera and Mozilla) - Made function to mangle email address (slightly) to prevent automatic email gathering for spamming - Fixed a really stupid bug that prevented proper log out by Netscape users (sometimes IE as well). - Add expiration date to announcements on news page (expire at beginning of selected date). - Made news articles only show up on day they are supposed to be posted (allows creation of future articles). - Fixed same bug as on Slashdot that allows users to sneak a peak at future articles (basically, check date on thread ID). - Used md5sum for userid system (redid account system to use encryped passwords instead of plaintext in the DB). - Redid user IM choice (allow selection of favorite chat program, then allow input of nick or ID). - Fixed layout of poll result page--all aligned the same now. - Fixed display bugs on all error documents (404, etc); part of fix below. - Fixed some issues with text not appearing correctly on dark-themed pages. - For dark themes, don't show images with white edges (just use text links). - Made config option for themes that forces those text links (may already heve that option--yup, just needed to use it). - Doesn't post articles before specified date and time (already in db scheme). - Broke up function libraries (basically just grouped similar functions together). - 4.6.0 - Updated copyrights and comments on all pages (for 2002). - 4.5.0 - Officially Branded code package as 'WebSource', with underlying code base named 'Raido'. - 4.4.0 - Got in the habit of using the goddam CVS repository for development!!! (Using TortoiseCVS for Win32) - 4.3.0 - All a work in progress, building towards a 5.0 release to the public. - 4.2.1 - Fixed some long standing bugs in the account system. - 4.2.0 - Separated core code from user content (this makes it easier to move into CVS). - Merged code into CVS repository (now there is an actual development architecture). - 4.1.0 - Start of second major version release. - Cleaned up a lot of the underlying code (yuck!). - Added more functions to the main code library. - Borrowed code from php.net for showing the code on each page. - Removed frameset and built site to work as a single page. - Changed menu system to appear on all pages, and does not expand. - Finished "flattening" the site and making it work outside the frameset. - Enhanced the folder browser script (changed format a bit, added more images). - Added a legal policy and a privacy policy to the site. - Content now covered under the OpenContent (OC) license, or OPL. - Rebuilt theme system to include a colors.inc file that holds all vars. - Theme selection is now dynamically based on a directory listing of /images/layout/. - Folder browser script now excludes protected directories automatically (if used). - Finally fixed alphabetizing bug in folder browser. - 3.3.1 - Removed page effects after requests from several irate users. - 3.3.0 - Updated copyrights and comments on all pages (for 2001). - New theme (Ryoko) to reflect original site's naming. - Updated core SQL statements. Simplified all DB queries. - Added new XML news parsing system for external news feeds. - Added switch between internal and external news. - New miniboxes on main (news) page. Updated code for older boxes. - Replaced old static CSS page with a new dynamic, browser-detecting script. (Now CSS appears on each page, generated specifically for each browser.) - Updated all pages to work with new CSS methods and tags. - Added new date-checking features and page effects. Effects are date-driven. (They also allow turning off by the user on a visit-by-visit basis.) - Fixed log in system, again. Now uses all PHP set-cookie and delete-cookie functions. (No more mixed javascript/PHP cookies. This fixed some cross-browser bugs.) - 3.2.0 - System now uses PHP sessions to track basic variables, thus cutting down on cookie usage and parameters needed to pass info between pages. - New functions for creating nav boxes on the news page, as well as new methods for creating page title headers by using a simple function call. - More file-checking pages with better listing abilities (new files, new music, useful files). - New download page that redirects, renames, and logs all URL's that go through the page. - Variable pages and critical info is now stored in a protectable includes directory. (Used Apache to restrict all access to the folder, but PHP can still access the folder.) - Improved user account system. No more hash collisions. - 3.1.1 - Updated readme with more installation info and proper credits for images. - 3.1.0 - First MAJOR public release (under GPL) as a comletely new PHP-MySQL site (server renamed 'Ryoko'). - 3.0.0 - 'Aries' went live on the local campus network at SPSU. _________________________________________________________________________________________________________________________ - 2.0.0 - First attempt at adding dynamic content (ASP and Access database). - Only served as a small site dedicated to my interests. - 1.0.0 - Static pages with DHTML. Served as fancy bookmark system.