Display Template collectedinfo/content/nodeid

Author Message

Lars Eirik R

Thursday 17 December 2009 2:53:05 am

Hi.

Is there a way to have the result page after a form has been submitted not redisplay it self?

I find it somewhat odd that i can retrigger the page /collectedinfo/1301 from other computers and actually have it display the same text as i get when infront of the computer where i submitted the variables.

Do i have to use a redirect function or similar if a variable has not been posted sucessfully? Is this not soemthing the framework actually should handled itself ?

Thanks for a great product guys!

Peter Keung

Thursday 17 December 2009 8:51:33 am

This article by Paul Wilson is a good intro to what eZ Publish forms can do:

http://share.ez.no/articles/ez-publish/how-to-create-ez-publish-forms/

Page 3 is particularly useful, as it explains the settings in collect.ini (see the [DisplaySettings] block):

http://share.ez.no/articles/ez-publish/how-to-create-ez-publish-forms/(page)/3

http://www.mugo.ca
Mugo Web, eZ Partner in Vancouver, Canada

Lars Eirik R

Friday 18 December 2009 8:19:59 am

Thanks Peter.

I have already managed to creat my form and it is working as intented.

My questions was mere , how can i make sure no other user can access the confirmation page after the submission?

Should i use the http object and check that a given variable was set or is there another way to do this?

In my case, this page actually outputs a javascript which sends info to a 3rd party which monitors the number of times someone actually has submitted the form.

If another user freely may visit this page , than these statistics will not be correct.

Any other ideas guys?

Nicolas Pastorino

Tuesday 26 January 2010 2:51:01 am

Hei!,

Not knowing whether you actually managed to solve the issue, here are a few hints that might help.

First, in collect.ini, the following configuration directives allow for controlling the information collection's system behaviour right after data was collected :

[DisplaySettings]
# result   - Display IC result, for instance poll result or your form data
# redirect - Redirect to a specific url
# node     - Redirect back to content node
Display=result
# Matches class id or identifier to information collection type
DisplayList[]
#DisplayList[poll]=result
DisplayAttribute=collection_display
# The url to redirect to if DisplayHandling is set to redirect
RedirectURL=/
# Matches class id or identifier to information collection type
RedirectURLList[]
RedirectURLAttribute=collection_redirect

However, i am not sure this blocks the '/collectedinfo/1301' page from being viewed. The latter may contain sensitive data, and/or should not be hit without having submitted the data collection form, this potentially damaging the collected data's relevancy (this seems to be your case, am i wrong ?). One solution (not the cleanest one but can't think of another right now) could be to push some logic in the result template ( content/collectedinfo/form.tpl or the one you defined in collect.ini [InfoSettings] . TypeList ), like testing whether the page was reached after a form submission, or if the current user already has voted for this collection, etc..

Hope it helps,
Cheers,

--
Nicolas Pastorino
Director Community - eZ
Member of the Community Project Board

eZ Publish Community on twitter: http://twitter.com/ezcommunity

t : http://twitter.com/jeanvoye
G+ : http://plus.tl/jeanvoye

Powered by eZ Publish™ CMS Open Source Web Content Management. Copyright © 1999-2014 eZ Systems AS (except where otherwise noted). All rights reserved.