2

I'll soon be involved in a project that requires this, I haven't started yet. I have some experience with Drupal but I'm not that much of a programmer.

Here's how it goes:

  • Create a content type with field 1,2,3.
  • The user A adds a new node, filling those fields.
  • The user B can go through those fields and do some kind of "OK" in each one. This OK will only trigger something else that will show a cross or a check mark instead, it won't have any interference with the field, which will not be changed.
  • The user A1 adds a new node, and the user B has to go all the way again.

I'm asking your opinion on possible options to accomplish this. I understand that maybe I'll have to write some code...

Here's the draw that illustrates this: enter image description here

7
  • Hey there, interesting problem. I have 2 questions: a) Do you want to maintain a relation between the fields and their checked status for use later, or do you simply want to display the check mark? b) Should user A (or users of the same role) be able to see the check mark? Commented Mar 2, 2016 at 22:41
  • 1
    I simply want to display the check mark. It's something like field status "valid/not valid" and the user B should be the done able to do this. But they can both see the check mark. I was thinking on adding a field "field status" to each one and then, with the Field Permissions module, give permissions to enable the field only to user B. What do you think?
    – Drii7
    Commented Mar 2, 2016 at 23:24
  • 1
    My thoughts exactly. It is however a brittle setup, from the data perspective. But if it's all you need, then field permissions should cover your use case. Commented Mar 2, 2016 at 23:27
  • Please check the revised title of your question, to ensure it stil matches what you're looking for (please re-edit if needed). Also: what's the purpose of that A1 user? Could it be a typo (that it should be just User A)? If so please correct that typo. Commented Mar 3, 2016 at 7:37
  • Thanks, It still matches what i'm looking for. The user A1 is a different user than A, what I'm trying to say is that will be many users creating that node - user A, A1, A2, A3.... but only user B can validate the fields. I will take a look at your answer below.
    – Drii7
    Commented Mar 3, 2016 at 9:40

1 Answer 1

0

You could use the Flag module for this. Excerpt from its project page (bold markup added here):

... Flag is a flexible flagging system that is completely customizable by the administrator. Using this module, the site administrator can provide any number of flags for nodes, comments, users, and any other type of entity. Some possibilities include bookmarks, marking important, friends, or flag as offensive. With extensive views integration, you can create custom lists of popular content or keep tabs on important content.

Flags may be per-user, meaning that each user can mark an item individually, or global, meaning that the item is either marked or it is not marked, and any user who changes that changes it for everyone.

In this way, additional flags (similar to published and sticky) can be put on nodes, or other items, and dealt with by the system however the administration likes.

If you're not familiar with the Flag module, checkout the set of 8 video tutorials about the flag module. Refer to Flag's Community documentation for (way) more details.

Specific to your 3 fields here, you'd need 2 flags for each field X (x=1, 2, 3) (so 3*2=6 flags in total) whereas you'd add these flags to the nodes where these fields are used:

  • 1 flag to indicate Field X is Valid.
  • 1 flag to indicate Field X is Not Valid.

And if you'd then use either of the options I described in my answer to "How to add a custom icon or symbol to a flag link?", you can even make its look and feel match with your requirements.

Optionally also using some CSS magic to align 2 of these flags next to the field X that they are related to (as suggested in a comment below this answer, merci!).

But wait, there is even more: by using all sorts of integrations with the Rules module, you could also implement things like:

  • "Send an eMail" to User B whenever User A does something that waits approval/review from User B.
  • "Send an eMail" to User A about the result (approve or reject) from User B.
  • Implement any kind of validations between those fields, such as "If field 1 has value P, then field 3 is not allowed to have a value of Z".

There are tons of other enhancements you could implement (potentially even causing User B to no longer be needed, since Rules becomes the validation engine ...).

7
  • On paper, great answer, but one BIG problem, I don't think you can add flags to fields...
    – No Sssweat
    Commented Mar 3, 2016 at 11:32
  • You're right @NoSssweat, and it looks like I wasn't clear enough on how I'd add those flags. So I now added the "whereas you'd add these flags to the nodes where these fields are used" clarification to it. Makes more sense? Commented Mar 3, 2016 at 11:38
  • 1
    So add a node flag per each field and then use some css magic and/or with views to align them next to the field?
    – No Sssweat
    Commented Mar 3, 2016 at 11:43
  • True also, merci! I wasn't sure if we're allowed here to talk about such CSS things to get it all nicely aligned. But as per your comment here I took the liberty to also include that in my answer. Commented Mar 3, 2016 at 11:53
  • 1
    Good solution and the only one I would use for the simple fact that flag is so well integrated with everything else. Commented Mar 3, 2016 at 16:21

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.