Commit Graph

330 Commits (096309b327b0cf9e8637aadac494860774dc7549)

Author SHA1 Message Date
Dries Buytaert 75897e8000 - Patch by Eaton: 2 form API fixes. 2007-05-15 05:43:16 +00:00
Dries Buytaert ac65ff9074 - Patch by eaton, chx, webchick, yched et al: form api 3 ... yay. :) 2007-05-14 13:43:38 +00:00
Dries Buytaert 7d4f2836ba - Patch by Goba et al: Allow localization of built-in menu items. 2007-04-30 17:03:29 +00:00
Dries Buytaert f73610bec6 - Patch by Gabor: made log messages translatable. Yay. 2007-04-24 13:53:15 +00:00
Dries Buytaert e675979091 - Patch by douggreen: getting the Drupal coding standards right in core. Woot. Woot. 2007-04-13 08:56:59 +00:00
Dries Buytaert 5bbbf10ba8 - Patch by merlinofchaos: added theme registry for easier themability. 2007-04-06 13:27:23 +00:00
Steven Wittens f7440d4d73 : Kitchen sink (E_NOTICE compliance / Code style / Bugfix in book toc) 2007-03-27 05:13:55 +00:00
Dries Buytaert 4b635f6d0a - Patch by Eaton: remove #base, paving the path for a simpler form API. 2007-03-17 18:30:14 +00:00
Dries Buytaert d9647661ff - Patch by tostinni: search.css not always properly included. 2007-03-14 18:30:38 +00:00
Dries Buytaert 5254053812 - Patch by chx: tabs fixes. 2007-02-14 16:43:38 +00:00
Dries Buytaert a1e6728a46 - Patch by chx: first crack at re-implementing tabs. 2007-02-11 09:30:51 +00:00
Dries Buytaert 489903a08e - Patch by chx: first crack at re-implementing tabs. 2007-01-31 21:26:56 +00:00
Dries Buytaert 03752e35a4 - Patch by chx et al: faster menu system. HEAD is temporary broken and there is no upgrade path yet. 2007-01-24 14:48:36 +00:00
Steven Wittens 12fab40764 : Fix permissions for search/user 2007-01-13 11:02:30 +00:00
Steven Wittens 487f243cbf : Fix permissions for search/user 2007-01-13 11:00:53 +00:00
Neil Drumm ff34411675 by Jose A Reyero. Clean up search menu items, fixing .../search/user under certain permissions. 2006-12-19 09:44:53 +00:00
Dries Buytaert 22d317e5c4 - Patch by dvessel: <p>-tag clean ups. 2006-12-11 16:57:42 +00:00
Steven Wittens b86f45b1e6 : CSS preprocessor to cache and compress all .css files. Benchmarks show up to 40% faster page loads. 2006-12-10 09:54:35 +00:00
Steven Wittens 0ea4e1c5f6 : Conditional loading of (some) module.css files 2006-12-01 22:47:53 +00:00
Dries Buytaert 6ae6dc0d85 - Patch by webchick, neil, dww et al: show version numbers on modules page. 2006-11-21 20:55:36 +00:00
Dries Buytaert b004f328ee - Patch by webchick and neclimdul: clean up documentation that is superseded by the new 'by module' administration dashboard. 2006-11-21 20:14:19 +00:00
Dries Buytaert cb8be5f821 - Patch by profix: code simplifications. 2006-10-26 05:31:14 +00:00
Steven Wittens 36d44fbfb0 : Use 'Sentence capitalization' for menu items, page titles, form items, etc 2006-10-22 08:28:47 +00:00
Dries Buytaert 14e925e36a - Patch by webernet: page titles were reversed. Oops. 2006-10-07 13:39:04 +00:00
Dries Buytaert 18b297abf8 - Patch by merlinofchaos, webchick, moshe, neclimdul et al: added package support to the modules page. 2006-10-05 15:47:57 +00:00
Dries Buytaert a8f20420d9 - Patch by edkwh, chx and hunmonk: fixed the form in the search block. 2006-10-05 14:49:52 +00:00
Dries Buytaert 5f8027f94c - Patch by edkwh: -> . Getting rid of super-globals. 2006-09-17 19:14:16 +00:00
Dries Buytaert 6f0e54b037 - Patch by webchick: renamed variables in hooks for consistency. 2006-09-08 16:33:02 +00:00
Neil Drumm 94098f7e93 by webchick and neclimdul. Uninstall module API. 2006-09-01 07:40:08 +00:00
Dries Buytaert c64db1da29 - Patch by earl, webchick, neclimdul et al: .info files 2006-08-31 20:22:37 +00:00
Dries Buytaert 78ee75f1a2 - Patch by Dries: added views to see the most popular search terms,
the most important 404s and 403s.  This makes the watchdog data easier to
  use.  Improved consistency of the 'amdminister > logs' section.
