changes that will be made once php supports it: =============================================================================== 1. custom superglobals: $APP will be defined as superglobal. what to do with pseudostatic things like $HtmlUtil, $Bs_String etc? 2. exception handling (php5): try/catch/finally will be used. 3. make use of __FUNCTION__ and __CLASS__ after some time. needs php 4.3 version 4.5 1. Bs_Form: a container can now have a template assigned directly via a string var. before, only file-based templates were possible. Bs_FormContainer: added var templateString. Bs_FormTemplateParser: added loadTemplateFromString(). 2003-08-10 --andrej 2. Bs_FormFieldRadioJs: fixed a typo that rendered the (rarely used) elementList param in getField() useless. Anyway, it's still a problem to render the different options of a radio-js field to different locations. need to work on the generated javascript code. 2003-08-10 --andrej 3. Bs_FormFieldSelect.class.js: setTo() now has a 2nd param 'type' to specify if the comparison should be done on the 'value' or 'text'. added method setText() to set a new caption for an existing entry. added method removeElement(). 2003-08-12 --andrej 4. added application IndexedListManager. 2003-08-12 --andrej 5. Bs_Tree: implemented a cheap version of lookAhead (preload down). works well. even with large trees that have 1000 nodes. added example 12 to show it. by default a lookAhead of 2 (not -1 which means unlimited) is used. 2003-08-12 --andrej 6. Bs_Dropdown.class.js: added the rememberNewInCookie option, and example 4 that shows its use. 2003-08-14 --andrej 7. added bs_addIncludePath to Bs_Misc.lib.js. 2003-08-15 --andrej 8. Bs_FormFieldSelect now supports to use the FlipFlop js component. 2003-08-18 --andrej 9. Bs_FlipFlop: fixed a bug that made a dblclick on the 'selected' field not update the hidden field (hidden, in form submitted value). 2003-08-18 --andrej 10. Bs_Logger: fixed a bug in setDir(). it checked the old dir if it's writeable instead of the new given one. 2003-08-18 --andrej 11. Bs_Form fields now support field names like 'bs_todo[dataHash][frameName]'. these produce arrays in the form post, and are now read in correctly after the post. 2003-08-18 --andrej 12. Bs_FileManager: fixed 2 warnings. 2003-08-20 --andrej 13. added js component Bs_DataGrid (very basic). 2003-08-20 --andrej 14. added core/text/Bs_Ocr.class.php (very basic). 2003-08-20 --andrej 15. Bs_DataGrid: extended. lots of work still to do. 2003-08-24 --andrej 16. Bs_Radio: added the vars imgType, pixelate, invertActive, iconType. added exaple 6 that shows these features. changed captionAsAltText to captionAsTitleText and kept it backward compatible. reimplemented useMouseover. implemented the attachEvent methods, example 1 now shows this. 2003-08-25 --andrej 17. Bs_FormItAble now also supports the mode 'view', and not only 'add', 'edit' and 'delete'. 2003-08-25 --andrej 18. This change affects quite a few things. Fact: strip_tags() from php converts 'bolditalic' to 'bolditalic' and not 'bold italic'. it merges the words. Bs_HtmlInfo uses that php function in htmlToText(), which is used in the Bs_FileConverter, which is used for pretty much any file conversion (word, excel, pdf, html, finally to plain text). so it affected the index server as well. this is now changed, in that '<' is simply converted to '< ' before doing strip_tags(). cheap, but ok here. 2003-08-28 --andrej 19. renamed Bs_Url->getUrlJunk() to getUrlChunk(). :-) kept it backward compatible. 2003-08-29 --andrej 20. Bs_FormItAble: does not set submitted form values to the object we're handling in cases of 'view' and 'delete', since it makes no sense. 2003-08-29 --andrej 21. Bs_Form: does not validate user input in case of 'view' and 'delete' since it makes no sense. 2003-08-29 --andrej 22. Bs_TextUtil->parseSearchQuery() now supports the 'fuzzy' operator. example: +~"Bill Gates" and ~Microsoft might also find something that includes "Bills gate" and "Micro$oft. 2003-09-02 --andrej 23. IndexServer, namely Bs_Is_Indexer: implemented the fuzzy search logic on a per-phrase basis. the new feature in Bs_TextUtil->parseSearchQuery() now allows it to do fuzzy searches on parts of the query, instead of all/nothing. 2003-09-02 --andrej 24. Bs_FlipFlop now supports to disable the field using setDisabled(). see the new example 4. http://www.blueshoes.org/_bsJavascript/components/flipflop/examples/example4.html 2003-09-02 --andrej 25. Bs_DatePicker: added a reset function and the possibility to set an "" (empty) date. 2003-08-28 --sam 26. Bs_FileSystem->makeValidFileName() added, with ecg tests. 2003-09-04 --andrej 27. Bs_String->clean() has a new 3rd param $allowThese. 2003-09-04 --andrej 28. Bs_Editor javascript component: when the unlink (opposite of createlink) was unset (to hide it), quite some cpu was wasted. (an exception got thrown, invisible for the user, but required cpu, in cycels). fixed. 2003-09-04 --andrej 29. bs_undoMagicQuotes() now also works on $_REQUEST. before, only get, post and cookies were done. 2003-09-08 --andrej 30. bs_undoMagicQuotes() is now executed on every page request. it is directly built into blueshoes.ini.php. 2003-09-08 --andrej 31. IndexServer: implemented the collocations feature. this allows us to recommend related words to the user. added the lyrics example to test and show it. example: someone is searching for "morissette". now we know which words occure the most together with morissette, so we can recommend them. the #1 is alanis. this helps the user to better find what he's looking for, especially when there are many results found. 2003-09-08 --andrej 32. Bs_Db: getNumRecords() is now optimized in that no data is fetched from the db. the query is modified on the fly to a "select count(*)" query. debedoo certainly likes this. 2003-09-08 --andrej 33. Bs_Editor js component: now the style of the editor window can be customized using the vars editorCssString and editorCssFile. want smaller fonts? or load your custom css settings for header tags? there you go. 2003-09-09 --andrej 34. Bs_DataGrid: added more css class names, see the example. the sorting column can be visualized, see the example. lots of work still to do. 2003-09-10 --andrej 35. Bs_XmlParser.class.js: optimization that also affects jsrs. speeds up parsing a large xml string by many times. the problem was: in javascript, if you do: var string = "fffffffffffffffffffffffffffffff"; for (var i=0; i