Adobe Captivate 5.x Variables Widget

BlogImage.png

Adobe Captivate 5.x Variables Widget

From: $80

Clear selection

Product Description

It allows you to use variables in places not normally possible such as the following actions:

  1. Open URL or File
  2. Open another project
  3. Send email to (see FAQ)***
  4. Execute JavaScript
  5. Assign
  6. Increment/Decrement
  7. As the default text of a Text Entry Box

It works with the following objects and events:

  1. Slide Entry and Exit Actions
  2. Advanced Actions
  3. Any actions associated with Interactive Captivate Objects (Buttons, Click Boxes, Text Entry Boxes, etc.)
  4. Interactive Widgets

Possible Use Cases:

  1. Send quiz data to your custom PHP or ASP.NET script by passing the variables in the URL of a “Open URL or file” action.
  2. Open a specific project based on the Learner’s responses using variables in the “Open other project” action.
  3. Send an email with a custom subject and body that contains quiz results or even course notes. ***
  4. Combine this widget with the stock Captivate widgets (check boxes, radio buttons, drop downs) to create custom Learner driven actions.

 

How Does it Work?

Place the widget on the slide or slides where you want the variable translation to occur.  So if you had a button on slide 5 with the success action defined as “Execute JavaScript”, you’d place the widget on slide 5. In the JavaScript panel, you could have:

alert(‘Hello $$userFirstName$$!’);

When the Learner clicks the button at runtime, the variable would be translated.  For example:

alert(‘Hello Darli!’);

And they’d get the following dialog:

image

*** Live Demo ***

 

Requirements

  1. Adobe Captivate 5 or 5.5
  2. Must be published for Flash Player 9 or above

 

Known Limitations:

This widget will not work with the PROJECT begin or end action or the slide entry action of the first slide.

 

Try Before You Buy

You can download a trial version to test in your own projects.  It will display the CaptivateDev.com logo and a red “Trial Version“ in your project, and will only run from inside of Captivate (F4 or F12 preview), or your local web server (http://localhost/ or http://127.0.0.1/).

Download Trial

Support

Have a pre purchase question or need assistance?  You can contact me directly using the contact form.

 

FAQs

Q:  When does the variable translation actually take place?

A:  It depends on the action and the object.

  • Buttons and ClickBoxes – on mouse click or shortcut key press
  • Slide Entry Actions – on slide exit of the previous slide
  • Slide Exit Actions – on slide entry of the current slide
  • The default text of a Text Entry Box – when then widget becomes visible on the timeline.
  • For all other interactive objects – when then widget becomes visible on the timeline.

Q:  I noticed that you have free widgets that do something similar.  What’s the difference?

A:  The free widgets do not support variable translation in the advanced actions panel, JavaScript panel, Open other project, Increment/Decrement and Assign actions.  They are limited to their specific function only.  I would consider these “Lite” versions.  In addition, the variable translation occurs on slide enter which makes it difficult to change a variable and execute an action on the same slide.  However, with the new Variables Widget, all of this becomes possible.

***Q:  How can I send an email using variables?

A:  If you choose the “Send email to” action, you must include the @ symbol and a period when you supply and email address.  If you don’t, Captivate will warn you.  So, for example, you could have $$department$$@myCompany.com.  However, for greater flexibility, I’d use the “Open URL or file” action and use the mailto: function.  So instead, you can have this in the URL field:

mailto:Jim@foo.com

OR

mailto:$$email$$

where the $$email$$ variable contains a valid email address.  This gives you greater flexibility allowing different domains for an email address.  You can also add a subject and body:

mailto:$$email$$?subject=some subject here&body=more stuff here%0D%0Aand line break here.

%0D%0A is the syntax for a line break in the email (if you need one).

Q:  Can I use a variable inside a variable?  For example, can I define a Captivate user variable such as emailBody that has a default value of ‘Quiz Results of $$userName$$’.

A:  Yes.  The variable translation routine behind the scenes is recursive.  So you could have a variable, within a variable, within a variable, ad infinitum.  Certifiably Sickening I know…

 
 

 

 

Purchase:

  • http://twitter.com/andrewminton Andrew Minton

    Is there a solution for CP using this approach at all?

    • Anonymous

      @twitter-29046355:disqus :  Only for text captions.  You can place variables in text captions out of the box.  If you want to use variables in other places mentioned above, this widget is what’s needed.

      • http://twitter.com/andrewminton Andrew Minton

        That meant to read CP4. Were trying to populate CP vars with js defined vars in the HTML of the page to no avail!

        Even tried the Captivate Controller js apporach.. we can get vars… just not set them.. hmmm

        • Anonymous

          @twitter-29046355:disqus :  Cp 4 uses a different function.  I believe it’s cpSetValue() and cpGetValue().  However, there’s an issue setting numeric values.  The fix is posted here:  
          http://forums.adobe.com/message/2418448 

          • http://twitter.com/andrewminton Andrew Minton

            I just need to set strings so numeric isnt an issue.. I’ve tried with and without the CPController widget but nothing seems to set my text box from even plain JS in the html.. 

          • Anonymous

            @twitter-29046355:disqus :  Go ahead and send me your .cptx file and a detailed description of what you’re trying to accomplish and I’ll take a look.  Jim AT Captivate Dev dot com.

          • http://twitter.com/andrewminton Andrew Minton

            Hi Jim, just looking at the above widget to see if it would serve the purpose of static text boxes not Text Entry Boxes… is there any scope to have it available for CP4 at all? conscious it’s currently CP5 and CP5.5 only. cheers

          • Anonymous

            @Andrew Minton:  You’ll need to upgrade to Cp5 or 5.5 to use it.

      • http://twitter.com/andrewminton Andrew Minton

        That meant to read CP4. Were trying to populate CP vars with js defined vars in the HTML of the page to no avail!

        Even tried the Captivate Controller js apporach.. we can get vars… just not set them.. hmmm

  • theglidenz

    Hi Jim will this also work in Cp6?