For a website I'm creating, it's needed that users can add notes to a node from a particular nodetype. The note needs to contain multiple fields from different types. So not only a textfield, but also radiobuttons, checkboxes and select fields. Which fields are needed depends on how the note is configured.

Other requirements:
- It's important that for each node only one note can exists for each user.
- The notes need to be only visible for the user who created the note.
- The user need to be able to get an overview of all notes he created.

An example:
Let's say we have a nodetype 'task'. In a node of this nodetype a task will be described. Each user who has access to nodes of 'task', should be able to navigate to the node and fill in the fields for the note. An example of a task is 'Study chapter 1 of the Drupalbook'. The user could fill in the following fields:
- the state of the task (for example: 'not yet started', 'in progress', 'done');
- comments (for example: "Nodes are pieces of content." or "I've read the whole chapter, but I need to study harder on what exactly hooks are").
In this example the user can use the comments field to write down reminders for himself or whatever he likes to fill in there.

Which module?
Is there a module that works like described above? It would be nice if the module is integrated with CCK (so I can define the needed fields for the note with CCK) and Views (so it's possible for the user to get an overview of all his notes).
A module that came close to what I was looking for was Annotate, but that module has no integration with CCK and Views and there is only one notefield available and I need to be able to have multiple fields.

Note a nodetype?
I was thinking a note could be at best a nodetype, so there is automatically integration with Views and CCK. The node could contain a node-reference. Only then there are some problems:
- The node-reference should be unique, a user shouldn't be able to add multiple notes to a node.
- When navigating to a task node (from the example) the edit-fields for the note must be visible, so the user can directly edit his note.

I could develop my own module, but first I want to know if there already exists a module which does what I needed.

Comments

megachriz’s picture

Nobody knows?

robertem’s picture

Couldn't you just create a new content type in CCK and add a node reference? Maybe I'm not understanding what you need clearly.

robertem’s picture

Sorry, just re-read the end of your post.

I'll think on it and see if I can come up with anything.

ionz149’s picture

Did you ever find a solution for this?

megachriz’s picture

Hi ionz149,

Yes, I had solved this problem by creating my own module. If you are interested, I can e-mail it to you, but note that the module has some shortcomings:
- It does not follow the Drupal codestandards.
- Most code comments are in Dutch.
- It integrates with Views in a bit strange way (see #764600: Problem with showing all nodes when using filter 'User: Current' in a relationship for detailed information).
- Module requires php 5.2 or higher.
- It uses an alternative function to generate a form (instead of drupal_get_form() a function is called what does everything drupal_get_form() does, except for the last line: return drupal_render_form($form_id, $form);

Let me know if you are interested.