This is a non-official post that may or may not work. I've been reviewing some old folders on my laptop and thought this material may be helpful based on some recent posts I've seen. If it doesn't work, post comments and let's work as a community to figure this out. With all that said, here we go!

 

The following post explains how Eloqua users can have content dynamically change on their event landing pages depending on whether or not the event is full. For example, if an event is full, you may want to have a message that lets web visitors know this right away (rather then sending them an email which Eloqua can be configured to do very easily).

 

Before starting this process, ensure that you have the necessary training from EloquaU and have access to the Events Module. This assumes that you have an advanced knowledge of Eloqua forms, landing pages, JavaScript, web data lookups and web design.

 

  1. Create an event using the Events Module - You need at least one session. Be sure to set the max number of registrants for the event.
  2. Create an Eloqua form.
  3. Add the following processing step (for events): Update Event Registration. Select the Event you created in Step 1
  4. Add the form to an Eloqua hosted landing page or to a web page that has Eloqua tracking scripts on it
  5. In order to setup a condition that will allow you to display different content if the event is full, you need to create a data card data lookup. Setup > Website > Web Data Lookup
  6. Create a new Data Look up. Make sure you select “Data Card Sets”. Select "Data Cards" from the Data Lookup Type drop down and the name of your event from the Data Card Set drop down.
  7. Once it's created, in the top right of the screen, go to Data Lookup Options > Get Data Lookup Scripts.
  8. Take the script on the lower half of the page and paste it on the web page or Eloqua hosted page (you'll need to use a Cloud Component in E10 for this). If possible, ensure the scripts are placed under the Eloqua tracking scripts.
    8-30-2012 6-47-05 PM.png
  9. You now need to customize the scripts so the Lookup will be associated with the appropriate Datacard Set (event). Within the <DataCardSet> tags, enter in the ID of the Datacard Set. You can find the ID from the scripts at the top of the page:
    8-30-2012 6-48-51 PM.png
  10. Just add in the ID so it would look like this (you can just remove the “Enter__here” between the “GroupByFieldValue” tags:
    var elqDLLookup = '<DataCardSet>48</DataCardSet><GroupByFieldValue> </GroupByFieldValue>';

    An important item to note is that one Lookup can be used for multiple Datacard sets (events). This is what it would look like: <DataCardSet>11,14,15,16</DataCardSet>

  11. Now you need to add the script that will change the content based on whether the event is full. Below is an example of the script that was added for a sample event (the code doesn't work). It displays alternative text if the event is sold out based on the limit you set in the event. For your event, ensure that you substitute the Datacard Set ID (it’s 48 below) with the correct ID. This was added in from the top section of the page.

<SCRIPT TYPE='text/javascript' LANGUAGE='JavaScript'>

if (GetElqContentPersonalizationValue('IsCourseFull48') == 'False')

{

  document.write('<p><b>Wednesday, July 11, 2017<br> Steve Miller Band</b> (Main Stage)<br> <b>Dog Power </b>(Rogers Stage)</p>'); }

else

{

  document.write('<b><span style="font-size: 11pt;">These tickets are sold out. <br> <a href="http://test.com/index.html"><u>Select an alternate date</u><img src="http://www.test.com/images/arrow-blue.gif" border="0" hspace="5"></a></b></span><br>  <br><br>');

}

</SCRIPT>

 

In a normal situation, the page will display:

Thursday, July 11, 2017

Steve Miller Band (Main Stage)

Dog Power (Rogers Stage)

 

If the event is full, the text will be substituted with:

 

These tickets are sold out.

Select an alternate date

 

EXTRA: Using JavaScript, you can get even further complicated. For example, when the page loads, you can check if the event is full and disable the form fields. Here is another code sample of a multi-city event:

 

 

<SCRIPT TYPE='text/javascript' LANGUAGE='JavaScript'><!--//

 

 

window.onload = initPage;

function initPage(){

 

  if (GetElqContentPersonalizationValue('IsCourseFull11') == 'True')

  {

  document.forms["Event_Registration_TEST"].elements["AppeonPowerBuilder_flag"].disabled = true;

  document.forms["Event_Registration_TEST"].elements["AppeonPowerBuilder_flag"].checked = false;

  }

 

  if (GetElqContentPersonalizationValue('IsCourseFull14') == 'True')

  {

  document.forms["Event_Registration_TEST"].elements["PocketPowerBuilder_flag"].disabled = true;

  document.forms["Event_Registration_TEST"].elements["PocketPowerBuilder_flag"].checked = false;

  }

 

  if (GetElqContentPersonalizationValue('IsCourseFull16') == 'True')

 

  {

  document.forms["Event_Registration_TEST"].elements["ASE_flag"].disabled = true;

  document.forms["Event_Registration_TEST"].elements["ASE_flag"].checked = false;

  }

 

  if (GetElqContentPersonalizationValue('IsCourseFull15') == 'True')

  {

  document.forms["Event_Registration_TEST"].elements["RepConnector_flag"].disabled = true;

  document.forms["Event_Registration_TEST"].elements["RepConnector_flag"].checked = false;

  }

 

}

//--></SCRIPT>