2006-08-29 09:51:50 +00:00
Neil Drumm bceaf8f0da Eaton and chx. Replace $_POST['edit'] with $_POST. 2006-08-29 09:12:03 +00:00
Dries Buytaert 7178f2f99e - Patch by Chris Johnson: remove int display width declarations from MySQL create table statements. 2006-08-20 06:38:50 +00:00
Dries Buytaert 7de41539df - Patch by chx, eaton, moshe, et al: enable programmaticaly submitted forms via the pull model. 2006-08-18 18:58:47 +00:00
Steven Wittens 81938a3cdc : Introduce placeholder magic into t()
See: http://drupal.org/node/64279#t-placeholders
2006-08-18 12:17:00 +00:00
Neil Drumm bf3487c0b1 by sammys, sync posgres install and change unsigned annotation. 2006-08-15 05:25:20 +00:00
Neil Drumm 3cc2b1e3d7 by m3avrck and timcn, split up drupal.css by module. 2006-08-14 07:14:50 +00:00
Dries Buytaert ce85b7c7f8 - Patch by Eaton, Royboy, chx, et al: building $node->body with arrays like FAPI for viewing.
Once again, we're paving the path for CCK in core ... :)
2006-08-10 15:42:33 +00:00
Dries Buytaert 729fa6c11b - Patch by timcn: corrected various paths in the documentation. 2006-08-07 15:04:16 +00:00
Neil Drumm 4387247a40 by paranojik, fix search configuration's menu item 2006-08-05 22:30:59 +00:00
Neil Drumm 651a42b9c2 by craines and pwolanin, always go to search pages for searching (particularly a problem on 404 pages) 2006-08-05 01:21:40 +00:00
Neil Drumm cd430165d7 by RobRoy, various code cleanup. 2006-08-05 00:26:36 +00:00
Dries Buytaert a7f67e01de - Patch by sammys: PostgreSQL support for install system. Woot! :) 2006-08-04 06:58:44 +00:00
Dries Buytaert b138793b68 - Patch by Earl et al: give Drupal an overall administration page ... :-) 2006-07-31 11:25:55 +00:00
Steven Wittens 4dbaaefd6d Remove useless/broken #theme statement from search_theme_form 2006-07-17 13:15:22 +00:00
Neil Drumm 7d9f57ff63 by Flanker, add missing CVS Ids. 2006-07-14 01:05:10 +00:00
Dries Buytaert 1c75a210bd - Patch by chx, jeremy, steven, eaton, webchick, amazon, neil, nedjo et al: an initial install system for Drupal core. 2006-07-13 13:14:25 +00:00
Dries Buytaert 58752cfaa2 - Patch by me:
+ reorganized ?q=admin/settings
   + deprecated the _settings hook
