This is GHOP task #95.

This could either be one issue or two issues: posting both ways, to be
decided...
One task (rerolled)

This filter will be the filter to end all filters. It will be like the CCK
of Drupal 4.7: as CCK wiped out almost all custom node types in favor of a
more user-configurable approach, this module will wipe out all sorts of
custom filters to allow a more user-configurable approach. It will allow
almost any filtering tasks to take place WITHOUT A CUSTOM MODULE having to
be installed.

This filter would expose to the user interface a set of options. The user
will be able to define more than one filter. (A filter is something that
can be used within an input format). Each filter is composed of components:
this task should define basic find/replace components (Example: for every
"" replace with "front page". User should be
able to decide whether this is case sensitive or not.

There should be basic logic statements included, such as while() statements
and if () statements. Example: if (post contained the phrase "add link") {.
The if/while statements should be components by themselves. This module
should get its components by invoking hooks in other modules.

So to recap briefly:

1) Create framework for a filtering module that invokes hooks. This/these
should be easy-to-implement yet powerful hooks.

2) Write default hooks for simple find/replace.

3) Add logic statements such as if() and while() to the module.

This task is finished when a module is posted and reviewed by two members.
It is to be written for Drupal 6.

Resources

* How to write a good api at http://buytaert.net/how-to-design-a-good-api.
* Documentation on hook_filter at
http://api.drupal.org/api/function/hook_filter/6.
* Example filter at
http://api.drupal.org/api/file/developer/examples/filter_example.module/....
* Documentation on invoking hooks at
http://api.drupal.org/api/function/module_invoke_all/6.
* Documentation of PHP string manipulation functions at
http://us3.php.net/manual/en/ref.strings.php.
* Can contact cwgordon7 for help: either drupal.org contact form or
irc.freenode.net #drupal-ghop. In fact, anyone at the #drupal-ghop channel
will probably be able to provide help if needed.

Primary contact: cwgordon7

Any students who get this task, please post follow ups both on the google task and this issue. Thanks!

Comments

cwgordon7’s picture

Title: GHOP#95 » GHOP #95: A filter to make all other filters obsolete
Status: Active » Closed (fixed)

Task rerolled, see new task issue.