Forum Discussion
Retrieve LMS User Name as Variable
I know you can have a user fill in a text box with their name and then later use that variable for personalization. What we would like to do is programmatically retrieve the user name from the LMS. Is there a way to set a variable with data from the LMS when the course is loaded instead of having the user enter their name?
Thx
- OrlaClarkeCommunity Member
Seriously guys you really are the heros - I got the elearn to read the students name into the feedback for their results using the lmsAPI functions, brilliant !
Thanks
- BrianAllenCommunity Member
Orla, I agree, I absolutely love all of the creative and helpful ideas in this community. Learn something new just about every day here!
- rexmorCommunity MemberYou're the man Phil. Great Job. Thanks.
Phil Mayor said:
There is a slide in this that does just that
- SaralSharmaCommunity Member
Hi guys,
I used the javascript code given in this forum and it works fine for me.
The problem is I also got bookmark feature "Prompt to resume on presentation restart'' which gets stop as soon as I use this javascript code to get the Learner's name.
Is there any way that I can have both features in my course?
I used following code for user name:
var player = GetPlayer();
var myName = lmsAPI.GetStudentName();
var array = myName.split(',');
var newName = array[1] + ' ' + array[0];
player.SetVar("newName", newName);
- MirandaVerswijvCommunity Member
I love this community - we were just discussing this morning whether this would be possible - and here it is, demo and all.
Thank you so much :)
Glad that this thread helped you out Miranda!
- TanmayGhoshCommunity Member
Hi,
I'm trying to display student name and date in the certificate, that appears on the Result slide. I have used the "Execute Javascript" trigger with code written like:
var player = GetPlayer();
var myName = lmsAPI.GetStudentName();
var date1 = new Date();
player.SetVar("displayDate", date1);
player.SetVar("studName", myName);
Now the problem is it is not working in iOS device, as HTML5 output is running there.
Is there any way to execute javascript in HTML5 output also?
If not, then how can I fetch Student name and Current date in Articulate Storyline 2, so that they can be displayed in the Certificate.
Tanmay
- SteveFlowersCommunity Member
Looks like you resolved this below. There isn't a good reason why the code you've shown here wouldn't work in HTML5. I am not sure if iOS will like the Date() object pushed into a variable.
I've used the same code for both Flash based and HTML5 output for quite awhile and it's worked consistently in all cases.
When testing, use a modern browser's console to show where the script is being stopped.
- AlexYong1Community Member
Hi Steve,
So this is a very long thread and the original code provided way back when this thread was first started wasn't supported in HTML5 so that's why I was looking back for any new updates or changes that would allow it to work.
Hi Tanmay,
Javascript is not something we offer support for, but I did want to point you to the information in regards to our Javascript best practices and examples.
- AlexYong1Community Member
Has anyone figured out how to achieve the ability to pull a student name from the LMS which is supported in HTML5? I've been watching this thread for quite some time hoping for a solution. Is it just not possible?
- TanmayGhoshCommunity Member
Hi,
I have been actually able to do that now in HTML5 too. I have used the same javascript code to fetch student name from LMS and current date.
The only difference is I have not used the code in the result slide where the certificate will appear. I have used the code at the very first slide of my course and stored them in Storyline variables. In the certificate popup in result slide, I have just used those 2 Storyline variables.
It worked in IOS 7 that I'm testing!
- AlexYong1Community Member
Hi Tanmay,
That's a pretty cool workaround, would you be willing to share a sample file of how you did that? Thanks a ton!