The flexifilter module is a key module for site builders who want to create
highly custom filters. However, there are no documentation pages on it in
the Drupal handbooks, potentially making it difficult to use for new users.
Your task will be to create five documentation pages for it. You should
checkout CVS HEAD from the repository and become familiar with the module.
These are the five desired pages:

Page 1: Overview

On this page, you should give an overview of the module: what it does, how
it's useful, etc.

Page 2: Terminology

Here, you will define the basic terms of flexifilter, such as components,
conditions, flexifilters, and chunks.

Page 3: Step-through tutorial

Here, you will give a step-by-step tutorial on how to create a flexifilter.
You should assume that the user has absolutely no idea on how filters work
or anything of the sort. You should mention ways to keep
flexifilter-defined input formats secure.

Page 4: Example flexifilters

Here, you should give at least five examples of filters you can make with
the flexifilter module, and at least two step-by-step explanations of how,
exactly, to create them. If this spills out onto some sub-pages, that's fine.

Page 5: API documentation

Here, you will list useful API functions that the flexifilter module
provides, and will show module writers how to code for flexifilter. You
should mention flexifilter's hooks and at least three nice API functions to
use.

Note:

You should be working off Drupal 6 HEAD, as this contains the latest API
features, etc.

Resources:

Flexifilter module (http://drupal.org/project/flexifilter)
Article on the introduction of flexifilter
(http://cwgordon.com/introducing-flexifilter)
Dojo lesson on flexifilter (http://drupaldojo.com/lesson/flexifilter-module)

Mentor:

dmitrig01

Deliverables:

5 (or more) handbook pages, approved by the mentor, dmitrig01.

The official GHOP task associated with this issue can be found at:
http://code.google.com/p/google-highly-open-participation-drupal/issues/...

Comments

birdmanx35’s picture

Assigned: Unassigned » birdmanx35

http://drupal.org/node/212410 is the space where they will be, just for the record. I'll probably get some work done on this on Wednesday, and Thursday.

corsix’s picture

I strongly disagree with this being in Contributed modules » Developer modules, as is it not targetted at developers per se.

birdmanx35’s picture

Fixed that a while ago, sorry I didn't reply.

Corsix: I'll need your help with the API part, if you're around when I need it. Thanks!

corsix’s picture

You know I'll be in IRC if I'm online :)

birdmanx35’s picture

Okay, I'd say I've done roughly 70% of the work now. I will get this work done on time, and with enough room for it to be reviewed. I still need to do most of the examples (which dmitrig01 said, after a discussion, that I could do just a code export because it is redundant to do a tutorial when there is already a tutorials section) and the tutorial.

http://drupal.org/node/212413 - The overview has been created, and I've done a bit more than what the task requires, as that information is useful and easy to add.

http://drupal.org/node/212414 - The glossary has also been created, and dmitrig01 can be credited for that great image.

http://drupal.org/node/212417 - The examples that require no work on my part have been created- I still don't really grok flexifilter, so I have to sit down with it at some point and create these examples. If someone has an export of any of the examples, or another one, that would be beautiful, allowing me to spend more time on the meat, the tutorial.

http://drupal.org/node/212419 - The API actually turned out to be the easiest part, as most of the documentation was already done in the API.txt file. I improved on the phrasing a little bit, I think, but that was about it.

As I said earlier, I haven't started the tutorial because that will take as much time as the above four have taken me. I also still need to do the examples, as I've said before. Sorry for being redundant, I'm tired and I need a to-do list.

Let me know what you think.

webchick’s picture

Status: Active » Needs review

Marking needs review.

cwgordon7’s picture

Status: Needs review » Needs work

Several concerns:

(1) http://drupal.org/node/212417 doesn't seem to be completed.

(2) On http://drupal.org/node/212419, code snippets should be highlighted in >?php ?< tags.

(3) Page 3, the step-by-step tutorial page, is missing.

(4) The overview page should serve as the parent for the other pages, as putting them all under a nearly-blank page makes no sense.

So, setting back to cnw.

birdmanx35’s picture

Yes, I did say I'm not done with this, but I imagine since part of it is out they wanted some review.

As I said on the other thread, I'll get to this on Saturday, and I will adress your concerns.

birdmanx35’s picture

As per your suggestions, I highlighted the code snippets in php tags, and copied the overview to the parent and deleted the old page.

I am now working on adding a tutorial (I am placing it under a parent page, so that others can add tutorials to a designated section), as well as finishing the example pages.

birdmanx35’s picture

Okay, here's what I did today:
- I implemented your suggestions (see #9).
- I submitted lots of usability ideas to cwgordon7 and Flexifilter's issue queues.
- I made my first patch ever! See http://drupal.org/node/217235.
- I did some of http://drupal.org/node/212417. I will finish that tomorrow.
- Also, I created these tutorials:
- http://drupal.org/node/217228 This is the tutorial that I made from scratch (with a little help from my friends).
- http://drupal.org/node/217177 This tutorial is from other places, just edited a bit.

birdmanx35’s picture

Status: Needs work » Needs review

There is only one thing left to do (two examples) but that's minor and I will get that done tomorrow, so I am bumping this up.

agentrickard’s picture

Status: Needs review » Needs work

Some notes. This is a very good start, but the documentation needs some scrubbing.
(You probably know that, from the comment above, so consider this a practical guide.)

http://drupal.org/node/212410

-- At the very start, please define what Drupal filters are.

-- "to further improve" is redundant. Use "to improve."

-- Drupal GHOP has no context here. Link?

http://drupal.org/node/212414

-- "Chunk grab on [ and ]" is confusing. The chuck is not defined by the word AND
in the text string. It is defined by the brackets, right? So this should be "Chunk
defined by [bracket text]"

http://drupal.org/node/212417

-- Please describe the import/export process at the beginning. Where do I import
files? Through the UI? What is the menu path? Admin > Content > Flexifilter?

-- "If you wish to use them in your module, import them manually with Flexifilter,
and then export them." This is confusing because the first sentence is about using
Flexifilters as Filters. This is about using them as module code. There should
probably be two sections of the documentation: Using Flexifilters and Implementing
Flexifilters into Modules.

-- "Link Formatting" is blank.

-- "Swear Filter" is blank.

http://drupal.org/node/212419

-- "hook_flexifilters allows modules to define default flexifilters. A array should
be returned, with each value of the array corresponding to an exported flexifilter
(as an array itself)." I have no idea what this means. What format is the array in?
What are its keys? Its required elements? Its allowed values?

-- "hook_flexifilter_components" text block needs to be formatted for easy reading on
this screen. A sample return array should be added.

-- Sample for "hook_flexifilter_conditions" also. What is the difference between
this hook and the other? Why do I use each one?

-- "Useful API Functions" are not documented meanigfully. What is $op?

-- Page ends in the middle of a sentence.

http://drupal.org/node/212416

-- "This is the tree" -- no, this is a page with links on it.

http://drupal.org/node/217228

-- How do I find the Flexifilter administration area?

http://drupal.org/node/217177

-- Give this list a header, like the related page has.

-- How do I find the Flexifilter administration area?

birdmanx35’s picture

Status: Needs work » Needs review

Okay, I implemented some of your suggestions, but not all of them.

I'm almost 98% done with the task- just need to do the link filter (I'm a tad stuck without dmitrig01, who is afk atm) and then I'll be done, so CNR.

birdmanx35’s picture

This is now 100% done, so I'm taking suggestions.

birdmanx35’s picture

Status: Needs review » Closed (fixed)

Closed as per the google thread.

cwgordon7’s picture

Status: Closed (fixed) » Fixed

General practice is to mark fixed, not closed.

Anonymous’s picture

Status: Fixed » Closed (fixed)

Automatically closed -- issue fixed for two weeks with no activity.