2006-07-10 19:27:52 +00:00
Dries Buytaert c79ab3ca36 - Bug by erdem: added missing </li>. 2006-07-06 14:27:56 +00:00
Dries Buytaert e93f8be871 - Patch by nedjo: upper-cased all TRUE/FALSE/NULL constants. 2006-07-05 11:45:51 +00:00
Neil Drumm 238e7cb36e by Zen, Forms do not function on the search page when the search form has invalid input 2006-05-07 04:39:31 +00:00
Neil Drumm 9cff02e91b by Zen, Double spaced sentences clean up 2006-05-07 00:08:36 +00:00
Dries Buytaert f818eaf651 - Patch by DriesK: added a permission for advanced search. 2006-05-04 18:44:10 +00:00
Neil Drumm 7c5c1c9ab9 by Egon Bianchet, Documentation: invalid xhtml syntax 2006-05-04 09:31:41 +00:00
Steven Wittens 54a47afd20 - Remove #ref note from comments 2006-04-17 16:06:00 +00:00
Steven Wittens fb8ef28375 : Remove all reference magic from form api. w00t. 2006-04-15 21:52:44 +00:00
Gerhard Killesreiter 70aae83c8e , fixes for typos, patch by Uwe Herrmann 2006-04-11 11:33:15 +00:00
Steven Wittens cfe001af7a : Allow different search forms to coexist without breaking validation 2006-04-06 13:07:22 +00:00
Steven Wittens 13e52fe352 Fix search indexer link tracking after removal of base-tag. 2006-04-03 22:56:53 +00:00
Steven Wittens 826396a4ef Fix search indexer link tracking after removal of base-tag. 2006-04-03 22:56:10 +00:00
Neil Drumm b22d877ff8 by chx: The search box that can be displayed by some themes (e.g. bluemarine) was not working. 2006-03-31 04:57:49 +00:00
Gerhard Killesreiter a539a3aa40 , unnessary trim(). patch by Zen 2006-03-30 22:12:10 +00:00
Steven Wittens 70c91e33c2 : hook_search() form API conversion 2006-03-30 20:23:39 +00:00
Steven Wittens fc7f5affd1 - Search code fixes: pass right to theme('pager'), remove unnecessary db query arguments 2006-03-27 21:52:27 +00:00
Dries Buytaert d7e9371e94 - Removing whitespace 2006-03-03 08:37:47 +00:00
Steven Wittens 03c8120c23 - : Make search results page more flexible 2006-02-28 13:32:33 +00:00
Dries Buytaert f29e0405f4 - Patch : fixed form goto problem (Today's critical bugfix #1.) 2006-02-23 10:30:03 +00:00
Dries Buytaert 3603fe1bd8 - Patch : www.drupal.org -> drupal.org. (Today's critical bugfix #5.) 2006-02-21 18:46:54 +00:00
Dries Buytaert 583d5a4ee9 - Patch by adrian: remove drupal_goto from _submit functions. 2006-02-10 05:25:57 +00:00
Steven Wittens 24a598a912 - : Better search form compatibility for lanky IE submission 2006-02-07 06:33:04 +00:00
Dries Buytaert a038201841 - Patch by kumo: fixed the re-index cancelation link. 2006-02-01 14:42:02 +00:00
Dries Buytaert 30acded344 - Patch by fgm: removed some useless global. 2006-01-22 07:43:19 +00:00
Steven Wittens ecd26ac8ae - : Make node search indexing more robust against bad nodes and timeouts. 2006-01-18 21:31:40 +00:00
Steven Wittens 2e9bbda791 - : {} -> [] (in anticipation of PHP de-deprecation) 2006-01-15 07:14:14 +00:00
Steven Wittens b43fa0f9da - : global urlencode() for menu paths 2005-12-22 22:58:12 +00:00
Steven Wittens 19aad8934f - : Search results don't include last part of longer pages 2005-12-21 14:30:09 +00:00
Steven Wittens e67def3a12 Search.module:
- : Dead variable (remove_short)
- : Fix chinese search problem
- Fix bug with  and OR queries
- Add smarter highlighting for CJK strings
- Add message about minimum word length to user
- Improve code comments
2005-12-21 13:35:55 +00:00
Dries Buytaert f8b5f21cf5 - Patch : changing the size of the search box back to 20 ... 2005-12-19 10:11:14 +00:00
Steven Wittens 8b0461940d - Fix minimum_word_size default values 2005-12-18 12:28:26 +00:00
Steven Wittens b099843b7a - : First search pass was too greedy with short words.
- Minor code simplifications in search_parse_query()
2005-12-16 16:42:37 +00:00
Dries Buytaert 764f1177ef - Patch by Chris Johnson: is_array() slower than isset() or empty(). 2005-12-14 20:10:45 +00:00
Steven Wittens 9e007c11aa - Missing URLencode for remembering search keywords across tabs 2005-12-07 15:32:11 +00:00
Dries Buytaert e31f7abd42 - Patch by Moshe: removed dead code. 2005-12-06 08:28:58 +00:00
Dries Buytaert 26bd449860 - Patch by chx: rename '_execute' to '_submit' and '#execute' to '#submit'. 2005-12-02 15:21:01 +00:00
Dries Buytaert 2d0df351d7 - Various fixes. Updated CHANGELOG.txt 2005-11-29 20:17:10 +00:00
Dries Buytaert 69f3a4d654 - Improved consistency: "Clear Site" -> "Clear site", "Re-index Site" -> "Re-index site" 2005-11-29 06:20:18 +00:00
Steven Wittens 6fc0a68f08 - : Improve handling of preprocessor-generated words in search queries.
- Improve search's default CJK tokenizer
- Re-add index wipe button to admin (with confirmation)
- Make default CJK tokenizer optional
2005-11-28 20:00:21 +00:00
Steven Wittens 17205b6e62 : Don't prefix temporary table names after all.
: Make search query pgsql compatible.
2005-11-21 15:55:17 +00:00
Steven Wittens 76226df867 : Array merge problems with module_invoke 2005-11-10 20:36:13 +00:00
Steven Wittens 2ad97f0277 - : Fix db_query_temporary() in pgsql
- Prefix temporary table names (helps on restricted hosts)
2005-11-04 13:02:51 +00:00
Dries Buytaert a8b218827a - Patch by webchick / Kieran / documentation team: improved admin help of core modules! / 2005-11-01 10:17:34 +00:00
Dries Buytaert f6764cfbd8 - Patch by m3avrck/deekayen: cured PHP5 warnings. 2005-10-22 15:14:46 +00:00
Steven Wittens f31db8d70f - : Search query containing / results in 404 on clean URLs. 2005-10-21 11:14:55 +00:00
Steven Wittens 909d6928ac - : Advanced search features (hello from DrupalCon)
Presentation about it:
http://www.acko.net/files/drupal-search-slim.pdf
2005-10-18 14:41:27 +00:00
Dries Buytaert 75fe6b6c0a - Patch by chx, adrian, et al: another batch of form API changes/fixes. 2005-10-11 19:44:35 +00:00
Dries Buytaert 7e1527ee61 - Patch : new form API by Adrian et al.
TODO:
  + The contact.module was broken; a new patch for contact.module is needed.
  + Documentation is needed.
  + The most important modules need to be updated ASAP.
2005-10-07 06:11:12 +00:00
Dries Buytaert 451dbd17a6 - Patch by Neil: improved HTML/CSS of search form. 2005-09-07 20:57:39 +00:00
Dries Buytaert 7b8a409675 - Patch by chx: no ?> add end of files. 2005-08-25 21:14:17 +00:00
Steven Wittens aa2de74fa2 - , , : dead code 2005-07-29 08:18:20 +00:00
Steven Wittens 31ebc32982 - : Correct function name 2005-07-29 06:43:32 +00:00
Steven Wittens 88ccaf02c4 - : Leftover string_length(). 2005-07-27 01:27:09 +00:00
Steven Wittens 11a4aba9a6 - : Add mbstring support to Drupal and clear up string handling fuzzies. 2005-07-25 20:40:35 +00:00
Dries Buytaert 58aee8cdad - Patch by Stefan: made the sizes of forms consistent.
TODO: document the defaults in the PHPdoc comments.
2005-06-27 18:33:33 +00:00
Dries Buytaert 3a02ee64b2 - Patch by mathias: now that db_affected_rows() returns the number of rows matched instead of only changed we can get rid of the hacks that worked around this. 2005-05-14 17:26:02 +00:00
Dries Buytaert a76a1e1f3f - Patch 20910 by chx: centralize print theme page. 2005-04-24 16:34:36 +00:00
Steven Wittens 00b04ba41c - Fix search index not wiping on admin settings change. 2005-04-23 07:34:22 +00:00
Steven Wittens 23bccfd1c8 - : Respect 'access userlist' permission for profile data. 2005-04-11 22:48:27 +00:00
Dries Buytaert 7bdcba1720 - Patch by Uwe: corrected many typo's in the documentation and code comments 2005-03-31 21:18:08 +00:00
Steven Wittens be14203534 - : Clean up plain-text checking (see drupal-devel!) 2005-03-31 09:25:33 +00:00
Steven Wittens a9091183e1 - Part of was not committed (pgsql fixes). 2005-03-29 03:28:02 +00:00
Steven Wittens 0805a476b3 - Use format_plural() for search status (items left to index) 2005-03-18 20:31:00 +00:00
Steven Wittens ab7815c8cd - : Use module_implements instead of hand-rolled routine. 2005-03-18 06:50:41 +00:00
Steven Wittens 9d8badb8de - : (search) Try wildcards automatically if there were no results.
- Fix missing format_plural()
2005-03-08 18:08:17 +00:00
Steven Wittens ff386b90bb : PGSQL improvements 2005-02-28 18:00:59 +00:00
Steven Wittens 5f5f0b27ac - Oops: don't show refused words message if there are none. 2005-02-27 23:31:47 +00:00
Steven Wittens 4f196311c1 - Fix submissions from search boxes in themes 2005-02-27 18:39:18 +00:00
Steven Wittens 69262e5a73 - Search: fix search block stretching sidebar 2005-02-27 02:46:37 +00:00
Steven Wittens cd552adee0 More search usability improvements!
- Clean URLs: search/type/keywords e.g. "search/node/drupal release". The search
  form is POST submitted, but drupal_gotos to a GET page. This makes it easy to
  copy/paste search URLs, and makes the pager a lot cleaner.

- Remember the search keywords when switching between the search tabs. This is
  done through the same GET URLs rather than the session, so it does not mess up
  between multiple browser tabs.

- Report which keywords were ignored because they were too short.

- : Provide search block

- Treat multiple wildcards in a row as one
2005-02-27 02:15:57 +00:00
Dries Buytaert f276f7f95b - Stripped white-space. 2005-01-15 09:03:39 +00:00
Steven Wittens bf3c137097 Fixing search tabs going back to "content" when searching on other tabs. 2005-01-14 03:24:20 +00:00
Steven Wittens 5314b9a14c - Some search doxygen tweaks 2005-01-13 17:34:01 +00:00
Steven Wittens bf09864c5d - Readding cron note. 2005-01-11 09:46:51 +00:00
Steven Wittens 92bc08b5b9 - Make the search settings page more user-friendly. 2005-01-11 09:41:49 +00:00
Steven Wittens 410f301006 Tweak api.module output 2005-01-11 07:04:37 +00:00
Steven Wittens fc4e2487b8 Various additions, improvements and fixes to the search documentation. 2005-01-11 06:49:11 +00:00
Steven Wittens 0b8ff5d19f - Oopsie 2005-01-11 05:01:15 +00:00
Steven Wittens 857082ce7e - Ensure word length <= 50 bytes 2005-01-11 04:50:00 +00:00
Steven Wittens 854fa41fb3 - Fixing duplicate rows error during indexing
- Fixing broken "pagerank" detection
2005-01-11 03:37:13 +00:00
Steven Wittens 59a2c464c7 - Fix search excerpt highlighter marking substrings of words too + small improvements 2005-01-10 23:37:26 +00:00
Dries Buytaert 37d9be8f33 - Updated watchod call. 2005-01-09 10:07:17 +00:00
Dries Buytaert ceb20b45e5 - Small change 2004-12-31 09:31:54 +00:00
Dries Buytaert 1dbe0dc2ee - Patch by UnConeD/Steven:
1) The different types of search, which used to be radio button options in the search form, are now subtabs of "search" (default "search/node"). This seems better from a UI point of view, but also has another advantage: modules which implement a custom search form (flexinode, project) can add it as a subtab of search. This means that all search forms will be located in the same place, and also without needing an extra api call to search.module.

2) The current code was a bit hackish, as the indexing of comments along with nodes was hardcoded in node.module. Instead, I created a nodeapi operation "update index" which allows modules to add more data for a node that is being indexed. Comments are now indexed using this mechanism and from comment.module, which is a lot cleaner.

