This is true.  It is only run when the app first starts up. 
 farcryConstructor.cfm is not the place to be setting session variables. 
 You could do this in _serverSpecificRequestScope.cfm or in your 
Application.cfc in the onSessionStart method.

On Friday, July 13, 2012 9:07:24 AM UTC-4, AJ Mercer wrote:
>
> I think farcyConstructor is only run in application startup
>
> It is a bit late for me and I am not near a computer to help point you in 
> the right direction
> On Jul 13, 2012 7:02 PM, "Xiaofeng Liu" <[email protected]> wrote:
>
>> Hi folks,
>>
>> I'm having issues of setting values in the session scope variables within 
>> farcryConstructor.cfm.
>>
>> The scenario is in the farcryConstructor.cfm, I have a condition check to 
>> see if the request is coming from a form submission on another site or it 
>> is user accessing my site directly from the browser.
>>
>> So I have sth like this in the farcryConstructor.cfm:
>>
>> <cfif StructKeyExists(FORM,'CUSTOMER_ID')>
>>     <!--- The request is coming from a form submission on another site 
>> --->
>>     <!--- Logic A --->
>>
>>
>> <cfelseif StructKeyExists(SESSION, 'CUSTOMER_ID')>
>>      <!--- Logic B --->
>>
>>
>> <cfelse>
>>     <!--- If the request is not from a certain form submission and no 
>> customer id has been set up in session, redirect user back to another site 
>> --->
>>     <cflocation url="http://anothersite.com.au";>
>> </cfif>
>>
>>
>> Then in the projects/config/_serverSpecificRequestScope.cfm I check if 
>> the form variable exists, if yes, set that in the session scope:
>>
>>
>> <cfimport taglib="/farcry/core/tags/farcry" prefix="farcry" />
>>
>> <cfif StructKeyExists(FORM,'CUSTOMER_ID') AND LEN(FORM.CUSTOMER_ID)>
>>
>>         <cfset SESSION.CUSTOMER_ID = FORM.CUSTOMER_ID>
>>  <!--- <cfdump var="#SESSION#" label="dumping session 3"> --->
>> </cfif>
>>
>> <!--------------------------------- 
>> PUT PRODUCTION OR DEFAULT CODE HERE
>>  --------------------------------->
>>
>> <!--- <cftry>
>> <cfset REQUEST.BRAND_ID = 
>> APPLICATION.HELPERS.CampbellsHelper.getBrand().objectID>
>>  <cfcatch>
>> <cfset REQUEST.BRAND_ID = createUUID()>
>>  <cfhtmlhead text="<!-- WARNING: No default brand exists for this site. 
>> Please create a brand with the SLUG 
>> '#APPLICATION.HELPERS.CampbellsHelper.DEFAULT_SLUG#' -->">
>>  </cfcatch>
>> </cftry> --->
>>
>> <!--------------------------------------------------- 
>> PUT DEVELOPER OR STAGING/TESTING SPECIFIC CODE BELOW
>>  --------------------------------------------------->
>>
>> <farcry:machineSpecific name="DEVELOPER_1_MACHINE_NAME_HERE">
>> <!--- DEVELOPER SPECIFIC OVERRIDING CODE HERE --->
>> </farcry:machineSpecific> 
>>
>>
>> <farcry:machineSpecific name="DEVELOPER_2_MACHINE_NAME_HERE">
>> <!--- DEVELOPER SPECIFIC OVERRIDING CODE HERE --->
>> </farcry:machineSpecific> 
>>
>>
>> <farcry:machineSpecific name="DEVELOPER_3_MACHINE_NAME_HERE">
>> <!--- DEVELOPER SPECIFIC OVERRIDING CODE HERE --->
>> </farcry:machineSpecific> 
>>
>> When I tested it, if I access my farcry site directly I get successfully 
>> redirected. However, when I created a form to post customer_id to my site, 
>> the first time, I can successfully jump into the first condition to execute 
>> logic A because form.customer exists. But then if I clicked any links on 
>> that page, I can NOT jump into my second condition to execute logic B. I 
>> found the reason is CUSTOMER_ID is NOT exist in the SESSION scope. But if I 
>> put a dump in the _serverSpecificRequestScope.cfm and do the form 
>> submission, I can see the session actually got set. However, a new request 
>> without form variables exists did not have session variables set either.
>>
>> I feel like I'm setting up session variables in the wrong place.
>>
>> I have been struggling on this for long. I would really appreciate any 
>> help.
>>
>>
>>  
>>
>> -- 
>> Best regards,
>>
>> Xiaofeng,^_^
>>  
>> -- 
>> You received this message cos you are subscribed to "farcry-dev" Google 
>> group.
>> To post, email: [email protected]
>> To unsubscribe, email: [email protected]
>> For more options: http://groups.google.com/group/farcry-dev
>> --------------------------------
>> Follow us on Twitter: http://twitter.com/farcry
>
>

-- 
You received this message cos you are subscribed to "farcry-dev" Google group.
To post, email: [email protected]
To unsubscribe, email: [email protected]
For more options: http://groups.google.com/group/farcry-dev
--------------------------------
Follow us on Twitter: http://twitter.com/farcry

Reply via email to