Rosamunda posted a question about keeping the user on the same page after they've voted, instead of re-directing the browser to a 'results' page. I want to take this a step further and issue a mental challenge to all you readers out there.

I am working on a awards-show-type site right now that has 30 advanced poll nodes. Right now, these polls are displayed to the user in five unique Views. Each of the five Views (Views module) shows its poll nodes by means of a filter. Each filter is configured to only show one of the five 'terms' from the Ballot Category (which I made).

The rough sketch layout looks something like this:

Category=Awards Show Ballot
Term="personnel"
ballot #1
ballot #2
ballot #3
ballot #4
ballot #5

Category=Awards Show Ballot
Term="companies"
ballot #1
ballot #2
ballot #3
ballot #4
ballot #5

And so on. Now, the problem is that once a user navigates their way to the first of the custom views, they see 5 ballots. They vote for the first ballot, and are immediately re-directed to the results of that ballot. I cannot show the ballot results, EVER, for awards show reasons, so I'm left with a user who now sees a note that is devoid of all content. Now what?

Where is this user supposed to go from here? I can't put a footer on the bottom of an Advanced Poll node, so there's no way to make buttons that say "Go to the next ballot in the series'. How would you handle a situation like this? I need ideas, people, and time is short.

Why is time always so short? Anyway, can anybody suggest a way to get around this dead-end navigational trap?

Comments

senpai’s picture

So far, I have figured out a way to navigate between these 30 different advanced poll nodes. I put a form-style button at the top of each node that simply says "Next Ballot". I wish I could put this button at the bottom of an advanced poll node, but I can't figure out how to add a footer to these types of nodes.

Here's where I need more help. I want to make this "Next Ballot" system a little more flexible than just hard-coding a URL into the button that takes the user to what I'd consider the next ballot. Given the extreme flexibility that Drupal demonstrates in sorting and displaying its content, my user might well arrive at the middle of five ballots due to a highly directed search.

If the user begins voting at ballot number 3, and then sees a link on the last ballot that says "You have reached the end of this section. Continue to next section -->". This is not good.

What I need to do is only show the "Next Ballot" button if the current ballot has already been voted on by that user. How would I use PHP to determine whether my logged-in user has voted on this poll or not?

****
Joel "Senpai" Farris | certified to rock score

haxxorfreak’s picture

I don't know if this is too late to be of assistance but I think you might find the webform module much better suited to this kind of long series of questions type poll. It will automatically tabulate the votes for you and can prevent people from voting twice, seeing results, etc.

senpai’s picture

I'll check this out. It's possible that I need the functionality of both the Advanced Poll and the Webform module. I just don't know yet.
--
Joel Farris
"...and that's the way it oughtta be!"

****
Joel "Senpai" Farris | certified to rock score