3) The search results format was also hardcoded to include "N comments". I replaced this with a nodeapi operation "search result" and moved the comment code to comment.module where it belongs. This op is quite useful, as for example I also modified upload.module to add "N attachments" to a search result if any are present.
2004-12-31 09:30:12 +00:00
Dries Buytaert 2b17b3a966 - Patch by Neil: less ways to set the page title.
* Less logic in theme code.
   * Encourages use of the menu system.
   * Easier to find where a title or breadcrumb comes from in other people's code because there are less places to look. Look in menu and then grep for the appropriate set function. Looking for calls to theme_page() is hard because there are too many of them.
   * Very slightly more efficient.
2004-12-15 21:19:42 +00:00
Dries Buytaert 6e3eb60aab - Removed some cruft: left-over xxx_help_page() functions. 2004-12-11 14:13:24 +00:00
Steven Wittens 925bd41585 Search: wrong parameter order on search_wipe(). 2004-12-02 06:45:18 +00:00
Dries Buytaert 29337ad8bb - Patch by Steven: Db_query() allows a variable amount of parameters so you can pass the query arguments in. There is however an alternative syntax: instead of passing the query arguments as function arguments, you can also pass a single array with the query arguments in it. For example the following two statements are equivalent:
db_query($query, $a, $b, $c);
db_query($query, array($a, $b, $c));

