History ----------------- 05 Nov 2001: 3.2.0.beta0 * It is the major update to support mnogosearch-3.2.x To use mnogosearch-3.2 features you will need at least PHP-4.0.8+, or latest PHP4 snapshots which can be downloaded from http://snaps.php.net * Currently not implemented: Synonyms support, stored support, clones support and searchd support * New features: Unicode support, Words hilighting * Some bugfixes 05 Jul 2001: 3.1.3.5 * A bug in categories stuff and php 4.0.6+ has been fixed. 25 Jun 2001: 3.1.3.4 * New VarDir variable in search template has been added. Requires php-4.0.7+ * A bug with IspellPrefixes does not work has been fixed. * Default search template updated. 23 May 2001: 3.1.3.3 * auto_wild feature has been added to simplify url limit at the search template. If your ul variable begins with 'http://','https://','news://' or 'ftp://' the auto wild feature automatically adds % metacharacter only to the end. At the other case it will add % both to the begin and to the end of ul. * auto_wild config variable has been added. The default value is 'yes'. * A bug with switching search 'any' mode has been fixed * Some minor template fixes 07 May 2001: 3.1.3.2 * A bugs in page navigator has been fixed. 03 May 2001: 3.1.3.1 * A bugs in ispell loading code has been fixed. * Categories stuff support has been added to display category path for search results and browsing categories. Requires php-4.0.6+ * Udm agent allocation bug has been fixed. 21 April 2001: 3.1.3.0 * This is the new generation search frontend which uses native php-4.0.5+ mnoGoSearch extension functions. So this incredibly speedups script and greately improve its possibilities. 18 February 2001: 3.1.2.5 * This is possible the last release in the stable branch 3.1.2 The next branch will be written to support new native php-4.0.5 mnoGoSearch extension functions. * Query language parser extended to correctly understand queries like "word ~ (word3 | word4)" * $ndoc search template variable has been added to print total number of documents in database. 20 December 2000: 3.1.2.4 * Query language parser extended to correctly understand queries like "(word1 & word2)(word3 & word4)" * A bug in query language parser has bee fixed. The word 'NOT' has not been recognized as boolean 'not' operator. * "HLBeg" and "HLEnd" search.htm variable has been added. By using it you can specify how to hilight the words founded. HLBeg is prepended before the word. HLEnd is appended after the word. Defaults are "" and "" to comply with previous versions. 04 November 2000: 3.1.2.3 * A bug in mysql *multi modes has been fixed which caused incorrect wordsinfo generation. * New config.inc variable $lang_url_translation to enable language files translation, for example url "path/file.en.ext" will be translated into "path/file". This is suitable only when using language content negotiation. 29 October 2000: 3.1.2.2 * A bug with lost tags in navigator links has been fixed * A bug in boolean query language in OR queries which appeared since 3.1.2.1 has been fixed. 28 October 2000: 3.1.2.1 * Project name changed to mnoGoSearch-php. For details please look at out site http://search.mnogo.ru * db_func API has been changed. Old function names are not removed, but substituted by wrappers to new functions. Since now db_func will be released as a separate product called 'mnoGoSearch-db_func-php' also. * A bug in query language parser which can cause empty results on queryes like 'mydomain.de' has been fixed * The ParseDocText has been extended to highlight stopwords also. * New config.inc variable '$highlight_stopwords' added to turn on or off stopwords highlighting in the search results. * Query language parser extended to correctly understand queries like "(word1 & word2) ~word3" * Query language parser extended to correctly understand queries like "(word1 word2) word3" and "word3 (word1 word2)" * A bug with incorrect charset recoding with Russian Apache has been fixed. * Navigator maker has been changed not to include params containing default values to its hrefs. This makes query string much shorter. 14 October 2000: 3.1.2.0 * Added ability to connect to MySQL and PostgreSQL through the local unix socket. To do that you shound leave dbhost field blank or set it to '_socket'. For example you can use this: DBAddr mysql://udm:udm@/udm/ * Added language content negotiation feature. Thanks to Craig Small . For details please refer to doc/negotiation.txt * $template_file variable moved from config.inc to search.php to enable language content negotiation and to use different search.php scripts with different templates with the same .inc files. * Added initial soundex support. Thanks for an idea to artwells me@artwells.com. * Added $SDX search template variable, which is substituted by soundex search suggestions. Useful in template section. Examples can be found in default templates. * Added contrib directory to store additional tools and scripts which extends UdmSearch-php features. Now it contains soundex create scripts. * Fixed bug in get_dict_tab function which prevents using *dict32 tables at all. * Changed package directory structure: added doc, samples and src directories containing some modified docs from udmsearch, template samples and sources accordingly. * GNU license added to package. 30 September 2000: 3.1.1.2 * Added additional words info for mysql bases only in crc-multi and multi modes. Now it shows count of words in the database. Thanx to Alex Barkov for idea. * Fixed dropping temporary table bug while searching only from stopword in *multi modes. * New $DY template variable to display current document category. * New $rus_bool_lang config.inc variable. (Default - 'no'). If set to 'yes' the query language is enchanced with russian equivalents of 'and','or','not'. * New $DE template variable. It displays description when not empty and text overwise. * New $SearchTime template variable. It cannot be used in 'top' template sestion. * Default templates changed with examples with new variables 17 September 2000: 3.1.1.1 * Default templates categories section changed to include hidden input field with $cat value. * Boolean language parser changed to correctly work with queries such as: "word1 ~word2". * Added new search restriction by language. Default templates are changed with examples. * New search.php parameter $lang has beed added. * "$lang" template variable to display current url language restriction. Modified Matthew Sullivan patches: * Debug info extended somewhere to include function names * Get over the rand() bug in PHP 4 (this may have been fixed in PHP 4 Patch 1). * Remove query errors such as '(&' and '&|' operators. 02 September 2000: 3.1.1.0 * Nested categories support has been added. * "$CP" template variable to display category path has been added. * "$CS" template variable to display current category subtree has been added. * "cat" search.php parameter has been added to pass the category to search through. * "$cat" template variable to display current category ID. * Default templates are extended with new features examples. * Changed grep usage in IspellMode text to quote regexp. * Extended $W (wordsinfo) capabilities to show all words that we are looking for (useful when using ispell to see words with their normal forms found) * Many small changes in init code, navigator maker and database initialization errors reporting. 26 July 2000: 3.1.0.2 * New advanced search options (time limits). You can search for recent pages and so on the same as in udmsearch cgi frontend. * Fixed bug in query parser which prevented right search on queries contained special symbols. * Tag restriction now tested with SQL LIKE operator now in 3.1+ db format. So you can use SQL metacharacters '_' and '%' in search template to make search on group of tags. 22 July 2000: 3.1.0.1 * Added code to speed up search.php in crc* modes under php-4.0.1 and later by using native crc32 function. Php-4.0.1 and later determined automatically. * Now search.php don't print noquery template section while executed without any arguments. 16 July 2000: 3.1.0.0 * This is a first release that support new udmsearch 3.1.x database structure. * Added $db_format config.inc variable to switch between old 3.0 database and new. * If Last_Modified time of document is not known, then print 'undefined' in res template * Locale support extended to print localized date and time for Last_Modified id using new 3.1 database * Added Query tracking (same as in udmsearch 3.1.x) feature. Also added TrackQuery config.inc variable to set default value for TrackQuery and added TrackQuery template variable to turn this feature on or off. * Fixed minor bug when query contains single quotes. * Added printing $g, $ul, $ue, $m, $o and $ps variables in search template. Now you can place this variables anywhere in template and it will be substituted with its current value. * $g template variable has been improved to support parameter $g(X). This displays a tag without X trailing characters. * $pn template variable added (it is substituted by $ps*$np) 11 July 2000: 3.0.4.4 * Version numeration changed. Now two major version numbers are the same as corresponding udmsearch major version number. No changes in source code. 08 July 2000: 3.4.4 maintenance release * Corrected two deep serious bugs in ispell support. * Query parser changes to not filter rare national charset symbols. 25 June 2000: 3.4.3 * Added and reniced ispell debug output * template section added. It's printed if user makes an empty search. * template section added. It's printed in search navigator on the first page. * template section added. It's printed in search navigator on the last page. * Minor changes in search navigator code. * Stopwords detection function optimized to cache previous calls results. * Query maker changes to correct AND type queries, where stopwords exists. 10 June 2000: 3.4.2 * $q template variable added to comply with udmsearch-3.0.18 This variable substituted with RFC-1738 encoded query. (Note that $Q variable substituted by query as is). 10 June 2000: 3.4.1 * Reworked ispell code to use classes. Now boring parallel arrays are eliminated. * Changed exit routines to minimize "exit" calls. Now you can use search routines in other script by doing PHP inslude('search.php') syntax. Thanx to many users who suggested this feature. 29 May 2000: 3.4 * search.php proved to be Microsoft Windows compatible * ODBC mode added for all supported SQL backends (MySQL,Oracle 7 and 8, PostgreSQL) 25 May 2000: 3.3.8.stable * This is the first stable release of PHP frontend. * $DEFAULT_QUERY_TYPE variable added to config.inc to specify default query type (if no boolean operators found) * Added