includes/functions.php
2009-01-04 Dan Two big commits in one day I know, but redid password storage to use HMAC-SHA1. Consolidated much AES processing to three core methods in session that should handle everything automagically. Installation works; upgrades should. Rebranded as 1.1.6.
2009-01-03 Dan Major underlying changes to namespace handling. Each namespace is handled by its own class which extends Namespace_Default. Much greater customization/pluggability potential, at the possible expense of some code reusing (though code reusing has been avoided thus far). Also a bit better handling of page passwords [SECURITY].
2008-12-31 Dan Redid error handler (it was causing some problems with gzip enabled)
2008-12-21 Dan Fixed timezone preference setting not fully implemented; added ability for users to select their own rank from a list of possible ranks based on group membership and user level
2008-12-20 Dan Added support for IPv6 IP ranges... ehh, not easy.
2008-11-29 Dan Added a new search API that allows much easier registration of search results. Basically you give the engine a table, a few columns to look at, and tell it how to format the results and you're done.
2008-11-15 Dan Added ability to have alternate main page for members
2008-11-09 Dan Fixed attempt at gzip compression after headers sent; hopefully safely escape args to scale_image() instead of erroring out
2008-09-21 Dan Added initial support for DST. Rules are defined in constants.php and are extensible.
2008-09-16 Dan Fixed IPv6 address match (the one from phpBB3 did not work)
2008-08-12 Dan Rebranded as 1.1.5 (Caoineag alpha 5) and fixed a couple bugs related to CDN support in template_nodb and installerUI. Updated readme.
2008-07-28 Dan Fixed improperly set up gzencode() replacement; fixed bad regexp in scale_image() security check
2008-07-23 Dan Made grinding_halt() exit with status 1 for POSIX compatibility; jscompress.php utility now accepts non-CDN websites
2008-07-10 Dan Added Gravatar support! And it's really configurable too.
2008-07-10 Dan Added "default" option for getConfig() and made setConfig() only set if the new value is different
2008-07-09 Dan Completed work (we hope) on CacheManager admin page
2008-07-09 Dan Fixed gzip output - no longer depends on ob_gzhandler(), uses gzencode() now with a failsafe available if gzencode() is not available. Public function gzip_output() remains unchanged.
2008-07-07 Dan Moved enano_safe_array_merge() to functions.php as comment.php depends on it
2008-07-07 Dan Added purge_all_caches() routine to functions.php. Temporary, will be discarded once the new cache code is implemented
2008-07-03 Dan More optimization work. Moved special page init functions to common instead of common_post hook. Allowed paths to cache page metadata on filesystem. Phased out the redundancy in $paths->pages that paired a number with every urlname as foreach loops are allowed now (and have been for some time). Fixed missing includes for several functions. Rewrote str_replace_once to be a lot more efficient.
2008-07-02 Dan Another sweep from the optimization monster.
2008-06-25 Dan Majorly reworked Javascript runtime stuff to use on-demand loading.
2008-06-22 Dan Initial progress towards converting auto-completion framework to Spry. Not currently in a very working state.
2008-06-16 Dan Fixed two bugs in paginator: noisy warning when rows run out and empty strings not being treated as valid from formatting functions
2008-06-15 Dan Fixed title not being set properly in redirect()
2008-06-15 Dan Renamed some functions (that were new in this release anyway) due to compatibility broken with PunBB bridge
2008-06-08 Dan Made ajaxReset() call the actual requested title instead of effective title; fixed (again) template compiler bug not matching certain tags (probably PCRE bug)
2008-06-07 Dan Got initial CSRF token framework implemented and sample implementation added in Special:Logout; removing Javascript compression engine from aggressive_optimize_html() and instead calling JavascriptCompressor class from js-compressor.php
2008-05-25 Dan More work done on effective permissions API, namely reporting of page group and usergroup names
2008-05-06 Dan Added ETag support and increased caching settings to try and speed the system up. Result of a YSlow audit.
2008-05-05 Dan Massive commit with various changes. Added user ranks system (no admin interface yet) and ability for users to have custom user titles. Made cron framework accept fractions of hours through floating-point intervals. Modifed ACL editor to use miniPrompt framework for close confirmation box. Made avatar system use a special page as opposed to fetching the files directly for caching reasons.
2008-04-14 Dan Rebrand as 1.1.4 (Caoineag alpha 4)
2008-04-12 Dan Huge improvements to the template_nodb class and surrounding code; moved template compiler core to its own non-classed function to allow code re-use
2008-04-06 Dan Started work on the new plugin manager and associated management code. Very incomplete at this point and not usable.
2008-03-18 Dan Fixed some stray version numbers (again!); added support for Diffie-Hellman logins in the normal login form (not AJAX) - even works in IE
2008-03-16 Dan Added support for embedding language data into plugins; updated all version numbers on plugin files
2008-03-15 Dan Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
2008-03-07 Dan Hopefully completed rewrite and localization of rollback backend and interface
2008-03-07 Dan Added $no_wrapper parameter to die_semicritical, useful for some upcoming PageProcessor tweaks.
2008-03-03 Dan Added modal dialog support for page editor; added customizability for breadcrumbs (thanks to Manoj for idea)
2008-03-03 Dan Implemented password reset (albeit hackishly) into the new login API; added dummy window.console object to hopefully reduce errors when Firebug isn't around; fixed the longstanding ACL dismiss/close button bug; fixed a couple undefined variables in mailer; fixed PHP error on attempted opening of /dev/(u)random in rijndael.php; clarified documentation for PageProcessor::update_page(); fixed some logic problems in theme ACL code; disabled CAPTCHA debug
2008-03-01 Dan Fixed the fact that cron just didn't work at all (brain fart that day or something)
2008-02-22 Dan Merging fixes and updates from stable branch
2008-01-28 Dan Fixed case where HTML comments were getting stripped when opening tag not followed by whitespace (<!--foo--> was stripped, <!-- foo --> was not, neither is stripped now)
2008-02-20 Dan Added support for Diffie-Hellman key exchange during login. w00t!
2008-02-16 Dan Some memory usage improvements, I think. PHP is being weird to me.
2008-02-11 Dan Rebrand as 1.1.2; made upgrade framework functional
2008-02-09 Dan Added some basic timezone support; DST support is still to come.
2008-01-30 Dan Localization is FINISHED, DAMN IT HELLAH YEAH! OVER WITH! Man, it feels to get that off my chest. Release is in under 48 hours, folks. And we're ready for it.
2008-01-29 Dan Rebranded source code as 1.1.1; added TinyMCE ACL rule as per Vadi's request: http://forum.enanocms.org/viewtopic.php?f=7&t=54
2008-01-28 Dan Profiling enabled for RenderMan's wikiformat routine; [minor] made HTML from profiler more pretty
2008-01-28 Dan Fixed case where HTML comments were getting stripped when opening tag not followed by whitespace (<!--foo--> was stripped, <!-- foo --> was not, neither is stripped now)
2008-01-28 Dan Got Enano to load even if there are no plugins; added caching for decrypted session keys to significantly improve performance (in theory at least)
2008-01-26 Dan Removed stray debugging info from ACL editor success notification; added ability for guests to set language on URI (?lang=eng); added html_in_pages ACL type and separated from php_in_pages so HTML can be embedded but not PHP; rewote portions of the path manager to better abstract URL input; added Zend Framework into list of BSD-licensed libraries; localized some remaining strings; got the migration script working, but just barely; fixed display bug in Special:Contributions; localized Main Page button in admin panel
2008-01-26 Dan Finished (or nearly finished) the admin language CP
2008-01-25 Dan [minor] silenced errors to ob_gzhandler()
2008-01-25 Dan A number of scattered changes. Profiler added and only enabled in debug mode (currently on), but awfully useful for fixing performance in the future. Started work on Admin:LangManager
2008-01-23 Dan Improved compatibility with PostgreSQL and fixed a number of installer bugs; fixed missing "meta" category declaration in language files
2008-01-21 Dan Started localization on User CP. Localized pagination, password strength, and various other small widgets. Fixed bug in path manager causing return of fullpage from get_page_id_from_url() even when namespace is Special.
2008-01-21 Dan Implemented IP logging for comments and registration
2008-01-03 Dan WiP commit for admin panel localization. All modules up to Admin:UserManager (working down the list) are localized except Admin:ThemeManager, which is due for a rewrite
2007-12-30 Dan Localized the first parts of the admin panel. As a consequence, also wrote a brand new Admin:PageManager that doesn't suck like the old one did.
2007-12-28 Dan Replaced TinyMCE 2.x with 3.0 beta 3. Supports everything but IE. Also rewrote the editor interface completely from the ground up.
2007-12-26 Dan More localization work. Resolved major issue with JSON parser not parsing files over ~50KB. Switched JSON parser to the one from the Zend Framework (BSD licensed). Forced to split enano.json into five different files.
2007-12-21 Dan Added initial avatar support. Currently rather feature complete except for admin controls for avatar.
2007-12-20 Dan Redid merge, the previous one had a few problems
2007-12-19 Dan Fixed: $paths->page_id not set when the page doesn't exist; finally fixed garbled page names for IP addresses
2007-12-19 Dan Many changes. Installer with PostgreSQL is broken badly and will be for some time.
2007-12-15 Dan SURPRISE! Preliminary PostgreSQL support added. The required schema file is not present in this commit and will be included at a later date. No installer support is implemented. Also in this commit: several fixes including <!-- SYSMSG ... --> was broken in template compiler; set fixed width on included images to prevent the thumbnail box from getting huge; added a much more friendly interface to AJAX responses that are invalid JSON
2007-12-13 Dan Rebrand as 1.0.3 (Dyrad)
2007-12-12 Dan Fixed focus of AJAX login form fields in IE; removed stale/unused call to $template->makeParserText() in paginate_array(); added hook page_create_request to possibly help control creation of pages of certain namespaces from plugins; fixed critical bug in user CP that prevented plugins from adding custom CP modules
2007-12-07 Dan Merging in changes from stable
2007-12-03 Dan Deprecated debugConsole and removed all calls to it. Added a lot of comments to common.php. Added support for "anonymous pages" that are created when the Enano API is loaded from an external script. Fixed missing border-bottom on Type 2 sidebar blocks in Oxygen.
2007-12-02 Dan Merging in the newly stable Coblynau
2007-11-28 Dan Oops, never merged in updates from ee1fc84f12a8 (240)
2007-11-28 Dan Hopefully now all calls to escape() are replaced with ajaxEscape() in response to Tomasz's forum post; remove deprecated version of show_category_info() from functions.php
2007-11-26 Dan Nothing special. ksort()ing list of allowed filetypes in the admin panel to make editing the list marginally easier
2007-11-22 Dan Merging in updates and improvements from stable
2007-11-22 Dan Re-sync Oxygen and Mint and Oxygen simple with Oxygen main; a couple improvements to the redirect-on-no-config code
2007-11-21 Dan Searching sucks, and Enano's search algorithm was complete bullcrap. So I rewrote it. No, it does not use Google search technology. Like they have a patent for using the Arial font on search result pages anyway.
2007-11-19 Dan Merging in fixes and updates from stable
2007-11-18 Dan Major fixes to the ban system - large IP match lists don't slow down the server miserably anymore.
2007-11-18 Dan Merging in fixes from stable
2007-11-15 Dan Merging in all changes from revision 185 (90b7a52bea45)
2007-11-06 Dan Merge changes back from Nighthawk
2007-11-06 Dan Trying to get lang import to work in the installer; it's not working ATM - cache file is generated with lang_id = 0. Syncing to Nighthawk.
2007-11-06 Dan Merge in new installer framework from stable
2007-11-03 Dan Fix PHP4 compatibility (function def. of password_score)
2007-11-03 Dan Merge in scaling abstraction from stable
2007-11-03 Dan Alternate scaling using GD is implemented now; images will be scaled with ImageMagick if enabled and working; else, GD will be used. No UI changes to speak of, but a check in the installer will be added in a later commit
2007-11-03 Dan Merging in fixes and updates from 90b7a52bea45
2007-11-03 Dan Merging in fixes from rev. 207
2007-11-03 Dan Localized a good part, if not all, of the registration page and a couple other things.
2007-10-29 Dan All on-page AJAX applets should be localized now
2007-10-28 Dan Added language export to JSON page and localization for Javascript using $lang.get(). Localized AJAX login interface.
2007-10-28 Dan Login page mostly localized
2007-10-24 Dan Merging in fixes from stable
2007-10-21 Dan Merging in changes from db8a849ad4c9
2007-10-21 Dan Merging in changes from stable
2007-10-20 Dan Added a cron framework. Currently tasks will not be run; will implement into templates in next commit
2007-10-15 Dan Sync from stable
2007-10-12 Dan Replaced autocompleting username with a much more efficient algorithm and caching system
2007-10-09 Dan Fixed some regular expressions in HTML optimization algorithm; regex page groups can be edited now (oops)
2007-10-07 Dan Merging in latest changes from stable
2007-10-07 Dan SECURITY: remove debug message in session manager; implemented alternate MediaWiki syntax for template embedding; added Adobe Spry for "shake" effect on unsuccessful login
2007-10-07 Dan Rebrand as 1.1.1; everything should now be bumped to "unstable" status
2007-10-06 Dan Fixed comment stripping in sanitize_html()
2007-10-06 Dan Improvements and fixes (hacks?) for HTML sanitization
2007-09-25 Dan Rebrand for 1.0.2b1
2007-09-24 Dan Rebrand as 1.0.2 (Coblynau); internal links are now parsed by RenderMan::parse_internal_links()
2007-09-18 Dan Fix: textarea tags got stripped naked by the HTML optimizer, now no longer
2007-09-17 Dan [sync only] Minor display change in Special:About_Enano; added initial PHP function for password strength testing
2007-09-11 Dan Rebranded as 1.0.1.1; fixed category page drawing bug; updated link to GPL in the about page to the GPLv2
2007-09-09 Dan Improved ban control page and allowed multiple entries/IP ranges; changed some parameters on jBox; user level changes are logged now
2007-09-08 Dan Fixed some rather major bugs in the registration system, this will need a release followup
2007-09-02 Dan Rewrote all code related to delvote_ips column to use serialize()
2007-08-14 Dan Added ability to detag deleted pages
2007-08-10 Dan Finished pagination code (was incomplete in previous revision) and added a few hacks for an upcoming theme
2007-08-05 Dan Fixed IE6 + Admin theme, version typo in installer, and paginator + IE6
2007-08-05 Dan Replaced the menu in the admin theme with something much more visually pleasureable; minor fix in Special:UploadFile; finished patching a couple of XSS problems from Banshee; finished Admin:PageGroups; removed unneeded code in flyin.js; finished tag system (except tag cloud); 1.0.1 release candidate
less more (0) -120 tip