This usage is particularly interesting when the query is constructed dynamically, and the amount of arguments to pass varies. In that case we use the second method to avoid using call_user_func_array(). This behaviour is not documented explicitly, but it is used in several places.

However, db_query_range() and pager_query() do not support this syntax properly, which means there are several pieces of code which still revert to the ugly call_user_func_array() call.

This patch updates db_query_range() and pager_query() so they support the array-passing method. I also added documentation about this method to each of the db functions.

I also cleaned up the code for db_query (it was weird and hard to understand) and moved db_query() and db_queryd() from database.xxxxx.inc to database.inc: it was the same between both mysql and pgsql, as it doesn't do anything database specific. It just prefixes the tables and inserts the arguments. The actual db query is performed in _db_query(), which is still in database.xxxxx.inc.

Finally, I updated several places with the new syntax, and the code is a lot cleaner. For example:
- array_unshift($params, "SELECT u.* FROM {users} u WHERE $query u.status < 3");
- $params[] = 0;
- $params[] = 1;
- $result = call_user_func_array('db_query_range', $params);
+ $result = db_query_range("SELECT u.* FROM {users} u WHERE $query u.status < 3", $params, 0, 1);

and

- return call_user_func_array('db_query_range', array_merge(array($query), $args, array((int)$pager_from_array[$element], (int)$limit)));
+ return db_query_range($query, $args, (int)$pager_from_array[$element], (int)$limit);

I've tested it on mysql. I didn't alter the actual db behaviour, so pgsql should be okay too.

This patch is important because many people avoid the call_user_func_array() method and put data directly into the db query.  This is very, very bad because the database prefix will be applied to it, and strip out braces. It's also generally bad form as you have to call check_query() yourself.  With the new, documented syntax, there is no more excuse to put data directly in the query.
2004-11-29 13:13:29 +00:00
Dries Buytaert 4726c93156 - Patch by Moshe: got rid of the semi-implemented 'page link' feature. All themes currently support primary and secondary links so page links are now deprecated. Check your contributed modules and update them accordingly. 2004-11-24 22:56:21 +00:00
Steven Wittens dc32e54f31 Search.module:
- Caching index statistics
- Minor code cleanup
2004-11-18 21:28:34 +00:00
Dries Buytaert b6eee48c88 - Patch by Steven: more search improvements:
+ When a comment is posted, a node needs to be re-indexed. Luckily, we can use node_comment_statistics for this easily.
   + When a node is deleted, it should be deleted from the search index as well.
   + The search wipe didn't properly remove links to nodes from the index.
   + Section url was faulty in _help.
   + Minor code rearrangement.
2004-11-04 06:47:03 +00:00
Steven Wittens d13943e245 Fixing bad UTF-8. 2004-11-04 03:33:26 +00:00
Dries Buytaert bd6ae69345 - Patch by Steven:
+ Display 'friendly' name rather than module name in search watchdog
     messages.
   + Remove left-over from search_total table.
   + Add index wipe button to the admin
   + Moved the admin to admin/settings/search
   + Prevented menu bug when node modules update the breadcrumb in view
     (thanks JonBob).
   + Changed search_total table's word key to PRIMARY.
2004-11-03 16:46:58 +00:00
Dries Buytaert 8daed9cbf3 - Patch by Steven/UnConed: search module improvements.
1) Clean up the text analyser: make it handle UTF-8 and all sorts of characters. The word splitter now does intelligent splitting into words and supports all Unicode characters. It has smart handling of acronyms, URLs, dates, ...

2) It now indexes the filtered output, which means it can take advantage of HTML tags. Meaningful tags (headers, strong, em, ...) are analysed and used to boost certain words scores. This has the side-effect of allowing the indexing of PHP nodes.

3) Link analyser for node links. The HTML analyser also checks for links. If they point to a node on the current site (handles path aliases) then the link's words are counted as part of the target node. This helps bring out commonly linked FAQs and answers to the top of the results.

4) Index comments along with the node. This means that the search can make a difference between a single node/comment about 'X' and a whole thread about 'X'. It also makes the search results much shorter and more relevant (before this patch, comments were even shown first).

5) We now keep track of total counts as well as a per item count for a word. This allows us to divide the word score by the total before adding up the scores for different words, and automatically makes noisewords have less influence than rare words. This dramatically improves the relevancy of multiword searches. This also makes the disadvantage of now using OR searching instead of AND searching less problematic.

6) Includes support for text preprocessors through a hook. This is required to index Chinese and Japanese, because these languages do not use spaces between words. An external utility can be used to split these into words through a simple wrapper module. Other uses could be spell checking (although it would have no UI).

7) Indexing is now regulated: only a certain amount of items will be indexed per cron run. This prevents PHP from running out of memory or timing out. This also makes the reindexing required for this patch automatic. I also added an index coverage estimate to the search admin screen.

8) Code cleanup! Moved all the search stuff from common.inc into search.module, rewired some hooks and simplified the functions used. The search form and results now also use valid XHTML and form_ functions. The search admin was moved from search/configure to admin/search for consistency.

9) Improved search output: we also show much more info per item: date, author, node type, amount of comments and a cool dynamic excerpt à la Google. The search form is now much more simpler and the help is only displayed as tips when no search results are found.

10) By moving all search logic to SQL, I was able to add a pager to the search results. This improves usability and performance dramatically.
2004-10-31 03:03:27 +00:00
Steven Wittens a35ff36673 search: Removing iso-8859-1 characters from update_index() and adding the same stripping to do_search().
This fixes the embarrasing bug of not being able to search for "4.5.0" because it is indexed as "450".
2004-10-15 22:01:41 +00:00
Dries Buytaert 4a6e2258ba - Patch by TDobes: usability improvement: changed the link in search.module watchdog entries from "view results" to "results". This better matches watchdog entries from other modules. 2004-09-21 18:35:30 +00:00
Dries Buytaert 5c7983c4de - Patch by JonBob: reintroduced menu caching. 2004-09-16 07:17:56 +00:00
Dries Buytaert b84b6e42cf - Patch by JonBob: documentation improvements: fixed some typos and improved consistency to the use of Doxygen/api.module commands in the comments. 2004-09-09 05:51:08 +00:00
Dries Buytaert 94e30bf776 - Patch by JonBob: for consistency and readability, add brief descriptions of each source file inside the @file comment block at the head of the file. This helps with Doxygen indexing, and also allows neophytes to see what a file does immediately on opening the source, regardless of the organization of the hooks. 2004-08-21 06:42:38 +00:00
Dries Buytaert 83a739bd89 - Code improvements by Stefan: made all status messages consistent (and easier to translate). 2004-08-18 19:57:27 +00:00
Dries Buytaert cd632f6251 - Alternative fix for search module bug. 2004-07-28 20:32:21 +00:00
Dries Buytaert 4c630e8fe6 - Patch by JonBob: check the length of a search key before inserting it. 2004-07-28 20:30:37 +00:00